)
}
onClick={toggleNoText}
/>
}
+ title='Граф целиком'
onClick={onResetViewpoint}
/>
}
title='Анимация вращения'
disabled={!is3D}
onClick={toggleOrbit}
@@ -84,7 +86,7 @@ function GraphToolbar({
{controller.isContentEditable ? (
}
disabled={controller.isProcessing}
onClick={onCreate}
/>
@@ -92,7 +94,7 @@ function GraphToolbar({
{controller.isContentEditable ? (
}
disabled={controller.nothingSelected || controller.isProcessing}
onClick={onDelete}
/>
@@ -102,36 +104,36 @@ function GraphToolbar({
}
+ icon={
}
onClick={controller.deselectAll}
/>
}
+ icon={
}
disabled={controller.nothingSelected}
onClick={controller.selectAllInputs}
/>
}
+ icon={
}
disabled={controller.nothingSelected}
onClick={controller.selectMax}
/>
}
+ icon={
}
disabled={controller.nothingSelected}
onClick={controller.selectAllOutputs}
/>
}
+ icon={
}
disabled={controller.nothingSelected}
onClick={controller.selectInputs}
/>
}
+ icon={
}
disabled={controller.nothingSelected}
onClick={controller.selectOutputs}
/>
diff --git a/rsconcept/frontend/src/pages/RSFormPage/RSTabsMenu.tsx b/rsconcept/frontend/src/pages/RSFormPage/RSTabsMenu.tsx
index 83a06e5c..37a1c2d4 100644
--- a/rsconcept/frontend/src/pages/RSFormPage/RSTabsMenu.tsx
+++ b/rsconcept/frontend/src/pages/RSFormPage/RSTabsMenu.tsx
@@ -1,30 +1,23 @@
'use client';
-import {
- BiDiamond,
- BiDownload,
- BiDuplicate,
- BiMenu,
- BiMeteor,
- BiPlusCircle,
- BiShareAlt,
- BiTrash,
- BiUpload
-} from 'react-icons/bi';
+import { BiDiamond, BiMenu } from 'react-icons/bi';
import { FiEdit } from 'react-icons/fi';
-import {
- LuAlertTriangle,
- LuArchive,
- LuBookCopy,
- LuCrown,
- LuGlasses,
- LuNetwork,
- LuReplace,
- LuWand2
-} from 'react-icons/lu';
+import { LuAlertTriangle, LuArchive, LuBookCopy, LuNetwork, LuWand2 } from 'react-icons/lu';
import { VscLibrary } from 'react-icons/vsc';
import { urls } from '@/app/urls';
+import {
+ IconAdmin,
+ IconClone,
+ IconDestroy,
+ IconDownload,
+ IconNewItem,
+ IconOwner,
+ IconReader,
+ IconReplace,
+ IconShare,
+ IconUpload
+} from '@/components/Icons';
import Button from '@/components/ui/Button';
import Dropdown from '@/components/ui/Dropdown';
import DropdownButton from '@/components/ui/DropdownButton';
@@ -140,33 +133,33 @@ function RSTabsMenu({ onDestroy }: RSTabsMenuProps) {
{user ? (
}
+ icon={
}
disabled={!model.isClaimable && !model.isOwned}
onClick={!model.isOwned && model.isClaimable ? handleClaimOwner : undefined}
/>
) : null}
}
+ icon={
}
onClick={handleShare}
/>
{user ? (
}
+ icon={
}
disabled={model.isArchive}
onClick={handleClone}
/>
) : null}
}
+ icon={
}
onClick={handleDownload}
/>
{controller.isContentEditable ? (
}
+ icon={
}
disabled={controller.isProcessing}
onClick={handleUpload}
/>
@@ -174,7 +167,7 @@ function RSTabsMenu({ onDestroy }: RSTabsMenuProps) {
{controller.isMutable ? (
}
+ icon={
}
disabled={controller.isProcessing}
onClick={handleDelete}
/>
@@ -183,7 +176,7 @@ function RSTabsMenu({ onDestroy }: RSTabsMenuProps) {
}
+ icon={
}
onClick={handleCreateNew}
/>
) : null}
@@ -241,7 +234,7 @@ function RSTabsMenu({ onDestroy }: RSTabsMenuProps) {
}
+ icon={
}
onClick={handleSubstituteCst}
disabled={!controller.isContentEditable || controller.isProcessing}
/>
@@ -274,11 +267,11 @@ function RSTabsMenu({ onDestroy }: RSTabsMenuProps) {
className='h-full pr-2'
icon={
mode === UserAccessMode.ADMIN ? (
-
+
) : mode === UserAccessMode.OWNER ? (
-
+
) : (
-
+
)
}
onClick={accessMenu.toggle}
@@ -287,20 +280,20 @@ function RSTabsMenu({ onDestroy }: RSTabsMenuProps) {
}
+ icon={
}
onClick={() => handleChangeMode(UserAccessMode.READER)}
/>
}
+ icon={
}
disabled={!model.isOwned}
onClick={() => handleChangeMode(UserAccessMode.OWNER)}
/>
}
+ icon={
}
disabled={!user?.is_staff}
onClick={() => handleChangeMode(UserAccessMode.ADMIN)}
/>
diff --git a/rsconcept/frontend/src/pages/RSFormPage/ViewConstituents/ConstituentsSearch.tsx b/rsconcept/frontend/src/pages/RSFormPage/ViewConstituents/ConstituentsSearch.tsx
index 7632269a..88c50212 100644
--- a/rsconcept/frontend/src/pages/RSFormPage/ViewConstituents/ConstituentsSearch.tsx
+++ b/rsconcept/frontend/src/pages/RSFormPage/ViewConstituents/ConstituentsSearch.tsx
@@ -1,8 +1,8 @@
'use client';
import { useCallback, useLayoutEffect, useState } from 'react';
-import { BiCog, BiFilterAlt } from 'react-icons/bi';
+import { IconFilter, IconSettings } from '@/components/Icons';
import Dropdown from '@/components/ui/Dropdown';
import DropdownButton from '@/components/ui/DropdownButton';
import SearchBar from '@/components/ui/SearchBar';
@@ -90,7 +90,7 @@ function ConstituentsSearch({ schema, activeID, activeExpression, setFiltered }:
title='Настройка атрибутов для фильтрации'
hideTitle={matchModeMenu.isOpen}
className='h-full'
- icon={
}
+ icon={
}
text={labelCstMatchMode(filterMatch)}
onClick={matchModeMenu.toggle}
/>
@@ -121,7 +121,7 @@ function ConstituentsSearch({ schema, activeID, activeExpression, setFiltered }:
title='Настройка фильтрации по графу термов'
hideTitle={sourceMenu.isOpen}
className='h-full pr-2'
- icon={
}
+ icon={
}
text={labelCstSource(filterSource)}
onClick={sourceMenu.toggle}
/>
diff --git a/rsconcept/frontend/src/pages/RegisterPage.tsx b/rsconcept/frontend/src/pages/RegisterPage.tsx
index eb3b097e..24b3d363 100644
--- a/rsconcept/frontend/src/pages/RegisterPage.tsx
+++ b/rsconcept/frontend/src/pages/RegisterPage.tsx
@@ -2,10 +2,10 @@
import clsx from 'clsx';
import { useEffect, useState } from 'react';
-import { BiInfoCircle } from 'react-icons/bi';
import { toast } from 'react-toastify';
import { urls } from '@/app/urls';
+import { IconHelp } from '@/components/Icons';
import InfoError from '@/components/info/InfoError';
import Button from '@/components/ui/Button';
import Checkbox from '@/components/ui/Checkbox';
@@ -80,7 +80,7 @@ function RegisterPage() {
-
+
- используйте уникальный пароль
diff --git a/rsconcept/frontend/src/pages/UserProfilePage/UserTabs.tsx b/rsconcept/frontend/src/pages/UserProfilePage/UserTabs.tsx
index 4b67b823..f2ac2b6b 100644
--- a/rsconcept/frontend/src/pages/UserProfilePage/UserTabs.tsx
+++ b/rsconcept/frontend/src/pages/UserProfilePage/UserTabs.tsx
@@ -2,8 +2,8 @@
import { AnimatePresence } from 'framer-motion';
import { useMemo, useState } from 'react';
-import { FiBell, FiBellOff } from 'react-icons/fi';
+import { IconFollow, IconFollowOff } from '@/components/Icons';
import MiniButton from '@/components/ui/MiniButton';
import Overlay from '@/components/ui/Overlay';
import AnimateFade from '@/components/wrap/AnimateFade';
@@ -41,9 +41,9 @@ function UserTabs() {
title='Отслеживаемые схемы'
icon={
showSubs ? (
-
+
) : (
-
+
)
}
onClick={() => setShowSubs(prev => !prev)}