@fmfi-uk-1-ain-412/structure-explorer 0.0.8 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/dist/App.d.ts +4 -1
  2. package/dist/app/store.d.ts +48 -5
  3. package/dist/common/errors.d.ts +18 -0
  4. package/dist/common/logging.d.ts +6 -0
  5. package/dist/common/redux.d.ts +31 -0
  6. package/dist/common/validation.d.ts +5 -0
  7. package/dist/components_helper/ComponentCard/ComponentCard.d.ts +10 -0
  8. package/dist/components_helper/ControlButtons/ControlButtons.d.ts +23 -0
  9. package/dist/components_helper/ControlButtons/omitControlButtons.d.ts +3 -0
  10. package/dist/components_helper/CustomIcons.d.ts +5 -0
  11. package/dist/components_helper/EmptyPlaceholder/EmptyPlaceholder.d.ts +4 -0
  12. package/dist/components_helper/ErrorFeedback.d.ts +4 -3
  13. package/dist/components_helper/Header.d.ts +1 -0
  14. package/dist/components_helper/InputGroupTitle.d.ts +8 -3
  15. package/dist/components_helper/LockButton.d.ts +7 -0
  16. package/dist/components_helper/RelevantPredicatesIndicator/RelevantPredicatesIndicator.d.ts +7 -0
  17. package/dist/features/databaseView/DatabaseView.d.ts +9 -0
  18. package/dist/features/databaseView/databaseViewSlice.d.ts +75 -0
  19. package/dist/features/drawerEditor/DrawerEditor.d.ts +23 -0
  20. package/dist/features/drawerEditor/unaryPredicateColors.d.ts +3 -0
  21. package/dist/features/drawerEditor/usePreservedSize.d.ts +8 -0
  22. package/dist/features/editorToolbar/components/DomainSelector.d.ts +6 -0
  23. package/dist/features/editorToolbar/components/EditorToolbar.d.ts +6 -0
  24. package/dist/features/editorToolbar/components/InterpretationFilters.d.ts +6 -0
  25. package/dist/features/editorToolbar/components/useClickAwayListener.d.ts +5 -0
  26. package/dist/features/editorToolbar/components/useDragginScroll.d.ts +2 -0
  27. package/dist/features/editorToolbar/components/useScrollControls.d.ts +11 -0
  28. package/dist/features/editorToolbar/editorToolbarSlice.d.ts +298 -0
  29. package/dist/features/editorToolbar/validationSchema.d.ts +19 -0
  30. package/dist/features/errorAlert/ErrorAlert.d.ts +1 -0
  31. package/dist/features/errorAlert/errorAlertSlice.d.ts +12 -0
  32. package/dist/features/formulas/FormulaComponent.d.ts +2 -1
  33. package/dist/features/formulas/PrettifyButton.d.ts +1 -0
  34. package/dist/features/formulas/formulasSlice.d.ts +2766 -8211
  35. package/dist/features/formulas/validationSchema.d.ts +22 -0
  36. package/dist/features/graphView/components/GraphView/GraphInfoContext.d.ts +12 -0
  37. package/dist/features/graphView/components/GraphView/GraphView.d.ts +19 -0
  38. package/dist/features/graphView/graphs/BipartiteGraph/BipartiteGraph.d.ts +7 -0
  39. package/dist/features/graphView/graphs/BipartiteGraph/layout.d.ts +14 -0
  40. package/dist/features/graphView/graphs/BipartiteGraph/plugin.d.ts +10 -0
  41. package/dist/features/graphView/graphs/HasseDiagram/HasseDiagram.d.ts +2 -0
  42. package/dist/features/graphView/graphs/HasseDiagram/layout.d.ts +4 -0
  43. package/dist/features/graphView/graphs/HasseDiagram/plugin.d.ts +10 -0
  44. package/dist/features/graphView/graphs/HasseDiagram/posetHelpers.d.ts +5 -0
  45. package/dist/features/graphView/graphs/OrientedGraph/OrientedGraph.d.ts +2 -0
  46. package/dist/features/graphView/graphs/OrientedGraph/layout.d.ts +2 -0
  47. package/dist/features/graphView/graphs/OrientedGraph/plugin.d.ts +12 -0
  48. package/dist/features/graphView/graphs/common/MessageDialogs.d.ts +11 -0
  49. package/dist/features/graphView/graphs/common/graphOptions.d.ts +12 -0
  50. package/dist/features/graphView/graphs/graphComponents/Controls.d.ts +12 -0
  51. package/dist/features/graphView/graphs/graphComponents/DirectConnectionLine.d.ts +2 -0
  52. package/dist/features/graphView/graphs/graphComponents/DirectEdge.d.ts +12 -0
  53. package/dist/features/graphView/graphs/graphComponents/MessageDialog/MessageDialog.d.ts +8 -0
  54. package/dist/features/graphView/graphs/graphComponents/PredicateNode.d.ts +13 -0
  55. package/dist/features/graphView/graphs/graphComponents/SelfConnectingEdge.d.ts +3 -0
  56. package/dist/features/graphView/graphs/graphComponents/SetGroupNode.d.ts +9 -0
  57. package/dist/features/graphView/graphs/graphSlice.d.ts +405 -0
  58. package/dist/features/graphView/graphs/listeners.d.ts +23 -0
  59. package/dist/features/graphView/graphs/plugins.d.ts +37 -0
  60. package/dist/features/graphView/helpers/useAreAllNodesInView.d.ts +1 -0
  61. package/dist/features/graphView/helpers/useComparatorEffect.d.ts +4 -0
  62. package/dist/features/graphView/helpers/useFitViewOnNodeAdded.d.ts +5 -0
  63. package/dist/features/graphView/helpers/useSyncNodesWithStore.d.ts +16 -0
  64. package/dist/features/graphView/helpers/utils.d.ts +10 -0
  65. package/dist/features/graphView/validationSchema.d.ts +8 -0
  66. package/dist/features/import/GearButton.d.ts +1 -0
  67. package/dist/features/import/importThunk.d.ts +16 -2
  68. package/dist/features/import/validationSchema.d.ts +95 -0
  69. package/dist/features/language/languageSlice.d.ts +470 -359
  70. package/dist/features/language/textViewDescriptors.d.ts +10 -0
  71. package/dist/features/language/validationSchema.d.ts +18 -0
  72. package/dist/features/matrixView/MatrixView.d.ts +9 -0
  73. package/dist/features/matrixView/MatrixViewCells.d.ts +21 -0
  74. package/dist/features/matrixView/matrixViewSelectors.d.ts +101 -0
  75. package/dist/features/matrixView/useTableCrosshairHover.d.ts +4 -0
  76. package/dist/features/structure/InterpretationEditor.d.ts +19 -0
  77. package/dist/features/structure/editorControlButtonsFactory.d.ts +3 -0
  78. package/dist/features/structure/structureSlice.d.ts +595 -526
  79. package/dist/features/structure/textViewDescriptors.d.ts +10 -0
  80. package/dist/features/structure/validationSchema.d.ts +21 -0
  81. package/dist/features/teacherMode/teacherModeslice.d.ts +19 -0
  82. package/dist/features/teacherMode/validationSchema.d.ts +6 -0
  83. package/dist/features/textView/TextViewEditor.d.ts +11 -0
  84. package/dist/features/textView/textViewSlice.d.ts +79 -0
  85. package/dist/features/textView/textViews.d.ts +94 -0
  86. package/dist/features/undoHistory/undoHistory.d.ts +22 -0
  87. package/dist/features/variables/textViewDescriptors.d.ts +7 -0
  88. package/dist/features/variables/validationSchema.d.ts +10 -0
  89. package/dist/features/variables/variablesSlice.d.ts +100 -616
  90. package/dist/instanceIdContext.d.ts +3 -0
  91. package/dist/logicContext.d.ts +25 -4
  92. package/dist/model/Expression.d.ts +1 -0
  93. package/dist/model/formula/Formula.EqualityAtom.d.ts +1 -0
  94. package/dist/model/formula/Formula.Equivalence.d.ts +1 -0
  95. package/dist/model/formula/Formula.Implication.d.ts +0 -5
  96. package/dist/model/formula/Formula.Negation.d.ts +1 -0
  97. package/dist/model/formula/Formula.PredicateAtom.d.ts +1 -0
  98. package/dist/model/formula/Formula.d.ts +3 -1
  99. package/dist/model/formula/QuantifiedFormula.d.ts +3 -1
  100. package/dist/model/term/Term.Constant.d.ts +1 -0
  101. package/dist/model/term/Term.FunctionTerm.d.ts +1 -0
  102. package/dist/model/term/Term.Variable.d.ts +1 -0
  103. package/dist/structure-explorer.css +1 -5
  104. package/dist/structure-explorer.es.js +89323 -16686
  105. package/dist/structure-explorer.umd.js +365 -348
  106. package/dist/usePreset.d.ts +1 -0
  107. package/package.json +14 -11
  108. package/dist/features/structure/InterpretationInput.d.ts +0 -14
package/dist/App.d.ts CHANGED
@@ -1,2 +1,5 @@
1
- declare function App(): import("react/jsx-runtime").JSX.Element;
1
+ interface AppProps {
2
+ viewOnlyMode?: boolean;
3
+ }
4
+ declare function App({ viewOnlyMode }: AppProps): import("react/jsx-runtime").JSX.Element;
2
5
  export default App;
@@ -1,16 +1,59 @@
1
- export declare const createStore: () => import('@reduxjs/toolkit').EnhancedStore<{
1
+ import { Action, Middleware, ThunkAction } from '@reduxjs/toolkit';
2
+ declare const rootReducer: {
3
+ formulas: import('redux').Reducer<import('../features/formulas/formulasSlice').FormulasState>;
4
+ language: import('redux').Reducer<import('../features/language/languageSlice').LanguageState>;
5
+ structure: import('redux').Reducer<import('../features/structure/structureSlice').StructureState>;
6
+ variables: import('redux').Reducer<import('../features/variables/variablesSlice').VariablesState>;
7
+ teacherMode: import('redux').Reducer<import('../features/teacherMode/teacherModeslice').TeacherModeState>;
8
+ graphView: import('redux').Reducer<import('../features/graphView/graphs/graphSlice').GraphManagerState>;
9
+ textView: import('redux').Reducer<import('../features/textView/textViewSlice').TextViewState>;
10
+ databaseView: import('redux').Reducer<import('../features/databaseView/databaseViewSlice.ts').DatabaseViewState>;
11
+ editorToolbar: import('redux').Reducer<import('../features/editorToolbar/editorToolbarSlice').EditorToolbarState>;
12
+ errorAlert: import('redux').Reducer<import('../features/errorAlert/errorAlertSlice.ts').ErrorState>;
13
+ };
14
+ declare const undoReducer: import('redux').Reducer<import('redux-undo').StateWithHistory<{
2
15
  formulas: import('../features/formulas/formulasSlice').FormulasState;
3
16
  language: import('../features/language/languageSlice').LanguageState;
4
17
  structure: import('../features/structure/structureSlice').StructureState;
5
18
  variables: import('../features/variables/variablesSlice').VariablesState;
6
- }, import('redux').UnknownAction, import('@reduxjs/toolkit').Tuple<[import('redux').StoreEnhancer<{
7
- dispatch: import('redux-thunk').ThunkDispatch<{
19
+ teacherMode: import('../features/teacherMode/teacherModeslice').TeacherModeState;
20
+ graphView: import('../features/graphView/graphs/graphSlice').GraphManagerState;
21
+ textView: import('../features/textView/textViewSlice').TextViewState;
22
+ databaseView: import('../features/databaseView/databaseViewSlice.ts').DatabaseViewState;
23
+ editorToolbar: import('../features/editorToolbar/editorToolbarSlice').EditorToolbarState;
24
+ errorAlert: import('../features/errorAlert/errorAlertSlice.ts').ErrorState;
25
+ }>, import('redux').UnknownAction>;
26
+ export declare const createStore: (extraMiddleware?: Middleware) => import('@reduxjs/toolkit').EnhancedStore<import('redux-undo').StateWithHistory<{
27
+ formulas: import('../features/formulas/formulasSlice').FormulasState;
28
+ language: import('../features/language/languageSlice').LanguageState;
29
+ structure: import('../features/structure/structureSlice').StructureState;
30
+ variables: import('../features/variables/variablesSlice').VariablesState;
31
+ teacherMode: import('../features/teacherMode/teacherModeslice').TeacherModeState;
32
+ graphView: import('../features/graphView/graphs/graphSlice').GraphManagerState;
33
+ textView: import('../features/textView/textViewSlice').TextViewState;
34
+ databaseView: import('../features/databaseView/databaseViewSlice.ts').DatabaseViewState;
35
+ editorToolbar: import('../features/editorToolbar/editorToolbarSlice').EditorToolbarState;
36
+ errorAlert: import('../features/errorAlert/errorAlertSlice.ts').ErrorState;
37
+ }>, import('redux').UnknownAction, import('@reduxjs/toolkit').Tuple<[import('redux').StoreEnhancer<{
38
+ dispatch: ((action: Action<"listenerMiddleware/add">) => import('@reduxjs/toolkit').UnsubscribeListener) & import('redux-thunk').ThunkDispatch<import('redux-undo').StateWithHistory<{
8
39
  formulas: import('../features/formulas/formulasSlice').FormulasState;
9
40
  language: import('../features/language/languageSlice').LanguageState;
10
41
  structure: import('../features/structure/structureSlice').StructureState;
11
42
  variables: import('../features/variables/variablesSlice').VariablesState;
12
- }, undefined, import('redux').UnknownAction>;
43
+ teacherMode: import('../features/teacherMode/teacherModeslice').TeacherModeState;
44
+ graphView: import('../features/graphView/graphs/graphSlice').GraphManagerState;
45
+ textView: import('../features/textView/textViewSlice').TextViewState;
46
+ databaseView: import('../features/databaseView/databaseViewSlice.ts').DatabaseViewState;
47
+ editorToolbar: import('../features/editorToolbar/editorToolbarSlice').EditorToolbarState;
48
+ errorAlert: import('../features/errorAlert/errorAlertSlice.ts').ErrorState;
49
+ }>, undefined, import('redux').UnknownAction>;
13
50
  }>, import('redux').StoreEnhancer]>>;
14
51
  export type AppStore = ReturnType<typeof createStore>;
15
- export type RootState = ReturnType<AppStore["getState"]>;
16
52
  export type AppDispatch = AppStore["dispatch"];
53
+ export type AppThunk<ThunkReturnType = void> = ThunkAction<ThunkReturnType, RootState, unknown, Action>;
54
+ export type RootState = ReturnType<typeof undoReducer>;
55
+ export type RootStateWithoutHistory = {
56
+ [K in keyof typeof rootReducer]: ReturnType<(typeof rootReducer)[K]>;
57
+ };
58
+ export type RootReducerEntryName = keyof RootStateWithoutHistory;
59
+ export {};
@@ -0,0 +1,18 @@
1
+ import { Location } from '@fmfi-uk-1-ain-412/js-fol-parser';
2
+ export interface BaseError {
3
+ kind: string;
4
+ message: string;
5
+ }
6
+ export interface SyntaxError extends BaseError {
7
+ kind: "syntax";
8
+ location?: Location;
9
+ }
10
+ export interface ValidationError extends BaseError {
11
+ kind: "validation";
12
+ }
13
+ export interface SemanticError extends BaseError {
14
+ kind: "semantic";
15
+ }
16
+ export declare const createValidationError: (message: string) => ValidationError;
17
+ export declare const createSemanticError: (message: string) => SemanticError;
18
+ export type InterpretationError = SyntaxError | ValidationError | SemanticError;
@@ -0,0 +1,6 @@
1
+ export declare const dev: {
2
+ log: (...args: unknown[]) => false | void;
3
+ warn: (...args: unknown[]) => false | void;
4
+ time: (label: string) => false | void;
5
+ timeEnd: (label: string) => false | void;
6
+ };
@@ -0,0 +1,31 @@
1
+ import { Action, PayloadAction } from '@reduxjs/toolkit';
2
+ import { ValidationError } from './errors';
3
+ export interface LockableValue<T> {
4
+ locked: boolean;
5
+ value: T;
6
+ }
7
+ export type Validated<T> = {
8
+ parsed: T;
9
+ error?: ValidationError;
10
+ };
11
+ export declare const prepareWithSourceMeta: <P>(payload: P, meta?: {
12
+ source?: string;
13
+ }) => {
14
+ payload: P;
15
+ meta: {
16
+ source?: string;
17
+ };
18
+ };
19
+ export declare const prepareWithListenerIgnoreMeta: <P>(payload: P, meta?: {
20
+ ignore?: boolean;
21
+ }) => {
22
+ payload: P;
23
+ meta: {
24
+ ignore?: boolean;
25
+ };
26
+ };
27
+ export type PayloadActionListenerIgnore<P = void> = PayloadAction<P, string, {
28
+ ignore?: boolean;
29
+ }>;
30
+ export declare const listenerShouldIgnore: (action: Action) => boolean;
31
+ export declare const fallbackToEmptyArray: <T>(array: T[] | undefined) => T[];
@@ -0,0 +1,5 @@
1
+ import { default as z } from 'zod';
2
+ export declare const lockable: <T extends z.ZodType>(value: T) => z.ZodObject<{
3
+ value: T;
4
+ locked: z.ZodBoolean;
5
+ }, z.core.$strip>;
@@ -0,0 +1,10 @@
1
+ import { default as React } from 'react';
2
+ interface ComponentCardProps {
3
+ heading: React.ReactNode;
4
+ help?: React.ReactNode;
5
+ right?: React.ReactNode;
6
+ children?: React.ReactNode;
7
+ className?: string;
8
+ }
9
+ export default function ComponentCard({ heading, help, right, children, className, }: ComponentCardProps): import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,23 @@
1
+ import { default as React } from 'react';
2
+ export type ControlButton<T> = {
3
+ text: React.ReactNode;
4
+ value: T;
5
+ } | {
6
+ text: React.ReactNode;
7
+ value: T[];
8
+ dropDown: {
9
+ text: React.ReactNode;
10
+ value: T;
11
+ }[];
12
+ };
13
+ export interface ControlButtonsProps<T> {
14
+ id: string;
15
+ buttons: ControlButton<T>[];
16
+ selected: T;
17
+ onSelected: (selected: T) => void;
18
+ teacherMode?: boolean;
19
+ locked?: boolean;
20
+ locker?: () => void;
21
+ disabled?: boolean;
22
+ }
23
+ export default function ControlButtons<T extends string | number>({ id, buttons, selected, onSelected, teacherMode, locked, locker, disabled, }: ControlButtonsProps<T>): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,3 @@
1
+ import { EditorType } from '../../features/structure/InterpretationEditor';
2
+ import { ControlButton } from './ControlButtons';
3
+ export declare const omitControlButtons: (controlButtons: ControlButton<EditorType>[], omit: EditorType[]) => ControlButton<EditorType>[];
@@ -0,0 +1,5 @@
1
+ import { SVGProps } from 'react';
2
+ export interface CustomIconProps extends SVGProps<SVGSVGElement> {
3
+ size?: SVGProps<SVGSVGElement>["height"];
4
+ }
5
+ export declare function ForwardSlashIcon(props: CustomIconProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export interface EmptyPlaceholderProps {
2
+ message: string;
3
+ }
4
+ export default function EmptyPlaceholder({ message }: EmptyPlaceholderProps): import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,8 @@
1
1
  import { SyntaxError } from '@fmfi-uk-1-ain-412/js-fol-parser';
2
- interface Props {
3
- error: SyntaxError | Error | undefined;
2
+ import { InterpretationError } from '../common/errors';
3
+ interface ErrorFeedbackProps {
4
+ error: SyntaxError | Error | InterpretationError | undefined;
4
5
  text: string;
5
6
  }
6
- export default function ErrorFeedback({ error, text }: Props): import("react/jsx-runtime").JSX.Element | null;
7
+ export default function ErrorFeedback({ error, text }: ErrorFeedbackProps): import("react/jsx-runtime").JSX.Element | null;
7
8
  export {};
@@ -0,0 +1 @@
1
+ export default function Header(): import("react/jsx-runtime").JSX.Element;
@@ -1,14 +1,19 @@
1
1
  import { ChangeEvent, ReactNode } from 'react';
2
- import { SyntaxError } from '@fmfi-uk-1-ain-412/js-fol-parser';
2
+ import { InterpretationError } from '../common/errors';
3
3
  interface Props {
4
4
  label: string;
5
5
  id: string;
6
6
  prefix: ReactNode;
7
7
  suffix: ReactNode;
8
+ controlButtons?: ReactNode;
8
9
  placeholder: string;
10
+ disabledOverride?: boolean;
9
11
  text: string;
10
12
  onChange(event: ChangeEvent<HTMLInputElement>): void;
11
- error?: Error | SyntaxError;
13
+ locker: () => void;
14
+ lockChecker: boolean | undefined;
15
+ error?: InterpretationError;
16
+ createHistoryOnBlur?: boolean;
12
17
  }
13
- export default function InputGroupTitle({ label, id, prefix, suffix, placeholder, text, onChange, error, }: Props): import("react/jsx-runtime").JSX.Element;
18
+ export default function InputGroupTitle({ label, id, prefix, suffix, controlButtons, placeholder, disabledOverride, text, onChange, locker, lockChecker, error, createHistoryOnBlur, }: Props): import("react/jsx-runtime").JSX.Element;
14
19
  export {};
@@ -0,0 +1,7 @@
1
+ import { ButtonProps } from 'react-bootstrap';
2
+ interface LockButtonProps extends Omit<ButtonProps, "onClick"> {
3
+ locked: boolean;
4
+ locker: () => void;
5
+ }
6
+ export default function LockButton({ locker, locked, ...props }: LockButtonProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,7 @@
1
+ interface RelevantPredicatesIndicatorProps extends React.HTMLAttributes<HTMLDivElement> {
2
+ predicateToColorMap: Map<string, string>;
3
+ previewed?: string[];
4
+ size?: "md" | "sm";
5
+ }
6
+ export declare function RelevantPredicatesIndicator({ predicateToColorMap, size, previewed, ...props }: RelevantPredicatesIndicatorProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,9 @@
1
+ import { TupleType } from '../structure/structureSlice';
2
+ interface DatabaseViewProps {
3
+ tupleName: string;
4
+ tupleArity: number;
5
+ tupleType: TupleType;
6
+ locked: boolean;
7
+ }
8
+ export default function DatabaseView({ tupleName, tupleArity, tupleType, locked, }: DatabaseViewProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,75 @@
1
+ import { PayloadAction } from '@reduxjs/toolkit';
2
+ import { StructureState, TupleType } from '../structure/structureSlice';
3
+ import { AppThunk, RootState } from '../../app/store';
4
+ export interface DatabaseViewEntry {
5
+ type: TupleType;
6
+ domainTuple: string[][];
7
+ }
8
+ export type DatabaseViewState = Record<string, DatabaseViewEntry>;
9
+ type ValueChangedPayload = {
10
+ tupleName: string;
11
+ type: TupleType;
12
+ domainTuple: string[][];
13
+ };
14
+ export declare const databaseViewSlice: import('@reduxjs/toolkit').Slice<DatabaseViewState, {
15
+ valueChanged(state: import('immer').WritableDraft<DatabaseViewState>, action: PayloadAction<ValueChangedPayload>): void;
16
+ syncDatabaseView(state: import('immer').WritableDraft<DatabaseViewState>, action: PayloadAction<{
17
+ structure: StructureState;
18
+ }>): void;
19
+ }, "databaseView", "databaseView", import('@reduxjs/toolkit').SliceSelectors<DatabaseViewState>>;
20
+ export declare const valueChanged: import('@reduxjs/toolkit').ActionCreatorWithPayload<ValueChangedPayload, "databaseView/valueChanged">, syncDatabaseView: import('@reduxjs/toolkit').ActionCreatorWithPayload<{
21
+ structure: StructureState;
22
+ }, "databaseView/syncDatabaseView">;
23
+ export declare const selectDatabaseViewValues: ((state: import('redux-undo').StateWithHistory<{
24
+ formulas: import('../formulas/formulasSlice').FormulasState;
25
+ language: import('../language/languageSlice').LanguageState;
26
+ structure: StructureState;
27
+ variables: import('../variables/variablesSlice').VariablesState;
28
+ teacherMode: import('../teacherMode/teacherModeslice').TeacherModeState;
29
+ graphView: import('../graphView/graphs/graphSlice').GraphManagerState;
30
+ textView: import('../textView/textViewSlice').TextViewState;
31
+ databaseView: DatabaseViewState;
32
+ editorToolbar: import('../editorToolbar/editorToolbarSlice').EditorToolbarState;
33
+ errorAlert: import('../errorAlert/errorAlertSlice').ErrorState;
34
+ }>, __: string, ___: TupleType, arity: number) => {
35
+ values: string[][];
36
+ leftovers: string[];
37
+ }) & {
38
+ clearCache: () => void;
39
+ resultsCount: () => number;
40
+ resetResultsCount: () => void;
41
+ } & {
42
+ resultFunc: (resultFuncArgs_0: import('../../common/redux').LockableValue<import('../structure/structureSlice').DomainRepresentation>, resultFuncArgs_1: DatabaseViewEntry, resultFuncArgs_2: TupleType, resultFuncArgs_3: number) => {
43
+ values: string[][];
44
+ leftovers: string[];
45
+ };
46
+ memoizedResultFunc: ((resultFuncArgs_0: import('../../common/redux').LockableValue<import('../structure/structureSlice').DomainRepresentation>, resultFuncArgs_1: DatabaseViewEntry, resultFuncArgs_2: TupleType, resultFuncArgs_3: number) => {
47
+ values: string[][];
48
+ leftovers: string[];
49
+ }) & {
50
+ clearCache: () => void;
51
+ resultsCount: () => number;
52
+ resetResultsCount: () => void;
53
+ };
54
+ lastResult: () => {
55
+ values: string[][];
56
+ leftovers: string[];
57
+ };
58
+ dependencies: [(state: RootState) => import('../../common/redux').LockableValue<import('../structure/structureSlice').DomainRepresentation>, (state: RootState, key: string, type: TupleType) => DatabaseViewEntry, (_: RootState, __: string, type: TupleType) => TupleType, (_: RootState, __: string, ___: TupleType, arity: number) => number];
59
+ recomputations: () => number;
60
+ resetRecomputations: () => void;
61
+ dependencyRecomputations: () => number;
62
+ resetDependencyRecomputations: () => void;
63
+ } & {
64
+ memoize: typeof import('reselect').weakMapMemoize;
65
+ argsMemoize: typeof import('reselect').weakMapMemoize;
66
+ };
67
+ export declare const updateDatabaseViewValue: ({ domainTuple, type, tupleName, arity, }: {
68
+ domainTuple: string[][];
69
+ type: TupleType;
70
+ tupleName: string;
71
+ arity: number;
72
+ }) => AppThunk;
73
+ export declare const isValidTuple: (tuple: string[], arity: number) => boolean;
74
+ declare const _default: import('redux').Reducer<DatabaseViewState>;
75
+ export default _default;
@@ -0,0 +1,23 @@
1
+ import { EditorType } from '../structure/InterpretationEditor';
2
+ import { ReactNode } from 'react';
3
+ import { InterpretationError } from '../../common/errors';
4
+ import { TupleType } from '../structure/structureSlice';
5
+ export type DrawerEditorType = Exclude<EditorType, "text">;
6
+ interface DrawerEditorProps {
7
+ tupleName: string;
8
+ type: DrawerEditorType;
9
+ tupleDisplayName: string;
10
+ tupleArity: number;
11
+ tupleType: TupleType;
12
+ editorDisplayName: string;
13
+ buildControlButtons: (omit?: EditorType[]) => ReactNode;
14
+ locker: () => void;
15
+ locked?: boolean;
16
+ error?: InterpretationError;
17
+ }
18
+ export default function DrawerEditor(props: DrawerEditorProps): import("react/jsx-runtime").JSX.Element;
19
+ export interface EditorTitleProps {
20
+ base: string;
21
+ editor: string;
22
+ }
23
+ export {};
@@ -0,0 +1,3 @@
1
+ export declare const unaryPredicatesColors: string[];
2
+ export declare function getUnaryPredicateColor(idx: number): string;
3
+ export declare function getUnaryPredicateToColorMap(relevantPredicates: string[], allPredicates: [string, number][]): Map<string, string>;
@@ -0,0 +1,8 @@
1
+ export type Size = {
2
+ width: number;
3
+ height: number;
4
+ };
5
+ export default function usePreservedSize<T extends HTMLElement>(): {
6
+ ref: import('react').MutableRefObject<T | null>;
7
+ size: Size | null;
8
+ };
@@ -0,0 +1,6 @@
1
+ import { TupleType } from '../../structure/structureSlice';
2
+ export interface DomainSelectorProps {
3
+ tupleName: string;
4
+ tupleType: TupleType;
5
+ }
6
+ export default function DomainSelector({ tupleName, tupleType, }: DomainSelectorProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { TupleType } from '../../structure/structureSlice';
2
+ export interface GraphToolbarProps {
3
+ tupleName: string;
4
+ tupleType: TupleType;
5
+ }
6
+ export declare function EditorToolbar({ tupleName, tupleType }: GraphToolbarProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { TupleType } from '../../structure/structureSlice';
2
+ export interface InterpretationFiltersProps {
3
+ tupleName: string;
4
+ tupleType: TupleType;
5
+ }
6
+ export default function InterpretationFilters({ tupleName, tupleType, }: InterpretationFiltersProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export interface UseClickAwayListenerProps {
2
+ onClickOutside: () => void;
3
+ shouldListen: boolean;
4
+ }
5
+ export default function useClickAwayListener<T extends HTMLElement>({ onClickOutside, shouldListen, }: UseClickAwayListenerProps): import('react').MutableRefObject<T | null>;
@@ -0,0 +1,2 @@
1
+ import { RefObject } from 'react';
2
+ export default function useDraggingScroll(scrollContainerRef: RefObject<HTMLElement>): void;
@@ -0,0 +1,11 @@
1
+ import { RefObject } from 'react';
2
+ interface UseScrollViewOptions {
3
+ scrollIntoViewOptions?: ScrollIntoViewOptions;
4
+ edgeMargin?: number;
5
+ }
6
+ export default function useScrollControls(scrollContainerRef: RefObject<HTMLElement>, options?: UseScrollViewOptions): {
7
+ scrollIntoView: (direction: "left" | "right") => void;
8
+ showLeftControl: boolean;
9
+ showRightControl: boolean;
10
+ };
11
+ export {};