@dineug/erd-editor 3.10.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (392) hide show
  1. package/README.md +140 -158
  2. package/dist/components/appContext.d.ts +4 -0
  3. package/dist/components/erd/Erd.d.ts +3 -0
  4. package/dist/components/erd/automatic-table-placement/AutomaticTablePlacement.d.ts +2 -1
  5. package/dist/components/erd/automatic-table-placement/createAutomaticTablePlacement.d.ts +38 -2
  6. package/dist/components/erd/automatic-table-placement/elkPlacement.d.ts +42 -0
  7. package/dist/components/erd/automatic-table-placement/flowPlacement.d.ts +21 -0
  8. package/dist/components/erd/automatic-table-placement/placementActions.d.ts +14 -0
  9. package/dist/components/erd/automatic-table-placement/runElkPlacement.d.ts +0 -11
  10. package/dist/components/erd/canvas/DiffOutline.template.d.ts +14 -0
  11. package/dist/components/erd/canvas/SceneIcon.template.d.ts +2 -2
  12. package/dist/components/erd/canvas/entityDrag.d.ts +17 -1
  13. package/dist/components/erd/canvas/middleButtonPan.d.ts +11 -0
  14. package/dist/components/erd/canvas/sceneTokens.d.ts +40 -0
  15. package/dist/components/erd/canvas/table/Table.d.ts +9 -1
  16. package/dist/components/erd/canvas/table/doubleClick.d.ts +3 -4
  17. package/dist/components/erd/canvas/table-group/TableGroup.d.ts +17 -0
  18. package/dist/components/erd/canvas/table-group/TableGroupBody.d.ts +17 -0
  19. package/dist/components/erd/canvas/table-group/TableGroupDropTarget.d.ts +10 -0
  20. package/dist/components/erd/canvas/table-group/TableGroupSash.d.ts +35 -0
  21. package/dist/components/erd/canvas/table-group/TableGroups.d.ts +10 -0
  22. package/dist/components/erd/canvas/table-group/tableGroupBox.d.ts +40 -0
  23. package/dist/components/erd/canvas/table-group/titleLayout.d.ts +45 -0
  24. package/dist/components/erd/canvas/useMoveEntity.d.ts +2 -0
  25. package/dist/components/erd/diff-viewer/diff-tree/DiffTree.d.ts +19 -0
  26. package/dist/components/erd/diff-viewer/diff-tree/DiffTree.styles.d.ts +12 -0
  27. package/dist/components/erd/diff-viewer/diff-tree/diffTreeModel.d.ts +49 -0
  28. package/dist/components/erd/diff-viewer/diff.d.ts +21 -19
  29. package/dist/components/erd/draw-target/DrawTargetButtons.d.ts +16 -0
  30. package/dist/components/erd/draw-target/DrawTargetButtons.styles.d.ts +14 -0
  31. package/dist/components/erd/draw-target/drawTargetState.d.ts +26 -0
  32. package/dist/components/erd/draw-target/findDrawTarget.d.ts +29 -0
  33. package/dist/components/erd/draw-target/placePill.d.ts +47 -0
  34. package/dist/components/erd/erd-context-menu/ErdContextMenu.d.ts +6 -0
  35. package/dist/components/erd/erd-context-menu/menus/drawRelationshipMenus.d.ts +3 -0
  36. package/dist/components/erd/erd-context-menu/menus/exportMenus.d.ts +7 -2
  37. package/dist/components/erd/erd-context-menu/menus/importMenus.d.ts +5 -1
  38. package/dist/components/erd/erd-context-menu/menus/relationshipMenus.d.ts +6 -2
  39. package/dist/components/erd/erd-context-menu/menus/showMenus.d.ts +3 -1
  40. package/dist/components/erd/erd-context-menu/menus/tablePlacementMenus.d.ts +3 -0
  41. package/dist/components/erd/floating-toolbar/FloatingToolbar.d.ts +7 -4
  42. package/dist/components/erd/floating-toolbar/ToolbarCompass.template.d.ts +3 -1
  43. package/dist/components/erd/goToErdTarget.d.ts +40 -16
  44. package/dist/components/erd/hitTest.d.ts +16 -1
  45. package/dist/components/erd/minimap/MinimapScene.d.ts +1 -1
  46. package/dist/components/erd/minimap/table/Table.d.ts +3 -3
  47. package/dist/components/erd/minimap/table-group/TableGroup.d.ts +17 -0
  48. package/dist/components/erd/relationshipHighlight.d.ts +18 -0
  49. package/dist/components/erd/table-group/TableGroupDraft.d.ts +15 -0
  50. package/dist/components/erd/table-group/TableGroupDraft.styles.d.ts +6 -0
  51. package/dist/components/erd/table-group/tableGroupName.d.ts +21 -0
  52. package/dist/components/erd/table-group/useTableGroupDraw.d.ts +25 -0
  53. package/dist/components/erd/table-properties/TableProperties.styles.d.ts +2 -2
  54. package/dist/components/erd/table-properties/table-properties-indexes/indexes-key/IndexesKey.d.ts +6 -0
  55. package/dist/components/erd/table-properties/table-properties-tabs/TablePropertiesTabs.d.ts +3 -0
  56. package/dist/components/erd/welcome-screen/WelcomeScreen.d.ts +17 -0
  57. package/dist/components/erd/welcome-screen/WelcomeScreen.styles.d.ts +17 -0
  58. package/dist/components/erd/welcome-screen/welcome-hints/WelcomeHints.d.ts +21 -0
  59. package/dist/components/erd/welcome-screen/welcome-hints/WelcomeHints.styles.d.ts +19 -0
  60. package/dist/components/erd/welcome-screen/welcome-hints/hintArrows.d.ts +10 -0
  61. package/dist/components/erd/welcome-screen/welcomeLayout.d.ts +91 -0
  62. package/dist/components/erd-editor/ErdEditor.d.ts +66 -6
  63. package/dist/components/erd-editor/ErdEditor.styles.d.ts +4 -0
  64. package/dist/components/erd-editor/useErdEditorAttachElement.d.ts +14 -1
  65. package/dist/components/erd-editor/viewportLayout.d.ts +52 -0
  66. package/dist/components/explorer/Explorer.d.ts +12 -0
  67. package/dist/components/explorer/explorer-controller/ExplorerController.d.ts +11 -0
  68. package/dist/components/explorer/explorer-panel/ExplorerPanel.d.ts +14 -0
  69. package/dist/components/explorer/explorer-panel/ExplorerPanel.styles.d.ts +13 -0
  70. package/dist/components/explorer/explorer-search/ExplorerSearch.d.ts +12 -0
  71. package/dist/components/explorer/explorer-search/ExplorerSearch.styles.d.ts +13 -0
  72. package/dist/components/explorer/explorerCommands.d.ts +28 -0
  73. package/dist/components/explorer/explorerNavigation.d.ts +14 -0
  74. package/dist/components/explorer/explorerSearch.d.ts +71 -0
  75. package/dist/components/explorer/explorerTree.d.ts +90 -0
  76. package/dist/components/explorer/explorerView.d.ts +54 -0
  77. package/dist/components/{find-replace → explorer}/matchTarget.d.ts +5 -7
  78. package/dist/components/export-image/ExportImage.d.ts +23 -0
  79. package/dist/components/export-image/ExportImage.styles.d.ts +34 -0
  80. package/dist/components/export-image/exportImageActions.d.ts +48 -0
  81. package/dist/components/generator-code/GeneratorCode.d.ts +1 -0
  82. package/dist/components/generator-code/generator-code-context-menu/GeneratorCodeContextMenu.d.ts +3 -0
  83. package/dist/components/generator-code/generator-code-context-menu/menus/columnNameCaseMenus.d.ts +3 -0
  84. package/dist/components/generator-code/generator-code-context-menu/menus/languageMenus.d.ts +8 -0
  85. package/dist/components/generator-code/generator-code-context-menu/menus/tableNameCaseMenus.d.ts +3 -0
  86. package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.d.ts +17 -0
  87. package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.styles.d.ts +5 -0
  88. package/dist/components/generator-code/generatorCodeView.d.ts +12 -0
  89. package/dist/components/generator-code/languageSettings.d.ts +14 -0
  90. package/dist/components/locale-picker/LocalePicker.d.ts +13 -0
  91. package/dist/components/locale-picker/LocalePicker.styles.d.ts +19 -0
  92. package/dist/components/localeContext.d.ts +10 -0
  93. package/dist/components/localized/Localized.d.ts +18 -0
  94. package/dist/components/map-columns/MapColumnsBody.d.ts +24 -0
  95. package/dist/components/map-columns/MapColumnsDialog.d.ts +13 -0
  96. package/dist/components/map-columns/MapColumnsDialog.styles.d.ts +38 -0
  97. package/dist/components/map-columns/mapColumnsAction.d.ts +13 -0
  98. package/dist/components/map-columns/nameOf.d.ts +6 -0
  99. package/dist/components/map-columns/openMapColumns.d.ts +9 -0
  100. package/dist/components/primitives/code-block/CodeBlock.d.ts +6 -1
  101. package/dist/components/primitives/code-block/CodeBlock.styles.d.ts +2 -0
  102. package/dist/components/primitives/color-picker/ColorPicker.d.ts +10 -1
  103. package/dist/components/primitives/color-picker/ColorPicker.styles.d.ts +25 -0
  104. package/dist/components/primitives/color-picker/colorModel.d.ts +36 -0
  105. package/dist/components/primitives/color-picker/presetColors.d.ts +13 -0
  106. package/dist/components/primitives/color-picker/resolveColor.d.ts +7 -0
  107. package/dist/components/primitives/context-menu/ContextMenu.d.ts +2 -0
  108. package/dist/components/primitives/context-menu/context-menu-content/ContextMenuContent.d.ts +1 -0
  109. package/dist/components/primitives/context-menu/context-menu-content/fitMenu.d.ts +4 -4
  110. package/dist/components/primitives/context-menu/context-menu-separator/ContextMenuSeparator.d.ts +8 -0
  111. package/dist/components/primitives/context-menu/context-menu-separator/ContextMenuSeparator.styles.d.ts +2 -0
  112. package/dist/components/primitives/context-menu/menu/Menu.d.ts +2 -0
  113. package/dist/components/primitives/context-menu/submenu-chevron/SubmenuChevron.d.ts +5 -0
  114. package/dist/components/primitives/dialog/Dialog.d.ts +21 -0
  115. package/dist/components/primitives/dialog/Dialog.styles.d.ts +12 -0
  116. package/dist/components/primitives/highlighted-text/HighlightedText.d.ts +2 -5
  117. package/dist/components/primitives/icon/icons.d.ts +24 -3
  118. package/dist/components/primitives/sash/Sash.d.ts +1 -0
  119. package/dist/components/primitives/select/Select.d.ts +18 -0
  120. package/dist/components/primitives/select/Select.styles.d.ts +13 -0
  121. package/dist/components/primitives/text-input/TextInput.d.ts +2 -0
  122. package/dist/components/primitives/toast/Toast.d.ts +5 -1
  123. package/dist/components/primitives/toast/Toast.styles.d.ts +2 -2
  124. package/dist/components/primitives/tree/Tree.d.ts +30 -0
  125. package/dist/components/primitives/tree/Tree.styles.d.ts +5 -0
  126. package/dist/components/primitives/tree/treeModel.d.ts +42 -0
  127. package/dist/components/quick-search/QuickSearch.d.ts +2 -1
  128. package/dist/components/quick-search/QuickSearch.styles.d.ts +1 -0
  129. package/dist/components/quick-search/actions.d.ts +39 -7
  130. package/dist/components/quick-search/hangul.d.ts +16 -10
  131. package/dist/components/quick-search/paletteList.d.ts +7 -0
  132. package/dist/components/quick-search/paletteQuery.d.ts +5 -4
  133. package/dist/components/quick-search/scopedActions.d.ts +10 -15
  134. package/dist/components/schema-sql/SchemaSQL.d.ts +2 -0
  135. package/dist/components/schema-sql/SchemaSQL.styles.d.ts +7 -0
  136. package/dist/components/schema-sql/schema-sql-context-menu/SchemaSQLContextMenu.d.ts +3 -0
  137. package/dist/components/schema-sql/schema-sql-context-menu/menus/bracketMenus.d.ts +3 -0
  138. package/dist/components/schema-sql/schema-sql-context-menu/menus/headerMenus.d.ts +29 -0
  139. package/dist/components/schema-sql/schema-sql-context-menu/menus/statementsMenus.d.ts +27 -0
  140. package/dist/components/schema-sql/schema-sql-options/SchemaSQLOptions.d.ts +24 -0
  141. package/dist/components/schema-sql/schema-sql-options/SchemaSQLOptions.styles.d.ts +45 -0
  142. package/dist/components/schema-sql/schema-sql-options/ScriptEditor.d.ts +20 -0
  143. package/dist/components/schema-sql/schema-sql-options/ScriptEditor.styles.d.ts +13 -0
  144. package/dist/components/schema-sql/schema-sql-options/dropWarning.d.ts +8 -0
  145. package/dist/components/schema-sql/schemaSQLView.d.ts +71 -0
  146. package/dist/components/settings/Settings.styles.d.ts +7 -0
  147. package/dist/components/settings/columnTypeLabels.d.ts +8 -0
  148. package/dist/components/settings/lockSettingRows.d.ts +16 -0
  149. package/dist/components/settings/settings-lnb/SettingsLnb.d.ts +3 -0
  150. package/dist/components/settings/settingsPage.d.ts +10 -0
  151. package/dist/components/theme-builder/ThemeBuilder.d.ts +9 -1
  152. package/dist/components/theme-builder/ThemeBuilder.styles.d.ts +7 -4
  153. package/dist/components/toast-container/openStatusToast.d.ts +29 -0
  154. package/dist/components/toast-container/openToastWhileRunning.d.ts +1 -1
  155. package/dist/components/toolbar/Toolbar.d.ts +1 -0
  156. package/dist/components/toolbar/Toolbar.styles.d.ts +0 -1
  157. package/dist/components/visualization/graph-node/GraphNode.d.ts +2 -2
  158. package/dist/components/visualization/graphPan.d.ts +12 -0
  159. package/dist/components/visualization/visualizationView.d.ts +2 -2
  160. package/dist/constants/language.d.ts +1 -1
  161. package/dist/constants/layout.d.ts +41 -1
  162. package/dist/constants/open.d.ts +3 -1
  163. package/dist/constants/schema.d.ts +25 -4
  164. package/dist/constants/sql/dataType/PostgreSQL.d.ts +2 -1
  165. package/dist/constants/sql/dataType/SQLite.d.ts +3 -1
  166. package/dist/engine/actions.d.ts +20 -2
  167. package/dist/engine/context.d.ts +6 -0
  168. package/dist/engine/index.js +26 -21
  169. package/dist/engine/modules/editor/actions.d.ts +10 -2
  170. package/dist/engine/modules/editor/atom.actions.d.ts +49 -11
  171. package/dist/engine/modules/editor/generator.actions.d.ts +107 -8
  172. package/dist/engine/modules/editor/state.d.ts +16 -3
  173. package/dist/engine/modules/editor/utils/color.d.ts +21 -0
  174. package/dist/engine/modules/editor/utils/duplicate.d.ts +28 -1
  175. package/dist/engine/modules/editor/utils/focus.d.ts +16 -0
  176. package/dist/engine/modules/editor/utils/releaseHidden.d.ts +16 -0
  177. package/dist/engine/modules/editor/utils/selection.d.ts +12 -0
  178. package/dist/engine/modules/relationship/actions.d.ts +6 -0
  179. package/dist/engine/modules/relationship/atom.actions.d.ts +57 -1
  180. package/dist/engine/modules/relationship/endFlags.d.ts +14 -0
  181. package/dist/engine/modules/relationship/fkColumns.d.ts +25 -6
  182. package/dist/engine/modules/relationship/history.d.ts +1 -0
  183. package/dist/engine/modules/relationship/hooks.d.ts +0 -11
  184. package/dist/engine/modules/relationship/referenceType.d.ts +12 -0
  185. package/dist/engine/modules/settings/actions.d.ts +17 -4
  186. package/dist/engine/modules/settings/atom.actions.d.ts +63 -19
  187. package/dist/engine/modules/settings/generator.actions.d.ts +7 -0
  188. package/dist/engine/modules/settings/history.d.ts +1 -0
  189. package/dist/engine/modules/table/actions.d.ts +8 -0
  190. package/dist/engine/modules/table/atom.actions.d.ts +31 -0
  191. package/dist/engine/modules/table/generator.actions.d.ts +3 -3
  192. package/dist/engine/modules/table/history.d.ts +1 -0
  193. package/dist/engine/modules/table-column/generator.actions.d.ts +8 -0
  194. package/dist/engine/modules/table-column/hooks.d.ts +0 -6
  195. package/dist/engine/modules/table-column/keys.d.ts +14 -0
  196. package/dist/engine/modules/table-column/utils/dataType.d.ts +19 -1
  197. package/dist/engine/modules/table-group/actions.d.ts +63 -0
  198. package/dist/engine/modules/table-group/atom.actions.d.ts +238 -0
  199. package/dist/engine/modules/table-group/generator.actions.d.ts +111 -0
  200. package/dist/engine/modules/table-group/history.d.ts +13 -0
  201. package/dist/engine/peer-store.d.ts +9 -3
  202. package/dist/engine/replication-store.d.ts +6 -3
  203. package/dist/engine/rx-operators/groupByStreamActions.d.ts +5 -1
  204. package/dist/engine/rx-operators/lockIgnoreFilter.d.ts +8 -0
  205. package/dist/engine/rx-store.d.ts +2 -0
  206. package/dist/engine/settle.d.ts +9 -0
  207. package/dist/engine/store-hooks.d.ts +0 -8
  208. package/dist/erd-editor.umd.js +2350 -4222
  209. package/dist/hooks/useNavigatorLanguages.d.ts +7 -0
  210. package/dist/i18n/locales.d.ts +126 -0
  211. package/dist/i18n/menuLabel.d.ts +12 -0
  212. package/dist/i18n/messages/ar-SA.d.ts +425 -0
  213. package/dist/i18n/messages/de-DE.d.ts +405 -0
  214. package/dist/i18n/messages/en/code.d.ts +16 -0
  215. package/dist/i18n/messages/en/colorPicker.d.ts +35 -0
  216. package/dist/i18n/messages/en/common.d.ts +64 -0
  217. package/dist/i18n/messages/en/contextMenu.d.ts +29 -0
  218. package/dist/i18n/messages/en/explorer.d.ts +37 -0
  219. package/dist/i18n/messages/en/exportImage.d.ts +25 -0
  220. package/dist/i18n/messages/en/feedback.d.ts +11 -0
  221. package/dist/i18n/messages/en/findReplace.d.ts +40 -0
  222. package/dist/i18n/messages/en/floatingToolbar.d.ts +12 -0
  223. package/dist/i18n/messages/en/index.d.ts +408 -0
  224. package/dist/i18n/messages/en/mapColumns.d.ts +39 -0
  225. package/dist/i18n/messages/en/palette.d.ts +34 -0
  226. package/dist/i18n/messages/en/schemaSql.d.ts +28 -0
  227. package/dist/i18n/messages/en/settings.d.ts +22 -0
  228. package/dist/i18n/messages/en/shortcuts.d.ts +34 -0
  229. package/dist/i18n/messages/en/tableProperties.d.ts +34 -0
  230. package/dist/i18n/messages/en/themeBuilder.d.ts +7 -0
  231. package/dist/i18n/messages/en/toolbar.d.ts +8 -0
  232. package/dist/i18n/messages/en/visualization.d.ts +12 -0
  233. package/dist/i18n/messages/en/welcome.d.ts +13 -0
  234. package/dist/i18n/messages/es-ES.d.ts +410 -0
  235. package/dist/i18n/messages/eu-ES.d.ts +405 -0
  236. package/dist/i18n/messages/fa-IR.d.ts +405 -0
  237. package/dist/i18n/messages/fr-FR.d.ts +410 -0
  238. package/dist/i18n/messages/he-IL.d.ts +410 -0
  239. package/dist/i18n/messages/id-ID.d.ts +400 -0
  240. package/dist/i18n/messages/index.d.ts +11 -0
  241. package/dist/i18n/messages/it-IT.d.ts +410 -0
  242. package/dist/i18n/messages/ja-JP.d.ts +400 -0
  243. package/dist/i18n/messages/ko-KR.d.ts +400 -0
  244. package/dist/i18n/messages/nl-NL.d.ts +405 -0
  245. package/dist/i18n/messages/pl-PL.d.ts +415 -0
  246. package/dist/i18n/messages/pt-BR.d.ts +410 -0
  247. package/dist/i18n/messages/pt-PT.d.ts +410 -0
  248. package/dist/i18n/messages/ro-RO.d.ts +410 -0
  249. package/dist/i18n/messages/ru-RU.d.ts +415 -0
  250. package/dist/i18n/messages/sk-SK.d.ts +415 -0
  251. package/dist/i18n/messages/sl-SI.d.ts +415 -0
  252. package/dist/i18n/messages/sv-SE.d.ts +405 -0
  253. package/dist/i18n/messages/tr-TR.d.ts +405 -0
  254. package/dist/i18n/messages/uk-UA.d.ts +415 -0
  255. package/dist/i18n/messages/zh-CN.d.ts +400 -0
  256. package/dist/i18n/messages/zh-TW.d.ts +400 -0
  257. package/dist/i18n/resolveLocale.d.ts +11 -0
  258. package/dist/i18n/source.d.ts +7 -0
  259. package/dist/i18n/translate.d.ts +58 -0
  260. package/dist/index.d.ts +2 -0
  261. package/dist/index.js +31169 -12611
  262. package/dist/internal-types/index.d.ts +2 -4
  263. package/dist/konva/scene/contentBounds.d.ts +18 -12
  264. package/dist/konva/scene/metrics.d.ts +2 -0
  265. package/dist/konva/scene/renderScene.d.ts +10 -4
  266. package/dist/konva/scene/stacking.d.ts +21 -0
  267. package/dist/konva/scene/viewLayout.d.ts +2 -1
  268. package/dist/loadValue-BKvXDYoC.js +12925 -0
  269. package/dist/peer/index.d.ts +6 -3
  270. package/dist/peer/index.js +82 -75
  271. package/dist/services/elk-layout/elkGraph.d.ts +6 -4
  272. package/dist/services/elk-layout/elkLayoutOptions.d.ts +20 -0
  273. package/dist/services/elk-layout/elkLayoutService.d.ts +3 -3
  274. package/dist/services/export-png/ExportScene.d.ts +3 -3
  275. package/dist/services/export-png/documentScene.d.ts +14 -9
  276. package/dist/services/export-png/exportBox.d.ts +40 -5
  277. package/dist/services/export-png/exportPngService.d.ts +15 -0
  278. package/dist/services/export-png/exportTheme.d.ts +26 -0
  279. package/dist/services/export-png/index.d.ts +44 -11
  280. package/dist/services/export-png/renderPng.d.ts +18 -10
  281. package/dist/services/export-png/renderSvg.d.ts +22 -0
  282. package/dist/services/export-png/sceneSvg.d.ts +54 -0
  283. package/dist/services/shiki/graphqlGrammar.d.ts +8 -0
  284. package/dist/shared-store-2IUOt99m.js +1341 -0
  285. package/dist/styles/scrollbar.styles.d.ts +1 -1
  286. package/dist/themes/radix-ui-theme.d.ts +11 -3
  287. package/dist/themes/tokens.d.ts +18 -4
  288. package/dist/utils/calcTable.d.ts +9 -0
  289. package/dist/utils/clipboard.d.ts +9 -0
  290. package/dist/utils/collection/tableGroup.entity.d.ts +3 -0
  291. package/dist/utils/contrastText.d.ts +21 -0
  292. package/dist/utils/deepMerge.d.ts +8 -0
  293. package/dist/utils/device-detect/index.d.ts +2 -6
  294. package/dist/utils/diff/compareEntities.d.ts +39 -0
  295. package/dist/utils/diff/diffDocuments.d.ts +12 -0
  296. package/dist/utils/diff/index.d.ts +5 -0
  297. package/dist/utils/diff/pairEntities.d.ts +41 -0
  298. package/dist/utils/diff/types.d.ts +77 -0
  299. package/dist/utils/domEvent.d.ts +18 -0
  300. package/dist/utils/dragSelect.d.ts +2 -0
  301. package/dist/utils/draw-relationship/bezier.d.ts +2 -0
  302. package/dist/utils/draw-relationship/corner.d.ts +9 -0
  303. package/dist/utils/draw-relationship/index.d.ts +18 -18
  304. package/dist/utils/draw-relationship/loop.d.ts +29 -0
  305. package/dist/utils/draw-relationship/pathFinding.d.ts +1 -1
  306. package/dist/utils/draw-relationship/sort.d.ts +8 -1
  307. package/dist/utils/draw-relationship/stub.d.ts +4 -3
  308. package/dist/utils/emitter.d.ts +53 -12
  309. package/dist/utils/file/exportFile.d.ts +15 -5
  310. package/dist/utils/file/importFile.d.ts +9 -5
  311. package/dist/utils/file/importSchema.d.ts +45 -0
  312. package/dist/utils/find-replace/findMatches.d.ts +25 -12
  313. package/dist/utils/find-replace/matcher.d.ts +2 -0
  314. package/dist/utils/find-replace/present.d.ts +8 -5
  315. package/dist/utils/find-replace/preserveCase.d.ts +10 -0
  316. package/dist/utils/generator-code/columnTypes.d.ts +99 -0
  317. package/dist/utils/generator-code/doctrine.d.ts +6 -0
  318. package/dist/utils/generator-code/doctrineReservedWords.d.ts +7 -0
  319. package/dist/utils/generator-code/graphql.d.ts +6 -0
  320. package/dist/utils/generator-code/heck.d.ts +5 -0
  321. package/dist/utils/generator-code/java.d.ts +28 -0
  322. package/dist/utils/generator-code/jsonSchema.d.ts +50 -0
  323. package/dist/utils/generator-code/jsonShape.d.ts +37 -0
  324. package/dist/utils/generator-code/kotlin.d.ts +1 -0
  325. package/dist/utils/generator-code/mermaid.d.ts +5 -0
  326. package/dist/utils/generator-code/php.d.ts +28 -0
  327. package/dist/utils/generator-code/rust.d.ts +13 -0
  328. package/dist/utils/generator-code/rustTypes.d.ts +44 -0
  329. package/dist/utils/generator-code/scala.d.ts +1 -0
  330. package/dist/utils/generator-code/seaorm.d.ts +22 -0
  331. package/dist/utils/generator-code/swift.d.ts +44 -0
  332. package/dist/utils/generator-code/utils.d.ts +19 -0
  333. package/dist/utils/generator-code/zod.d.ts +25 -0
  334. package/dist/utils/globalEventObservable.d.ts +10 -1
  335. package/dist/utils/highlightWords.d.ts +29 -0
  336. package/dist/utils/index.d.ts +1 -2
  337. package/dist/utils/keyboard-shortcut/bindKeys.d.ts +9 -0
  338. package/dist/utils/keyboard-shortcut/index.d.ts +19 -4
  339. package/dist/utils/keyboard-shortcut/utils.d.ts +21 -0
  340. package/dist/utils/map-columns/alignTypes.d.ts +37 -0
  341. package/dist/utils/map-columns/buildRows.d.ts +102 -0
  342. package/dist/utils/map-columns/candidateKeys.d.ts +24 -0
  343. package/dist/utils/map-columns/index.d.ts +8 -0
  344. package/dist/utils/map-columns/mapping.d.ts +67 -0
  345. package/dist/utils/map-columns/prefill.d.ts +26 -0
  346. package/dist/utils/map-columns/toMapColumnsActions.d.ts +10 -0
  347. package/dist/utils/map-columns/validate.d.ts +45 -0
  348. package/dist/utils/memo.d.ts +4 -0
  349. package/dist/utils/schema-aml-parser/types.d.ts +2 -0
  350. package/dist/utils/schema-dbml-parser/tokenizer.d.ts +2 -0
  351. package/dist/utils/schema-dbml-parser/types.d.ts +11 -0
  352. package/dist/utils/schema-sql/Databricks.d.ts +8 -3
  353. package/dist/utils/schema-sql/MSSQL.d.ts +14 -2
  354. package/dist/utils/schema-sql/MariaDB.d.ts +6 -5
  355. package/dist/utils/schema-sql/MySQL.d.ts +13 -4
  356. package/dist/utils/schema-sql/Oracle.d.ts +19 -5
  357. package/dist/utils/schema-sql/PostgreSQL.d.ts +16 -4
  358. package/dist/utils/schema-sql/SQLite.d.ts +16 -4
  359. package/dist/utils/schema-sql/Snowflake.d.ts +8 -3
  360. package/dist/utils/schema-sql/index.d.ts +16 -1
  361. package/dist/utils/schema-sql/options.d.ts +57 -0
  362. package/dist/utils/schema-sql/utils.d.ts +101 -2
  363. package/dist/utils/stageCursor.d.ts +20 -0
  364. package/dist/utils/table-clipboard/placement.d.ts +2 -0
  365. package/dist/utils/tableColor.d.ts +29 -0
  366. package/dist/utils/tableGroup.d.ts +142 -0
  367. package/dist/utils/tableKeys.d.ts +11 -3
  368. package/dist/utils/takeover.d.ts +6 -0
  369. package/dist/utils/virtualRange.d.ts +15 -0
  370. package/dist/workers/elkLayout.shared-worker.js +1 -1
  371. package/dist/workers/exportPng.shared-worker.js +30 -30
  372. package/dist/workers/shiki.shared-worker.js +1 -1
  373. package/dist/workers/spawn.d.ts +1 -2
  374. package/dist/workers/spawn.inline.d.ts +0 -1
  375. package/package.json +4 -11
  376. package/dist/components/erd/diff-viewer/tree-viewer/TreeViewer.d.ts +0 -12
  377. package/dist/components/erd/diff-viewer/tree-viewer/TreeViewer.styles.d.ts +0 -6
  378. package/dist/components/find-replace/FindReplace.d.ts +0 -13
  379. package/dist/components/find-replace/FindReplace.styles.d.ts +0 -27
  380. package/dist/components/find-replace/panelLayout.d.ts +0 -17
  381. package/dist/components/generator-code/GeneratorCode.styles.d.ts +0 -2
  382. package/dist/loadValue-Mdc5K4qO.js +0 -10858
  383. package/dist/schemaGCService-CZtGFh2z.js +0 -42
  384. package/dist/services/schema-gc/index.d.ts +0 -18
  385. package/dist/services/schema-gc/procGC.d.ts +0 -4
  386. package/dist/services/schema-gc/schemaGC.shared-worker.d.ts +0 -2
  387. package/dist/services/schema-gc/schemaGCService.d.ts +0 -10
  388. package/dist/shared-store-D82WVL5a.js +0 -1129
  389. package/dist/styles/colorPicker.style.d.ts +0 -7
  390. package/dist/utils/draw-relationship/chamfer.d.ts +0 -3
  391. package/dist/workers/schemaGC.shared-worker.js +0 -1
  392. /package/dist/components/{find-replace → explorer}/fieldIcon.d.ts +0 -0
@@ -1,15 +1,5 @@
1
- import { FC } from '@dineug/r-html';
2
1
  import { AppContext } from '../../appContext';
3
2
  import { ElkLayoutPoint, ElkPlacement } from '../../../services/elk-layout';
4
- type PlacingToastProps = {
5
- onCancel: () => void;
6
- };
7
- /**
8
- * The message up while ELK works, and the whole of what a one-shot placement
9
- * shows. There is no progress to follow and nothing to read off a layout that
10
- * does not exist yet, so Cancel is the only thing on it. A view placement shows it too.
11
- */
12
- export declare const PlacingToast: FC<PlacingToastProps>;
13
3
  /**
14
4
  * Places every table by ELK and hands the layout straight over. No preview
15
5
  * overlay: one layout arrives at once, there is nothing to weigh before it
@@ -19,5 +9,4 @@ export declare const PlacingToast: FC<PlacingToastProps>;
19
9
  * runElkPlacement(app.value, placement, handleChangeAutomaticTablePlacement);
20
10
  */
21
11
  export declare function runElkPlacement(app: AppContext, placement: ElkPlacement, onChange: (tables: ElkLayoutPoint[]) => void): Promise<void>;
22
- export {};
23
12
  //# sourceMappingURL=runElkPlacement.d.ts.map
@@ -0,0 +1,14 @@
1
+ /** @jsxHost konva */
2
+ export type DiffOutlineOptions = {
3
+ name: string;
4
+ stroke: string | null;
5
+ width: number;
6
+ height: number;
7
+ cornerRadius: number;
8
+ };
9
+ /**
10
+ * The outline a diff pane draws round a box standing at its group's origin,
11
+ * centred on the box's edge and taking no press; none while stroke is null.
12
+ */
13
+ export declare const diffOutlineRect: ({ name, stroke, width, height, cornerRadius, }: DiffOutlineOptions) => import("@dineug/r-html/jsx-runtime").JSX.Element | null;
14
+ //# sourceMappingURL=DiffOutline.template.d.ts.map
@@ -15,8 +15,8 @@ export type SceneIconOptions = {
15
15
  };
16
16
  /**
17
17
  * A lucide icon drawn at size, by scaling its own 24 unit box. The scale carries
18
- * the stroke with it, which is what keeps the weight the same as the svg the DOM
19
- * scene rendered at that size.
18
+ * the stroke with it, which keeps the weight of the svg the DOM scene drew, and
19
+ * a click answers the main button alone (mainButtonClick).
20
20
  */
21
21
  export declare function sceneIcon({ icon, name, kind, size, color, x, y, click, mouseenter, mouseleave, }: SceneIconOptions): DOMTemplateLiterals | null;
22
22
  //# sourceMappingURL=SceneIcon.template.d.ts.map
@@ -1,8 +1,24 @@
1
+ import { HeldTableGroupBoxes } from '../../../engine/modules/table-group/generator.actions';
1
2
  import { RootState } from '../../../engine/state';
2
3
  import { GeometrySource } from '../../../utils/draw-relationship/geometrySource';
3
- /** Raises the flag and holds the scene's view as it stands until endEntityDrag. */
4
+ /**
5
+ * Raises the flag, holds the scene's view as it stands until endEntityDrag,
6
+ * and, in the document while groups show, the box each group shows.
7
+ */
4
8
  export declare function beginEntityDrag(root: RootState, source?: GeometrySource): void;
5
9
  export declare function endEntityDrag(root: RootState, source?: GeometrySource): void;
6
10
  /** Reads the flag through the observable, so a scene render tracks it. */
7
11
  export declare function isEntityDragActive(root: RootState, source?: GeometrySource): boolean;
12
+ /**
13
+ * Marks the drag as past the click distance from its press, after which its
14
+ * drop is judged and a drop target shown: a tremor short of it changes no group.
15
+ */
16
+ export declare function markEntityDragTravelled(root: RootState, source?: GeometrySource): void;
17
+ /** Whether the drag the scene holds has travelled the click distance, tracked as the flag is. */
18
+ export declare function hasEntityDragTravelled(root: RootState, source?: GeometrySource): boolean;
19
+ /**
20
+ * The box each group showed as the scene's drag began, or null while no drag
21
+ * holds it: what a group the drag leaves standing is drawn and judged in.
22
+ */
23
+ export declare function getHeldTableGroupBoxes(root: RootState, source?: GeometrySource): HeldTableGroupBoxes | null;
8
24
  //# sourceMappingURL=entityDrag.d.ts.map
@@ -0,0 +1,11 @@
1
+ import { DragMove } from '../../../utils/globalEventObservable';
2
+ /**
3
+ * Takes a middle press anywhere in a stage container as a pan, heard in the
4
+ * capture phase before konva or the scene root, and prevents its lift wherever
5
+ * it lands: nothing selects, drags or clicks, and nothing autoscrolls or pastes.
6
+ *
7
+ * @example
8
+ * addUnsubscribe(listenMiddleButtonPan(container, handleMove, handlePress));
9
+ */
10
+ export declare function listenMiddleButtonPan(container: HTMLElement, onMove: (move: DragMove) => void, onPress?: () => void): () => void;
11
+ //# sourceMappingURL=middleButtonPan.d.ts.map
@@ -3,6 +3,15 @@ import { KonvaEventObject } from 'konva/lib/Node';
3
3
  export type SceneMouseEvent = KonvaEventObject<MouseEvent>;
4
4
  export type SceneTouchEvent = KonvaEventObject<TouchEvent>;
5
5
  export type ScenePointerEvent = SceneMouseEvent | SceneTouchEvent;
6
+ /**
7
+ * The click listener of a scene button, which acts on the main button alone:
8
+ * konva makes a click of any button's press and lift, and a right click is the
9
+ * context menu's. A Mac control click is the main button, so it still acts.
10
+ *
11
+ * @example
12
+ * on:click={mainButtonClick(handleRemove)}
13
+ */
14
+ export declare const mainButtonClick: (click: (event: SceneMouseEvent) => void) => (event: SceneMouseEvent) => void;
6
15
  /**
7
16
  * The face utils/text.ts measures a string with. Drawing in anything else would
8
17
  * make a cell wider or narrower than the width the layout reserved for it.
@@ -50,6 +59,8 @@ export declare const TABLE_CORNER_RADIUS = 6;
50
59
  export declare const FOCUS_BORDER_HEIGHT = 1.5;
51
60
  /** What the ring outside a table box costs, as outline and box-shadow both do. */
52
61
  export declare const RING_WIDTH = 1;
62
+ /** The outline a diff pane draws round an entity added, removed or only moved. */
63
+ export declare const DIFF_OUTLINE_WIDTH = 2;
53
64
  /**
54
65
  * The drop shadow a view card sits on, deeper than any a document box casts.
55
66
  * The alpha is the shadow's own, since the minimap shadow token it borrows is
@@ -78,6 +89,22 @@ export declare const DOCUMENT_CARD_SHADOW_OFFSET_Y = 2;
78
89
  */
79
90
  export declare const VIEW_CARD_GLOW_BLUR = 14;
80
91
  export declare const VIEW_CARD_GLOW_OPACITY = 0.55;
92
+ /**
93
+ * How much of its color a table group's body shows, the canvas and the
94
+ * connectors over it reading through.
95
+ */
96
+ export declare const TABLE_GROUP_FILL_OPACITY = 0.12;
97
+ /** The radius a table group's box is rounded with, a table's own. */
98
+ export declare const TABLE_GROUP_CORNER_RADIUS = 6;
99
+ /** The room a table group's name keeps from each end of its title bar, the name editor's too. */
100
+ export declare const TABLE_GROUP_TITLE_PADDING = 8;
101
+ /** The weight a table group's name is drawn and edited at, a heading over the tables' own names. */
102
+ export declare const TABLE_GROUP_TITLE_FONT_WEIGHT = "bold";
103
+ /**
104
+ * The line a table drag outlines the group its drop would join with, twice
105
+ * the box's own line so it reads apart from the selection.
106
+ */
107
+ export declare const TABLE_GROUP_DROP_WIDTH = 2;
81
108
  /** The side of the square viewBox every icon is authored in. */
82
109
  export declare const ICON_VIEW_SIZE: number;
83
110
  /** What a colour is when the scene paints nothing, as a CSS keyword konva takes. */
@@ -108,6 +135,19 @@ export declare const CURSOR_INHERIT = "";
108
135
  * on:mouseenter={(event) => setSceneCursor(event, CURSOR_POINTER)}
109
136
  */
110
137
  export declare function setSceneCursor(event: ScenePointerEvent, cursor: string): void;
138
+ /**
139
+ * The cursors one scene component asks for, so a node unmounted from under the pointer, which konva
140
+ * sends no leave for, hands the container back the cursor it took: release writes CURSOR_INHERIT
141
+ * once, unless the last cursor the component asked for already was.
142
+ *
143
+ * @example
144
+ * const cursor = createSceneCursorScope();
145
+ * onUnmounted(cursor.release);
146
+ */
147
+ export declare function createSceneCursorScope(): {
148
+ set(event: ScenePointerEvent, cursor: string): void;
149
+ release(): void;
150
+ };
111
151
  /**
112
152
  * Keeps the container on a cursor for a mouse gesture, whatever the pointer runs
113
153
  * over, and hands back the release that shows what the last hover asked for. A
@@ -2,7 +2,10 @@ import { FC } from '@dineug/r-html';
2
2
  import { Table } from '../../../../internal-types';
3
3
  export type TableProps = {
4
4
  table: Table;
5
- /** A drawn copy rather than the table itself, so nothing in it takes an id. */
5
+ /**
6
+ * A drawn copy rather than the table itself, so nothing in it takes an id,
7
+ * and no group color either: a copy, a duplicate's, lands in no group.
8
+ */
6
9
  preview?: boolean;
7
10
  hovered?: boolean;
8
11
  hoveredColumnId?: string | null;
@@ -17,6 +20,11 @@ export type TableProps = {
17
20
  * by the scene, which walks the document's links once for every card it draws.
18
21
  */
19
22
  relatedColumnIds?: Set<string> | null;
23
+ /**
24
+ * The group whose color the header wears, '' for none, named by a scene that
25
+ * reads the group list once for every table; a table drawn alone reads its own.
26
+ */
27
+ tableGroupId?: string;
20
28
  };
21
29
  declare const Table: FC<TableProps>;
22
30
  export default Table;
@@ -1,10 +1,9 @@
1
1
  import { SceneMouseEvent } from '../sceneTokens';
2
- import { FocusType } from '../../../../engine/modules/editor/state';
3
2
  export type DoubleClickGuard = {
4
- /** Records the cell a click opened a pair on. */
5
- track(cell: FocusType, event: SceneMouseEvent): void;
3
+ /** Records the cell, or a group's part, a click opened a pair on. */
4
+ track(cell: string, event: SceneMouseEvent): void;
6
5
  /** Whether a konva dblclick closes a pair that began on this same cell. */
7
- isDouble(cell: FocusType, event: SceneMouseEvent): boolean;
6
+ isDouble(cell: string, event: SceneMouseEvent): boolean;
8
7
  };
9
8
  /**
10
9
  * Tells a real double click from the one konva invents. Konva fires dblclick on
@@ -0,0 +1,17 @@
1
+ import { FC } from '@dineug/r-html';
2
+ import { TableGroupLinks } from './tableGroupBox';
3
+ import { Table, TableGroup } from '../../../../internal-types';
4
+ export type TableGroupProps = {
5
+ group: TableGroup;
6
+ /** The group's member tables, read once for every group by TableGroups. */
7
+ members: ReadonlyArray<Table>;
8
+ links: TableGroupLinks;
9
+ };
10
+ /**
11
+ * A group's frame over its body (TableGroupBody), in getDrawnTableGroupRect's box: a title bar with
12
+ * the group icon, the name and the remove button, one line around the box, the peer ring and the
13
+ * sashes, in the theme's group colors with no color it reads.
14
+ */
15
+ declare const TableGroup: FC<TableGroupProps>;
16
+ export default TableGroup;
17
+ //# sourceMappingURL=TableGroup.d.ts.map
@@ -0,0 +1,17 @@
1
+ import { FC } from '@dineug/r-html';
2
+ import { TableGroupLinks } from './tableGroupBox';
3
+ import { Table, TableGroup } from '../../../../internal-types';
4
+ export type TableGroupBodyProps = {
5
+ group: TableGroup;
6
+ /** The group's member tables, read once for every group by TableGroups. */
7
+ members: ReadonlyArray<Table>;
8
+ links: TableGroupLinks;
9
+ };
10
+ /**
11
+ * A group's body under its bar, in its color at a low alpha or the theme's group body (alpha its own),
12
+ * drawn before every frame, so no body stands over another group's bar. The main button reads it as
13
+ * the canvas under it, so only another button selects the group there, for the menu it opens.
14
+ */
15
+ declare const TableGroupBody: FC<TableGroupBodyProps>;
16
+ export default TableGroupBody;
17
+ //# sourceMappingURL=TableGroupBody.d.ts.map
@@ -0,0 +1,10 @@
1
+ import { FC } from '@dineug/r-html';
2
+ export type TableGroupDropTargetProps = {};
3
+ /**
4
+ * The outline of each group a table drag would drop a table into, in the focus color, over the
5
+ * static scene and under the dragged tables, in the box the drop is judged in; nothing where the
6
+ * drop would put every table in none, nor short of the click distance, where it judges none.
7
+ */
8
+ declare const TableGroupDropTarget: FC<TableGroupDropTargetProps>;
9
+ export default TableGroupDropTarget;
10
+ //# sourceMappingURL=TableGroupDropTarget.d.ts.map
@@ -0,0 +1,35 @@
1
+ import { FC } from '@dineug/r-html';
2
+ import { TableGroup, ValuesType } from '../../../../internal-types';
3
+ import { Rect } from '../../../../konva/scene/metrics';
4
+ export declare const TableGroupSashPosition: {
5
+ readonly left: "left";
6
+ readonly right: "right";
7
+ readonly top: "top";
8
+ readonly bottom: "bottom";
9
+ readonly lt: "lt";
10
+ readonly rt: "rt";
11
+ readonly lb: "lb";
12
+ readonly rb: "rb";
13
+ };
14
+ export type TableGroupSashPosition = ValuesType<typeof TableGroupSashPosition>;
15
+ /**
16
+ * The box a sash drag leaves, the edges it grabs moved by the drag in scene
17
+ * units: never smaller than the minimum, nor than the members' padded box,
18
+ * which the edge stops at however far past it the pointer goes.
19
+ */
20
+ export declare function resizeTableGroupRect(start: Rect, members: Rect | null, position: TableGroupSashPosition, movementX: number, movementY: number): Rect;
21
+ export type TableGroupSashProps = {
22
+ group: TableGroup;
23
+ /** The box the group is drawn in, in scene units; the sashes sit on its edges. */
24
+ box: Rect;
25
+ /** Takes each step's box to draw, and null once the drag is over. */
26
+ onDraft: (rect: Rect | null) => void;
27
+ };
28
+ /**
29
+ * The eight resize handles on a group's edges and corners, selected or not, as a memo's are. A drag
30
+ * draws its steps without writing them and writes one resize as it ends, so
31
+ * peers hear one write and one undo puts back the rect it started from.
32
+ */
33
+ declare const TableGroupSash: FC<TableGroupSashProps>;
34
+ export default TableGroupSash;
35
+ //# sourceMappingURL=TableGroupSash.d.ts.map
@@ -0,0 +1,10 @@
1
+ import { FC } from '@dineug/r-html';
2
+ export type TableGroupsProps = {};
3
+ /**
4
+ * The document's groups by zIndex in two passes, every body before every frame, so a group's bar
5
+ * and sashes stand over every body: a large group drawn over a smaller one it holds leaves the
6
+ * inner bar to its own group. A scene mounts it while groups show; it reads the list itself.
7
+ */
8
+ declare const TableGroups: FC<TableGroupsProps>;
9
+ export default TableGroups;
10
+ //# sourceMappingURL=TableGroups.d.ts.map
@@ -0,0 +1,40 @@
1
+ import { DoubleClickGuard } from '../table/doubleClick';
2
+ import { RootState } from '../../../../engine/state';
3
+ import { Table, TableGroup } from '../../../../internal-types';
4
+ import { Rect } from '../../../../konva/scene/metrics';
5
+ import { GeometrySource } from '../../../../utils/draw-relationship/geometrySource';
6
+ /**
7
+ * The box a group is drawn in, on the canvas and the minimap: getTableGroupRect's, and while a drag
8
+ * holds the scene and leaves the group standing, the box it held as the drag began with the members
9
+ * left standing, so it neither shrinks under a member lifted out nor stretches after one carried off.
10
+ *
11
+ * @example
12
+ * const box = getDrawnTableGroupRect(state, group, source, members);
13
+ */
14
+ export declare function getDrawnTableGroupRect(state: RootState, group: TableGroup, source: GeometrySource, members: ReadonlyArray<Table>): Rect;
15
+ /** The two nodes a group draws apart, each telling the other whether the pointer is over it. */
16
+ export type TableGroupHoverPart = 'frame' | 'body';
17
+ /**
18
+ * What a group's body and its frame share, drawn apart in TableGroups' two passes: the box a sash
19
+ * drag draws until its one resize, the guard telling a double click on the bar from a pair begun on
20
+ * the body, and whether the pointer is over either, which shows the remove button.
21
+ */
22
+ export type TableGroupLinks = {
23
+ draftOf(groupId: string): Rect | null;
24
+ setDraft(groupId: string, rect: Rect | null): void;
25
+ guardOf(groupId: string): DoubleClickGuard;
26
+ isHovered(groupId: string): boolean;
27
+ setHover(groupId: string, part: TableGroupHoverPart, hovered: boolean): void;
28
+ };
29
+ export declare function createTableGroupLinks(): TableGroupLinks;
30
+ /**
31
+ * Reads each group's members off one walk over the tables, handing a group the
32
+ * list it had last time while no member came or went, so a scene render that
33
+ * moved no membership leaves every group component's props as they were.
34
+ *
35
+ * @example
36
+ * const membersOf = memberLists(state);
37
+ * membersOf(group.id);
38
+ */
39
+ export declare function createTableGroupMemberLists(): (state: RootState) => (groupId: string) => ReadonlyArray<Table>;
40
+ //# sourceMappingURL=tableGroupBox.d.ts.map
@@ -0,0 +1,45 @@
1
+ /** The group icon before the name, at the table header icon's size and gap. */
2
+ export declare const TABLE_GROUP_ICON_SIZE = 12;
3
+ /** Where the name starts along the title bar, past the icon and its gap. */
4
+ export declare const TABLE_GROUP_NAME_X: number;
5
+ /** The remove button at the end of the bar, at the size of a table header's. */
6
+ export declare const TABLE_GROUP_REMOVE_SIZE = 12;
7
+ /**
8
+ * The box a group's name is centred in, down from the top of its title bar on
9
+ * a whole pixel. The scene hands konva this box with verticalAlign middle and
10
+ * the name editor gives its input the same one, so the two baselines meet.
11
+ *
12
+ * @example
13
+ * const { x, y, width, height } = getTableGroupNameBox(box.width);
14
+ */
15
+ export declare function getTableGroupNameBox(barWidth?: number): {
16
+ x: number;
17
+ y: number;
18
+ width: number;
19
+ height: number;
20
+ };
21
+ /**
22
+ * Where the group icon stands on the title bar: the bar's padding in, centred
23
+ * down the bar on a whole pixel, as the table header centres its icon.
24
+ *
25
+ * @example
26
+ * const { x, y, size } = getTableGroupIconBox();
27
+ */
28
+ export declare function getTableGroupIconBox(): {
29
+ x: number;
30
+ y: number;
31
+ size: number;
32
+ };
33
+ /**
34
+ * Where the remove button stands on the title bar: the bar's padding short of
35
+ * its end, centred down the bar on a whole pixel, as the group icon is.
36
+ *
37
+ * @example
38
+ * const { x, y, size } = getTableGroupRemoveBox(box.width);
39
+ */
40
+ export declare function getTableGroupRemoveBox(barWidth: number): {
41
+ x: number;
42
+ y: number;
43
+ size: number;
44
+ };
45
+ //# sourceMappingURL=titleLayout.d.ts.map
@@ -20,6 +20,8 @@ export type MoveEntityOptions = {
20
20
  * again here, so a leaf pays for one context subscription and not two.
21
21
  */
22
22
  source: Ref<GeometrySource>;
23
+ /** Read at the press: false leaves it a selection that lifts nothing. */
24
+ canMove?: () => boolean;
23
25
  };
24
26
  /**
25
27
  * The pointer start every draggable entity shares: select it, hand an Alt drag
@@ -0,0 +1,19 @@
1
+ import { FC } from '@dineug/r-html';
2
+ import { AppContext } from '../../../appContext';
3
+ import { DiffEntries } from '../../../../utils/diff';
4
+ export type DiffTreeProps = {
5
+ prevApp: AppContext;
6
+ app: AppContext;
7
+ entries: DiffEntries;
8
+ /** The width the diff gives the tree, which a drag on its edge asks to change. */
9
+ width: number;
10
+ onResize: (width: number) => void;
11
+ };
12
+ /**
13
+ * What a diff found, on the tree the Explorer draws: the changed entities and
14
+ * the tables they are in, each named in the colour of what happened to it and
15
+ * ending on its status letter. A row takes either pane to its entity.
16
+ */
17
+ declare const DiffTree: FC<DiffTreeProps>;
18
+ export default DiffTree;
19
+ //# sourceMappingURL=DiffTree.d.ts.map
@@ -0,0 +1,12 @@
1
+ export declare const root: import('@dineug/r-html').CSSTemplateLiterals;
2
+ export declare const header: import('@dineug/r-html').CSSTemplateLiterals;
3
+ export declare const filter: import('@dineug/r-html').CSSTemplateLiterals;
4
+ export declare const body: import('@dineug/r-html').CSSTemplateLiterals;
5
+ export declare const empty: import('@dineug/r-html').CSSTemplateLiterals;
6
+ export declare const sash: import('@dineug/r-html').CSSTemplateLiterals;
7
+ export declare const rowIcon: import('@dineug/r-html').CSSTemplateLiterals;
8
+ export declare const name: import('@dineug/r-html').CSSTemplateLiterals;
9
+ export declare const count: import('@dineug/r-html').CSSTemplateLiterals;
10
+ export declare const status: import('@dineug/r-html').CSSTemplateLiterals;
11
+ export declare const visuallyHidden: import('@dineug/r-html').CSSTemplateLiterals;
12
+ //# sourceMappingURL=DiffTree.styles.d.ts.map
@@ -0,0 +1,49 @@
1
+ import { ErdTarget } from '../../goToErdTarget';
2
+ import { TreeNode } from '../../../primitives/tree/treeModel';
3
+ import { I18n } from '../../../../i18n/translate';
4
+ import { DiffEntries, DiffEntry, DiffStatus } from '../../../../utils/diff';
5
+ export type DiffFolder = 'tables' | 'tableGroups' | 'memos' | 'columns' | 'indexes' | 'foreignKeys';
6
+ /** What one row of the diff tree stands for: a folder, or an entry with the table it is in. */
7
+ export type DiffTreeItem = {
8
+ kind: 'folder';
9
+ folder: DiffFolder;
10
+ count: number;
11
+ } | {
12
+ kind: 'entry';
13
+ entry: DiffEntry;
14
+ table: DiffEntry | null;
15
+ };
16
+ export type DiffTreeNode = TreeNode<DiffTreeItem>;
17
+ export type DiffTree = {
18
+ roots: DiffTreeNode[];
19
+ /** Every row with children, which the tree shows open unless folded. */
20
+ branchIds: string[];
21
+ };
22
+ /** A row's id: the current entity's, or the saved one's where it is gone. */
23
+ export declare const entryNodeId: (entry: DiffEntry) => string;
24
+ /** Whether a name filter keeps an entry: its current name or the saved one holds what is typed, in any case. */
25
+ export declare function matchesFilter(entry: DiffEntry, filter: string): boolean;
26
+ /**
27
+ * The tree a diff lists: Tables, Table Groups and Memos as the Explorer has
28
+ * them, holding what changed and the tables what changed is in, and only what
29
+ * the name filter keeps. Every row with children shows open to begin with.
30
+ */
31
+ export declare function buildDiffTree(entries: DiffEntries, filter?: string): DiffTree;
32
+ /** The letter a row ends on: its status, or a tilde for a row listed only for what it holds. */
33
+ export declare function statusLetter(item: DiffTreeItem): string;
34
+ export declare const statusLabel: (status: DiffStatus | null, { t }: Pick<I18n, "t">) => string;
35
+ /** How long a text a tooltip line quotes may run before it is cut. */
36
+ export declare const QUOTE_LIMIT = 40;
37
+ /** The tooltip of a row: what it is, then each change as before → after, one a line. */
38
+ export declare function describeEntry(entry: DiffEntry, i18n: Pick<I18n, 't'>): string;
39
+ export type DiffTargets = {
40
+ prev: ErdTarget | null;
41
+ next: ErdTarget | null;
42
+ };
43
+ /**
44
+ * Where a row takes each pane: an added entity the current pane alone, a
45
+ * removed one the saved pane alone, and anything both hold both; a column or
46
+ * an index its table, and a folder neither.
47
+ */
48
+ export declare function diffTargets(item: DiffTreeItem): DiffTargets;
49
+ //# sourceMappingURL=diffTreeModel.d.ts.map
@@ -1,27 +1,29 @@
1
- import { RootState } from '../../../engine/state';
2
- import { Column, Table } from '../../../internal-types';
3
1
  import { Theme } from '../../../themes/tokens';
4
- /**
5
- * Map<uuid, [tag, Map<path, diff>]>
6
- */
7
- export type DiffMap = Map<string, DiffTuple>;
8
- /** Map<path, diff> for one entity, each path spelled as the FocusType of the cell showing it. */
9
- export type DiffPaths = Map<string, number>;
10
- type DiffTuple = [string, DiffPaths];
11
- type NameToTableMap = Map<string, {
12
- table: Table;
13
- nameToColumnMap: Map<string, Column>;
14
- }>;
2
+ /** The kinds of change a diff pane marks, one bit each. */
15
3
  export declare const Diff: {
16
4
  readonly insert: 1;
17
5
  readonly delete: 2;
6
+ readonly modify: 4;
7
+ readonly rename: 8;
18
8
  };
19
- export declare function diffState(prevState: RootState, state: RootState): [DiffMap, DiffMap];
20
- export declare function getNameToTableMap({ doc: { tableIds }, collections, }: RootState): NameToTableMap;
21
9
  /**
22
- * The background a cell of one entity sits on in a diff pane: the insert or the
23
- * delete colour its own path carries, and null for a path that did not change.
10
+ * Map<path, diff> for one entity: a cell's path is the FocusType of the cell
11
+ * showing it, and ENTITY_PATH stands for the entity as a whole.
12
+ */
13
+ export type DiffPaths = Map<string, number>;
14
+ /** Map<id, paths> for the entities one pane marks. */
15
+ export type DiffMap = Map<string, DiffPaths>;
16
+ /** An entity added or removed, or one only moved, resized, recoloured or regrouped. */
17
+ export declare const ENTITY_PATH = "entity";
18
+ export declare const MEMO_VALUE_PATH = "memoValue";
19
+ /** A column's primary key, which its key icon shows. */
20
+ export declare const COLUMN_KEY_PATH = "columnPrimaryKey";
21
+ export declare const TABLE_GROUP_NAME_PATH = "tableGroupName";
22
+ /**
23
+ * The colour a cell's text takes in a diff pane: its own change's, else, in a
24
+ * row, the row's as a whole; null where neither changed.
24
25
  */
25
- export declare function diffFill(theme: Theme, paths: DiffPaths | null | undefined, path: string): string | null;
26
- export {};
26
+ export declare function diffTextColor(theme: Theme, paths: DiffPaths | null | undefined, path: string, row?: boolean): string | null;
27
+ /** The outline an entity takes in a diff pane, or the colour of a line; null for none. */
28
+ export declare function diffOutline(theme: Theme, paths: DiffPaths | null | undefined): string | null;
27
29
  //# sourceMappingURL=diff.d.ts.map
@@ -0,0 +1,16 @@
1
+ import { FC, Ref } from '@dineug/r-html';
2
+ import { PillSize } from './placePill';
3
+ export type DrawTargetButtonsProps = {
4
+ root: Ref<HTMLDivElement>;
5
+ readonly: boolean;
6
+ };
7
+ /** The pill at the size the stylesheet gives it: two buttons, the gap and the padding. */
8
+ export declare const PILL_SIZE: PillSize;
9
+ /**
10
+ * The two buttons beside the table a relationship is drawn to: one maps the
11
+ * parent's key to columns the child already has, the other adds new ones as a
12
+ * press on the table does. A layer of the document canvas, never of a view.
13
+ */
14
+ declare const DrawTargetButtons: FC<DrawTargetButtonsProps>;
15
+ export default DrawTargetButtons;
16
+ //# sourceMappingURL=DrawTargetButtons.d.ts.map
@@ -0,0 +1,14 @@
1
+ /** The buttons' own size on screen at any zoom, read by the placement too. */
2
+ export declare const PILL_BUTTON = 26;
3
+ export declare const PILL_PADDING = 4;
4
+ export declare const PILL_BORDER = 1;
5
+ export declare const PILL_GAP = 2;
6
+ /** The canvas-sized layer the outline, the gutter and the buttons stand in. */
7
+ export declare const layer: import('@dineug/r-html').CSSTemplateLiterals;
8
+ /** The table the buttons act on, outlined in the colour of the draw's preview line. */
9
+ export declare const outline: import('@dineug/r-html').CSSTemplateLiterals;
10
+ export declare const gutter: import('@dineug/r-html').CSSTemplateLiterals;
11
+ /** The floating toolbar's pill, stood on its end. */
12
+ export declare const pill: import('@dineug/r-html').CSSTemplateLiterals;
13
+ export declare const button: import('@dineug/r-html').CSSTemplateLiterals;
14
+ //# sourceMappingURL=DrawTargetButtons.styles.d.ts.map
@@ -0,0 +1,26 @@
1
+ import { RootState } from '../../../engine/state';
2
+ import { Point } from '../../../internal-types';
3
+ /**
4
+ * What the buttons beside the table a relationship is drawn to follow, in
5
+ * screen pixels from the top left of the editor's canvas root.
6
+ */
7
+ export type DrawTarget = {
8
+ /** Where the pointer last stood over the canvas, or null once it left. */
9
+ pointer: Point | null;
10
+ /** The press that picked the table the draw starts from. */
11
+ pressPoint: Point | null;
12
+ /** Whether the pointer has travelled far enough from that press for the start table to offer the buttons too. */
13
+ selfArmed: boolean;
14
+ /** The table the pointer points the draw at. */
15
+ targetId: string | null;
16
+ };
17
+ /** Reads the record through the observable, so a render or an observer tracks it. */
18
+ export declare function getDrawTarget(root: RootState): Readonly<DrawTarget>;
19
+ /**
20
+ * Writes the fields given and leaves the rest, each only when it changes, so an
21
+ * observer that reads a field and writes the value it read settles at once.
22
+ */
23
+ export declare function updateDrawTarget(root: RootState, patch: Partial<DrawTarget>): void;
24
+ /** Forgets everything the draw held, as it ends or the canvas goes away. */
25
+ export declare function clearDrawTarget(root: RootState): void;
26
+ //# sourceMappingURL=drawTargetState.d.ts.map
@@ -0,0 +1,29 @@
1
+ import { RootState } from '../../../engine/state';
2
+ import { Point } from '../../../internal-types';
3
+ import { Rect } from '../../../konva/scene/metrics';
4
+ /**
5
+ * How far the pointer travels from the press that started a draw, in screen
6
+ * pixels whatever the zoom, before the table the draw starts from offers the
7
+ * buttons too: a press there sooner draws a self reference as it always has.
8
+ */
9
+ export declare const SELF_REFERENCE_TRAVEL = 24;
10
+ export declare const hasTravelled: (from: Point, to: Point) => boolean;
11
+ /** Edges included, so a point on a border belongs to the box it bounds. */
12
+ export declare const containsPoint: (rect: Rect, { x, y }: Point) => boolean;
13
+ export type DrawTargetQuery = {
14
+ /** The pointer in screen pixels from the top left of the canvas root. */
15
+ pointer: Point;
16
+ startTableId: string;
17
+ selfArmed: boolean;
18
+ /** The table the buttons stand beside now. */
19
+ current: string | null;
20
+ /** The buttons and the gutter beside them, in screen pixels, over which the current table stays. */
21
+ keep: readonly Rect[];
22
+ };
23
+ /**
24
+ * The table a press under the pointer would draw to, by arithmetic, since konva
25
+ * raises no hover at a low zoom or over the buttons: top first, the reverse of
26
+ * the canvas's paint order, and none under a memo drawn over it, which takes the press.
27
+ */
28
+ export declare function findDrawTarget(state: RootState, { pointer, startTableId, selfArmed, current, keep }: DrawTargetQuery): string | null;
29
+ //# sourceMappingURL=findDrawTarget.d.ts.map