@dineug/erd-editor 3.9.2 → 4.0.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.
- package/README.md +321 -133
- package/dist/components/appContext.d.ts +4 -0
- package/dist/components/erd/Erd.d.ts +4 -0
- package/dist/components/erd/automatic-table-placement/AutomaticTablePlacement.d.ts +2 -1
- package/dist/components/erd/automatic-table-placement/createAutomaticTablePlacement.d.ts +38 -2
- package/dist/components/erd/automatic-table-placement/elkPlacement.d.ts +42 -0
- package/dist/components/erd/automatic-table-placement/flowPlacement.d.ts +21 -0
- package/dist/components/erd/automatic-table-placement/placementActions.d.ts +14 -0
- package/dist/components/erd/automatic-table-placement/runElkPlacement.d.ts +0 -11
- package/dist/components/erd/canvas/SceneIcon.template.d.ts +2 -2
- package/dist/components/erd/canvas/entityDrag.d.ts +17 -1
- package/dist/components/erd/canvas/middleButtonPan.d.ts +11 -0
- package/dist/components/erd/canvas/relationship-group/relationship/Relationship.d.ts +2 -0
- package/dist/components/erd/canvas/relationship-group/relationship/RelationshipActionLabel.d.ts +32 -0
- package/dist/components/erd/canvas/sceneTokens.d.ts +38 -0
- package/dist/components/erd/canvas/table/Table.d.ts +9 -1
- package/dist/components/erd/canvas/table/cellLayout.d.ts +11 -0
- package/dist/components/erd/canvas/table/column/Column.d.ts +7 -0
- package/dist/components/erd/canvas/table/doubleClick.d.ts +3 -4
- package/dist/components/erd/canvas/table/goToErd.d.ts +3 -10
- package/dist/components/erd/canvas/table-group/TableGroup.d.ts +17 -0
- package/dist/components/erd/canvas/table-group/TableGroupBody.d.ts +17 -0
- package/dist/components/erd/canvas/table-group/TableGroupDropTarget.d.ts +10 -0
- package/dist/components/erd/canvas/table-group/TableGroupSash.d.ts +35 -0
- package/dist/components/erd/canvas/table-group/TableGroups.d.ts +10 -0
- package/dist/components/erd/canvas/table-group/tableGroupBox.d.ts +40 -0
- package/dist/components/erd/canvas/table-group/titleLayout.d.ts +45 -0
- package/dist/components/erd/canvas/useMoveEntity.d.ts +2 -0
- package/dist/components/erd/draw-target/DrawTargetButtons.d.ts +16 -0
- package/dist/components/erd/draw-target/DrawTargetButtons.styles.d.ts +14 -0
- package/dist/components/erd/draw-target/drawTargetState.d.ts +26 -0
- package/dist/components/erd/draw-target/findDrawTarget.d.ts +29 -0
- package/dist/components/erd/draw-target/placePill.d.ts +49 -0
- package/dist/components/erd/erd-context-menu/ErdContextMenu.d.ts +6 -0
- package/dist/components/erd/erd-context-menu/menus/drawRelationshipMenus.d.ts +3 -0
- package/dist/components/erd/erd-context-menu/menus/exportMenus.d.ts +7 -2
- package/dist/components/erd/erd-context-menu/menus/importMenus.d.ts +5 -1
- package/dist/components/erd/erd-context-menu/menus/relationshipMenus.d.ts +16 -1
- package/dist/components/erd/erd-context-menu/menus/showMenus.d.ts +3 -1
- package/dist/components/erd/erd-context-menu/menus/tablePlacementMenus.d.ts +3 -0
- package/dist/components/erd/floating-toolbar/ToolbarCompass.template.d.ts +3 -1
- package/dist/components/erd/goToErdTarget.d.ts +85 -0
- package/dist/components/erd/hitTest.d.ts +16 -1
- package/dist/components/erd/minimap/MinimapScene.d.ts +1 -1
- package/dist/components/erd/minimap/table/Table.d.ts +3 -3
- package/dist/components/erd/minimap/table-group/TableGroup.d.ts +17 -0
- package/dist/components/erd/table-group/TableGroupDraft.d.ts +15 -0
- package/dist/components/erd/table-group/TableGroupDraft.styles.d.ts +6 -0
- package/dist/components/erd/table-group/tableGroupName.d.ts +21 -0
- package/dist/components/erd/table-group/useTableGroupDraw.d.ts +25 -0
- package/dist/components/erd/table-properties/TableProperties.d.ts +2 -0
- package/dist/components/erd/table-properties/TableProperties.styles.d.ts +24 -2
- package/dist/components/erd/table-properties/table-properties-indexes/TablePropertiesIndexes.d.ts +2 -0
- package/dist/components/erd/table-properties/table-properties-indexes/TablePropertiesIndexes.styles.d.ts +32 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-checkbox-column/IndexesCheckboxColumn.d.ts +7 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-checkbox-column/IndexesCheckboxColumn.styles.d.ts +5 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-column/IndexesColumn.d.ts +7 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-column/IndexesColumn.styles.d.ts +3 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-index/IndexesIndex.d.ts +7 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-index/IndexesIndex.styles.d.ts +6 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-key/IndexesKey.d.ts +21 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-key/IndexesKey.styles.d.ts +13 -0
- package/dist/components/erd/table-properties/table-properties-tabs/TablePropertiesTabs.d.ts +3 -0
- package/dist/components/erd/welcome-screen/WelcomeScreen.d.ts +17 -0
- package/dist/components/erd/welcome-screen/WelcomeScreen.styles.d.ts +17 -0
- package/dist/components/erd/welcome-screen/welcome-hints/WelcomeHints.d.ts +21 -0
- package/dist/components/erd/welcome-screen/welcome-hints/WelcomeHints.styles.d.ts +14 -0
- package/dist/components/erd/welcome-screen/welcome-hints/hintArrows.d.ts +10 -0
- package/dist/components/erd/welcome-screen/welcomeLayout.d.ts +87 -0
- package/dist/components/erd-editor/ErdEditor.d.ts +67 -7
- package/dist/components/erd-editor/useErdEditorAttachElement.d.ts +14 -1
- package/dist/components/export-image/ExportImage.d.ts +23 -0
- package/dist/components/export-image/ExportImage.styles.d.ts +34 -0
- package/dist/components/export-image/exportImageActions.d.ts +48 -0
- package/dist/components/find-replace/FindReplace.d.ts +13 -0
- package/dist/components/find-replace/FindReplace.styles.d.ts +27 -0
- package/dist/components/find-replace/fieldIcon.d.ts +5 -0
- package/dist/components/find-replace/matchTarget.d.ts +26 -0
- package/dist/components/find-replace/panelLayout.d.ts +20 -0
- package/dist/components/generator-code/GeneratorCode.d.ts +1 -0
- package/dist/components/generator-code/generator-code-context-menu/GeneratorCodeContextMenu.d.ts +3 -0
- package/dist/components/generator-code/generator-code-context-menu/menus/columnNameCaseMenus.d.ts +3 -0
- package/dist/components/generator-code/generator-code-context-menu/menus/languageMenus.d.ts +8 -0
- package/dist/components/generator-code/generator-code-context-menu/menus/tableNameCaseMenus.d.ts +3 -0
- package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.d.ts +17 -0
- package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.styles.d.ts +5 -0
- package/dist/components/generator-code/generatorCodeView.d.ts +12 -0
- package/dist/components/generator-code/languageSettings.d.ts +14 -0
- package/dist/components/locale-picker/LocalePicker.d.ts +13 -0
- package/dist/components/locale-picker/LocalePicker.styles.d.ts +19 -0
- package/dist/components/localeContext.d.ts +10 -0
- package/dist/components/localized/Localized.d.ts +18 -0
- package/dist/components/map-columns/MapColumnsBody.d.ts +24 -0
- package/dist/components/map-columns/MapColumnsDialog.d.ts +13 -0
- package/dist/components/map-columns/MapColumnsDialog.styles.d.ts +38 -0
- package/dist/components/map-columns/mapColumnsAction.d.ts +13 -0
- package/dist/components/map-columns/nameOf.d.ts +6 -0
- package/dist/components/map-columns/openMapColumns.d.ts +9 -0
- package/dist/components/primitives/code-block/CodeBlock.d.ts +6 -1
- package/dist/components/primitives/code-block/CodeBlock.styles.d.ts +2 -0
- package/dist/components/primitives/color-picker/ColorPicker.d.ts +10 -1
- package/dist/components/primitives/color-picker/ColorPicker.styles.d.ts +25 -0
- package/dist/components/primitives/color-picker/colorModel.d.ts +36 -0
- package/dist/components/primitives/color-picker/presetColors.d.ts +13 -0
- package/dist/components/primitives/color-picker/resolveColor.d.ts +7 -0
- package/dist/components/primitives/context-menu/ContextMenu.d.ts +2 -0
- package/dist/components/primitives/context-menu/context-menu-content/ContextMenuContent.d.ts +1 -0
- package/dist/components/primitives/context-menu/context-menu-content/fitMenu.d.ts +4 -4
- package/dist/components/primitives/context-menu/context-menu-separator/ContextMenuSeparator.d.ts +8 -0
- package/dist/components/primitives/context-menu/context-menu-separator/ContextMenuSeparator.styles.d.ts +2 -0
- package/dist/components/primitives/context-menu/menu/Menu.d.ts +2 -0
- package/dist/components/primitives/context-menu/submenu-chevron/SubmenuChevron.d.ts +5 -0
- package/dist/components/primitives/dialog/Dialog.d.ts +21 -0
- package/dist/components/primitives/dialog/Dialog.styles.d.ts +12 -0
- package/dist/components/primitives/highlighted-text/HighlightedText.d.ts +2 -5
- package/dist/components/primitives/icon/icons.d.ts +27 -1
- package/dist/components/primitives/select/Select.d.ts +18 -0
- package/dist/components/primitives/select/Select.styles.d.ts +13 -0
- package/dist/components/primitives/text-input/TextInput.d.ts +2 -0
- package/dist/components/primitives/toast/Toast.d.ts +5 -1
- package/dist/components/primitives/toast/Toast.styles.d.ts +2 -2
- package/dist/components/quick-search/QuickSearch.d.ts +2 -1
- package/dist/components/quick-search/QuickSearch.styles.d.ts +6 -0
- package/dist/components/quick-search/actions.d.ts +60 -2
- package/dist/components/quick-search/hangul.d.ts +79 -0
- package/dist/components/quick-search/paletteQuery.d.ts +38 -0
- package/dist/components/quick-search/scopedActions.d.ts +42 -0
- package/dist/components/schema-sql/SchemaSQL.d.ts +2 -0
- package/dist/components/schema-sql/SchemaSQL.styles.d.ts +7 -0
- package/dist/components/schema-sql/schema-sql-context-menu/SchemaSQLContextMenu.d.ts +3 -0
- package/dist/components/schema-sql/schema-sql-context-menu/menus/bracketMenus.d.ts +3 -0
- package/dist/components/schema-sql/schema-sql-context-menu/menus/headerMenus.d.ts +29 -0
- package/dist/components/schema-sql/schema-sql-context-menu/menus/statementsMenus.d.ts +27 -0
- package/dist/components/schema-sql/schema-sql-options/SchemaSQLOptions.d.ts +24 -0
- package/dist/components/schema-sql/schema-sql-options/SchemaSQLOptions.styles.d.ts +45 -0
- package/dist/components/schema-sql/schema-sql-options/ScriptEditor.d.ts +20 -0
- package/dist/components/schema-sql/schema-sql-options/ScriptEditor.styles.d.ts +13 -0
- package/dist/components/schema-sql/schema-sql-options/dropWarning.d.ts +8 -0
- package/dist/components/schema-sql/schemaSQLView.d.ts +71 -0
- package/dist/components/settings/Settings.styles.d.ts +7 -0
- package/dist/components/settings/columnTypeLabels.d.ts +8 -0
- package/dist/components/settings/lockSettingRows.d.ts +16 -0
- package/dist/components/settings/settings-lnb/SettingsLnb.d.ts +3 -0
- package/dist/components/settings/settingsPage.d.ts +10 -0
- package/dist/components/theme-builder/ThemeBuilder.d.ts +9 -1
- package/dist/components/theme-builder/ThemeBuilder.styles.d.ts +8 -5
- package/dist/components/toast-container/openStatusToast.d.ts +29 -0
- package/dist/components/toast-container/openToastWhileRunning.d.ts +1 -1
- package/dist/components/toolbar/Toolbar.d.ts +1 -0
- package/dist/components/visualization/graph-node/GraphNode.d.ts +2 -2
- package/dist/components/visualization/graphPan.d.ts +12 -0
- package/dist/components/visualization/table/column/Column.d.ts +4 -0
- package/dist/components/visualization/visualizationView.d.ts +2 -2
- package/dist/constants/language.d.ts +1 -1
- package/dist/constants/layout.d.ts +47 -0
- package/dist/constants/open.d.ts +4 -0
- package/dist/constants/schema.d.ts +38 -4
- package/dist/constants/sql/dataType/PostgreSQL.d.ts +2 -1
- package/dist/constants/sql/dataType/SQLite.d.ts +3 -1
- package/dist/engine/actions.d.ts +20 -2
- package/dist/engine/context.d.ts +6 -0
- package/dist/engine/index.d.ts +1 -1
- package/dist/engine/index.js +29 -18
- package/dist/engine/modules/editor/actions.d.ts +10 -2
- package/dist/engine/modules/editor/atom.actions.d.ts +49 -11
- package/dist/engine/modules/editor/generator.actions.d.ts +107 -8
- package/dist/engine/modules/editor/state.d.ts +16 -3
- package/dist/engine/modules/editor/utils/color.d.ts +21 -0
- package/dist/engine/modules/editor/utils/duplicate.d.ts +28 -1
- package/dist/engine/modules/editor/utils/focus.d.ts +16 -0
- package/dist/engine/modules/editor/utils/releaseHidden.d.ts +16 -0
- package/dist/engine/modules/editor/utils/selection.d.ts +12 -0
- package/dist/engine/modules/relationship/actions.d.ts +19 -0
- package/dist/engine/modules/relationship/atom.actions.d.ts +111 -1
- package/dist/engine/modules/relationship/endFlags.d.ts +14 -0
- package/dist/engine/modules/relationship/fkColumns.d.ts +40 -4
- package/dist/engine/modules/relationship/generator.actions.d.ts +5 -2
- package/dist/engine/modules/relationship/history.d.ts +3 -0
- package/dist/engine/modules/relationship/referenceType.d.ts +12 -0
- package/dist/engine/modules/settings/actions.d.ts +17 -4
- package/dist/engine/modules/settings/atom.actions.d.ts +63 -19
- package/dist/engine/modules/settings/generator.actions.d.ts +7 -0
- package/dist/engine/modules/settings/history.d.ts +1 -0
- package/dist/engine/modules/table/actions.d.ts +8 -0
- package/dist/engine/modules/table/atom.actions.d.ts +31 -0
- package/dist/engine/modules/table/generator.actions.d.ts +3 -3
- package/dist/engine/modules/table/history.d.ts +1 -0
- package/dist/engine/modules/table-column/generator.actions.d.ts +8 -0
- package/dist/engine/modules/table-column/keys.d.ts +14 -0
- package/dist/engine/modules/table-column/utils/dataType.d.ts +19 -1
- package/dist/engine/modules/table-group/actions.d.ts +63 -0
- package/dist/engine/modules/table-group/atom.actions.d.ts +238 -0
- package/dist/engine/modules/table-group/generator.actions.d.ts +111 -0
- package/dist/engine/modules/table-group/history.d.ts +13 -0
- package/dist/engine/peer-store.d.ts +9 -3
- package/dist/engine/replication-store.d.ts +18 -1
- package/dist/engine/rx-operators/groupByStreamActions.d.ts +5 -1
- package/dist/engine/rx-operators/lockIgnoreFilter.d.ts +8 -0
- package/dist/engine/rx-store.d.ts +2 -0
- package/dist/engine/settle.d.ts +9 -0
- package/dist/erd-editor.umd.js +2523 -4060
- package/dist/hooks/useNavigatorLanguages.d.ts +7 -0
- package/dist/i18n/locales.d.ts +126 -0
- package/dist/i18n/menuLabel.d.ts +12 -0
- package/dist/i18n/messages/ar-SA.d.ts +399 -0
- package/dist/i18n/messages/de-DE.d.ts +375 -0
- package/dist/i18n/messages/en/code.d.ts +17 -0
- package/dist/i18n/messages/en/colorPicker.d.ts +35 -0
- package/dist/i18n/messages/en/common.d.ts +65 -0
- package/dist/i18n/messages/en/contextMenu.d.ts +29 -0
- package/dist/i18n/messages/en/exportImage.d.ts +25 -0
- package/dist/i18n/messages/en/feedback.d.ts +11 -0
- package/dist/i18n/messages/en/findReplace.d.ts +36 -0
- package/dist/i18n/messages/en/floatingToolbar.d.ts +12 -0
- package/dist/i18n/messages/en/index.d.ts +378 -0
- package/dist/i18n/messages/en/mapColumns.d.ts +39 -0
- package/dist/i18n/messages/en/palette.d.ts +40 -0
- package/dist/i18n/messages/en/schemaSql.d.ts +28 -0
- package/dist/i18n/messages/en/settings.d.ts +22 -0
- package/dist/i18n/messages/en/shortcuts.d.ts +32 -0
- package/dist/i18n/messages/en/tableProperties.d.ts +34 -0
- package/dist/i18n/messages/en/themeBuilder.d.ts +7 -0
- package/dist/i18n/messages/en/toolbar.d.ts +9 -0
- package/dist/i18n/messages/en/visualization.d.ts +12 -0
- package/dist/i18n/messages/en/welcome.d.ts +13 -0
- package/dist/i18n/messages/es-ES.d.ts +381 -0
- package/dist/i18n/messages/eu-ES.d.ts +375 -0
- package/dist/i18n/messages/fa-IR.d.ts +375 -0
- package/dist/i18n/messages/fr-FR.d.ts +381 -0
- package/dist/i18n/messages/he-IL.d.ts +381 -0
- package/dist/i18n/messages/id-ID.d.ts +369 -0
- package/dist/i18n/messages/index.d.ts +11 -0
- package/dist/i18n/messages/it-IT.d.ts +381 -0
- package/dist/i18n/messages/ja-JP.d.ts +369 -0
- package/dist/i18n/messages/ko-KR.d.ts +369 -0
- package/dist/i18n/messages/nl-NL.d.ts +375 -0
- package/dist/i18n/messages/pl-PL.d.ts +387 -0
- package/dist/i18n/messages/pt-BR.d.ts +381 -0
- package/dist/i18n/messages/pt-PT.d.ts +381 -0
- package/dist/i18n/messages/ro-RO.d.ts +381 -0
- package/dist/i18n/messages/ru-RU.d.ts +387 -0
- package/dist/i18n/messages/sk-SK.d.ts +387 -0
- package/dist/i18n/messages/sl-SI.d.ts +387 -0
- package/dist/i18n/messages/sv-SE.d.ts +375 -0
- package/dist/i18n/messages/tr-TR.d.ts +375 -0
- package/dist/i18n/messages/uk-UA.d.ts +387 -0
- package/dist/i18n/messages/zh-CN.d.ts +369 -0
- package/dist/i18n/messages/zh-TW.d.ts +369 -0
- package/dist/i18n/resolveLocale.d.ts +11 -0
- package/dist/i18n/source.d.ts +7 -0
- package/dist/i18n/translate.d.ts +58 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +28966 -11220
- package/dist/internal-types/index.d.ts +2 -4
- package/dist/konva/scene/contentBounds.d.ts +18 -12
- package/dist/konva/scene/metrics.d.ts +7 -0
- package/dist/konva/scene/renderScene.d.ts +10 -4
- package/dist/konva/scene/stacking.d.ts +21 -0
- package/dist/konva/scene/viewLayout.d.ts +2 -1
- package/dist/loadValue-B3EFSe9k.js +12925 -0
- package/dist/peer/index.d.ts +6 -3
- package/dist/peer/index.js +87 -83
- package/dist/services/elk-layout/elkGraph.d.ts +6 -4
- package/dist/services/elk-layout/elkLayoutOptions.d.ts +20 -0
- package/dist/services/elk-layout/elkLayoutService.d.ts +3 -3
- package/dist/services/export-png/ExportScene.d.ts +3 -3
- package/dist/services/export-png/documentScene.d.ts +14 -9
- package/dist/services/export-png/exportBox.d.ts +40 -5
- package/dist/services/export-png/exportPngService.d.ts +15 -0
- package/dist/services/export-png/exportTheme.d.ts +26 -0
- package/dist/services/export-png/index.d.ts +44 -11
- package/dist/services/export-png/renderPng.d.ts +18 -10
- package/dist/services/export-png/renderSvg.d.ts +22 -0
- package/dist/services/export-png/sceneSvg.d.ts +54 -0
- package/dist/services/shiki/graphqlGrammar.d.ts +8 -0
- package/dist/shared-store-fUggY7sI.js +1341 -0
- package/dist/themes/radix-ui-theme.d.ts +11 -3
- package/dist/themes/tokens.d.ts +9 -0
- package/dist/utils/calcTable.d.ts +18 -1
- package/dist/utils/clipboard.d.ts +9 -0
- package/dist/utils/collection/tableGroup.entity.d.ts +3 -0
- package/dist/utils/contrastText.d.ts +21 -0
- package/dist/utils/deepMerge.d.ts +8 -0
- package/dist/utils/device-detect/index.d.ts +2 -6
- package/dist/utils/domEvent.d.ts +18 -0
- package/dist/utils/dragSelect.d.ts +2 -0
- package/dist/utils/draw-relationship/bezier.d.ts +2 -0
- package/dist/utils/draw-relationship/corner.d.ts +9 -0
- package/dist/utils/draw-relationship/index.d.ts +18 -18
- package/dist/utils/draw-relationship/loop.d.ts +29 -0
- package/dist/utils/draw-relationship/pathFinding.d.ts +1 -1
- package/dist/utils/draw-relationship/sort.d.ts +8 -1
- package/dist/utils/draw-relationship/stub.d.ts +4 -3
- package/dist/utils/emitter.d.ts +64 -4
- package/dist/utils/file/exportFile.d.ts +15 -5
- package/dist/utils/file/importFile.d.ts +9 -5
- package/dist/utils/file/importSchema.d.ts +45 -0
- package/dist/utils/find-replace/findMatches.d.ts +90 -0
- package/dist/utils/find-replace/index.d.ts +5 -0
- package/dist/utils/find-replace/matcher.d.ts +53 -0
- package/dist/utils/find-replace/present.d.ts +24 -0
- package/dist/utils/find-replace/replaceActions.d.ts +20 -0
- package/dist/utils/generator-code/columnTypes.d.ts +99 -0
- package/dist/utils/generator-code/doctrine.d.ts +6 -0
- package/dist/utils/generator-code/doctrineReservedWords.d.ts +7 -0
- package/dist/utils/generator-code/graphql.d.ts +6 -0
- package/dist/utils/generator-code/heck.d.ts +5 -0
- package/dist/utils/generator-code/java.d.ts +28 -0
- package/dist/utils/generator-code/jsonSchema.d.ts +50 -0
- package/dist/utils/generator-code/jsonShape.d.ts +37 -0
- package/dist/utils/generator-code/kotlin.d.ts +1 -0
- package/dist/utils/generator-code/mermaid.d.ts +5 -0
- package/dist/utils/generator-code/php.d.ts +28 -0
- package/dist/utils/generator-code/rust.d.ts +13 -0
- package/dist/utils/generator-code/rustTypes.d.ts +44 -0
- package/dist/utils/generator-code/scala.d.ts +1 -0
- package/dist/utils/generator-code/seaorm.d.ts +22 -0
- package/dist/utils/generator-code/swift.d.ts +44 -0
- package/dist/utils/generator-code/utils.d.ts +31 -1
- package/dist/utils/generator-code/zod.d.ts +25 -0
- package/dist/utils/globalEventObservable.d.ts +10 -1
- package/dist/utils/highlightWords.d.ts +29 -0
- package/dist/utils/index.d.ts +1 -2
- package/dist/utils/keyboard-shortcut/bindKeys.d.ts +9 -0
- package/dist/utils/keyboard-shortcut/index.d.ts +15 -1
- package/dist/utils/keyboard-shortcut/utils.d.ts +21 -0
- package/dist/utils/loadValue.d.ts +7 -0
- package/dist/utils/map-columns/alignTypes.d.ts +37 -0
- package/dist/utils/map-columns/buildRows.d.ts +102 -0
- package/dist/utils/map-columns/candidateKeys.d.ts +24 -0
- package/dist/utils/map-columns/index.d.ts +8 -0
- package/dist/utils/map-columns/mapping.d.ts +67 -0
- package/dist/utils/map-columns/prefill.d.ts +26 -0
- package/dist/utils/map-columns/toMapColumnsActions.d.ts +10 -0
- package/dist/utils/map-columns/validate.d.ts +45 -0
- package/dist/utils/memo.d.ts +4 -0
- package/dist/utils/referentialAction.d.ts +21 -0
- package/dist/utils/schema-aml-parser/types.d.ts +8 -0
- package/dist/utils/schema-dbml-parser/tokenizer.d.ts +2 -0
- package/dist/utils/schema-dbml-parser/types.d.ts +14 -0
- package/dist/utils/schema-sql/Databricks.d.ts +13 -3
- package/dist/utils/schema-sql/MSSQL.d.ts +19 -2
- package/dist/utils/schema-sql/MariaDB.d.ts +10 -4
- package/dist/utils/schema-sql/MySQL.d.ts +18 -4
- package/dist/utils/schema-sql/Oracle.d.ts +23 -4
- package/dist/utils/schema-sql/PostgreSQL.d.ts +16 -4
- package/dist/utils/schema-sql/SQLite.d.ts +16 -4
- package/dist/utils/schema-sql/Snowflake.d.ts +8 -3
- package/dist/utils/schema-sql/index.d.ts +21 -1
- package/dist/utils/schema-sql/options.d.ts +57 -0
- package/dist/utils/schema-sql/utils.d.ts +120 -2
- package/dist/utils/schema-sql-parser/index.d.ts +5 -1
- package/dist/utils/stageCursor.d.ts +20 -0
- package/dist/utils/table-clipboard/payload.d.ts +3 -0
- package/dist/utils/table-clipboard/placement.d.ts +2 -0
- package/dist/utils/tableColor.d.ts +29 -0
- package/dist/utils/tableGroup.d.ts +142 -0
- package/dist/utils/tableKeys.d.ts +54 -0
- package/dist/workers/elkLayout.shared-worker.js +1 -1
- package/dist/workers/exportPng.shared-worker.js +30 -28
- package/dist/workers/shiki.shared-worker.js +1 -1
- package/dist/workers/spawn.d.ts +1 -2
- package/dist/workers/spawn.inline.d.ts +0 -1
- package/package.json +12 -18
- package/dist/components/generator-code/GeneratorCode.styles.d.ts +0 -2
- package/dist/schemaGCService-BagQ1wfF.js +0 -38
- package/dist/services/schema-gc/index.d.ts +0 -18
- package/dist/services/schema-gc/procGC.d.ts +0 -4
- package/dist/services/schema-gc/schemaGC.shared-worker.d.ts +0 -2
- package/dist/services/schema-gc/schemaGCService.d.ts +0 -5
- package/dist/shared-store-BqPSXAEf.js +0 -1072
- package/dist/store-hooks-DuzDVhPy.js +0 -10282
- package/dist/styles/colorPicker.style.d.ts +0 -7
- package/dist/utils/draw-relationship/chamfer.d.ts +0 -3
- package/dist/workers/schemaGC.shared-worker.js +0 -1
|
@@ -2,6 +2,10 @@ import { FC } from '@dineug/r-html';
|
|
|
2
2
|
export type ErdProps = {
|
|
3
3
|
isDarkMode: boolean;
|
|
4
4
|
mouseTracking: boolean;
|
|
5
|
+
readonly: boolean;
|
|
6
|
+
enableWelcomeScreen?: boolean;
|
|
7
|
+
enableThemeBuilder?: boolean;
|
|
8
|
+
enableLocalePicker?: boolean;
|
|
5
9
|
};
|
|
6
10
|
declare const Erd: FC<ErdProps>;
|
|
7
11
|
export default Erd;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { FC, Ref } from '@dineug/r-html';
|
|
2
2
|
import { AppContext } from '../../appContext';
|
|
3
|
+
import { I18n } from '../../../i18n/translate';
|
|
3
4
|
export type AutomaticTablePlacementProps = {
|
|
4
5
|
app: Ref<AppContext>;
|
|
5
6
|
onChange: (tables: TablePoint[]) => void;
|
|
@@ -13,7 +14,7 @@ export type TablePoint = {
|
|
|
13
14
|
export type PlacementToastState = {
|
|
14
15
|
progress: number;
|
|
15
16
|
};
|
|
16
|
-
export declare function placementDescription({ progress
|
|
17
|
+
export declare function placementDescription({ progress }: PlacementToastState, i18n?: I18n): string;
|
|
17
18
|
declare const AutomaticTablePlacement: FC<AutomaticTablePlacementProps>;
|
|
18
19
|
export default AutomaticTablePlacement;
|
|
19
20
|
//# sourceMappingURL=AutomaticTablePlacement.d.ts.map
|
|
@@ -1,12 +1,43 @@
|
|
|
1
1
|
import { RootState } from '../../../engine/state';
|
|
2
|
-
import { Table } from '../../../internal-types';
|
|
3
|
-
|
|
2
|
+
import { Table, TableGroup } from '../../../internal-types';
|
|
3
|
+
/** A table in no group, put at the node less its radius, as it always was. */
|
|
4
|
+
type TableNode = {
|
|
4
5
|
id: string;
|
|
5
6
|
r: number;
|
|
6
7
|
x: number;
|
|
7
8
|
y: number;
|
|
9
|
+
vx: number;
|
|
10
|
+
vy: number;
|
|
8
11
|
ref: Table;
|
|
12
|
+
width: number;
|
|
13
|
+
height: number;
|
|
9
14
|
};
|
|
15
|
+
/** A member, and where it stands from the corner of its group's box. */
|
|
16
|
+
type Member = {
|
|
17
|
+
ref: Table;
|
|
18
|
+
dx: number;
|
|
19
|
+
dy: number;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* A group with members, moved as one box centred on the node: the members keep
|
|
23
|
+
* where they stand inside it, and the box, their bounds and the padding, is
|
|
24
|
+
* the rect the group is drawn at, so a preview shows the group where it goes.
|
|
25
|
+
*/
|
|
26
|
+
type GroupNode = {
|
|
27
|
+
id: string;
|
|
28
|
+
r: number;
|
|
29
|
+
x: number;
|
|
30
|
+
y: number;
|
|
31
|
+
vx: number;
|
|
32
|
+
vy: number;
|
|
33
|
+
group: TableGroup;
|
|
34
|
+
width: number;
|
|
35
|
+
height: number;
|
|
36
|
+
members: Member[];
|
|
37
|
+
};
|
|
38
|
+
type Node = TableNode | GroupNode;
|
|
39
|
+
/** The least room a group's box keeps from another group's box or a table. */
|
|
40
|
+
export declare const GROUP_BOX_GAP = 100;
|
|
10
41
|
/** The two readings of a simulation's heat that its progress is taken from. */
|
|
11
42
|
type Cooling = {
|
|
12
43
|
alpha(): number;
|
|
@@ -23,6 +54,11 @@ type Cooling = {
|
|
|
23
54
|
* });
|
|
24
55
|
*/
|
|
25
56
|
export declare function placementProgress(simulation: Cooling): number;
|
|
57
|
+
/**
|
|
58
|
+
* The force simulation that places the tables, around the middle of what the
|
|
59
|
+
* document draws. A group with members is one box in it, its members kept
|
|
60
|
+
* inside and the box kept clear of the others, so it is drawn where it goes.
|
|
61
|
+
*/
|
|
26
62
|
export declare function createAutomaticTablePlacement(state: RootState): import('d3-force').Simulation<Node, undefined>;
|
|
27
63
|
export {};
|
|
28
64
|
//# sourceMappingURL=createAutomaticTablePlacement.d.ts.map
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { FC } from '@dineug/r-html';
|
|
2
|
+
import { AppContext } from '../../appContext';
|
|
3
|
+
import { ElkLayoutPoint, ElkLayoutRequest } from '../../../services/elk-layout';
|
|
4
|
+
type PlacingToastProps = {
|
|
5
|
+
onCancel: () => void;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* The message up while ELK works, and the whole of what a one-shot placement
|
|
9
|
+
* shows. There is no progress to follow and nothing to read off a layout that
|
|
10
|
+
* does not exist yet, so Cancel is the only thing on it. A view placement shows it too.
|
|
11
|
+
*/
|
|
12
|
+
export declare const PlacingToast: FC<PlacingToastProps>;
|
|
13
|
+
/** How a layout ended: placed, given up on by whoever waited, or never answered. */
|
|
14
|
+
export type ElkLayoutAnswer = {
|
|
15
|
+
status: 'placed';
|
|
16
|
+
points: ElkLayoutPoint[];
|
|
17
|
+
} | {
|
|
18
|
+
status: 'cancelled';
|
|
19
|
+
} | {
|
|
20
|
+
status: 'failed';
|
|
21
|
+
error: unknown;
|
|
22
|
+
};
|
|
23
|
+
export type LayoutByElkOptions = {
|
|
24
|
+
/**
|
|
25
|
+
* Whether the toast waits until the layout has run long enough to say so,
|
|
26
|
+
* for a placement nobody asked to watch, rather than going up at once.
|
|
27
|
+
*/
|
|
28
|
+
whenSlow?: boolean;
|
|
29
|
+
/** Ends the wait from outside, as Cancel does, and takes the toast down. */
|
|
30
|
+
signal?: AbortSignal;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* One ELK layout behind the Placing toast, reading nothing but the request and
|
|
34
|
+
* the app context, so the document and a document not loaded yet are placed
|
|
35
|
+
* alike. Cancel and the stop key end the wait at once, the toast with it.
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* const answer = await layoutByElk(app, request, { whenSlow: true });
|
|
39
|
+
*/
|
|
40
|
+
export declare function layoutByElk({ emitter, shortcut$ }: AppContext, request: ElkLayoutRequest, { whenSlow, signal }?: LayoutByElkOptions): Promise<ElkLayoutAnswer>;
|
|
41
|
+
export {};
|
|
42
|
+
//# sourceMappingURL=elkPlacement.d.ts.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AppContext } from '../../appContext';
|
|
2
|
+
import { ElkLayoutPoint, ElkLayoutRequest } from '../../../services/elk-layout';
|
|
3
|
+
/**
|
|
4
|
+
* What a Flow placement of a document asks ELK, measured on a plain store of
|
|
5
|
+
* its own with the editor's text measure, so nothing reaches the editor's
|
|
6
|
+
* store. Null under two tables or with no relationship, the grid's cases.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* const request = createFlowRequest(app, json);
|
|
10
|
+
*/
|
|
11
|
+
export declare function createFlowRequest({ toWidth }: AppContext, json: string): ElkLayoutRequest | null;
|
|
12
|
+
/**
|
|
13
|
+
* Where each table of a document not loaded yet goes by Flow, measured from
|
|
14
|
+
* the corner of the block the tables make, so the caller decides where that
|
|
15
|
+
* block stands. Null leaves the tables to the grid, and says nothing of why.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* const points = await placeByFlow(app, json, controller.signal);
|
|
19
|
+
*/
|
|
20
|
+
export declare function placeByFlow(app: AppContext, json: string, signal?: AbortSignal): Promise<ElkLayoutPoint[] | null>;
|
|
21
|
+
//# sourceMappingURL=flowPlacement.d.ts.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { AnyAction } from '@dineug/r-html';
|
|
2
|
+
import { RootState } from '../../../engine/state';
|
|
3
|
+
import { TableMove } from '../../../konva/scene/contentBounds';
|
|
4
|
+
import { GeometrySource } from '../../../utils/draw-relationship/geometrySource';
|
|
5
|
+
/**
|
|
6
|
+
* What a placement lands as: each table at its point, each group with members
|
|
7
|
+
* at the rect round where they land, and the view centred on the box all of it
|
|
8
|
+
* fills, read before the move. Dispatched together, they are one undo entry.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* store.dispatch(toPlacementActions(store.state, points));
|
|
12
|
+
*/
|
|
13
|
+
export declare function toPlacementActions(state: RootState, tables: ReadonlyArray<TableMove>, source?: GeometrySource): AnyAction[];
|
|
14
|
+
//# sourceMappingURL=placementActions.d.ts.map
|
|
@@ -1,15 +1,5 @@
|
|
|
1
|
-
import { FC } from '@dineug/r-html';
|
|
2
1
|
import { AppContext } from '../../appContext';
|
|
3
2
|
import { ElkLayoutPoint, ElkPlacement } from '../../../services/elk-layout';
|
|
4
|
-
type PlacingToastProps = {
|
|
5
|
-
onCancel: () => void;
|
|
6
|
-
};
|
|
7
|
-
/**
|
|
8
|
-
* The message up while ELK works, and the whole of what a one-shot placement
|
|
9
|
-
* shows. There is no progress to follow and nothing to read off a layout that
|
|
10
|
-
* does not exist yet, so Cancel is the only thing on it. A view placement shows it too.
|
|
11
|
-
*/
|
|
12
|
-
export declare const PlacingToast: FC<PlacingToastProps>;
|
|
13
3
|
/**
|
|
14
4
|
* Places every table by ELK and hands the layout straight over. No preview
|
|
15
5
|
* overlay: one layout arrives at once, there is nothing to weigh before it
|
|
@@ -19,5 +9,4 @@ export declare const PlacingToast: FC<PlacingToastProps>;
|
|
|
19
9
|
* runElkPlacement(app.value, placement, handleChangeAutomaticTablePlacement);
|
|
20
10
|
*/
|
|
21
11
|
export declare function runElkPlacement(app: AppContext, placement: ElkPlacement, onChange: (tables: ElkLayoutPoint[]) => void): Promise<void>;
|
|
22
|
-
export {};
|
|
23
12
|
//# sourceMappingURL=runElkPlacement.d.ts.map
|
|
@@ -15,8 +15,8 @@ export type SceneIconOptions = {
|
|
|
15
15
|
};
|
|
16
16
|
/**
|
|
17
17
|
* A lucide icon drawn at size, by scaling its own 24 unit box. The scale carries
|
|
18
|
-
* the stroke with it, which
|
|
19
|
-
*
|
|
18
|
+
* the stroke with it, which keeps the weight of the svg the DOM scene drew, and
|
|
19
|
+
* a click answers the main button alone (mainButtonClick).
|
|
20
20
|
*/
|
|
21
21
|
export declare function sceneIcon({ icon, name, kind, size, color, x, y, click, mouseenter, mouseleave, }: SceneIconOptions): DOMTemplateLiterals | null;
|
|
22
22
|
//# sourceMappingURL=SceneIcon.template.d.ts.map
|
|
@@ -1,8 +1,24 @@
|
|
|
1
|
+
import { HeldTableGroupBoxes } from '../../../engine/modules/table-group/generator.actions';
|
|
1
2
|
import { RootState } from '../../../engine/state';
|
|
2
3
|
import { GeometrySource } from '../../../utils/draw-relationship/geometrySource';
|
|
3
|
-
/**
|
|
4
|
+
/**
|
|
5
|
+
* Raises the flag, holds the scene's view as it stands until endEntityDrag,
|
|
6
|
+
* and, in the document while groups show, the box each group shows.
|
|
7
|
+
*/
|
|
4
8
|
export declare function beginEntityDrag(root: RootState, source?: GeometrySource): void;
|
|
5
9
|
export declare function endEntityDrag(root: RootState, source?: GeometrySource): void;
|
|
6
10
|
/** Reads the flag through the observable, so a scene render tracks it. */
|
|
7
11
|
export declare function isEntityDragActive(root: RootState, source?: GeometrySource): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Marks the drag as past the click distance from its press, after which its
|
|
14
|
+
* drop is judged and a drop target shown: a tremor short of it changes no group.
|
|
15
|
+
*/
|
|
16
|
+
export declare function markEntityDragTravelled(root: RootState, source?: GeometrySource): void;
|
|
17
|
+
/** Whether the drag the scene holds has travelled the click distance, tracked as the flag is. */
|
|
18
|
+
export declare function hasEntityDragTravelled(root: RootState, source?: GeometrySource): boolean;
|
|
19
|
+
/**
|
|
20
|
+
* The box each group showed as the scene's drag began, or null while no drag
|
|
21
|
+
* holds it: what a group the drag leaves standing is drawn and judged in.
|
|
22
|
+
*/
|
|
23
|
+
export declare function getHeldTableGroupBoxes(root: RootState, source?: GeometrySource): HeldTableGroupBoxes | null;
|
|
8
24
|
//# sourceMappingURL=entityDrag.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { DragMove } from '../../../utils/globalEventObservable';
|
|
2
|
+
/**
|
|
3
|
+
* Takes a middle press anywhere in a stage container as a pan, heard in the
|
|
4
|
+
* capture phase before konva or the scene root, and prevents its lift wherever
|
|
5
|
+
* it lands: nothing selects, drags or clicks, and nothing autoscrolls or pastes.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* addUnsubscribe(listenMiddleButtonPan(container, handleMove, handlePress));
|
|
9
|
+
*/
|
|
10
|
+
export declare function listenMiddleButtonPan(container: HTMLElement, onMove: (move: DragMove) => void, onPress?: () => void): () => void;
|
|
11
|
+
//# sourceMappingURL=middleButtonPan.d.ts.map
|
|
@@ -5,6 +5,8 @@ export type RelationshipProps = {
|
|
|
5
5
|
strokeWidth: number;
|
|
6
6
|
/** Whether the view lights this connector, decided by the scene it is drawn in. */
|
|
7
7
|
lit?: boolean;
|
|
8
|
+
/** Told as the pointer comes onto the connector and leaves it, for its label to light along. */
|
|
9
|
+
onHover?: (id: string, hover: boolean) => void;
|
|
8
10
|
};
|
|
9
11
|
declare const Relationship: FC<RelationshipProps>;
|
|
10
12
|
export default Relationship;
|
package/dist/components/erd/canvas/relationship-group/relationship/RelationshipActionLabel.d.ts
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { FC } from '@dineug/r-html';
|
|
2
|
+
import { Relationship } from '../../../../../internal-types';
|
|
3
|
+
import { Anchor } from '../../../../../utils/draw-relationship';
|
|
4
|
+
/** The size the referential action label is drawn at, in scene units. */
|
|
5
|
+
export declare const ACTION_LABEL_FONT_SIZE = 10;
|
|
6
|
+
type LabelBox = {
|
|
7
|
+
x: number;
|
|
8
|
+
y: number;
|
|
9
|
+
width: number;
|
|
10
|
+
height: number;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* The box the label fills beside the child end: over a route leaving sideways,
|
|
14
|
+
* reaching away from the table, and right of one leaving up or down. Across, it
|
|
15
|
+
* clears the widest marker, so no stroke of a crow's foot runs under it.
|
|
16
|
+
*/
|
|
17
|
+
export declare function actionLabelBox(end: Anchor, text: string): LabelBox;
|
|
18
|
+
export type RelationshipActionLabelProps = {
|
|
19
|
+
relationship: Relationship;
|
|
20
|
+
/** The connector the pointer rests on, whose label lights with it. */
|
|
21
|
+
hovered?: {
|
|
22
|
+
id: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* The ON DELETE and ON UPDATE a connector sets, at its child end, on a box of
|
|
27
|
+
* the canvas colour. The group draws every label after every route, so another
|
|
28
|
+
* connector crossing one runs under the box rather than through the text.
|
|
29
|
+
*/
|
|
30
|
+
declare const RelationshipActionLabel: FC<RelationshipActionLabelProps>;
|
|
31
|
+
export default RelationshipActionLabel;
|
|
32
|
+
//# sourceMappingURL=RelationshipActionLabel.d.ts.map
|
|
@@ -3,6 +3,15 @@ import { KonvaEventObject } from 'konva/lib/Node';
|
|
|
3
3
|
export type SceneMouseEvent = KonvaEventObject<MouseEvent>;
|
|
4
4
|
export type SceneTouchEvent = KonvaEventObject<TouchEvent>;
|
|
5
5
|
export type ScenePointerEvent = SceneMouseEvent | SceneTouchEvent;
|
|
6
|
+
/**
|
|
7
|
+
* The click listener of a scene button, which acts on the main button alone:
|
|
8
|
+
* konva makes a click of any button's press and lift, and a right click is the
|
|
9
|
+
* context menu's. A Mac control click is the main button, so it still acts.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* on:click={mainButtonClick(handleRemove)}
|
|
13
|
+
*/
|
|
14
|
+
export declare const mainButtonClick: (click: (event: SceneMouseEvent) => void) => (event: SceneMouseEvent) => void;
|
|
6
15
|
/**
|
|
7
16
|
* The face utils/text.ts measures a string with. Drawing in anything else would
|
|
8
17
|
* make a cell wider or narrower than the width the layout reserved for it.
|
|
@@ -78,6 +87,22 @@ export declare const DOCUMENT_CARD_SHADOW_OFFSET_Y = 2;
|
|
|
78
87
|
*/
|
|
79
88
|
export declare const VIEW_CARD_GLOW_BLUR = 14;
|
|
80
89
|
export declare const VIEW_CARD_GLOW_OPACITY = 0.55;
|
|
90
|
+
/**
|
|
91
|
+
* How much of its color a table group's body shows, the canvas and the
|
|
92
|
+
* connectors over it reading through.
|
|
93
|
+
*/
|
|
94
|
+
export declare const TABLE_GROUP_FILL_OPACITY = 0.12;
|
|
95
|
+
/** The radius a table group's box is rounded with, a table's own. */
|
|
96
|
+
export declare const TABLE_GROUP_CORNER_RADIUS = 6;
|
|
97
|
+
/** The room a table group's name keeps from each end of its title bar, the name editor's too. */
|
|
98
|
+
export declare const TABLE_GROUP_TITLE_PADDING = 8;
|
|
99
|
+
/** The weight a table group's name is drawn and edited at, a heading over the tables' own names. */
|
|
100
|
+
export declare const TABLE_GROUP_TITLE_FONT_WEIGHT = "bold";
|
|
101
|
+
/**
|
|
102
|
+
* The line a table drag outlines the group its drop would join with, twice
|
|
103
|
+
* the box's own line so it reads apart from the selection.
|
|
104
|
+
*/
|
|
105
|
+
export declare const TABLE_GROUP_DROP_WIDTH = 2;
|
|
81
106
|
/** The side of the square viewBox every icon is authored in. */
|
|
82
107
|
export declare const ICON_VIEW_SIZE: number;
|
|
83
108
|
/** What a colour is when the scene paints nothing, as a CSS keyword konva takes. */
|
|
@@ -108,6 +133,19 @@ export declare const CURSOR_INHERIT = "";
|
|
|
108
133
|
* on:mouseenter={(event) => setSceneCursor(event, CURSOR_POINTER)}
|
|
109
134
|
*/
|
|
110
135
|
export declare function setSceneCursor(event: ScenePointerEvent, cursor: string): void;
|
|
136
|
+
/**
|
|
137
|
+
* The cursors one scene component asks for, so a node unmounted from under the pointer, which konva
|
|
138
|
+
* sends no leave for, hands the container back the cursor it took: release writes CURSOR_INHERIT
|
|
139
|
+
* once, unless the last cursor the component asked for already was.
|
|
140
|
+
*
|
|
141
|
+
* @example
|
|
142
|
+
* const cursor = createSceneCursorScope();
|
|
143
|
+
* onUnmounted(cursor.release);
|
|
144
|
+
*/
|
|
145
|
+
export declare function createSceneCursorScope(): {
|
|
146
|
+
set(event: ScenePointerEvent, cursor: string): void;
|
|
147
|
+
release(): void;
|
|
148
|
+
};
|
|
111
149
|
/**
|
|
112
150
|
* Keeps the container on a cursor for a mouse gesture, whatever the pointer runs
|
|
113
151
|
* over, and hands back the release that shows what the last hover asked for. A
|
|
@@ -2,7 +2,10 @@ import { FC } from '@dineug/r-html';
|
|
|
2
2
|
import { Table } from '../../../../internal-types';
|
|
3
3
|
export type TableProps = {
|
|
4
4
|
table: Table;
|
|
5
|
-
/**
|
|
5
|
+
/**
|
|
6
|
+
* A drawn copy rather than the table itself, so nothing in it takes an id,
|
|
7
|
+
* and no group color either: a copy, a duplicate's, lands in no group.
|
|
8
|
+
*/
|
|
6
9
|
preview?: boolean;
|
|
7
10
|
hovered?: boolean;
|
|
8
11
|
hoveredColumnId?: string | null;
|
|
@@ -17,6 +20,11 @@ export type TableProps = {
|
|
|
17
20
|
* by the scene, which walks the document's links once for every card it draws.
|
|
18
21
|
*/
|
|
19
22
|
relatedColumnIds?: Set<string> | null;
|
|
23
|
+
/**
|
|
24
|
+
* The group whose color the header wears, '' for none, named by a scene that
|
|
25
|
+
* reads the group list once for every table; a table drawn alone reads its own.
|
|
26
|
+
*/
|
|
27
|
+
tableGroupId?: string;
|
|
20
28
|
};
|
|
21
29
|
declare const Table: FC<TableProps>;
|
|
22
30
|
export default Table;
|
|
@@ -77,6 +77,17 @@ export declare function getCellTextBaseline(fontFamily?: string): number;
|
|
|
77
77
|
export declare function getCellTextHeight(fontFamily?: string): number;
|
|
78
78
|
/** Where a column row's cells start, past the key badge its own source sizes. */
|
|
79
79
|
export declare function getColumnCellsX(source?: GeometrySource): number;
|
|
80
|
+
/**
|
|
81
|
+
* Where a document row's alternate key mark starts: one margin past the last
|
|
82
|
+
* of the cells given, whatever order the settings put them in. The mark is
|
|
83
|
+
* derived, so it is no cell of that order and nothing focuses, edits or moves it.
|
|
84
|
+
*/
|
|
85
|
+
export declare function getAlternateKeyMarkX(slots: ColumnCellSlot[]): number;
|
|
86
|
+
/**
|
|
87
|
+
* The box the mark's code face line is centred in, so it stands on the text
|
|
88
|
+
* face's baseline, the one the cell before it is drawn on, and not on its own.
|
|
89
|
+
*/
|
|
90
|
+
export declare function getAlternateKeyMarkHeight(): number;
|
|
80
91
|
/** The comment width a table draws at, clamped by the setting when it is set. */
|
|
81
92
|
export declare function getWidthComment(state: RootState, table: Table): number;
|
|
82
93
|
/**
|
|
@@ -45,6 +45,13 @@ export type ColumnProps = {
|
|
|
45
45
|
widthDataType: number;
|
|
46
46
|
widthDefault: number;
|
|
47
47
|
widthComment: number;
|
|
48
|
+
/**
|
|
49
|
+
* The room the table keeps for alternate key marks after the last cell, 0
|
|
50
|
+
* while it draws none; the same for every row, so the marks stay in line.
|
|
51
|
+
*/
|
|
52
|
+
widthAlternateKey?: number;
|
|
53
|
+
/** The mark this row carries in that room, AK1.2 or several comma joined. */
|
|
54
|
+
alternateKey?: string;
|
|
48
55
|
focusName: boolean;
|
|
49
56
|
focusDataType: boolean;
|
|
50
57
|
focusNotNull: boolean;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { SceneMouseEvent } from '../sceneTokens';
|
|
2
|
-
import { FocusType } from '../../../../engine/modules/editor/state';
|
|
3
2
|
export type DoubleClickGuard = {
|
|
4
|
-
/** Records the cell a click opened a pair on. */
|
|
5
|
-
track(cell:
|
|
3
|
+
/** Records the cell, or a group's part, a click opened a pair on. */
|
|
4
|
+
track(cell: string, event: SceneMouseEvent): void;
|
|
6
5
|
/** Whether a konva dblclick closes a pair that began on this same cell. */
|
|
7
|
-
isDouble(cell:
|
|
6
|
+
isDouble(cell: string, event: SceneMouseEvent): boolean;
|
|
8
7
|
};
|
|
9
8
|
/**
|
|
10
9
|
* Tells a real double click from the one konva invents. Konva fires dblclick on
|
|
@@ -1,15 +1,8 @@
|
|
|
1
|
-
import { GeneratorAction } from '../../../../engine/generator.actions';
|
|
2
1
|
import { RxStore } from '../../../../engine/rx-store';
|
|
3
2
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*/
|
|
8
|
-
export declare const showErdTableAction$: (tableId: string) => GeneratorAction;
|
|
9
|
-
/**
|
|
10
|
-
* The Go to ERD button's whole errand: the tab in one dispatch, the scroll and
|
|
11
|
-
* the selection in a second. A batch is classified by the state before it, so
|
|
12
|
-
* a scroll travelling with the tab change would be redirected into the view it leaves.
|
|
3
|
+
* The Go to ERD button's whole errand, a jump from outside the canvas like any
|
|
4
|
+
* other: the tab in one dispatch, then the scroll and the selection, which
|
|
5
|
+
* never starts or finishes a relationship being drawn.
|
|
13
6
|
*
|
|
14
7
|
* @example
|
|
15
8
|
* goToErdTable(store, 'orders');
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { FC } from '@dineug/r-html';
|
|
2
|
+
import { TableGroupLinks } from './tableGroupBox';
|
|
3
|
+
import { Table, TableGroup } from '../../../../internal-types';
|
|
4
|
+
export type TableGroupProps = {
|
|
5
|
+
group: TableGroup;
|
|
6
|
+
/** The group's member tables, read once for every group by TableGroups. */
|
|
7
|
+
members: ReadonlyArray<Table>;
|
|
8
|
+
links: TableGroupLinks;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* A group's frame over its body (TableGroupBody), in getDrawnTableGroupRect's box: a title bar with
|
|
12
|
+
* the group icon, the name and the remove button, one line around the box, the peer ring and the
|
|
13
|
+
* sashes, in the theme's group colors with no color it reads.
|
|
14
|
+
*/
|
|
15
|
+
declare const TableGroup: FC<TableGroupProps>;
|
|
16
|
+
export default TableGroup;
|
|
17
|
+
//# sourceMappingURL=TableGroup.d.ts.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { FC } from '@dineug/r-html';
|
|
2
|
+
import { TableGroupLinks } from './tableGroupBox';
|
|
3
|
+
import { Table, TableGroup } from '../../../../internal-types';
|
|
4
|
+
export type TableGroupBodyProps = {
|
|
5
|
+
group: TableGroup;
|
|
6
|
+
/** The group's member tables, read once for every group by TableGroups. */
|
|
7
|
+
members: ReadonlyArray<Table>;
|
|
8
|
+
links: TableGroupLinks;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* A group's body under its bar, in its color at a low alpha or the theme's group body (alpha its own),
|
|
12
|
+
* drawn before every frame, so no body stands over another group's bar. The main button reads it as
|
|
13
|
+
* the canvas under it, so only another button selects the group there, for the menu it opens.
|
|
14
|
+
*/
|
|
15
|
+
declare const TableGroupBody: FC<TableGroupBodyProps>;
|
|
16
|
+
export default TableGroupBody;
|
|
17
|
+
//# sourceMappingURL=TableGroupBody.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FC } from '@dineug/r-html';
|
|
2
|
+
export type TableGroupDropTargetProps = {};
|
|
3
|
+
/**
|
|
4
|
+
* The outline of each group a table drag would drop a table into, in the focus color, over the
|
|
5
|
+
* static scene and under the dragged tables, in the box the drop is judged in; nothing where the
|
|
6
|
+
* drop would put every table in none, nor short of the click distance, where it judges none.
|
|
7
|
+
*/
|
|
8
|
+
declare const TableGroupDropTarget: FC<TableGroupDropTargetProps>;
|
|
9
|
+
export default TableGroupDropTarget;
|
|
10
|
+
//# sourceMappingURL=TableGroupDropTarget.d.ts.map
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { FC } from '@dineug/r-html';
|
|
2
|
+
import { TableGroup, ValuesType } from '../../../../internal-types';
|
|
3
|
+
import { Rect } from '../../../../konva/scene/metrics';
|
|
4
|
+
export declare const TableGroupSashPosition: {
|
|
5
|
+
readonly left: "left";
|
|
6
|
+
readonly right: "right";
|
|
7
|
+
readonly top: "top";
|
|
8
|
+
readonly bottom: "bottom";
|
|
9
|
+
readonly lt: "lt";
|
|
10
|
+
readonly rt: "rt";
|
|
11
|
+
readonly lb: "lb";
|
|
12
|
+
readonly rb: "rb";
|
|
13
|
+
};
|
|
14
|
+
export type TableGroupSashPosition = ValuesType<typeof TableGroupSashPosition>;
|
|
15
|
+
/**
|
|
16
|
+
* The box a sash drag leaves, the edges it grabs moved by the drag in scene
|
|
17
|
+
* units: never smaller than the minimum, nor than the members' padded box,
|
|
18
|
+
* which the edge stops at however far past it the pointer goes.
|
|
19
|
+
*/
|
|
20
|
+
export declare function resizeTableGroupRect(start: Rect, members: Rect | null, position: TableGroupSashPosition, movementX: number, movementY: number): Rect;
|
|
21
|
+
export type TableGroupSashProps = {
|
|
22
|
+
group: TableGroup;
|
|
23
|
+
/** The box the group is drawn in, in scene units; the sashes sit on its edges. */
|
|
24
|
+
box: Rect;
|
|
25
|
+
/** Takes each step's box to draw, and null once the drag is over. */
|
|
26
|
+
onDraft: (rect: Rect | null) => void;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* The eight resize handles on a group's edges and corners, selected or not, as a memo's are. A drag
|
|
30
|
+
* draws its steps without writing them and writes one resize as it ends, so
|
|
31
|
+
* peers hear one write and one undo puts back the rect it started from.
|
|
32
|
+
*/
|
|
33
|
+
declare const TableGroupSash: FC<TableGroupSashProps>;
|
|
34
|
+
export default TableGroupSash;
|
|
35
|
+
//# sourceMappingURL=TableGroupSash.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FC } from '@dineug/r-html';
|
|
2
|
+
export type TableGroupsProps = {};
|
|
3
|
+
/**
|
|
4
|
+
* The document's groups by zIndex in two passes, every body before every frame, so a group's bar
|
|
5
|
+
* and sashes stand over every body: a large group drawn over a smaller one it holds leaves the
|
|
6
|
+
* inner bar to its own group. A scene mounts it while groups show; it reads the list itself.
|
|
7
|
+
*/
|
|
8
|
+
declare const TableGroups: FC<TableGroupsProps>;
|
|
9
|
+
export default TableGroups;
|
|
10
|
+
//# sourceMappingURL=TableGroups.d.ts.map
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { DoubleClickGuard } from '../table/doubleClick';
|
|
2
|
+
import { RootState } from '../../../../engine/state';
|
|
3
|
+
import { Table, TableGroup } from '../../../../internal-types';
|
|
4
|
+
import { Rect } from '../../../../konva/scene/metrics';
|
|
5
|
+
import { GeometrySource } from '../../../../utils/draw-relationship/geometrySource';
|
|
6
|
+
/**
|
|
7
|
+
* The box a group is drawn in, on the canvas and the minimap: getTableGroupRect's, and while a drag
|
|
8
|
+
* holds the scene and leaves the group standing, the box it held as the drag began with the members
|
|
9
|
+
* left standing, so it neither shrinks under a member lifted out nor stretches after one carried off.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* const box = getDrawnTableGroupRect(state, group, source, members);
|
|
13
|
+
*/
|
|
14
|
+
export declare function getDrawnTableGroupRect(state: RootState, group: TableGroup, source: GeometrySource, members: ReadonlyArray<Table>): Rect;
|
|
15
|
+
/** The two nodes a group draws apart, each telling the other whether the pointer is over it. */
|
|
16
|
+
export type TableGroupHoverPart = 'frame' | 'body';
|
|
17
|
+
/**
|
|
18
|
+
* What a group's body and its frame share, drawn apart in TableGroups' two passes: the box a sash
|
|
19
|
+
* drag draws until its one resize, the guard telling a double click on the bar from a pair begun on
|
|
20
|
+
* the body, and whether the pointer is over either, which shows the remove button.
|
|
21
|
+
*/
|
|
22
|
+
export type TableGroupLinks = {
|
|
23
|
+
draftOf(groupId: string): Rect | null;
|
|
24
|
+
setDraft(groupId: string, rect: Rect | null): void;
|
|
25
|
+
guardOf(groupId: string): DoubleClickGuard;
|
|
26
|
+
isHovered(groupId: string): boolean;
|
|
27
|
+
setHover(groupId: string, part: TableGroupHoverPart, hovered: boolean): void;
|
|
28
|
+
};
|
|
29
|
+
export declare function createTableGroupLinks(): TableGroupLinks;
|
|
30
|
+
/**
|
|
31
|
+
* Reads each group's members off one walk over the tables, handing a group the
|
|
32
|
+
* list it had last time while no member came or went, so a scene render that
|
|
33
|
+
* moved no membership leaves every group component's props as they were.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* const membersOf = memberLists(state);
|
|
37
|
+
* membersOf(group.id);
|
|
38
|
+
*/
|
|
39
|
+
export declare function createTableGroupMemberLists(): (state: RootState) => (groupId: string) => ReadonlyArray<Table>;
|
|
40
|
+
//# sourceMappingURL=tableGroupBox.d.ts.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/** The group icon before the name, at the table header icon's size and gap. */
|
|
2
|
+
export declare const TABLE_GROUP_ICON_SIZE = 12;
|
|
3
|
+
/** Where the name starts along the title bar, past the icon and its gap. */
|
|
4
|
+
export declare const TABLE_GROUP_NAME_X: number;
|
|
5
|
+
/** The remove button at the end of the bar, at the size of a table header's. */
|
|
6
|
+
export declare const TABLE_GROUP_REMOVE_SIZE = 12;
|
|
7
|
+
/**
|
|
8
|
+
* The box a group's name is centred in, down from the top of its title bar on
|
|
9
|
+
* a whole pixel. The scene hands konva this box with verticalAlign middle and
|
|
10
|
+
* the name editor gives its input the same one, so the two baselines meet.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* const { x, y, width, height } = getTableGroupNameBox(box.width);
|
|
14
|
+
*/
|
|
15
|
+
export declare function getTableGroupNameBox(barWidth?: number): {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
width: number;
|
|
19
|
+
height: number;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Where the group icon stands on the title bar: the bar's padding in, centred
|
|
23
|
+
* down the bar on a whole pixel, as the table header centres its icon.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* const { x, y, size } = getTableGroupIconBox();
|
|
27
|
+
*/
|
|
28
|
+
export declare function getTableGroupIconBox(): {
|
|
29
|
+
x: number;
|
|
30
|
+
y: number;
|
|
31
|
+
size: number;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Where the remove button stands on the title bar: the bar's padding short of
|
|
35
|
+
* its end, centred down the bar on a whole pixel, as the group icon is.
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* const { x, y, size } = getTableGroupRemoveBox(box.width);
|
|
39
|
+
*/
|
|
40
|
+
export declare function getTableGroupRemoveBox(barWidth: number): {
|
|
41
|
+
x: number;
|
|
42
|
+
y: number;
|
|
43
|
+
size: number;
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=titleLayout.d.ts.map
|
|
@@ -20,6 +20,8 @@ export type MoveEntityOptions = {
|
|
|
20
20
|
* again here, so a leaf pays for one context subscription and not two.
|
|
21
21
|
*/
|
|
22
22
|
source: Ref<GeometrySource>;
|
|
23
|
+
/** Read at the press: false leaves it a selection that lifts nothing. */
|
|
24
|
+
canMove?: () => boolean;
|
|
23
25
|
};
|
|
24
26
|
/**
|
|
25
27
|
* The pointer start every draggable entity shares: select it, hand an Alt drag
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { FC, Ref } from '@dineug/r-html';
|
|
2
|
+
import { PillSize } from './placePill';
|
|
3
|
+
export type DrawTargetButtonsProps = {
|
|
4
|
+
root: Ref<HTMLDivElement>;
|
|
5
|
+
readonly: boolean;
|
|
6
|
+
};
|
|
7
|
+
/** The pill at the size the stylesheet gives it: two buttons, the gap and the padding. */
|
|
8
|
+
export declare const PILL_SIZE: PillSize;
|
|
9
|
+
/**
|
|
10
|
+
* The two buttons beside the table a relationship is drawn to: one maps the
|
|
11
|
+
* parent's key to columns the child already has, the other adds new ones as a
|
|
12
|
+
* press on the table does. A layer of the document canvas, never of a view.
|
|
13
|
+
*/
|
|
14
|
+
declare const DrawTargetButtons: FC<DrawTargetButtonsProps>;
|
|
15
|
+
export default DrawTargetButtons;
|
|
16
|
+
//# sourceMappingURL=DrawTargetButtons.d.ts.map
|