@dineug/erd-editor 4.2.0 → 5.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 +208 -20
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/assertClassBrand.js +7 -0
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/checkPrivateRedeclaration.js +6 -0
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/classPrivateFieldGet2.js +7 -0
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/classPrivateFieldInitSpec.js +7 -0
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/classPrivateFieldSet2.js +7 -0
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/defineProperty.js +12 -0
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/toPrimitive.js +14 -0
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/toPropertyKey.js +9 -0
- package/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/typeof.js +11 -0
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/components/appContext.js +45 -0
- package/dist/components/customElementClass.d.ts +10 -0
- package/dist/components/dictionary/Dictionary.js +584 -0
- package/dist/components/dictionary/Dictionary.styles.js +208 -0
- package/dist/components/dictionary/checkCount.js +59 -0
- package/dist/components/dictionary/checkSheet.js +121 -0
- package/dist/components/dictionary/dictionary-context-menu/DictionaryContextMenu.js +17 -0
- package/dist/components/dictionary/dictionaryCommit.js +237 -0
- package/dist/components/dictionary/dictionaryFile.js +72 -0
- package/dist/components/dictionary/dictionaryKeys.js +86 -0
- package/dist/components/dictionary/dictionaryView.js +100 -0
- package/dist/components/dictionary/domain-cell-editor/DomainCellEditor.js +110 -0
- package/dist/components/dictionary/domain-cell-editor/DomainCellEditor.styles.js +65 -0
- package/dist/components/dictionary/domain-cell-editor/openDomainCellEditor.js +16 -0
- package/dist/components/dictionary/gridTheme.js +51 -0
- package/dist/components/dictionary/sheets.js +199 -0
- package/dist/components/diffContext.d.ts +10 -0
- package/dist/components/diffContext.js +7 -0
- package/dist/components/element-host/localeHost.d.ts +43 -0
- package/dist/components/element-host/localeHost.js +81 -0
- package/dist/components/element-host/themeHost.d.ts +30 -0
- package/dist/components/element-host/themeHost.js +101 -0
- package/dist/components/erd/Erd.d.ts +2 -0
- package/dist/components/erd/Erd.js +431 -0
- package/dist/components/erd/Erd.styles.js +12 -0
- package/dist/components/erd/automatic-table-placement/AutomaticTablePlacement.js +139 -0
- package/dist/components/erd/automatic-table-placement/AutomaticTablePlacement.styles.js +22 -0
- package/dist/components/erd/automatic-table-placement/createAutomaticTablePlacement.js +175 -0
- package/dist/components/erd/automatic-table-placement/elkPlacement.js +56 -0
- package/dist/components/erd/automatic-table-placement/flowPlacement.js +32 -0
- package/dist/components/erd/automatic-table-placement/placementActions.js +33 -0
- package/dist/components/erd/automatic-table-placement/runElkPlacement.d.ts +3 -2
- package/dist/components/erd/automatic-table-placement/runElkPlacement.js +30 -0
- package/dist/components/erd/canvas/Canvas.d.ts +8 -2
- package/dist/components/erd/canvas/Canvas.js +78 -0
- package/dist/components/erd/canvas/Canvas.styles.js +15 -0
- package/dist/components/erd/canvas/CanvasScene.d.ts +28 -3
- package/dist/components/erd/canvas/CanvasScene.js +80 -0
- package/dist/components/erd/canvas/DiffOutline.template.js +5 -0
- package/dist/components/erd/canvas/EditOverlay.js +349 -0
- package/dist/components/erd/canvas/EditOverlay.styles.js +19 -0
- package/dist/components/erd/canvas/SceneIcon.template.js +14 -0
- package/dist/components/erd/canvas/altDragDuplicate.js +16 -0
- package/dist/components/erd/canvas/column-drag-ghost/ColumnDragGhost.js +61 -0
- package/dist/components/erd/canvas/{column-drag-ghost/columnDragPointer.d.ts → columnDragPointer.d.ts} +2 -2
- package/dist/components/erd/canvas/columnDragPointer.js +30 -0
- package/dist/components/erd/canvas/drag-select/DragSelect.js +109 -0
- package/dist/components/erd/canvas/draw-relationship/DrawRelationship.js +60 -0
- package/dist/components/erd/canvas/duplicate-ghost/DuplicateGhost.js +108 -0
- package/dist/components/erd/canvas/editingLayers.d.ts +8 -0
- package/dist/components/erd/canvas/editingLayers.js +21 -0
- package/dist/components/erd/canvas/entityDrag.d.ts +2 -1
- package/dist/components/erd/canvas/entityDrag.js +42 -0
- package/dist/components/erd/canvas/high-level-table/HighLevelTable.js +82 -0
- package/dist/components/erd/canvas/highlightTransition.d.ts +6 -0
- package/dist/components/erd/canvas/highlightTransition.js +79 -0
- package/dist/components/erd/canvas/memo/Memo.js +152 -0
- package/dist/components/erd/canvas/memo/memo-sash/MemoSash.js +190 -0
- package/dist/components/erd/canvas/memo/memoCaret.js +66 -0
- package/dist/components/erd/canvas/memo/memoScroll.js +14 -0
- package/dist/components/erd/canvas/memo/memoText.js +41 -0
- package/dist/components/erd/canvas/memo/useMoveMemo.js +19 -0
- package/dist/components/erd/canvas/middleButtonPan.js +33 -0
- package/dist/components/erd/canvas/mixColor.js +23 -0
- package/dist/components/erd/canvas/readPress.d.ts +43 -0
- package/dist/components/erd/canvas/readPress.js +102 -0
- package/dist/components/erd/canvas/relationship-group/RelationshipGroup.js +26 -0
- package/dist/components/erd/canvas/relationship-group/relationship/Relationship.js +153 -0
- package/dist/components/erd/canvas/relationship-group/relationship/Relationship.template.js +75 -0
- package/dist/components/erd/canvas/relationship-group/relationship/RelationshipActionLabel.js +68 -0
- package/dist/components/erd/canvas/sceneHit.js +38 -0
- package/dist/components/erd/canvas/sceneKind.js +12 -0
- package/dist/components/erd/canvas/sceneRetention.js +20 -0
- package/dist/components/erd/canvas/sceneTokens.js +110 -0
- package/dist/components/erd/canvas/shared-drag-select/SharedDragSelect.js +35 -0
- package/dist/components/erd/canvas/shared-mouse-tracker/SharedMouseTracker.js +29 -0
- package/dist/components/erd/canvas/shared-mouse-tracker/shared-mouse-cursor/SharedMouseCursor.js +40 -0
- package/dist/components/erd/canvas/stagePressScope.d.ts +11 -0
- package/dist/components/erd/canvas/stagePressScope.js +24 -0
- package/dist/components/erd/canvas/table/Table.js +399 -0
- package/dist/components/erd/canvas/table/blankLogicalName.js +14 -0
- package/dist/components/erd/canvas/table/cellLayout.js +147 -0
- package/dist/components/erd/canvas/table/colorEdge.js +16 -0
- package/dist/components/erd/canvas/table/column/Column.d.ts +6 -1
- package/dist/components/erd/canvas/table/column/Column.js +416 -0
- package/dist/components/erd/canvas/table/dictionaryMarks.js +42 -0
- package/dist/components/erd/canvas/table/doubleClick.js +15 -0
- package/dist/components/erd/canvas/table/goToErd.js +10 -0
- package/dist/components/erd/canvas/table/useFocusTable.js +19 -0
- package/dist/components/erd/canvas/table/useMoveTable.js +21 -0
- package/dist/components/erd/canvas/table/useSharedFocusTable.js +53 -0
- package/dist/components/erd/canvas/table/useViewPin.js +21 -0
- package/dist/components/erd/canvas/table-group/TableGroup.js +141 -0
- package/dist/components/erd/canvas/table-group/TableGroupBody.js +47 -0
- package/dist/components/erd/canvas/table-group/TableGroupDropTarget.js +25 -0
- package/dist/components/erd/canvas/table-group/TableGroupSash.js +143 -0
- package/dist/components/erd/canvas/table-group/TableGroups.js +21 -0
- package/dist/components/erd/canvas/table-group/tableGroupBox.js +57 -0
- package/dist/components/erd/canvas/table-group/tableGroupNameEditor.d.ts +11 -0
- package/dist/components/erd/canvas/table-group/tableGroupNameEditor.js +9 -0
- package/dist/components/erd/canvas/table-group/titleLayout.js +31 -0
- package/dist/components/erd/canvas/useMoveEntity.d.ts +1 -1
- package/dist/components/erd/canvas/useMoveEntity.js +80 -0
- package/dist/components/erd/canvas/useSharedSelectEntity.js +28 -0
- package/dist/components/erd/content-compass/ContentCompass.js +23 -0
- package/dist/components/erd/content-compass/ContentCompass.styles.js +32 -0
- package/dist/components/erd/content-compass/compassGeometry.js +71 -0
- package/dist/components/erd/diff-viewer/DiffViewer.js +75 -0
- package/dist/components/erd/diff-viewer/DiffViewer.styles.js +28 -0
- package/dist/components/erd/diff-viewer/diff-erd-viewer/DiffErdViewer.d.ts +11 -0
- package/dist/components/erd/diff-viewer/diff-erd-viewer/DiffErdViewer.js +105 -0
- package/dist/components/erd/diff-viewer/{erd-viewer/ErdViewer.styles.d.ts → diff-erd-viewer/DiffErdViewer.styles.d.ts} +1 -1
- package/dist/components/erd/diff-viewer/diff-erd-viewer/DiffErdViewer.styles.js +12 -0
- package/dist/components/erd/diff-viewer/diff-tree/DiffTree.js +130 -0
- package/dist/components/erd/diff-viewer/diff-tree/DiffTree.styles.js +139 -0
- package/dist/components/erd/diff-viewer/diff-tree/diffTreeModel.js +203 -0
- package/dist/components/erd/draw-target/DrawTargetButtons.js +284 -0
- package/dist/components/erd/draw-target/DrawTargetButtons.styles.js +64 -0
- package/dist/components/erd/draw-target/drawTargetState.js +37 -0
- package/dist/components/erd/draw-target/findDrawTarget.js +22 -0
- package/dist/components/erd/draw-target/placePill.js +72 -0
- package/dist/components/erd/erd-context-menu/ErdContextMenu.d.ts +6 -0
- package/dist/components/erd/erd-context-menu/ErdContextMenu.js +306 -0
- package/dist/components/erd/erd-context-menu/menus/databaseMenus.js +51 -0
- package/dist/components/erd/erd-context-menu/menus/drawRelationshipMenus.js +48 -0
- package/dist/components/erd/erd-context-menu/menus/exportMenus.js +38 -0
- package/dist/components/erd/erd-context-menu/menus/importMenus.js +49 -0
- package/dist/components/erd/erd-context-menu/menus/nameViewMenus.d.ts +1 -10
- package/dist/components/erd/erd-context-menu/menus/nameViewMenus.js +16 -0
- package/dist/components/erd/erd-context-menu/menus/relationshipMenus.js +105 -0
- package/dist/components/erd/erd-context-menu/menus/showMenus.js +80 -0
- package/dist/components/erd/erd-context-menu/menus/tablePlacementMenus.js +42 -0
- package/dist/components/erd/erdShortcutPerformCheck.js +20 -0
- package/dist/components/erd/erdTarget.d.ts +9 -0
- package/dist/components/erd/erdTarget.js +65 -0
- package/dist/components/erd/fieldIcon.js +17 -0
- package/dist/components/erd/floating-toolbar/FloatingToolbar.d.ts +1 -5
- package/dist/components/erd/floating-toolbar/FloatingToolbar.js +105 -0
- package/dist/components/erd/floating-toolbar/FloatingToolbar.styles.d.ts +1 -6
- package/dist/components/erd/goToErdTarget.js +248 -0
- package/dist/components/erd/hitTest.d.ts +9 -0
- package/dist/components/erd/hitTest.js +115 -0
- package/dist/components/erd/minimap/Minimap.js +98 -0
- package/dist/components/erd/minimap/Minimap.styles.js +29 -0
- package/dist/components/erd/minimap/MinimapScene.js +41 -0
- package/dist/components/erd/minimap/memo/Memo.js +17 -0
- package/dist/components/erd/minimap/minimapGeometry.js +140 -0
- package/dist/components/erd/minimap/table/Table.js +22 -0
- package/dist/components/erd/minimap/table-group/TableGroup.js +22 -0
- package/dist/components/erd/minimap/useMinimapScroll.js +83 -0
- package/dist/components/erd/minimap/viewport/Viewport.js +34 -0
- package/dist/components/erd/minimap/viewport/Viewport.styles.js +17 -0
- package/dist/components/erd/nameViewOptions.d.ts +11 -0
- package/dist/components/erd/nameViewOptions.js +18 -0
- package/dist/components/erd/readerNameView.js +5 -0
- package/dist/components/erd/relationshipHighlight.d.ts +8 -3
- package/dist/components/erd/relationshipHighlight.js +32 -0
- package/dist/components/erd/table-group/TableGroupDraft.js +14 -0
- package/dist/components/erd/table-group/TableGroupDraft.styles.js +22 -0
- package/dist/components/erd/table-group/tableGroupName.d.ts +0 -9
- package/dist/components/erd/table-group/tableGroupName.js +10 -0
- package/dist/components/erd/table-group/useTableGroupDraw.js +97 -0
- package/dist/components/erd/table-properties/TableProperties.js +67 -0
- package/dist/components/erd/table-properties/TableProperties.styles.js +172 -0
- package/dist/components/erd/table-properties/table-properties-indexes/TablePropertiesIndexes.js +76 -0
- package/dist/components/erd/table-properties/table-properties-indexes/TablePropertiesIndexes.styles.js +115 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-checkbox-column/IndexesCheckboxColumn.js +92 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-checkbox-column/IndexesCheckboxColumn.styles.js +70 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-column/IndexesColumn.js +85 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-column/IndexesColumn.styles.js +60 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-index/IndexesIndex.js +46 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-index/IndexesIndex.styles.js +85 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-key/IndexesKey.js +30 -0
- package/dist/components/erd/table-properties/table-properties-indexes/indexes-key/IndexesKey.styles.js +62 -0
- package/dist/components/erd/table-properties/table-properties-tabs/TablePropertiesTabs.js +21 -0
- package/dist/components/erd/table-properties/table-properties-tabs/TablePropertiesTabs.styles.js +34 -0
- package/dist/components/erd/time-travel/TimeTravel.js +83 -0
- package/dist/components/erd/time-travel/TimeTravel.styles.js +42 -0
- package/dist/components/erd/useErdShortcut.js +214 -0
- package/dist/components/erd/view-controls/ToolbarCompass.template.js +10 -0
- package/dist/components/erd/view-controls/nameViewDropdown.js +107 -0
- package/dist/components/erd/view-controls/nameViewDropdown.styles.js +31 -0
- package/dist/components/erd/view-controls/viewControls.styles.d.ts +7 -0
- package/dist/components/erd/view-controls/viewControls.styles.js +75 -0
- package/dist/components/erd/view-controls/zoomControls.d.ts +9 -0
- package/dist/components/erd/view-controls/zoomControls.js +31 -0
- package/dist/components/erd/virtual-scroll/VirtualScroll.js +63 -0
- package/dist/components/erd/virtual-scroll/VirtualScroll.styles.js +48 -0
- package/dist/components/erd/virtual-scroll/useVirtualScroll.js +126 -0
- package/dist/components/erd/welcome-screen/WelcomeScreen.js +194 -0
- package/dist/components/erd/welcome-screen/WelcomeScreen.styles.js +67 -0
- package/dist/components/erd/welcome-screen/welcome-hints/WelcomeHints.js +47 -0
- package/dist/components/erd/welcome-screen/welcome-hints/WelcomeHints.styles.js +52 -0
- package/dist/components/erd/welcome-screen/welcome-hints/hintArrows.js +10 -0
- package/dist/components/erd/welcome-screen/welcomeLayout.js +65 -0
- package/dist/components/erd-editor/ErdEditor.d.ts +14 -3
- package/dist/components/erd-editor/ErdEditor.js +188 -0
- package/dist/components/erd-editor/ErdEditor.styles.js +47 -0
- package/dist/components/erd-editor/useErdEditorAttachElement.d.ts +6 -20
- package/dist/components/erd-editor/useErdEditorAttachElement.js +284 -0
- package/dist/components/erd-editor/viewportLayout.js +93 -0
- package/dist/components/erd-view/ErdView.d.ts +25 -0
- package/dist/components/erd-view/ErdView.js +125 -0
- package/dist/components/erd-view/ErdView.styles.d.ts +3 -0
- package/dist/components/erd-view/ErdView.styles.js +51 -0
- package/dist/components/erd-view/viewportMeasure.d.ts +9 -0
- package/dist/components/erd-view/viewportMeasure.js +19 -0
- package/dist/components/erd-viewer/ErdViewer.d.ts +67 -0
- package/dist/components/erd-viewer/ErdViewer.js +287 -0
- package/dist/components/erd-viewer/documentSource.d.ts +26 -0
- package/dist/components/erd-viewer/documentSource.js +39 -0
- package/dist/components/explorer/Explorer.js +40 -0
- package/dist/components/explorer/explorer-controller/ExplorerController.js +43 -0
- package/dist/components/explorer/explorer-panel/ExplorerPanel.js +207 -0
- package/dist/components/explorer/explorer-panel/ExplorerPanel.styles.js +133 -0
- package/dist/components/explorer/explorer-search/ExplorerSearch.js +119 -0
- package/dist/components/explorer/explorer-search/ExplorerSearch.styles.js +151 -0
- package/dist/components/explorer/explorerCommands.js +45 -0
- package/dist/components/explorer/explorerNavigation.js +50 -0
- package/dist/components/explorer/explorerSearch.js +298 -0
- package/dist/components/explorer/explorerTree.js +331 -0
- package/dist/components/explorer/explorerView.js +46 -0
- package/dist/components/explorer/matchTarget.d.ts +0 -7
- package/dist/components/explorer/matchTarget.js +51 -0
- package/dist/components/export-image/ExportImage.js +230 -0
- package/dist/components/export-image/ExportImage.styles.js +172 -0
- package/dist/components/export-image/exportImageActions.js +102 -0
- package/dist/components/flowCenters.js +29 -0
- package/dist/components/generator-code/GeneratorCode.d.ts +1 -0
- package/dist/components/generator-code/GeneratorCode.js +96 -0
- package/dist/components/generator-code/generator-code-context-menu/GeneratorCodeContextMenu.js +49 -0
- package/dist/components/generator-code/generator-code-context-menu/menus/columnNameCaseMenus.js +37 -0
- package/dist/components/generator-code/generator-code-context-menu/menus/languageMenus.js +115 -0
- package/dist/components/generator-code/generator-code-context-menu/menus/tableNameCaseMenus.js +37 -0
- package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.d.ts +4 -3
- package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.js +122 -0
- package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.styles.js +12 -0
- package/dist/components/generator-code/generatorCodeView.js +17 -0
- package/dist/components/generator-code/languageSettings.js +48 -0
- package/dist/components/global-styles/GlobalStyles.js +18 -0
- package/dist/components/locale-picker/LocalePicker.js +129 -0
- package/dist/components/locale-picker/LocalePicker.styles.js +112 -0
- package/dist/components/localeContext.js +8 -0
- package/dist/components/localized/Localized.js +15 -0
- package/dist/components/map-columns/MapColumnsBody.js +186 -0
- package/dist/components/map-columns/MapColumnsDialog.js +112 -0
- package/dist/components/map-columns/MapColumnsDialog.styles.js +169 -0
- package/dist/components/map-columns/mapColumnsAction.js +18 -0
- package/dist/components/map-columns/nameOf.js +8 -0
- package/dist/components/map-columns/openMapColumns.js +10 -0
- package/dist/components/primitives/button/Button.js +12 -0
- package/dist/components/primitives/button/Button.styles.js +64 -0
- package/dist/components/primitives/code-block/CodeBlock.js +94 -0
- package/dist/components/primitives/code-block/CodeBlock.styles.js +108 -0
- package/dist/components/primitives/color-picker/ColorPicker.js +333 -0
- package/dist/components/primitives/color-picker/ColorPicker.styles.js +219 -0
- package/dist/components/primitives/color-picker/colorModel.js +116 -0
- package/dist/components/primitives/color-picker/presetColors.js +25 -0
- package/dist/components/primitives/color-picker/resolveColor.js +25 -0
- package/dist/components/primitives/context-menu/ContextMenu.js +13 -0
- package/dist/components/primitives/context-menu/context-menu-content/ContextMenuContent.js +72 -0
- package/dist/components/primitives/context-menu/context-menu-content/ContextMenuContent.styles.js +19 -0
- package/dist/components/primitives/context-menu/context-menu-content/fitMenu.js +21 -0
- package/dist/components/primitives/context-menu/context-menu-item/ContextMenuItem.js +47 -0
- package/dist/components/primitives/context-menu/context-menu-item/ContextMenuItem.styles.js +22 -0
- package/dist/components/primitives/context-menu/context-menu-root/ContextMenuRoot.js +10 -0
- package/dist/components/primitives/context-menu/context-menu-root/contextMenuRootContext.js +45 -0
- package/dist/components/primitives/context-menu/context-menu-separator/ContextMenuSeparator.js +6 -0
- package/dist/components/primitives/context-menu/context-menu-separator/ContextMenuSeparator.styles.js +9 -0
- package/dist/components/primitives/context-menu/menu/Menu.js +6 -0
- package/dist/components/primitives/context-menu/menu/Menu.styles.js +21 -0
- package/dist/components/primitives/context-menu/submenu-chevron/SubmenuChevron.js +10 -0
- package/dist/components/primitives/dialog/Dialog.js +75 -0
- package/dist/components/primitives/dialog/Dialog.styles.js +35 -0
- package/dist/components/primitives/edit-input/EditInput.js +68 -0
- package/dist/components/primitives/edit-input/EditInput.styles.js +40 -0
- package/dist/components/primitives/highlighted-text/HighlightedText.js +14 -0
- package/dist/components/primitives/highlighted-text/HighlightedText.styles.js +7 -0
- package/dist/components/primitives/icon/Icon.js +38 -0
- package/dist/components/primitives/icon/Icon.styles.js +12 -0
- package/dist/components/primitives/icon/icons.js +156 -0
- package/dist/components/primitives/kbd/Kbd.js +12 -0
- package/dist/components/primitives/kbd/Kbd.styles.js +44 -0
- package/dist/components/primitives/sash/Sash.js +46 -0
- package/dist/components/primitives/sash/Sash.styles.js +23 -0
- package/dist/components/primitives/select/Select.js +6 -0
- package/dist/components/primitives/select/Select.styles.js +59 -0
- package/dist/components/primitives/separator/Separator.js +14 -0
- package/dist/components/primitives/separator/Separator.styles.js +11 -0
- package/dist/components/primitives/slider/Slider.js +42 -0
- package/dist/components/primitives/slider/Slider.styles.js +58 -0
- package/dist/components/primitives/switch/Switch.d.ts +2 -0
- package/dist/components/primitives/switch/Switch.js +11 -0
- package/dist/components/primitives/switch/Switch.styles.js +117 -0
- package/dist/components/primitives/text-input/TextInput.js +25 -0
- package/dist/components/primitives/toast/Toast.js +24 -0
- package/dist/components/primitives/toast/Toast.styles.js +87 -0
- package/dist/components/primitives/tree/Tree.js +182 -0
- package/dist/components/primitives/tree/Tree.styles.js +71 -0
- package/dist/components/primitives/tree/treeModel.js +60 -0
- package/dist/components/quick-search/QuickSearch.d.ts +11 -2
- package/dist/components/quick-search/QuickSearch.js +290 -0
- package/dist/components/quick-search/QuickSearch.styles.js +168 -0
- package/dist/components/quick-search/actions.d.ts +2 -56
- package/dist/components/quick-search/actions.js +471 -0
- package/dist/components/quick-search/documentSearch.d.ts +60 -0
- package/dist/components/quick-search/documentSearch.js +132 -0
- package/dist/components/quick-search/hangul.js +183 -0
- package/dist/components/quick-search/paletteList.js +3 -0
- package/dist/components/quick-search/paletteQuery.js +73 -0
- package/dist/components/quick-search/scopedActions.d.ts +1 -1
- package/dist/components/quick-search/scopedActions.js +115 -0
- package/dist/components/sceneInteractionContext.d.ts +27 -0
- package/dist/components/sceneInteractionContext.js +15 -0
- package/dist/components/sceneSourceContext.js +7 -0
- package/dist/components/schema-sql/SchemaSQL.js +120 -0
- package/dist/components/schema-sql/SchemaSQL.styles.js +35 -0
- package/dist/components/schema-sql/schema-sql-context-menu/SchemaSQLContextMenu.js +45 -0
- package/dist/components/schema-sql/schema-sql-context-menu/menus/bracketMenus.js +37 -0
- package/dist/components/schema-sql/schema-sql-context-menu/menus/headerMenus.js +62 -0
- package/dist/components/schema-sql/schema-sql-context-menu/menus/statementsMenus.js +41 -0
- package/dist/components/schema-sql/schema-sql-options/SchemaSQLOptions.js +172 -0
- package/dist/components/schema-sql/schema-sql-options/SchemaSQLOptions.styles.js +271 -0
- package/dist/components/schema-sql/schema-sql-options/ScriptEditor.js +117 -0
- package/dist/components/schema-sql/schema-sql-options/ScriptEditor.styles.js +82 -0
- package/dist/components/schema-sql/schema-sql-options/dropWarning.js +13 -0
- package/dist/components/schema-sql/schemaSQLView.js +107 -0
- package/dist/components/settings/Settings.js +112 -0
- package/dist/components/settings/Settings.styles.d.ts +1 -0
- package/dist/components/settings/Settings.styles.js +158 -0
- package/dist/components/settings/columnTypeLabels.js +15 -0
- package/dist/components/settings/lockSettingRows.js +73 -0
- package/dist/components/settings/settings-lnb/SettingsLnb.js +24 -0
- package/dist/components/settings/settings-lnb/SettingsLnb.styles.js +37 -0
- package/dist/components/settings/settingsPage.js +15 -0
- package/dist/components/settings/shortcuts/Shortcuts.js +49 -0
- package/dist/components/settings/shortcuts/Shortcuts.styles.js +36 -0
- package/dist/components/table-view/Table.styles.js +76 -0
- package/dist/components/table-view/column/Column.styles.js +45 -0
- package/dist/components/table-view/column/column-data-type/ColumnDataType.js +93 -0
- package/dist/components/table-view/column/column-data-type/ColumnDataType.styles.js +51 -0
- package/dist/components/table-view/column/column-domain/ColumnDomain.js +77 -0
- package/dist/components/table-view/column/column-domain/domainOptions.js +20 -0
- package/dist/components/table-view/column/column-key/ColumnKey.js +24 -0
- package/dist/components/table-view/column/column-key/ColumnKey.styles.js +19 -0
- package/dist/components/table-view/column/column-logical-name/ColumnLogicalName.js +96 -0
- package/dist/components/table-view/column/column-logical-name/ColumnLogicalName.styles.js +51 -0
- package/dist/components/table-view/column/column-not-null/ColumnNotNull.js +15 -0
- package/dist/components/table-view/column/column-not-null/ColumnNotNull.styles.js +22 -0
- package/dist/components/table-view/column/column-option/ColumnOption.js +18 -0
- package/dist/components/table-view/column/column-option/ColumnOption.styles.js +26 -0
- package/dist/components/table-view/column/columnViewText.js +23 -0
- package/dist/components/table-view/column/useColumnCell.js +117 -0
- package/dist/components/table-view/column/useHintList.js +83 -0
- package/dist/components/theme/Theme.d.ts +5 -0
- package/dist/components/theme/Theme.js +20 -0
- package/dist/components/theme-builder/ThemeBuilder.js +90 -0
- package/dist/components/theme-builder/ThemeBuilder.styles.js +100 -0
- package/dist/components/themeContext.js +7 -0
- package/dist/components/toast-container/ToastContainer.js +46 -0
- package/dist/components/toast-container/ToastContainer.styles.js +48 -0
- package/dist/components/toast-container/openStatusToast.js +28 -0
- package/dist/components/toast-container/openToastWhileRunning.js +20 -0
- package/dist/components/toolbar/Toolbar.js +120 -0
- package/dist/components/toolbar/Toolbar.styles.d.ts +1 -0
- package/dist/components/toolbar/Toolbar.styles.js +68 -0
- package/dist/components/visualization/Visualization.js +39 -0
- package/dist/components/visualization/Visualization.styles.js +16 -0
- package/dist/components/visualization/VisualizationFlow.js +44 -0
- package/dist/components/visualization/VisualizationGraph.js +109 -0
- package/dist/components/visualization/VisualizationScene.js +56 -0
- package/dist/components/visualization/captureDrag.js +15 -0
- package/dist/components/visualization/createVisualization.js +77 -0
- package/dist/components/visualization/flowLayout.js +203 -0
- package/dist/components/visualization/graph-node/GraphNode.js +80 -0
- package/dist/components/visualization/graphPan.js +26 -0
- package/dist/components/visualization/graphViewHandle.js +30 -0
- package/dist/components/visualization/particles/ParticleLayer.js +33 -0
- package/dist/components/visualization/particles/particleEdges.js +36 -0
- package/dist/components/visualization/particles/particleLoop.js +118 -0
- package/dist/components/visualization/particles/particlePath.js +146 -0
- package/dist/components/visualization/table/Table.js +50 -0
- package/dist/components/visualization/table/column/Column.js +77 -0
- package/dist/components/visualization/useViewGestures.js +82 -0
- package/dist/components/visualization/visualization-toolbar/VisualizationToolbar.js +184 -0
- package/dist/components/visualization/visualization-toolbar/VisualizationToolbar.styles.js +24 -0
- package/dist/components/visualization/visualizationView.js +152 -0
- package/dist/components/visualization/zoomVisualization.js +31 -0
- package/dist/constants/language.js +28 -0
- package/dist/constants/layout.js +14 -0
- package/dist/constants/open.js +14 -0
- package/dist/constants/schema.js +54 -0
- package/dist/constants/sql/dataType/Databricks.js +185 -0
- package/dist/constants/sql/dataType/MSSQL.js +197 -0
- package/dist/constants/sql/dataType/MariaDB.js +349 -0
- package/dist/constants/sql/dataType/MySQL.js +285 -0
- package/dist/constants/sql/dataType/Oracle.js +209 -0
- package/dist/constants/sql/dataType/PostgreSQL.js +433 -0
- package/dist/constants/sql/dataType/SQLite.js +129 -0
- package/dist/constants/sql/dataType/Snowflake.js +221 -0
- package/dist/constants/sql/dataType/index.js +22 -0
- package/dist/constants/sql/database.js +25 -0
- package/dist/constants/tablePlacement.js +11 -0
- package/dist/constants/zoom.js +5 -0
- package/dist/engine/actions.d.ts +25 -3
- package/dist/engine/actions.js +280 -0
- package/dist/engine/clock.js +25 -0
- package/dist/engine/context.d.ts +3 -3
- package/dist/engine/context.js +10 -0
- package/dist/engine/documentJson.d.ts +16 -0
- package/dist/engine/documentJson.js +20 -0
- package/dist/engine/history.actions.js +224 -0
- package/dist/engine/history.js +72 -0
- package/dist/engine/index.js +2 -56
- package/dist/engine/modules/dictionary/actions.js +42 -0
- package/dist/engine/modules/dictionary/atom.actions.js +106 -0
- package/dist/engine/modules/dictionary/checks.js +331 -0
- package/dist/engine/modules/dictionary/derive.js +101 -0
- package/dist/engine/modules/dictionary/derivedNames.js +88 -0
- package/dist/engine/modules/dictionary/dictionaryIndex.js +112 -0
- package/dist/engine/modules/dictionary/domainLinks.js +26 -0
- package/dist/engine/modules/dictionary/domainTypes.js +72 -0
- package/dist/engine/modules/dictionary/entryWrites.js +197 -0
- package/dist/engine/modules/dictionary/generator.actions.js +217 -0
- package/dist/engine/modules/dictionary/history.js +54 -0
- package/dist/engine/modules/dictionary/membership.js +42 -0
- package/dist/engine/modules/dictionary/orderKeys.js +28 -0
- package/dist/engine/modules/dictionary/termIndex.js +42 -0
- package/dist/engine/modules/editor/actions.d.ts +5 -1
- package/dist/engine/modules/editor/actions.js +58 -0
- package/dist/engine/modules/editor/atom.actions.d.ts +19 -0
- package/dist/engine/modules/editor/atom.actions.js +584 -0
- package/dist/engine/modules/editor/generator.actions.js +761 -0
- package/dist/engine/modules/editor/history.js +37 -0
- package/dist/engine/modules/editor/state.d.ts +21 -0
- package/dist/engine/modules/editor/state.js +97 -0
- package/dist/engine/modules/editor/utils/color.js +37 -0
- package/dist/engine/modules/editor/utils/duplicate.js +234 -0
- package/dist/engine/modules/editor/utils/findRelationshipColumn.js +34 -0
- package/dist/engine/modules/editor/utils/focus.d.ts +5 -0
- package/dist/engine/modules/editor/utils/focus.js +276 -0
- package/dist/engine/modules/editor/utils/nameView.js +113 -0
- package/dist/engine/modules/editor/utils/releaseHidden.js +25 -0
- package/dist/engine/modules/editor/utils/selectRangeColumn.js +18 -0
- package/dist/engine/modules/editor/utils/selection.js +16 -0
- package/dist/engine/modules/editor/view.actions.js +134 -0
- package/dist/engine/modules/editor/view.generator.actions.js +25 -0
- package/dist/engine/modules/editor/view.js +29 -0
- package/dist/engine/modules/index/actions.js +9 -0
- package/dist/engine/modules/index/atom.actions.js +73 -0
- package/dist/engine/modules/index/generator.actions.js +25 -0
- package/dist/engine/modules/index/history.js +40 -0
- package/dist/engine/modules/index-column/actions.js +9 -0
- package/dist/engine/modules/index-column/atom.actions.js +93 -0
- package/dist/engine/modules/index-column/generator.actions.js +63 -0
- package/dist/engine/modules/index-column/history.js +55 -0
- package/dist/engine/modules/memo/actions.js +13 -0
- package/dist/engine/modules/memo/atom.actions.js +106 -0
- package/dist/engine/modules/memo/generator.actions.js +50 -0
- package/dist/engine/modules/memo/history.js +109 -0
- package/dist/engine/modules/relationship/actions.js +11 -0
- package/dist/engine/modules/relationship/atom.actions.js +103 -0
- package/dist/engine/modules/relationship/endFlags.js +32 -0
- package/dist/engine/modules/relationship/fkColumns.js +85 -0
- package/dist/engine/modules/relationship/generator.actions.js +52 -0
- package/dist/engine/modules/relationship/history.js +72 -0
- package/dist/engine/modules/relationship/hooks.js +250 -0
- package/dist/engine/modules/relationship/referenceType.js +29 -0
- package/dist/engine/modules/settings/actions.js +24 -0
- package/dist/engine/modules/settings/atom.actions.d.ts +1 -1
- package/dist/engine/modules/settings/atom.actions.js +324 -0
- package/dist/engine/modules/settings/generator.actions.d.ts +6 -0
- package/dist/engine/modules/settings/generator.actions.js +132 -0
- package/dist/engine/modules/settings/history.js +65 -0
- package/dist/engine/modules/settings/screenBaseline.d.ts +37 -0
- package/dist/engine/modules/settings/screenBaseline.js +82 -0
- package/dist/engine/modules/settings/scrollRange.js +18 -0
- package/dist/engine/modules/table/actions.js +17 -0
- package/dist/engine/modules/table/atom.actions.js +231 -0
- package/dist/engine/modules/table/generator.actions.js +351 -0
- package/dist/engine/modules/table/history.js +134 -0
- package/dist/engine/modules/table/hooks.js +12 -0
- package/dist/engine/modules/table-column/actions.js +19 -0
- package/dist/engine/modules/table-column/atom.actions.js +223 -0
- package/dist/engine/modules/table-column/generator.actions.js +165 -0
- package/dist/engine/modules/table-column/history.js +146 -0
- package/dist/engine/modules/table-column/hooks.js +33 -0
- package/dist/engine/modules/table-column/keys.js +30 -0
- package/dist/engine/modules/table-column/utils/dataType.js +71 -0
- package/dist/engine/modules/table-group/actions.js +13 -0
- package/dist/engine/modules/table-group/atom.actions.js +108 -0
- package/dist/engine/modules/table-group/generator.actions.js +158 -0
- package/dist/engine/modules/table-group/history.js +106 -0
- package/dist/engine/peer-store.js +318 -0
- package/dist/engine/presence.js +45 -0
- package/dist/engine/replication-store.js +95 -0
- package/dist/engine/rx-operators/actionsFilter.js +14 -0
- package/dist/engine/rx-operators/bufferCircuitBreaker.js +35 -0
- package/dist/engine/rx-operators/createSharedStreamActionsCompressor.js +24 -0
- package/dist/engine/rx-operators/flushOnNotifier.js +6 -0
- package/dist/engine/rx-operators/groupByStreamActions.js +32 -0
- package/dist/engine/rx-operators/ignoreTagFilter.js +17 -0
- package/dist/engine/rx-operators/lockIgnoreFilter.js +20 -0
- package/dist/engine/rx-operators/notEmptyActions.js +5 -0
- package/dist/engine/rx-operators/readonlyIgnoreFilter.d.ts +6 -1
- package/dist/engine/rx-operators/readonlyIgnoreFilter.js +23 -0
- package/dist/engine/rx-operators/readonlyScreenTag.d.ts +16 -0
- package/dist/engine/rx-operators/readonlyScreenTag.js +49 -0
- package/dist/engine/rx-operators/viewActionRedirect.js +32 -0
- package/dist/engine/rx-operators/viewIgnoreFilter.js +22 -0
- package/dist/engine/rx-store.d.ts +12 -1
- package/dist/engine/rx-store.js +158 -0
- package/dist/engine/settle.js +15 -0
- package/dist/engine/shared-store.js +114 -0
- package/dist/engine/store-hooks.js +36 -0
- package/dist/engine/store.js +39 -0
- package/dist/engine/stream-flush.js +9 -0
- package/dist/engine/tag.d.ts +5 -0
- package/dist/engine/tag.js +28 -0
- package/dist/engine/to-width.js +6 -0
- package/dist/erd-editor-schema/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/defineProperty.js +12 -0
- package/dist/erd-editor-schema/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/toPrimitive.js +14 -0
- package/dist/erd-editor-schema/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/toPropertyKey.js +9 -0
- package/dist/erd-editor-schema/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/typeof.js +11 -0
- package/dist/erd-editor-schema/dist/convert/v2ToV3.js +142 -0
- package/dist/erd-editor-schema/dist/dictionaryRows.js +86 -0
- package/dist/erd-editor-schema/dist/helper.js +28 -0
- package/dist/erd-editor-schema/dist/normalizeSettings.js +24 -0
- package/dist/erd-editor-schema/dist/orderKey.js +139 -0
- package/dist/erd-editor-schema/dist/parser.js +73 -0
- package/dist/erd-editor-schema/dist/query/index.js +98 -0
- package/dist/erd-editor-schema/dist/query/lww.js +38 -0
- package/dist/erd-editor-schema/dist/storageForm.js +209 -0
- package/dist/erd-editor-schema/dist/utils/bit.js +6 -0
- package/dist/erd-editor-schema/dist/v2/migrations/relationshipType.migration.js +14 -0
- package/dist/erd-editor-schema/dist/v2/parser/canvas.js +91 -0
- package/dist/erd-editor-schema/dist/v2/parser/index.js +16 -0
- package/dist/erd-editor-schema/dist/v2/parser/memo.js +40 -0
- package/dist/erd-editor-schema/dist/v2/parser/relationship.js +62 -0
- package/dist/erd-editor-schema/dist/v2/parser/table.js +125 -0
- package/dist/erd-editor-schema/dist/v2/schema/canvasEntity.js +65 -0
- package/dist/erd-editor-schema/dist/v2/schema/relationshipEntity.js +25 -0
- package/dist/erd-editor-schema/dist/v2/schema/tableEntity.js +8 -0
- package/dist/erd-editor-schema/dist/v3/parser/doc.js +29 -0
- package/dist/erd-editor-schema/dist/v3/parser/domain.entity.js +28 -0
- package/dist/erd-editor-schema/dist/v3/parser/index.entity.js +33 -0
- package/dist/erd-editor-schema/dist/v3/parser/index.js +107 -0
- package/dist/erd-editor-schema/dist/v3/parser/indexColumn.entity.js +27 -0
- package/dist/erd-editor-schema/dist/v3/parser/memo.entity.js +38 -0
- package/dist/erd-editor-schema/dist/v3/parser/migrateScroll.js +11 -0
- package/dist/erd-editor-schema/dist/v3/parser/relationship.entity.js +60 -0
- package/dist/erd-editor-schema/dist/v3/parser/settings.js +140 -0
- package/dist/erd-editor-schema/dist/v3/parser/table.entity.js +55 -0
- package/dist/erd-editor-schema/dist/v3/parser/tableColumn.entity.js +54 -0
- package/dist/erd-editor-schema/dist/v3/parser/tableGroup.entity.js +37 -0
- package/dist/erd-editor-schema/dist/v3/parser/term.entity.js +30 -0
- package/dist/erd-editor-schema/dist/v3/parser/word.entity.js +32 -0
- package/dist/erd-editor-schema/dist/v3/schema/index.js +46 -0
- package/dist/erd-editor-schema/dist/v3/schema/indexColumn.entity.js +8 -0
- package/dist/erd-editor-schema/dist/v3/schema/relationship.entity.js +31 -0
- package/dist/erd-editor-schema/dist/v3/schema/settings.js +141 -0
- package/dist/erd-editor-schema/dist/v3/schema/tableColumn.entity.js +14 -0
- package/dist/erd-editor.d.ts +2 -0
- package/dist/erd-editor.js +4 -0
- package/dist/erd-editor.umd.js +789 -750
- package/dist/erd-viewer.d.ts +2 -0
- package/dist/erd-viewer.js +4 -0
- package/dist/erd-viewer.umd.js +696 -0
- package/dist/grid/dist/Grid.js +511 -0
- package/dist/grid/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/defineProperty.js +12 -0
- package/dist/grid/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/toPrimitive.js +14 -0
- package/dist/grid/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/toPropertyKey.js +9 -0
- package/dist/grid/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/typeof.js +11 -0
- package/dist/grid/dist/font.js +58 -0
- package/dist/grid/dist/input/editing.js +460 -0
- package/dist/grid/dist/input/pointer.js +426 -0
- package/dist/grid/dist/model/columns.js +41 -0
- package/dist/grid/dist/model/editing.js +93 -0
- package/dist/grid/dist/model/keys.js +89 -0
- package/dist/grid/dist/model/selection.js +237 -0
- package/dist/grid/dist/model/text.js +122 -0
- package/dist/grid/dist/model/tsv.js +108 -0
- package/dist/grid/dist/model/viewport.js +75 -0
- package/dist/grid/dist/scene/GridScene.js +64 -0
- package/dist/grid/dist/scene/draw/cells.js +61 -0
- package/dist/grid/dist/scene/draw/context.js +17 -0
- package/dist/grid/dist/scene/draw/headers.js +48 -0
- package/dist/grid/dist/scene/draw/scrollbar.js +70 -0
- package/dist/grid/dist/scene/layout.js +62 -0
- package/dist/grid/dist/scene/overlay.js +144 -0
- package/dist/grid/dist/scene/paint.js +123 -0
- package/dist/grid/dist/scene/state.js +269 -0
- package/dist/grid/dist/theme.js +37 -0
- package/dist/hooks/useDarkMode.d.ts +2 -0
- package/dist/hooks/useDarkMode.js +35 -0
- package/dist/hooks/useFlipAnimation.js +10 -0
- package/dist/hooks/useKeyBindingMap.js +55 -0
- package/dist/hooks/useNavigatorLanguages.js +22 -0
- package/dist/hooks/usePinchZoom.d.ts +6 -1
- package/dist/hooks/usePinchZoom.js +60 -0
- package/dist/hooks/useUnmounted.js +16 -0
- package/dist/hooks/useViewShortcut.d.ts +14 -0
- package/dist/hooks/useViewShortcut.js +34 -0
- package/dist/i18n/loadMessages.d.ts +12 -0
- package/dist/i18n/loadMessages.js +40 -0
- package/dist/i18n/locales.js +145 -0
- package/dist/i18n/menuLabel.js +4 -0
- package/dist/i18n/messages/ar-SA.d.ts +2 -3
- package/dist/i18n/messages/ar-SA.js +550 -0
- package/dist/i18n/messages/de-DE.d.ts +2 -3
- package/dist/i18n/messages/de-DE.js +498 -0
- package/dist/i18n/messages/en/code.js +13 -0
- package/dist/i18n/messages/en/colorPicker.js +36 -0
- package/dist/i18n/messages/en/common.js +76 -0
- package/dist/i18n/messages/en/contextMenu.js +31 -0
- package/dist/i18n/messages/en/dictionary.js +76 -0
- package/dist/i18n/messages/en/explorer.js +38 -0
- package/dist/i18n/messages/en/exportImage.js +23 -0
- package/dist/i18n/messages/en/feedback.js +9 -0
- package/dist/i18n/messages/en/findReplace.js +43 -0
- package/dist/i18n/messages/en/floatingToolbar.js +13 -0
- package/dist/i18n/messages/en/index.d.ts +2 -3
- package/dist/i18n/messages/en/index.js +47 -0
- package/dist/i18n/messages/en/mapColumns.js +36 -0
- package/dist/i18n/messages/en/palette.js +36 -0
- package/dist/i18n/messages/en/schemaSql.js +27 -0
- package/dist/i18n/messages/en/settings.d.ts +0 -3
- package/dist/i18n/messages/en/settings.js +18 -0
- package/dist/i18n/messages/en/shortcuts.js +35 -0
- package/dist/i18n/messages/en/tableProperties.js +35 -0
- package/dist/i18n/messages/en/themeBuilder.js +8 -0
- package/dist/i18n/messages/en/toolbar.js +9 -0
- package/dist/i18n/messages/en/viewer.d.ts +6 -0
- package/dist/i18n/messages/en/viewer.js +7 -0
- package/dist/i18n/messages/en/visualization.js +15 -0
- package/dist/i18n/messages/en/welcome.js +14 -0
- package/dist/i18n/messages/es-ES.d.ts +2 -3
- package/dist/i18n/messages/es-ES.js +511 -0
- package/dist/i18n/messages/eu-ES.d.ts +2 -3
- package/dist/i18n/messages/eu-ES.js +498 -0
- package/dist/i18n/messages/fa-IR.d.ts +2 -3
- package/dist/i18n/messages/fa-IR.js +498 -0
- package/dist/i18n/messages/fr-FR.d.ts +2 -3
- package/dist/i18n/messages/fr-FR.js +511 -0
- package/dist/i18n/messages/he-IL.d.ts +2 -3
- package/dist/i18n/messages/he-IL.js +511 -0
- package/dist/i18n/messages/id-ID.d.ts +2 -3
- package/dist/i18n/messages/id-ID.js +459 -0
- package/dist/i18n/messages/index.d.ts +3 -3
- package/dist/i18n/messages/index.js +58 -0
- package/dist/i18n/messages/it-IT.d.ts +2 -3
- package/dist/i18n/messages/it-IT.js +511 -0
- package/dist/i18n/messages/ja-JP.d.ts +2 -3
- package/dist/i18n/messages/ja-JP.js +459 -0
- package/dist/i18n/messages/ko-KR.d.ts +2 -3
- package/dist/i18n/messages/ko-KR.js +459 -0
- package/dist/i18n/messages/nl-NL.d.ts +2 -3
- package/dist/i18n/messages/nl-NL.js +498 -0
- package/dist/i18n/messages/pl-PL.d.ts +2 -3
- package/dist/i18n/messages/pl-PL.js +524 -0
- package/dist/i18n/messages/pt-BR.d.ts +2 -3
- package/dist/i18n/messages/pt-BR.js +511 -0
- package/dist/i18n/messages/pt-PT.d.ts +2 -3
- package/dist/i18n/messages/pt-PT.js +511 -0
- package/dist/i18n/messages/ro-RO.d.ts +2 -3
- package/dist/i18n/messages/ro-RO.js +511 -0
- package/dist/i18n/messages/ru-RU.d.ts +2 -3
- package/dist/i18n/messages/ru-RU.js +524 -0
- package/dist/i18n/messages/sk-SK.d.ts +2 -3
- package/dist/i18n/messages/sk-SK.js +524 -0
- package/dist/i18n/messages/sl-SI.d.ts +2 -3
- package/dist/i18n/messages/sl-SI.js +524 -0
- package/dist/i18n/messages/sv-SE.d.ts +2 -3
- package/dist/i18n/messages/sv-SE.js +498 -0
- package/dist/i18n/messages/tr-TR.d.ts +2 -3
- package/dist/i18n/messages/tr-TR.js +498 -0
- package/dist/i18n/messages/uk-UA.d.ts +2 -3
- package/dist/i18n/messages/uk-UA.js +524 -0
- package/dist/i18n/messages/zh-CN.d.ts +2 -3
- package/dist/i18n/messages/zh-CN.js +459 -0
- package/dist/i18n/messages/zh-TW.d.ts +2 -3
- package/dist/i18n/messages/zh-TW.js +459 -0
- package/dist/i18n/resolveLocale.js +28 -0
- package/dist/i18n/source.js +6 -0
- package/dist/i18n/translate.js +34 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +8 -48293
- package/dist/konva/scene/columnDropTarget.js +43 -0
- package/dist/konva/scene/contentBounds.js +48 -0
- package/dist/konva/scene/fitZoom.d.ts +7 -0
- package/dist/konva/scene/fitZoom.js +31 -0
- package/dist/konva/scene/konvaFlip.js +125 -0
- package/dist/konva/scene/metrics.js +59 -0
- package/dist/konva/scene/renderScene.js +37 -0
- package/dist/konva/scene/stacking.js +13 -0
- package/dist/konva/scene/viewFreeze.js +29 -0
- package/dist/konva/scene/viewLayout.js +171 -0
- package/dist/konva/scene/viewport.js +86 -0
- package/dist/konva/testHandle.d.ts +9 -3
- package/dist/konva/testHandle.js +5 -0
- package/dist/konva/theme.js +45 -0
- package/dist/peer/index.js +35 -235
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/assertClassBrand.js +7 -0
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/checkPrivateRedeclaration.js +6 -0
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/classPrivateFieldGet2.js +7 -0
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/classPrivateFieldInitSpec.js +7 -0
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/classPrivateFieldSet2.js +7 -0
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/defineProperty.js +12 -0
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/toPrimitive.js +14 -0
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/toPropertyKey.js +9 -0
- package/dist/r-html/dist/_virtual/_@oxc-project_runtime@0.151.0/helpers/esm/typeof.js +11 -0
- package/dist/r-html/dist/constants.js +36 -0
- package/dist/r-html/dist/context/createContext.js +49 -0
- package/dist/r-html/dist/context/useContext.js +28 -0
- package/dist/r-html/dist/context/useProvider.js +41 -0
- package/dist/r-html/dist/css/compile.js +27 -0
- package/dist/r-html/dist/css/diagnostics.js +195 -0
- package/dist/r-html/dist/css/element.js +34 -0
- package/dist/r-html/dist/css/emit.js +26 -0
- package/dist/r-html/dist/css/flatten.js +76 -0
- package/dist/r-html/dist/css/hash.js +15 -0
- package/dist/r-html/dist/css/index.js +31 -0
- package/dist/r-html/dist/css/selector.js +11 -0
- package/dist/r-html/dist/helpers/array.js +9 -0
- package/dist/r-html/dist/helpers/fn.js +14 -0
- package/dist/r-html/dist/helpers/is-type.js +16 -0
- package/dist/r-html/dist/helpers/subject.js +21 -0
- package/dist/r-html/dist/observable/index.js +78 -0
- package/dist/r-html/dist/observable/scheduler.js +84 -0
- package/dist/r-html/dist/parser/html/helper.js +58 -0
- package/dist/r-html/dist/parser/html/index.js +101 -0
- package/dist/r-html/dist/parser/html/tokenizer.js +161 -0
- package/dist/r-html/dist/parser/vNode.js +32 -0
- package/dist/r-html/dist/render/directives/attribute/ref.js +18 -0
- package/dist/r-html/dist/render/directives/attributeDirective.js +7 -0
- package/dist/r-html/dist/render/directives/index.js +13 -0
- package/dist/r-html/dist/render/directives/node/cache.js +56 -0
- package/dist/r-html/dist/render/directives/node/innerHTML.js +20 -0
- package/dist/r-html/dist/render/directives/node/repeat.js +124 -0
- package/dist/r-html/dist/render/directives/nodeDirective.js +15 -0
- package/dist/r-html/dist/render/domAdapter.js +74 -0
- package/dist/r-html/dist/render/helper.js +91 -0
- package/dist/r-html/dist/render/hmr.js +64 -0
- package/dist/r-html/dist/render/host.js +16 -0
- package/dist/r-html/dist/render/hostTemplate.js +35 -0
- package/dist/r-html/dist/render/index.js +9 -0
- package/dist/r-html/dist/render/part/attribute/attribute.js +102 -0
- package/dist/r-html/dist/render/part/attribute/boolean.js +33 -0
- package/dist/r-html/dist/render/part/attribute/directive.js +48 -0
- package/dist/r-html/dist/render/part/attribute/event.js +49 -0
- package/dist/r-html/dist/render/part/attribute/index.js +12 -0
- package/dist/r-html/dist/render/part/attribute/property.js +30 -0
- package/dist/r-html/dist/render/part/attribute/spread.js +28 -0
- package/dist/r-html/dist/render/part/container.js +64 -0
- package/dist/r-html/dist/render/part/index.js +32 -0
- package/dist/r-html/dist/render/part/node/comment.js +34 -0
- package/dist/r-html/dist/render/part/node/component/hooks.js +28 -0
- package/dist/r-html/dist/render/part/node/component/index.js +37 -0
- package/dist/r-html/dist/render/part/node/component/observableComponent.js +111 -0
- package/dist/r-html/dist/render/part/node/component/prop.js +30 -0
- package/dist/r-html/dist/render/part/node/component/webComponent/helper.js +19 -0
- package/dist/r-html/dist/render/part/node/component/webComponent/index.js +79 -0
- package/dist/r-html/dist/render/part/node/text/array.js +87 -0
- package/dist/r-html/dist/render/part/node/text/arrayDiff.js +90 -0
- package/dist/r-html/dist/render/part/node/text/directive.js +51 -0
- package/dist/r-html/dist/render/part/node/text/function.js +7 -0
- package/dist/r-html/dist/render/part/node/text/helper.js +55 -0
- package/dist/r-html/dist/render/part/node/text/index.js +54 -0
- package/dist/r-html/dist/render/part/node/text/node.js +25 -0
- package/dist/r-html/dist/render/part/node/text/object.js +60 -0
- package/dist/r-html/dist/render/part/node/text/primitive.js +26 -0
- package/dist/r-html/dist/render/part/node/text/templateLiterals.js +38 -0
- package/dist/r-html/dist/render/value.js +8 -0
- package/dist/r-html/dist/store/index.js +72 -0
- package/dist/r-html/dist/template/css.js +70 -0
- package/dist/r-html/dist/template/cssDiagnostics.js +23 -0
- package/dist/r-html/dist/template/cssSource.js +62 -0
- package/dist/r-html/dist/template/helper.js +37 -0
- package/dist/r-html/dist/template/html.js +29 -0
- package/dist/r-html/dist/template/index.js +13 -0
- package/dist/r-html/dist/template/tNode.js +107 -0
- package/dist/r-html/dist/template/vCSSStyleSheet.js +162 -0
- package/dist/r-html-konva/dist/batchDraw.js +90 -0
- package/dist/r-html-konva/dist/host.js +336 -0
- package/dist/schema-sql-parser/dist/parser/dataType/Databricks.js +50 -0
- package/dist/schema-sql-parser/dist/parser/dataType/MSSQL.js +53 -0
- package/dist/schema-sql-parser/dist/parser/dataType/MariaDB.js +91 -0
- package/dist/schema-sql-parser/dist/parser/dataType/MySQL.js +75 -0
- package/dist/schema-sql-parser/dist/parser/dataType/Oracle.js +56 -0
- package/dist/schema-sql-parser/dist/parser/dataType/PostgreSQL.js +112 -0
- package/dist/schema-sql-parser/dist/parser/dataType/SQLite.js +36 -0
- package/dist/schema-sql-parser/dist/parser/dataType/Snowflake.js +59 -0
- package/dist/schema-sql-parser/dist/parser/helper.js +701 -0
- package/dist/schema-sql-parser/dist/parser/index.js +70 -0
- package/dist/schema-sql-parser/dist/parser/statement/add.extended.property.js +73 -0
- package/dist/schema-sql-parser/dist/parser/statement/alter.table.add.default.js +75 -0
- package/dist/schema-sql-parser/dist/parser/statement/alter.table.add.foreignKey.js +69 -0
- package/dist/schema-sql-parser/dist/parser/statement/alter.table.add.primaryKey.js +86 -0
- package/dist/schema-sql-parser/dist/parser/statement/alter.table.add.unique.js +128 -0
- package/dist/schema-sql-parser/dist/parser/statement/alter.table.alter.column.js +90 -0
- package/dist/schema-sql-parser/dist/parser/statement/comment.on.column.js +56 -0
- package/dist/schema-sql-parser/dist/parser/statement/comment.on.table.js +52 -0
- package/dist/schema-sql-parser/dist/parser/statement/create.index.js +61 -0
- package/dist/schema-sql-parser/dist/parser/statement/create.table.js +549 -0
- package/dist/schema-sql-parser/dist/parser/statement/default.expression.js +206 -0
- package/dist/schema-sql-parser/dist/parser/statement/index.columns.js +49 -0
- package/dist/schema-sql-parser/dist/parser/statement/index.js +25 -0
- package/dist/schema-sql-parser/dist/parser/tokenizer.js +241 -0
- package/dist/services/elk-layout/elkGraph.js +184 -0
- package/dist/services/elk-layout/elkLayoutOptions.js +52 -0
- package/dist/services/elk-layout/index.js +45 -0
- package/dist/services/export-png/ExportScene.js +30 -0
- package/dist/services/export-png/documentScene.js +45 -0
- package/dist/services/export-png/exportBox.js +63 -0
- package/dist/services/export-png/exportTheme.js +16 -0
- package/dist/services/export-png/index.js +139 -0
- package/dist/services/export-png/pixelRatio.js +12 -0
- package/dist/services/export-png/renderPng.js +52 -0
- package/dist/services/export-png/renderSvg.js +24 -0
- package/dist/services/export-png/sceneSvg.js +315 -0
- package/dist/services/export-png/textWidth.js +12 -0
- package/dist/services/export-png/toImage.d.ts +27 -0
- package/dist/services/export-png/toImage.js +49 -0
- package/dist/services/shiki/index.js +24 -0
- package/dist/styles/elevation.styles.js +9 -0
- package/dist/styles/fonts.styles.js +12 -0
- package/dist/styles/reset.styles.js +104 -0
- package/dist/styles/scrollbar.styles.js +27 -0
- package/dist/styles/typography.styles.js +63 -0
- package/dist/themes/radix-ui-theme.config.js +133 -0
- package/dist/themes/radix-ui-theme.js +231 -0
- package/dist/themes/tokens.js +107 -0
- package/dist/utils/arrayHas.js +7 -0
- package/dist/utils/attribute.js +11 -0
- package/dist/utils/bit.js +6 -0
- package/dist/utils/calcMemo.js +9 -0
- package/dist/utils/calcTable.js +220 -0
- package/dist/utils/clickGesture.js +33 -0
- package/dist/utils/clipboard.js +45 -0
- package/dist/utils/collection/domain.entity.js +13 -0
- package/dist/utils/collection/index.entity.js +13 -0
- package/dist/utils/collection/indexColumn.entity.js +12 -0
- package/dist/utils/collection/memo.entity.js +18 -0
- package/dist/utils/collection/relationship.entity.js +28 -0
- package/dist/utils/collection/sequence.js +21 -0
- package/dist/utils/collection/table.entity.js +24 -0
- package/dist/utils/collection/tableColumn.entity.js +25 -0
- package/dist/utils/collection/tableGroup.entity.js +17 -0
- package/dist/utils/collection/term.entity.js +14 -0
- package/dist/utils/collection/word.entity.js +15 -0
- package/dist/utils/contrastText.js +26 -0
- package/dist/utils/deepMerge.js +24 -0
- package/dist/utils/device-detect/index.js +6 -0
- package/dist/utils/dictionary-csv/csv.js +61 -0
- package/dist/utils/dictionary-csv/decode.js +10 -0
- package/dist/utils/dictionary-csv/dictionaryCsv.js +150 -0
- package/dist/utils/diff/compareEntities.js +200 -0
- package/dist/{components/erd/diff-viewer → utils/diff}/diff.d.ts +1 -1
- package/dist/utils/diff/diff.js +29 -0
- package/dist/utils/diff/diffDocuments.js +224 -0
- package/dist/utils/diff/pairEntities.js +71 -0
- package/dist/utils/diff/types.d.ts +1 -1
- package/dist/utils/diff/types.js +38 -0
- package/dist/utils/domEvent.js +55 -0
- package/dist/utils/dragSelect.js +9 -0
- package/dist/utils/draw-relationship/bezier.js +44 -0
- package/dist/utils/draw-relationship/calc.js +91 -0
- package/dist/utils/draw-relationship/corner.js +60 -0
- package/dist/utils/draw-relationship/draw.js +194 -0
- package/dist/utils/draw-relationship/incremental.d.ts +4 -4
- package/dist/utils/draw-relationship/incremental.js +135 -0
- package/dist/utils/draw-relationship/index.d.ts +16 -1
- package/dist/utils/draw-relationship/index.js +198 -0
- package/dist/utils/draw-relationship/loop.js +25 -0
- package/dist/utils/draw-relationship/nudge.js +402 -0
- package/dist/utils/draw-relationship/pathFinding.js +277 -0
- package/dist/utils/draw-relationship/route.d.ts +12 -0
- package/dist/utils/draw-relationship/route.js +460 -0
- package/dist/utils/draw-relationship/search.d.ts +15 -0
- package/dist/utils/draw-relationship/search.js +294 -0
- package/dist/utils/draw-relationship/sort.js +370 -0
- package/dist/utils/draw-relationship/stub.js +46 -0
- package/dist/utils/emitter.d.ts +15 -0
- package/dist/utils/emitter.js +76 -0
- package/dist/utils/file/exportFile.js +52 -0
- package/dist/utils/file/importFile.js +201 -0
- package/dist/utils/file/importSchema.js +128 -0
- package/dist/utils/find-replace/findMatches.js +212 -0
- package/dist/utils/find-replace/index.d.ts +0 -1
- package/dist/utils/find-replace/matcher.js +128 -0
- package/dist/utils/find-replace/present.js +48 -0
- package/dist/utils/find-replace/preserveCase.js +25 -0
- package/dist/utils/find-replace/replaceActions.js +70 -0
- package/dist/utils/flipAnimation.js +52 -0
- package/dist/utils/focus.js +40 -0
- package/dist/utils/formatCount.js +12 -0
- package/dist/utils/generator-code/aml.js +199 -0
- package/dist/utils/generator-code/columnTypes.js +369 -0
- package/dist/utils/generator-code/csharp.js +230 -0
- package/dist/utils/generator-code/dbml.js +248 -0
- package/dist/utils/generator-code/doctrine.js +964 -0
- package/dist/utils/generator-code/doctrineReservedWords.js +57 -0
- package/dist/utils/generator-code/drizzle.js +1853 -0
- package/dist/utils/generator-code/go.js +160 -0
- package/dist/utils/generator-code/graphql.js +347 -0
- package/dist/utils/generator-code/heck.js +47 -0
- package/dist/utils/generator-code/index.js +179 -0
- package/dist/utils/generator-code/java.js +179 -0
- package/dist/utils/generator-code/jpa.js +218 -0
- package/dist/utils/generator-code/jsonSchema.js +402 -0
- package/dist/utils/generator-code/jsonShape.js +169 -0
- package/dist/utils/generator-code/kotlin.js +102 -0
- package/dist/utils/generator-code/mermaid.js +130 -0
- package/dist/utils/generator-code/php.js +211 -0
- package/dist/utils/generator-code/rust.js +143 -0
- package/dist/utils/generator-code/rustTypes.js +132 -0
- package/dist/utils/generator-code/scala.js +124 -0
- package/dist/utils/generator-code/seaorm.js +581 -0
- package/dist/utils/generator-code/sequelize.js +1225 -0
- package/dist/utils/generator-code/sqlalchemy.js +1250 -0
- package/dist/utils/generator-code/swift.js +222 -0
- package/dist/utils/generator-code/typeorm.js +998 -0
- package/dist/utils/generator-code/typescript.js +67 -0
- package/dist/utils/generator-code/utils.js +87 -0
- package/dist/utils/generator-code/zod.js +106 -0
- package/dist/utils/globalEventObservable.js +67 -0
- package/dist/utils/highlightWords.js +48 -0
- package/dist/utils/icon.js +35 -0
- package/dist/utils/index.js +26 -0
- package/dist/utils/internalEvents.js +26 -0
- package/dist/utils/keyboard-shortcut/bindKeys.js +30 -0
- package/dist/utils/keyboard-shortcut/index.d.ts +7 -1
- package/dist/utils/keyboard-shortcut/index.js +243 -0
- package/dist/utils/keyboard-shortcut/utils.js +32 -0
- package/dist/utils/loadValue.js +11 -0
- package/dist/utils/map-columns/alignTypes.js +48 -0
- package/dist/utils/map-columns/buildRows.js +337 -0
- package/dist/utils/map-columns/candidateKeys.js +24 -0
- package/dist/utils/map-columns/mapping.js +41 -0
- package/dist/utils/map-columns/prefill.js +32 -0
- package/dist/utils/map-columns/toMapColumnsActions.js +63 -0
- package/dist/utils/map-columns/validate.js +81 -0
- package/dist/utils/memo.js +6 -0
- package/dist/utils/pinch.d.ts +5 -1
- package/dist/utils/pinch.js +99 -0
- package/dist/utils/promise.js +16 -0
- package/dist/utils/referentialAction.js +23 -0
- package/dist/utils/rx-operators/fromCopy.js +7 -0
- package/dist/utils/rx-operators/fromPaste.js +7 -0
- package/dist/utils/rx-operators/fromShadowDraggable.js +5 -0
- package/dist/utils/safeCallback.js +10 -0
- package/dist/utils/schema-aml-parser/convert.js +285 -0
- package/dist/utils/schema-aml-parser/dataType.js +57 -0
- package/dist/utils/schema-aml-parser/index.js +22 -0
- package/dist/utils/schema-aml-parser/parser.js +637 -0
- package/dist/utils/schema-aml-parser/tokenizer.js +208 -0
- package/dist/utils/schema-aml-parser/types.js +8 -0
- package/dist/utils/schema-dbml-parser/convert.js +324 -0
- package/dist/utils/schema-dbml-parser/dataType.js +32 -0
- package/dist/utils/schema-dbml-parser/index.js +23 -0
- package/dist/utils/schema-dbml-parser/parser.js +646 -0
- package/dist/utils/schema-dbml-parser/tokenizer.js +185 -0
- package/dist/utils/schema-graphql-parser/convert.js +410 -0
- package/dist/utils/schema-graphql-parser/dataType.js +228 -0
- package/dist/utils/schema-graphql-parser/index.js +23 -0
- package/dist/utils/schema-graphql-parser/parser.js +490 -0
- package/dist/utils/schema-sql/Databricks.js +158 -0
- package/dist/utils/schema-sql/MSSQL.js +214 -0
- package/dist/utils/schema-sql/MariaDB.js +143 -0
- package/dist/utils/schema-sql/MySQL.js +224 -0
- package/dist/utils/schema-sql/Oracle.js +236 -0
- package/dist/utils/schema-sql/PostgreSQL.js +179 -0
- package/dist/utils/schema-sql/SQLite.js +129 -0
- package/dist/utils/schema-sql/Snowflake.js +148 -0
- package/dist/utils/schema-sql/index.d.ts +6 -3
- package/dist/utils/schema-sql/index.js +238 -0
- package/dist/utils/schema-sql/options.js +97 -0
- package/dist/utils/schema-sql/utils.d.ts +1 -43
- package/dist/utils/schema-sql/utils.js +251 -0
- package/dist/utils/schema-sql-parser/index.js +312 -0
- package/dist/utils/schema-sql-parser/utils.js +7 -0
- package/dist/utils/sharedColor.js +19 -0
- package/dist/utils/stageCursor.js +20 -0
- package/dist/utils/table-clipboard/copy.js +208 -0
- package/dist/utils/table-clipboard/index.js +28 -0
- package/dist/utils/table-clipboard/paste.js +154 -0
- package/dist/utils/table-clipboard/payload.js +73 -0
- package/dist/utils/table-clipboard/placement.js +54 -0
- package/dist/utils/tableColor.js +139 -0
- package/dist/utils/tableGroup.js +146 -0
- package/dist/utils/tableKeys.js +82 -0
- package/dist/utils/tableName.d.ts +47 -0
- package/dist/utils/tableName.js +72 -0
- package/dist/utils/takeover.js +10 -0
- package/dist/utils/text.js +47 -0
- package/dist/utils/validation.js +47 -0
- package/dist/utils/virtualRange.js +21 -0
- package/dist/uuid/dist/uuid25.js +11 -0
- package/dist/uuid/dist/uuidv7.js +25 -0
- package/dist/workers/elkLayout.shared-worker.js +327 -1
- package/dist/workers/elkLayout.spawn.d.ts +3 -0
- package/dist/workers/elkLayout.spawn.inline.d.ts +3 -0
- package/dist/workers/elkLayout.spawn.js +9 -0
- package/dist/workers/exportPng.shared-worker.js +32969 -55
- package/dist/workers/exportPng.spawn.d.ts +7 -0
- package/dist/workers/exportPng.spawn.inline.d.ts +7 -0
- package/dist/workers/exportPng.spawn.js +9 -0
- package/dist/workers/shiki.shared-worker.js +119 -1
- package/dist/workers/shiki.spawn.d.ts +3 -0
- package/dist/workers/shiki.spawn.inline.d.ts +3 -0
- package/dist/workers/shiki.spawn.js +9 -0
- package/package.json +35 -3
- package/dist/components/customElementRegistry.d.ts +0 -1
- package/dist/components/erd/diff-viewer/diffContext.d.ts +0 -9
- package/dist/components/erd/diff-viewer/erd-viewer/ErdViewer.d.ts +0 -11
- package/dist/loadValue-B5ojYrZ-.js +0 -14682
- package/dist/shared-store-S7YWEz3E.js +0 -1656
- package/dist/workers/spawn.d.ts +0 -9
- package/dist/workers/spawn.inline.d.ts +0 -9
- /package/dist/components/{explorer → erd}/fieldIcon.d.ts +0 -0
- /package/dist/components/erd/{floating-toolbar → view-controls}/ToolbarCompass.template.d.ts +0 -0
- /package/dist/components/erd/{floating-toolbar → view-controls}/nameViewDropdown.d.ts +0 -0
- /package/dist/components/erd/{floating-toolbar → view-controls}/nameViewDropdown.styles.d.ts +0 -0
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
import { query } from "../../erd-editor-schema/dist/query/index.js";
|
|
2
|
+
import { ColumnOption, Database, OrderType, ReferentialAction, ReferentialActionToSQL } from "../../constants/schema.js";
|
|
3
|
+
import { bHas } from "../bit.js";
|
|
4
|
+
import { orderByNameASC, primaryKeyColumns } from "../tableName.js";
|
|
5
|
+
import { SchemaSQLStatements } from "./options.js";
|
|
6
|
+
//#region src/utils/schema-sql/utils.ts
|
|
7
|
+
function createWrittenObjects() {
|
|
8
|
+
return {
|
|
9
|
+
tables: [],
|
|
10
|
+
sequences: [],
|
|
11
|
+
identifiers: []
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
function commentToWrite({ comment, logicalName }, logicalNameAsComment = false) {
|
|
15
|
+
if (comment.trim() !== "") return comment;
|
|
16
|
+
return logicalNameAsComment && logicalName.trim() !== "" ? logicalName : "";
|
|
17
|
+
}
|
|
18
|
+
function toForeignKeyPairs({ doc: { tableIds }, collections }, { start, end }) {
|
|
19
|
+
if (!tableIds.includes(start.tableId) || !tableIds.includes(end.tableId)) return null;
|
|
20
|
+
const tableCollection = query(collections).collection("tableEntities");
|
|
21
|
+
const columnCollection = query(collections).collection("tableColumnEntities");
|
|
22
|
+
const startTable = tableCollection.selectById(start.tableId);
|
|
23
|
+
const endTable = tableCollection.selectById(end.tableId);
|
|
24
|
+
if (!startTable || !endTable) return null;
|
|
25
|
+
const pairs = [];
|
|
26
|
+
const length = Math.min(start.columnIds.length, end.columnIds.length);
|
|
27
|
+
for (let i = 0; i < length; i++) {
|
|
28
|
+
const startId = start.columnIds[i];
|
|
29
|
+
const endId = end.columnIds[i];
|
|
30
|
+
if (!startTable.columnIds.includes(startId) || !endTable.columnIds.includes(endId)) continue;
|
|
31
|
+
const startColumn = columnCollection.selectById(startId);
|
|
32
|
+
const endColumn = columnCollection.selectById(endId);
|
|
33
|
+
if (startColumn && endColumn) pairs.push([startColumn, endColumn]);
|
|
34
|
+
}
|
|
35
|
+
if (pairs.length === 0) return null;
|
|
36
|
+
const keyIds = new Set(primaryKeyColumns(columnCollection.selectByIds(startTable.columnIds)).map((column) => column.id));
|
|
37
|
+
const startIds = new Set(pairs.map(([column]) => column.id));
|
|
38
|
+
if (keyIds.size === startIds.size && [...startIds].every((id) => keyIds.has(id))) {
|
|
39
|
+
const position = (column) => startTable.columnIds.indexOf(column.id);
|
|
40
|
+
pairs.sort(([a], [b]) => position(a) - position(b));
|
|
41
|
+
}
|
|
42
|
+
return {
|
|
43
|
+
startTable,
|
|
44
|
+
endTable,
|
|
45
|
+
start: pairs.map(([column]) => column),
|
|
46
|
+
end: pairs.map(([, column]) => column)
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
function selectIndexColumns(collections, table, index) {
|
|
50
|
+
const listed = new Set(table.columnIds);
|
|
51
|
+
return query(collections).collection("indexColumnEntities").selectByIds(index.indexColumnIds).flatMap((indexColumn) => {
|
|
52
|
+
const column = listed.has(indexColumn.columnId) ? query(collections).collection("tableColumnEntities").selectById(indexColumn.columnId) : void 0;
|
|
53
|
+
return column ? [{
|
|
54
|
+
indexColumn,
|
|
55
|
+
column
|
|
56
|
+
}] : [];
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function toSchemaEntities({ doc, collections }, tableIds) {
|
|
60
|
+
const named = tableIds ? new Set(tableIds) : null;
|
|
61
|
+
const listed = new Set(doc.tableIds);
|
|
62
|
+
const writes = (tableId) => !named || named.has(tableId);
|
|
63
|
+
return {
|
|
64
|
+
tables: query(collections).collection("tableEntities").selectByIds(doc.tableIds.filter(writes)).sort(orderByNameASC),
|
|
65
|
+
relationships: query(collections).collection("relationshipEntities").selectByIds(doc.relationshipIds).filter(({ end }) => writes(end.tableId)),
|
|
66
|
+
indexes: query(collections).collection("indexEntities").selectByIds(doc.indexIds).filter(({ tableId }) => listed.has(tableId) && writes(tableId))
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function formatNames(list, backtick, backtick2) {
|
|
70
|
+
const buf = [];
|
|
71
|
+
list.forEach((v, i) => {
|
|
72
|
+
if (backtick) {
|
|
73
|
+
if (backtick2) buf.push(`${backtick}${v.name}${backtick2}`);
|
|
74
|
+
else buf.push(`${backtick}${v.name}${backtick}`);
|
|
75
|
+
} else buf.push(v.name);
|
|
76
|
+
if (list.length !== i + 1) buf.push(", ");
|
|
77
|
+
});
|
|
78
|
+
return buf.join("");
|
|
79
|
+
}
|
|
80
|
+
function formatSize(columns) {
|
|
81
|
+
let name = 0;
|
|
82
|
+
let dataType = 0;
|
|
83
|
+
columns.forEach((column) => {
|
|
84
|
+
if (name < column.name.length) name = column.name.length;
|
|
85
|
+
if (dataType < column.dataType.length) dataType = column.dataType.length;
|
|
86
|
+
});
|
|
87
|
+
return {
|
|
88
|
+
name,
|
|
89
|
+
dataType
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function formatSpace(size) {
|
|
93
|
+
const buf = [];
|
|
94
|
+
for (let i = 0; i < size; i++) buf.push(" ");
|
|
95
|
+
return buf.join("");
|
|
96
|
+
}
|
|
97
|
+
function primaryKey(columns) {
|
|
98
|
+
return columns.some(({ options }) => bHas(options, ColumnOption.primaryKey));
|
|
99
|
+
}
|
|
100
|
+
function unique(columns) {
|
|
101
|
+
return columns.some(({ options }) => bHas(options, ColumnOption.unique));
|
|
102
|
+
}
|
|
103
|
+
function uniqueColumns(columns) {
|
|
104
|
+
return columns.filter(({ options }) => bHas(options, ColumnOption.unique));
|
|
105
|
+
}
|
|
106
|
+
function ifNotExists(statements) {
|
|
107
|
+
return statements === SchemaSQLStatements.ifNotExists ? " IF NOT EXISTS" : "";
|
|
108
|
+
}
|
|
109
|
+
function toOrderName(orderType) {
|
|
110
|
+
switch (orderType) {
|
|
111
|
+
case OrderType.ASC: return "ASC";
|
|
112
|
+
case OrderType.DESC: return "DESC";
|
|
113
|
+
default: return "";
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
var REFERENTIAL_ACTIONS = [
|
|
117
|
+
ReferentialAction.noAction,
|
|
118
|
+
ReferentialAction.cascade,
|
|
119
|
+
ReferentialAction.setNull,
|
|
120
|
+
ReferentialAction.setDefault,
|
|
121
|
+
ReferentialAction.restrict
|
|
122
|
+
];
|
|
123
|
+
var ALL_REFERENTIAL_ACTIONS = {
|
|
124
|
+
onDelete: REFERENTIAL_ACTIONS,
|
|
125
|
+
onUpdate: REFERENTIAL_ACTIONS
|
|
126
|
+
};
|
|
127
|
+
function withoutReferentialAction(...refused) {
|
|
128
|
+
const actions = REFERENTIAL_ACTIONS.filter((value) => !refused.includes(value));
|
|
129
|
+
return {
|
|
130
|
+
onDelete: actions,
|
|
131
|
+
onUpdate: actions
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
var REFERENTIAL_ACTION_SUPPORT = {
|
|
135
|
+
[Database.Databricks]: {
|
|
136
|
+
onDelete: [ReferentialAction.noAction],
|
|
137
|
+
onUpdate: [ReferentialAction.noAction]
|
|
138
|
+
},
|
|
139
|
+
[Database.MariaDB]: withoutReferentialAction(ReferentialAction.setDefault),
|
|
140
|
+
[Database.MSSQL]: withoutReferentialAction(ReferentialAction.restrict),
|
|
141
|
+
[Database.MySQL]: withoutReferentialAction(ReferentialAction.setDefault),
|
|
142
|
+
[Database.Oracle]: {
|
|
143
|
+
onDelete: [ReferentialAction.cascade, ReferentialAction.setNull],
|
|
144
|
+
onUpdate: []
|
|
145
|
+
},
|
|
146
|
+
[Database.PostgreSQL]: ALL_REFERENTIAL_ACTIONS,
|
|
147
|
+
[Database.SQLite]: ALL_REFERENTIAL_ACTIONS,
|
|
148
|
+
[Database.Snowflake]: {
|
|
149
|
+
onDelete: [ReferentialAction.noAction],
|
|
150
|
+
onUpdate: [ReferentialAction.noAction]
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
function referentialActionSupport(database) {
|
|
154
|
+
return REFERENTIAL_ACTION_SUPPORT[database] ?? ALL_REFERENTIAL_ACTIONS;
|
|
155
|
+
}
|
|
156
|
+
function formatReferentialActions({ onDelete, onUpdate }, support) {
|
|
157
|
+
const clauses = [];
|
|
158
|
+
if (support.onDelete.includes(onDelete)) clauses.push(`ON DELETE ${ReferentialActionToSQL[onDelete]}`);
|
|
159
|
+
if (support.onUpdate.includes(onUpdate)) clauses.push(`ON UPDATE ${ReferentialActionToSQL[onUpdate]}`);
|
|
160
|
+
return clauses;
|
|
161
|
+
}
|
|
162
|
+
function toStringLiteral(value) {
|
|
163
|
+
return `'${value.replaceAll("'", "''")}'`;
|
|
164
|
+
}
|
|
165
|
+
var DEFAULT_PIECE = /'(?:[^']|'')*'?|"(?:[^"]|"")*"?|`(?:[^`]|``)*`?|\[[^\]]*\]?|[a-z_][\w$]*|\d[\w.]*|[^]/giu;
|
|
166
|
+
function isWrapped(text) {
|
|
167
|
+
const pieces = text.match(DEFAULT_PIECE) ?? [];
|
|
168
|
+
let depth = 0;
|
|
169
|
+
return pieces[0] === "(" && pieces.every((piece, index) => {
|
|
170
|
+
if (piece === "(") depth++;
|
|
171
|
+
else if (piece === ")") depth--;
|
|
172
|
+
return depth > 0 || index === pieces.length - 1;
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
function topLevelWords(text) {
|
|
176
|
+
const words = [];
|
|
177
|
+
let depth = 0;
|
|
178
|
+
for (const piece of text.match(DEFAULT_PIECE) ?? []) if (piece === "(") depth++;
|
|
179
|
+
else if (piece === ")") depth--;
|
|
180
|
+
else if (depth === 0 && /^[a-z_]/i.test(piece)) words.push(piece.toUpperCase());
|
|
181
|
+
return words;
|
|
182
|
+
}
|
|
183
|
+
function isCall(text) {
|
|
184
|
+
const name = /^[a-z_][\w$]*(?:\.[a-z_][\w$]*)*\s*(?=\()/i.exec(text);
|
|
185
|
+
return !!name && isWrapped(text.slice(name[0].length));
|
|
186
|
+
}
|
|
187
|
+
var NUMBER = String.raw`[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?`;
|
|
188
|
+
var MYSQL_NOW = "(?:current_timestamp|now|localtime|localtimestamp)";
|
|
189
|
+
var MYSQL_BARE = new RegExp("^(?:" + [
|
|
190
|
+
NUMBER,
|
|
191
|
+
String.raw`0x[\da-f]+`,
|
|
192
|
+
String.raw`0b[01]+`,
|
|
193
|
+
String.raw`(?:_\w+\s*|n)?'(?:[^'\\]|''|\\.)*'`,
|
|
194
|
+
String.raw`(?:_\w+\s*|n)?"(?:[^"\\]|""|\\.)*"`,
|
|
195
|
+
String.raw`x'[\da-f]*'`,
|
|
196
|
+
String.raw`b'[01]*'`,
|
|
197
|
+
String.raw`(?:date|time|timestamp)\s*'[^']*'`,
|
|
198
|
+
"null|true|false",
|
|
199
|
+
String.raw`${MYSQL_NOW}(?:\s*\(\s*\d*\s*\))?`
|
|
200
|
+
].join("|") + String.raw`)(\s+on\s+update\s.*)?$`, "is");
|
|
201
|
+
var MYSQL_EXPRESSION_TYPE = /^(?:(?:tiny|medium|long)?(?:blob|text)|long|json|geometry|geom(?:etry)?collection|(?:multi)?(?:point|linestring|polygon))\b/i;
|
|
202
|
+
var MYSQL_CURRENT_TIME = new RegExp(String.raw`^${MYSQL_NOW}\b`, "i");
|
|
203
|
+
function takesBareMySQL(text, dataType) {
|
|
204
|
+
const bare = MYSQL_BARE.exec(text);
|
|
205
|
+
if (!bare) return false;
|
|
206
|
+
if (bare[1] || /^null$/i.test(text)) return true;
|
|
207
|
+
if (MYSQL_EXPRESSION_TYPE.test(dataType)) return false;
|
|
208
|
+
return !MYSQL_CURRENT_TIME.test(text) || /^(?:timestamp|datetime)\b/i.test(dataType);
|
|
209
|
+
}
|
|
210
|
+
var SQLITE_BARE = new RegExp("^(?:" + [
|
|
211
|
+
NUMBER,
|
|
212
|
+
String.raw`[+-]?0x[\da-f]+`,
|
|
213
|
+
`'(?:[^']|'')*'`,
|
|
214
|
+
String.raw`x'[\da-f]*'`,
|
|
215
|
+
String.raw`[a-z_][\w$]*`,
|
|
216
|
+
`"(?:[^"]|"")*"`,
|
|
217
|
+
"`(?:[^`]|``)*`",
|
|
218
|
+
String.raw`\[[^\]]*\]`
|
|
219
|
+
].join("|") + ")$", "i");
|
|
220
|
+
var POSTGRESQL_EXPRESSION_WORDS = [
|
|
221
|
+
"ALL",
|
|
222
|
+
"AND",
|
|
223
|
+
"ANY",
|
|
224
|
+
"AT",
|
|
225
|
+
"BETWEEN",
|
|
226
|
+
"COLLATE",
|
|
227
|
+
"ILIKE",
|
|
228
|
+
"IN",
|
|
229
|
+
"IS",
|
|
230
|
+
"ISNULL",
|
|
231
|
+
"LIKE",
|
|
232
|
+
"NOT",
|
|
233
|
+
"NOTNULL",
|
|
234
|
+
"OR",
|
|
235
|
+
"OVERLAPS",
|
|
236
|
+
"SIMILAR",
|
|
237
|
+
"SOME"
|
|
238
|
+
];
|
|
239
|
+
var TAKES_BARE = {
|
|
240
|
+
[Database.MariaDB]: (text) => MYSQL_BARE.test(text) || isCall(text) || /^[a-z_][\w$]*$/i.test(text),
|
|
241
|
+
[Database.MySQL]: takesBareMySQL,
|
|
242
|
+
[Database.PostgreSQL]: (text) => !topLevelWords(text).some((word) => POSTGRESQL_EXPRESSION_WORDS.includes(word)),
|
|
243
|
+
[Database.SQLite]: (text) => SQLITE_BARE.test(text)
|
|
244
|
+
};
|
|
245
|
+
function formatDefault(value, database, dataType = "") {
|
|
246
|
+
const text = value.trim();
|
|
247
|
+
const takesBare = TAKES_BARE[database];
|
|
248
|
+
return !takesBare || isWrapped(text) || takesBare(text, dataType.trim()) ? value : `(${text})`;
|
|
249
|
+
}
|
|
250
|
+
//#endregion
|
|
251
|
+
export { ALL_REFERENTIAL_ACTIONS, commentToWrite, createWrittenObjects, formatDefault, formatNames, formatReferentialActions, formatSize, formatSpace, ifNotExists, primaryKey, referentialActionSupport, selectIndexColumns, toForeignKeyPairs, toOrderName, toSchemaEntities, toStringLiteral, unique, uniqueColumns, withoutReferentialAction };
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
import { parser } from "../../erd-editor-schema/dist/v3/parser/index.js";
|
|
2
|
+
import { toJson } from "../../erd-editor-schema/dist/parser.js";
|
|
3
|
+
import { query } from "../../erd-editor-schema/dist/query/index.js";
|
|
4
|
+
import { ColumnOption, ColumnUIKey, OrderType, RelationshipType } from "../../constants/schema.js";
|
|
5
|
+
import { DatabaseVendor, DatabaseVendorToDatabase } from "../../constants/sql/database.js";
|
|
6
|
+
import { textInRange } from "../validation.js";
|
|
7
|
+
import { createTable } from "../collection/table.entity.js";
|
|
8
|
+
import { createColumn } from "../collection/tableColumn.entity.js";
|
|
9
|
+
import { bHas } from "../bit.js";
|
|
10
|
+
import { createIndex } from "../collection/index.entity.js";
|
|
11
|
+
import { createIndexColumn } from "../collection/indexColumn.entity.js";
|
|
12
|
+
import { createRelationship } from "../collection/relationship.entity.js";
|
|
13
|
+
import { toReferentialAction } from "../referentialAction.js";
|
|
14
|
+
import { findByName } from "./utils.js";
|
|
15
|
+
import { SortType, StatementType } from "../../schema-sql-parser/dist/parser/statement/index.js";
|
|
16
|
+
import { schemaSQLParser } from "../../schema-sql-parser/dist/parser/index.js";
|
|
17
|
+
//#region src/utils/schema-sql-parser/index.ts
|
|
18
|
+
function schemaSQLParserToSchemaJson(sql, ctx, prepare, database) {
|
|
19
|
+
const schema = parser({});
|
|
20
|
+
const vendor = Object.values(DatabaseVendor).find((value) => DatabaseVendorToDatabase[value] === database);
|
|
21
|
+
const tables = mergeTables(getStatementMap(schemaSQLParser(sql, { database: vendor })));
|
|
22
|
+
tables.forEach((table) => convertTable(schema, table, ctx));
|
|
23
|
+
convertRelationship(schema, tables);
|
|
24
|
+
convertIndex(schema, tables);
|
|
25
|
+
return toJson(prepare ? prepare(schema) : schema);
|
|
26
|
+
}
|
|
27
|
+
function getStatementMap(statements) {
|
|
28
|
+
const map = {
|
|
29
|
+
tables: [],
|
|
30
|
+
indexes: [],
|
|
31
|
+
primaryKeys: [],
|
|
32
|
+
foreignKeys: [],
|
|
33
|
+
uniques: [],
|
|
34
|
+
defaults: [],
|
|
35
|
+
autoIncrements: [],
|
|
36
|
+
tableComments: [],
|
|
37
|
+
columnComments: []
|
|
38
|
+
};
|
|
39
|
+
for (const statement of statements) switch (statement.type) {
|
|
40
|
+
case StatementType.createTable:
|
|
41
|
+
if (statement.name) map.tables.push(statement);
|
|
42
|
+
break;
|
|
43
|
+
case StatementType.createIndex:
|
|
44
|
+
if (statement.tableName && statement.columns.length) map.indexes.push(statement);
|
|
45
|
+
break;
|
|
46
|
+
case StatementType.alterTableAddPrimaryKey:
|
|
47
|
+
if (statement.name && statement.columnNames.length) map.primaryKeys.push(statement);
|
|
48
|
+
break;
|
|
49
|
+
case StatementType.alterTableAddForeignKey:
|
|
50
|
+
if (statement.name && statement.columnNames.length && statement.refTableName && (!statement.refColumnNames.length || statement.columnNames.length === statement.refColumnNames.length)) map.foreignKeys.push(statement);
|
|
51
|
+
break;
|
|
52
|
+
case StatementType.alterTableAddUnique:
|
|
53
|
+
if (statement.name && statement.columns.length) map.uniques.push(statement);
|
|
54
|
+
break;
|
|
55
|
+
case StatementType.alterTableAddDefault:
|
|
56
|
+
if (statement.name && statement.columnName && statement.default) map.defaults.push(statement);
|
|
57
|
+
break;
|
|
58
|
+
case StatementType.alterTableAlterColumnAutoIncrement:
|
|
59
|
+
if (statement.name && statement.columnName) map.autoIncrements.push(statement);
|
|
60
|
+
break;
|
|
61
|
+
case StatementType.commentOnTable:
|
|
62
|
+
if (statement.name) map.tableComments.push(statement);
|
|
63
|
+
break;
|
|
64
|
+
case StatementType.commentOnColumn: if (statement.tableName && statement.columnName) map.columnComments.push(statement);
|
|
65
|
+
}
|
|
66
|
+
return map;
|
|
67
|
+
}
|
|
68
|
+
function mergeTables({ tables, indexes, primaryKeys, foreignKeys, uniques, defaults, autoIncrements, tableComments, columnComments }) {
|
|
69
|
+
indexes.forEach((index) => {
|
|
70
|
+
const table = findByName(tables, index.tableName);
|
|
71
|
+
if (!table) return;
|
|
72
|
+
const created = keyOf(index);
|
|
73
|
+
const sameIndex = table.indexes.find((other) => mayRepeat(table, other) && isKeyIndex(keyOf(other), created));
|
|
74
|
+
if (sameIndex) {
|
|
75
|
+
sameIndex.name ||= index.name;
|
|
76
|
+
sameIndex.unique ||= index.unique;
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
if (table.keys.some((key) => isKeyIndex(key, created))) return;
|
|
80
|
+
table.indexes.push({
|
|
81
|
+
name: index.name,
|
|
82
|
+
unique: index.unique,
|
|
83
|
+
columns: index.columns
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
primaryKeys.forEach((primaryKey) => {
|
|
87
|
+
const table = findByName(tables, primaryKey.name);
|
|
88
|
+
if (!table) return;
|
|
89
|
+
const keyIndex = findKeyIndex(table, {
|
|
90
|
+
name: primaryKey.usingIndexName || primaryKey.constraintName,
|
|
91
|
+
columnNames: primaryKey.columnNames
|
|
92
|
+
});
|
|
93
|
+
if (keyIndex) table.indexes.splice(table.indexes.indexOf(keyIndex), 1);
|
|
94
|
+
primaryKey.columnNames.forEach((columnName) => {
|
|
95
|
+
const column = findByName(table.columns, columnName);
|
|
96
|
+
if (!column) return;
|
|
97
|
+
column.primaryKey = true;
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
uniques.forEach((unique) => {
|
|
101
|
+
const table = findByName(tables, unique.name);
|
|
102
|
+
if (!table) return;
|
|
103
|
+
const keyIndex = findKeyIndex(table, {
|
|
104
|
+
name: unique.usingIndexName || unique.constraintName,
|
|
105
|
+
columnNames: namesOf(unique.columns)
|
|
106
|
+
});
|
|
107
|
+
if (keyIndex && unique.columns.length > 1) {
|
|
108
|
+
keyIndex.unique = true;
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (keyIndex) table.indexes.splice(table.indexes.indexOf(keyIndex), 1);
|
|
112
|
+
if (unique.columns.length > 1) {
|
|
113
|
+
table.indexes.push({
|
|
114
|
+
name: unique.constraintName,
|
|
115
|
+
unique: true,
|
|
116
|
+
columns: unique.columns
|
|
117
|
+
});
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
unique.columns.forEach(({ name }) => {
|
|
121
|
+
const column = findByName(table.columns, name);
|
|
122
|
+
if (!column) return;
|
|
123
|
+
column.unique = true;
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
foreignKeys.forEach((foreignKey) => {
|
|
127
|
+
const table = findByName(tables, foreignKey.name);
|
|
128
|
+
if (!table) return;
|
|
129
|
+
table.foreignKeys.push({
|
|
130
|
+
columnNames: foreignKey.columnNames,
|
|
131
|
+
refTableName: foreignKey.refTableName,
|
|
132
|
+
refColumnNames: foreignKey.refColumnNames,
|
|
133
|
+
onDelete: foreignKey.onDelete,
|
|
134
|
+
onUpdate: foreignKey.onUpdate
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
defaults.forEach(({ name, columnName, default: value }) => {
|
|
138
|
+
const table = findByName(tables, name);
|
|
139
|
+
if (!table) return;
|
|
140
|
+
const column = findByName(table.columns, columnName);
|
|
141
|
+
if (!column) return;
|
|
142
|
+
column.default = value;
|
|
143
|
+
});
|
|
144
|
+
autoIncrements.forEach(({ name, columnName }) => {
|
|
145
|
+
const table = findByName(tables, name);
|
|
146
|
+
if (!table) return;
|
|
147
|
+
const column = findByName(table.columns, columnName);
|
|
148
|
+
if (!column) return;
|
|
149
|
+
column.autoIncrement = true;
|
|
150
|
+
column.default = "";
|
|
151
|
+
});
|
|
152
|
+
tableComments.forEach(({ name, comment }) => {
|
|
153
|
+
const table = findCommentTable(tables, name);
|
|
154
|
+
if (!table) return;
|
|
155
|
+
table.comment = comment;
|
|
156
|
+
});
|
|
157
|
+
columnComments.forEach(({ tableName, columnName, comment }) => {
|
|
158
|
+
const table = findCommentTable(tables, tableName);
|
|
159
|
+
if (!table) return;
|
|
160
|
+
const column = findByName(table.columns, columnName);
|
|
161
|
+
if (!column) return;
|
|
162
|
+
column.comment = comment;
|
|
163
|
+
});
|
|
164
|
+
return tables;
|
|
165
|
+
}
|
|
166
|
+
function findCommentTable(tables, name) {
|
|
167
|
+
return findByName(tables, name) ?? findByName(tables, name.slice(name.lastIndexOf(".") + 1));
|
|
168
|
+
}
|
|
169
|
+
function mayRepeat(table, index) {
|
|
170
|
+
return index.name !== "" || table.keys.some((key) => isKeyIndex(key, keyOf(index)));
|
|
171
|
+
}
|
|
172
|
+
function findKeyIndex(table, key) {
|
|
173
|
+
return table.indexes.find((index) => isKeyIndex(key, keyOf(index))) ?? null;
|
|
174
|
+
}
|
|
175
|
+
function isKeyIndex(key, index) {
|
|
176
|
+
return key.name ? isSameName(key.name, index.name) && hasSameColumns(key.columnNames, index.columnNames) : hasColumnsInOrder(key.columnNames, index.columnNames);
|
|
177
|
+
}
|
|
178
|
+
var keyOf = ({ name, columns }) => ({
|
|
179
|
+
name,
|
|
180
|
+
columnNames: namesOf(columns)
|
|
181
|
+
});
|
|
182
|
+
var namesOf = (columns) => columns.map(({ name }) => name);
|
|
183
|
+
var isSameName = (a, b) => a.toUpperCase() === b.toUpperCase();
|
|
184
|
+
function hasSameColumns(a, b) {
|
|
185
|
+
const names = new Set(a.map((name) => name.toUpperCase()));
|
|
186
|
+
return a.length === b.length && b.every((name) => names.has(name.toUpperCase()));
|
|
187
|
+
}
|
|
188
|
+
function hasColumnsInOrder(a, b) {
|
|
189
|
+
return a.length === b.length && a.every((name, i) => isSameName(name, b[i]));
|
|
190
|
+
}
|
|
191
|
+
function convertTable({ doc, collections }, table, { toWidth }) {
|
|
192
|
+
const newTable = createTable({
|
|
193
|
+
name: table.name,
|
|
194
|
+
comment: table.comment,
|
|
195
|
+
ui: {
|
|
196
|
+
widthName: textInRange(toWidth(table.name)),
|
|
197
|
+
widthComment: textInRange(toWidth(table.comment))
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
table.columns.forEach((column) => {
|
|
201
|
+
const newColumn = createColumn({
|
|
202
|
+
tableId: newTable.id,
|
|
203
|
+
name: column.name,
|
|
204
|
+
comment: column.comment,
|
|
205
|
+
dataType: column.dataType,
|
|
206
|
+
default: column.default,
|
|
207
|
+
options: (column.autoIncrement ? ColumnOption.autoIncrement : 0) | (column.primaryKey ? ColumnOption.primaryKey : 0) | (column.unique ? ColumnOption.unique : 0) | (column.nullable ? 0 : ColumnOption.notNull),
|
|
208
|
+
ui: {
|
|
209
|
+
widthName: textInRange(toWidth(column.name)),
|
|
210
|
+
widthComment: textInRange(toWidth(column.comment)),
|
|
211
|
+
widthDataType: textInRange(toWidth(column.dataType)),
|
|
212
|
+
widthDefault: textInRange(toWidth(column.default)),
|
|
213
|
+
keys: column.primaryKey ? ColumnUIKey.primaryKey : 0
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
newTable.columnIds.push(newColumn.id);
|
|
217
|
+
newTable.seqColumnIds.push(newColumn.id);
|
|
218
|
+
query(collections).collection("tableColumnEntities").setOne(newColumn);
|
|
219
|
+
});
|
|
220
|
+
doc.tableIds.push(newTable.id);
|
|
221
|
+
query(collections).collection("tableEntities").setOne(newTable);
|
|
222
|
+
}
|
|
223
|
+
function convertRelationship({ doc, collections }, tables) {
|
|
224
|
+
const newTables = query(collections).collection("tableEntities").selectByIds(doc.tableIds);
|
|
225
|
+
const columnCollection = query(collections).collection("tableColumnEntities");
|
|
226
|
+
tables.forEach((table) => {
|
|
227
|
+
if (!table.foreignKeys.length) return;
|
|
228
|
+
const endTable = findByName(newTables, table.name);
|
|
229
|
+
if (!endTable) return;
|
|
230
|
+
const eColumns = columnCollection.selectByIds(endTable.columnIds);
|
|
231
|
+
table.foreignKeys.forEach((foreignKey) => {
|
|
232
|
+
const startTable = findByName(newTables, foreignKey.refTableName);
|
|
233
|
+
if (!startTable) return;
|
|
234
|
+
const sColumns = columnCollection.selectByIds(startTable.columnIds);
|
|
235
|
+
const startColumns = [];
|
|
236
|
+
const endColumns = [];
|
|
237
|
+
if (foreignKey.refColumnNames.length) foreignKey.refColumnNames.forEach((refColumnName) => {
|
|
238
|
+
const column = findByName(sColumns, refColumnName);
|
|
239
|
+
if (!column) return;
|
|
240
|
+
startColumns.push(column);
|
|
241
|
+
});
|
|
242
|
+
else {
|
|
243
|
+
const primaryKeys = sColumns.filter((column) => bHas(column.ui.keys, ColumnUIKey.primaryKey));
|
|
244
|
+
if (primaryKeys.length === 1) startColumns.push(...primaryKeys);
|
|
245
|
+
}
|
|
246
|
+
foreignKey.columnNames.forEach((columnName) => {
|
|
247
|
+
const column = findByName(eColumns, columnName);
|
|
248
|
+
if (!column) return;
|
|
249
|
+
endColumns.push(column);
|
|
250
|
+
});
|
|
251
|
+
if (!startColumns.length || startColumns.length !== endColumns.length) return;
|
|
252
|
+
endColumns.forEach((column) => {
|
|
253
|
+
if (bHas(column.ui.keys, ColumnUIKey.primaryKey)) column.ui.keys |= ColumnUIKey.foreignKey;
|
|
254
|
+
else column.ui.keys = ColumnUIKey.foreignKey;
|
|
255
|
+
});
|
|
256
|
+
const newRelationship = createRelationship({
|
|
257
|
+
identification: !endColumns.some((column) => !(bHas(column.ui.keys, ColumnUIKey.primaryKey) && bHas(column.ui.keys, ColumnUIKey.foreignKey))),
|
|
258
|
+
relationshipType: RelationshipType.ZeroN,
|
|
259
|
+
onDelete: toReferentialAction(foreignKey.onDelete),
|
|
260
|
+
onUpdate: toReferentialAction(foreignKey.onUpdate),
|
|
261
|
+
start: {
|
|
262
|
+
tableId: startTable.id,
|
|
263
|
+
columnIds: startColumns.map((column) => column.id)
|
|
264
|
+
},
|
|
265
|
+
end: {
|
|
266
|
+
tableId: endTable.id,
|
|
267
|
+
columnIds: endColumns.map((column) => column.id)
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
doc.relationshipIds.push(newRelationship.id);
|
|
271
|
+
query(collections).collection("relationshipEntities").setOne(newRelationship);
|
|
272
|
+
});
|
|
273
|
+
});
|
|
274
|
+
}
|
|
275
|
+
function convertIndex({ doc, collections }, tables) {
|
|
276
|
+
const newTables = query(collections).collection("tableEntities").selectByIds(doc.tableIds);
|
|
277
|
+
tables.forEach((table) => {
|
|
278
|
+
table.indexes.forEach((index) => {
|
|
279
|
+
const targetTable = findByName(newTables, table.name);
|
|
280
|
+
if (!targetTable) return;
|
|
281
|
+
const columns = query(collections).collection("tableColumnEntities").selectByIds(targetTable.columnIds);
|
|
282
|
+
const indexColumns = [];
|
|
283
|
+
const newIndex = createIndex({
|
|
284
|
+
name: index.name,
|
|
285
|
+
tableId: targetTable.id,
|
|
286
|
+
unique: index.unique
|
|
287
|
+
});
|
|
288
|
+
index.columns.forEach((column) => {
|
|
289
|
+
const targetColumn = findByName(columns, column.name);
|
|
290
|
+
if (!targetColumn) return;
|
|
291
|
+
const newIndexColumn = createIndexColumn({
|
|
292
|
+
indexId: newIndex.id,
|
|
293
|
+
columnId: targetColumn.id,
|
|
294
|
+
orderType: column.sort === SortType.asc ? OrderType.ASC : OrderType.DESC
|
|
295
|
+
});
|
|
296
|
+
indexColumns.push(newIndexColumn);
|
|
297
|
+
});
|
|
298
|
+
const complete = indexColumns.length === index.columns.length;
|
|
299
|
+
if (indexColumns.length !== 0 && (complete || !index.unique)) {
|
|
300
|
+
indexColumns.forEach((indexColumn) => {
|
|
301
|
+
newIndex.indexColumnIds.push(indexColumn.id);
|
|
302
|
+
newIndex.seqIndexColumnIds.push(indexColumn.id);
|
|
303
|
+
query(collections).collection("indexColumnEntities").setOne(indexColumn);
|
|
304
|
+
});
|
|
305
|
+
doc.indexIds.push(newIndex.id);
|
|
306
|
+
query(collections).collection("indexEntities").setOne(newIndex);
|
|
307
|
+
}
|
|
308
|
+
});
|
|
309
|
+
});
|
|
310
|
+
}
|
|
311
|
+
//#endregion
|
|
312
|
+
export { schemaSQLParserToSchemaJson };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Palette } from "../themes/radix-ui-theme.js";
|
|
2
|
+
import { get } from "es-toolkit/compat";
|
|
3
|
+
var SharedColors = [
|
|
4
|
+
"tomato",
|
|
5
|
+
"gold",
|
|
6
|
+
"grass",
|
|
7
|
+
"teal",
|
|
8
|
+
"iris",
|
|
9
|
+
"purple",
|
|
10
|
+
"plum",
|
|
11
|
+
"pink"
|
|
12
|
+
].map((hue) => get(Palette, `${hue}.${hue}9`) ?? "");
|
|
13
|
+
function toSharedColor(id) {
|
|
14
|
+
let hash = 0;
|
|
15
|
+
for (let i = 0; i < id.length; i++) hash = hash * 31 + id.charCodeAt(i) | 0;
|
|
16
|
+
return SharedColors[Math.abs(hash) % SharedColors.length];
|
|
17
|
+
}
|
|
18
|
+
//#endregion
|
|
19
|
+
export { SharedColors, toSharedColor };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region src/utils/stageCursor.ts
|
|
2
|
+
var CURSOR_GRABBING = "grabbing";
|
|
3
|
+
var stageCursorHolds = /* @__PURE__ */ new WeakMap();
|
|
4
|
+
function setStageCursor(container, cursor) {
|
|
5
|
+
const hold = stageCursorHolds.get(container);
|
|
6
|
+
if (hold) hold.requested = cursor;
|
|
7
|
+
else container.style.cursor = cursor;
|
|
8
|
+
}
|
|
9
|
+
function holdStageCursor(container, cursor) {
|
|
10
|
+
const hold = { requested: stageCursorHolds.get(container)?.requested ?? container.style.cursor };
|
|
11
|
+
stageCursorHolds.set(container, hold);
|
|
12
|
+
container.style.cursor = cursor;
|
|
13
|
+
return () => {
|
|
14
|
+
if (stageCursorHolds.get(container) !== hold) return;
|
|
15
|
+
stageCursorHolds.delete(container);
|
|
16
|
+
container.style.cursor = hold.requested;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { CURSOR_GRABBING, holdStageCursor, setStageCursor };
|