@dineug/erd-editor 3.9.2 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (375) hide show
  1. package/README.md +321 -133
  2. package/dist/components/appContext.d.ts +4 -0
  3. package/dist/components/erd/Erd.d.ts +4 -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/SceneIcon.template.d.ts +2 -2
  11. package/dist/components/erd/canvas/entityDrag.d.ts +17 -1
  12. package/dist/components/erd/canvas/middleButtonPan.d.ts +11 -0
  13. package/dist/components/erd/canvas/relationship-group/relationship/Relationship.d.ts +2 -0
  14. package/dist/components/erd/canvas/relationship-group/relationship/RelationshipActionLabel.d.ts +32 -0
  15. package/dist/components/erd/canvas/sceneTokens.d.ts +38 -0
  16. package/dist/components/erd/canvas/table/Table.d.ts +9 -1
  17. package/dist/components/erd/canvas/table/cellLayout.d.ts +11 -0
  18. package/dist/components/erd/canvas/table/column/Column.d.ts +7 -0
  19. package/dist/components/erd/canvas/table/doubleClick.d.ts +3 -4
  20. package/dist/components/erd/canvas/table/goToErd.d.ts +3 -10
  21. package/dist/components/erd/canvas/table-group/TableGroup.d.ts +17 -0
  22. package/dist/components/erd/canvas/table-group/TableGroupBody.d.ts +17 -0
  23. package/dist/components/erd/canvas/table-group/TableGroupDropTarget.d.ts +10 -0
  24. package/dist/components/erd/canvas/table-group/TableGroupSash.d.ts +35 -0
  25. package/dist/components/erd/canvas/table-group/TableGroups.d.ts +10 -0
  26. package/dist/components/erd/canvas/table-group/tableGroupBox.d.ts +40 -0
  27. package/dist/components/erd/canvas/table-group/titleLayout.d.ts +45 -0
  28. package/dist/components/erd/canvas/useMoveEntity.d.ts +2 -0
  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 +49 -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 +16 -1
  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/ToolbarCompass.template.d.ts +3 -1
  42. package/dist/components/erd/goToErdTarget.d.ts +85 -0
  43. package/dist/components/erd/hitTest.d.ts +16 -1
  44. package/dist/components/erd/minimap/MinimapScene.d.ts +1 -1
  45. package/dist/components/erd/minimap/table/Table.d.ts +3 -3
  46. package/dist/components/erd/minimap/table-group/TableGroup.d.ts +17 -0
  47. package/dist/components/erd/table-group/TableGroupDraft.d.ts +15 -0
  48. package/dist/components/erd/table-group/TableGroupDraft.styles.d.ts +6 -0
  49. package/dist/components/erd/table-group/tableGroupName.d.ts +21 -0
  50. package/dist/components/erd/table-group/useTableGroupDraw.d.ts +25 -0
  51. package/dist/components/erd/table-properties/TableProperties.d.ts +2 -0
  52. package/dist/components/erd/table-properties/TableProperties.styles.d.ts +24 -2
  53. package/dist/components/erd/table-properties/table-properties-indexes/TablePropertiesIndexes.d.ts +2 -0
  54. package/dist/components/erd/table-properties/table-properties-indexes/TablePropertiesIndexes.styles.d.ts +32 -0
  55. package/dist/components/erd/table-properties/table-properties-indexes/indexes-checkbox-column/IndexesCheckboxColumn.d.ts +7 -0
  56. package/dist/components/erd/table-properties/table-properties-indexes/indexes-checkbox-column/IndexesCheckboxColumn.styles.d.ts +5 -0
  57. package/dist/components/erd/table-properties/table-properties-indexes/indexes-column/IndexesColumn.d.ts +7 -0
  58. package/dist/components/erd/table-properties/table-properties-indexes/indexes-column/IndexesColumn.styles.d.ts +3 -0
  59. package/dist/components/erd/table-properties/table-properties-indexes/indexes-index/IndexesIndex.d.ts +7 -0
  60. package/dist/components/erd/table-properties/table-properties-indexes/indexes-index/IndexesIndex.styles.d.ts +6 -0
  61. package/dist/components/erd/table-properties/table-properties-indexes/indexes-key/IndexesKey.d.ts +21 -0
  62. package/dist/components/erd/table-properties/table-properties-indexes/indexes-key/IndexesKey.styles.d.ts +13 -0
  63. package/dist/components/erd/table-properties/table-properties-tabs/TablePropertiesTabs.d.ts +3 -0
  64. package/dist/components/erd/welcome-screen/WelcomeScreen.d.ts +17 -0
  65. package/dist/components/erd/welcome-screen/WelcomeScreen.styles.d.ts +17 -0
  66. package/dist/components/erd/welcome-screen/welcome-hints/WelcomeHints.d.ts +21 -0
  67. package/dist/components/erd/welcome-screen/welcome-hints/WelcomeHints.styles.d.ts +14 -0
  68. package/dist/components/erd/welcome-screen/welcome-hints/hintArrows.d.ts +10 -0
  69. package/dist/components/erd/welcome-screen/welcomeLayout.d.ts +87 -0
  70. package/dist/components/erd-editor/ErdEditor.d.ts +67 -7
  71. package/dist/components/erd-editor/useErdEditorAttachElement.d.ts +14 -1
  72. package/dist/components/export-image/ExportImage.d.ts +23 -0
  73. package/dist/components/export-image/ExportImage.styles.d.ts +34 -0
  74. package/dist/components/export-image/exportImageActions.d.ts +48 -0
  75. package/dist/components/find-replace/FindReplace.d.ts +13 -0
  76. package/dist/components/find-replace/FindReplace.styles.d.ts +27 -0
  77. package/dist/components/find-replace/fieldIcon.d.ts +5 -0
  78. package/dist/components/find-replace/matchTarget.d.ts +26 -0
  79. package/dist/components/find-replace/panelLayout.d.ts +20 -0
  80. package/dist/components/generator-code/GeneratorCode.d.ts +1 -0
  81. package/dist/components/generator-code/generator-code-context-menu/GeneratorCodeContextMenu.d.ts +3 -0
  82. package/dist/components/generator-code/generator-code-context-menu/menus/columnNameCaseMenus.d.ts +3 -0
  83. package/dist/components/generator-code/generator-code-context-menu/menus/languageMenus.d.ts +8 -0
  84. package/dist/components/generator-code/generator-code-context-menu/menus/tableNameCaseMenus.d.ts +3 -0
  85. package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.d.ts +17 -0
  86. package/dist/components/generator-code/generator-code-options/GeneratorCodeOptions.styles.d.ts +5 -0
  87. package/dist/components/generator-code/generatorCodeView.d.ts +12 -0
  88. package/dist/components/generator-code/languageSettings.d.ts +14 -0
  89. package/dist/components/locale-picker/LocalePicker.d.ts +13 -0
  90. package/dist/components/locale-picker/LocalePicker.styles.d.ts +19 -0
  91. package/dist/components/localeContext.d.ts +10 -0
  92. package/dist/components/localized/Localized.d.ts +18 -0
  93. package/dist/components/map-columns/MapColumnsBody.d.ts +24 -0
  94. package/dist/components/map-columns/MapColumnsDialog.d.ts +13 -0
  95. package/dist/components/map-columns/MapColumnsDialog.styles.d.ts +38 -0
  96. package/dist/components/map-columns/mapColumnsAction.d.ts +13 -0
  97. package/dist/components/map-columns/nameOf.d.ts +6 -0
  98. package/dist/components/map-columns/openMapColumns.d.ts +9 -0
  99. package/dist/components/primitives/code-block/CodeBlock.d.ts +6 -1
  100. package/dist/components/primitives/code-block/CodeBlock.styles.d.ts +2 -0
  101. package/dist/components/primitives/color-picker/ColorPicker.d.ts +10 -1
  102. package/dist/components/primitives/color-picker/ColorPicker.styles.d.ts +25 -0
  103. package/dist/components/primitives/color-picker/colorModel.d.ts +36 -0
  104. package/dist/components/primitives/color-picker/presetColors.d.ts +13 -0
  105. package/dist/components/primitives/color-picker/resolveColor.d.ts +7 -0
  106. package/dist/components/primitives/context-menu/ContextMenu.d.ts +2 -0
  107. package/dist/components/primitives/context-menu/context-menu-content/ContextMenuContent.d.ts +1 -0
  108. package/dist/components/primitives/context-menu/context-menu-content/fitMenu.d.ts +4 -4
  109. package/dist/components/primitives/context-menu/context-menu-separator/ContextMenuSeparator.d.ts +8 -0
  110. package/dist/components/primitives/context-menu/context-menu-separator/ContextMenuSeparator.styles.d.ts +2 -0
  111. package/dist/components/primitives/context-menu/menu/Menu.d.ts +2 -0
  112. package/dist/components/primitives/context-menu/submenu-chevron/SubmenuChevron.d.ts +5 -0
  113. package/dist/components/primitives/dialog/Dialog.d.ts +21 -0
  114. package/dist/components/primitives/dialog/Dialog.styles.d.ts +12 -0
  115. package/dist/components/primitives/highlighted-text/HighlightedText.d.ts +2 -5
  116. package/dist/components/primitives/icon/icons.d.ts +27 -1
  117. package/dist/components/primitives/select/Select.d.ts +18 -0
  118. package/dist/components/primitives/select/Select.styles.d.ts +13 -0
  119. package/dist/components/primitives/text-input/TextInput.d.ts +2 -0
  120. package/dist/components/primitives/toast/Toast.d.ts +5 -1
  121. package/dist/components/primitives/toast/Toast.styles.d.ts +2 -2
  122. package/dist/components/quick-search/QuickSearch.d.ts +2 -1
  123. package/dist/components/quick-search/QuickSearch.styles.d.ts +6 -0
  124. package/dist/components/quick-search/actions.d.ts +60 -2
  125. package/dist/components/quick-search/hangul.d.ts +79 -0
  126. package/dist/components/quick-search/paletteQuery.d.ts +38 -0
  127. package/dist/components/quick-search/scopedActions.d.ts +42 -0
  128. package/dist/components/schema-sql/SchemaSQL.d.ts +2 -0
  129. package/dist/components/schema-sql/SchemaSQL.styles.d.ts +7 -0
  130. package/dist/components/schema-sql/schema-sql-context-menu/SchemaSQLContextMenu.d.ts +3 -0
  131. package/dist/components/schema-sql/schema-sql-context-menu/menus/bracketMenus.d.ts +3 -0
  132. package/dist/components/schema-sql/schema-sql-context-menu/menus/headerMenus.d.ts +29 -0
  133. package/dist/components/schema-sql/schema-sql-context-menu/menus/statementsMenus.d.ts +27 -0
  134. package/dist/components/schema-sql/schema-sql-options/SchemaSQLOptions.d.ts +24 -0
  135. package/dist/components/schema-sql/schema-sql-options/SchemaSQLOptions.styles.d.ts +45 -0
  136. package/dist/components/schema-sql/schema-sql-options/ScriptEditor.d.ts +20 -0
  137. package/dist/components/schema-sql/schema-sql-options/ScriptEditor.styles.d.ts +13 -0
  138. package/dist/components/schema-sql/schema-sql-options/dropWarning.d.ts +8 -0
  139. package/dist/components/schema-sql/schemaSQLView.d.ts +71 -0
  140. package/dist/components/settings/Settings.styles.d.ts +7 -0
  141. package/dist/components/settings/columnTypeLabels.d.ts +8 -0
  142. package/dist/components/settings/lockSettingRows.d.ts +16 -0
  143. package/dist/components/settings/settings-lnb/SettingsLnb.d.ts +3 -0
  144. package/dist/components/settings/settingsPage.d.ts +10 -0
  145. package/dist/components/theme-builder/ThemeBuilder.d.ts +9 -1
  146. package/dist/components/theme-builder/ThemeBuilder.styles.d.ts +8 -5
  147. package/dist/components/toast-container/openStatusToast.d.ts +29 -0
  148. package/dist/components/toast-container/openToastWhileRunning.d.ts +1 -1
  149. package/dist/components/toolbar/Toolbar.d.ts +1 -0
  150. package/dist/components/visualization/graph-node/GraphNode.d.ts +2 -2
  151. package/dist/components/visualization/graphPan.d.ts +12 -0
  152. package/dist/components/visualization/table/column/Column.d.ts +4 -0
  153. package/dist/components/visualization/visualizationView.d.ts +2 -2
  154. package/dist/constants/language.d.ts +1 -1
  155. package/dist/constants/layout.d.ts +47 -0
  156. package/dist/constants/open.d.ts +4 -0
  157. package/dist/constants/schema.d.ts +38 -4
  158. package/dist/constants/sql/dataType/PostgreSQL.d.ts +2 -1
  159. package/dist/constants/sql/dataType/SQLite.d.ts +3 -1
  160. package/dist/engine/actions.d.ts +20 -2
  161. package/dist/engine/context.d.ts +6 -0
  162. package/dist/engine/index.d.ts +1 -1
  163. package/dist/engine/index.js +29 -18
  164. package/dist/engine/modules/editor/actions.d.ts +10 -2
  165. package/dist/engine/modules/editor/atom.actions.d.ts +49 -11
  166. package/dist/engine/modules/editor/generator.actions.d.ts +107 -8
  167. package/dist/engine/modules/editor/state.d.ts +16 -3
  168. package/dist/engine/modules/editor/utils/color.d.ts +21 -0
  169. package/dist/engine/modules/editor/utils/duplicate.d.ts +28 -1
  170. package/dist/engine/modules/editor/utils/focus.d.ts +16 -0
  171. package/dist/engine/modules/editor/utils/releaseHidden.d.ts +16 -0
  172. package/dist/engine/modules/editor/utils/selection.d.ts +12 -0
  173. package/dist/engine/modules/relationship/actions.d.ts +19 -0
  174. package/dist/engine/modules/relationship/atom.actions.d.ts +111 -1
  175. package/dist/engine/modules/relationship/endFlags.d.ts +14 -0
  176. package/dist/engine/modules/relationship/fkColumns.d.ts +40 -4
  177. package/dist/engine/modules/relationship/generator.actions.d.ts +5 -2
  178. package/dist/engine/modules/relationship/history.d.ts +3 -0
  179. package/dist/engine/modules/relationship/referenceType.d.ts +12 -0
  180. package/dist/engine/modules/settings/actions.d.ts +17 -4
  181. package/dist/engine/modules/settings/atom.actions.d.ts +63 -19
  182. package/dist/engine/modules/settings/generator.actions.d.ts +7 -0
  183. package/dist/engine/modules/settings/history.d.ts +1 -0
  184. package/dist/engine/modules/table/actions.d.ts +8 -0
  185. package/dist/engine/modules/table/atom.actions.d.ts +31 -0
  186. package/dist/engine/modules/table/generator.actions.d.ts +3 -3
  187. package/dist/engine/modules/table/history.d.ts +1 -0
  188. package/dist/engine/modules/table-column/generator.actions.d.ts +8 -0
  189. package/dist/engine/modules/table-column/keys.d.ts +14 -0
  190. package/dist/engine/modules/table-column/utils/dataType.d.ts +19 -1
  191. package/dist/engine/modules/table-group/actions.d.ts +63 -0
  192. package/dist/engine/modules/table-group/atom.actions.d.ts +238 -0
  193. package/dist/engine/modules/table-group/generator.actions.d.ts +111 -0
  194. package/dist/engine/modules/table-group/history.d.ts +13 -0
  195. package/dist/engine/peer-store.d.ts +9 -3
  196. package/dist/engine/replication-store.d.ts +18 -1
  197. package/dist/engine/rx-operators/groupByStreamActions.d.ts +5 -1
  198. package/dist/engine/rx-operators/lockIgnoreFilter.d.ts +8 -0
  199. package/dist/engine/rx-store.d.ts +2 -0
  200. package/dist/engine/settle.d.ts +9 -0
  201. package/dist/erd-editor.umd.js +2523 -4060
  202. package/dist/hooks/useNavigatorLanguages.d.ts +7 -0
  203. package/dist/i18n/locales.d.ts +126 -0
  204. package/dist/i18n/menuLabel.d.ts +12 -0
  205. package/dist/i18n/messages/ar-SA.d.ts +399 -0
  206. package/dist/i18n/messages/de-DE.d.ts +375 -0
  207. package/dist/i18n/messages/en/code.d.ts +17 -0
  208. package/dist/i18n/messages/en/colorPicker.d.ts +35 -0
  209. package/dist/i18n/messages/en/common.d.ts +65 -0
  210. package/dist/i18n/messages/en/contextMenu.d.ts +29 -0
  211. package/dist/i18n/messages/en/exportImage.d.ts +25 -0
  212. package/dist/i18n/messages/en/feedback.d.ts +11 -0
  213. package/dist/i18n/messages/en/findReplace.d.ts +36 -0
  214. package/dist/i18n/messages/en/floatingToolbar.d.ts +12 -0
  215. package/dist/i18n/messages/en/index.d.ts +378 -0
  216. package/dist/i18n/messages/en/mapColumns.d.ts +39 -0
  217. package/dist/i18n/messages/en/palette.d.ts +40 -0
  218. package/dist/i18n/messages/en/schemaSql.d.ts +28 -0
  219. package/dist/i18n/messages/en/settings.d.ts +22 -0
  220. package/dist/i18n/messages/en/shortcuts.d.ts +32 -0
  221. package/dist/i18n/messages/en/tableProperties.d.ts +34 -0
  222. package/dist/i18n/messages/en/themeBuilder.d.ts +7 -0
  223. package/dist/i18n/messages/en/toolbar.d.ts +9 -0
  224. package/dist/i18n/messages/en/visualization.d.ts +12 -0
  225. package/dist/i18n/messages/en/welcome.d.ts +13 -0
  226. package/dist/i18n/messages/es-ES.d.ts +381 -0
  227. package/dist/i18n/messages/eu-ES.d.ts +375 -0
  228. package/dist/i18n/messages/fa-IR.d.ts +375 -0
  229. package/dist/i18n/messages/fr-FR.d.ts +381 -0
  230. package/dist/i18n/messages/he-IL.d.ts +381 -0
  231. package/dist/i18n/messages/id-ID.d.ts +369 -0
  232. package/dist/i18n/messages/index.d.ts +11 -0
  233. package/dist/i18n/messages/it-IT.d.ts +381 -0
  234. package/dist/i18n/messages/ja-JP.d.ts +369 -0
  235. package/dist/i18n/messages/ko-KR.d.ts +369 -0
  236. package/dist/i18n/messages/nl-NL.d.ts +375 -0
  237. package/dist/i18n/messages/pl-PL.d.ts +387 -0
  238. package/dist/i18n/messages/pt-BR.d.ts +381 -0
  239. package/dist/i18n/messages/pt-PT.d.ts +381 -0
  240. package/dist/i18n/messages/ro-RO.d.ts +381 -0
  241. package/dist/i18n/messages/ru-RU.d.ts +387 -0
  242. package/dist/i18n/messages/sk-SK.d.ts +387 -0
  243. package/dist/i18n/messages/sl-SI.d.ts +387 -0
  244. package/dist/i18n/messages/sv-SE.d.ts +375 -0
  245. package/dist/i18n/messages/tr-TR.d.ts +375 -0
  246. package/dist/i18n/messages/uk-UA.d.ts +387 -0
  247. package/dist/i18n/messages/zh-CN.d.ts +369 -0
  248. package/dist/i18n/messages/zh-TW.d.ts +369 -0
  249. package/dist/i18n/resolveLocale.d.ts +11 -0
  250. package/dist/i18n/source.d.ts +7 -0
  251. package/dist/i18n/translate.d.ts +58 -0
  252. package/dist/index.d.ts +2 -0
  253. package/dist/index.js +28966 -11220
  254. package/dist/internal-types/index.d.ts +2 -4
  255. package/dist/konva/scene/contentBounds.d.ts +18 -12
  256. package/dist/konva/scene/metrics.d.ts +7 -0
  257. package/dist/konva/scene/renderScene.d.ts +10 -4
  258. package/dist/konva/scene/stacking.d.ts +21 -0
  259. package/dist/konva/scene/viewLayout.d.ts +2 -1
  260. package/dist/loadValue-B3EFSe9k.js +12925 -0
  261. package/dist/peer/index.d.ts +6 -3
  262. package/dist/peer/index.js +87 -83
  263. package/dist/services/elk-layout/elkGraph.d.ts +6 -4
  264. package/dist/services/elk-layout/elkLayoutOptions.d.ts +20 -0
  265. package/dist/services/elk-layout/elkLayoutService.d.ts +3 -3
  266. package/dist/services/export-png/ExportScene.d.ts +3 -3
  267. package/dist/services/export-png/documentScene.d.ts +14 -9
  268. package/dist/services/export-png/exportBox.d.ts +40 -5
  269. package/dist/services/export-png/exportPngService.d.ts +15 -0
  270. package/dist/services/export-png/exportTheme.d.ts +26 -0
  271. package/dist/services/export-png/index.d.ts +44 -11
  272. package/dist/services/export-png/renderPng.d.ts +18 -10
  273. package/dist/services/export-png/renderSvg.d.ts +22 -0
  274. package/dist/services/export-png/sceneSvg.d.ts +54 -0
  275. package/dist/services/shiki/graphqlGrammar.d.ts +8 -0
  276. package/dist/shared-store-fUggY7sI.js +1341 -0
  277. package/dist/themes/radix-ui-theme.d.ts +11 -3
  278. package/dist/themes/tokens.d.ts +9 -0
  279. package/dist/utils/calcTable.d.ts +18 -1
  280. package/dist/utils/clipboard.d.ts +9 -0
  281. package/dist/utils/collection/tableGroup.entity.d.ts +3 -0
  282. package/dist/utils/contrastText.d.ts +21 -0
  283. package/dist/utils/deepMerge.d.ts +8 -0
  284. package/dist/utils/device-detect/index.d.ts +2 -6
  285. package/dist/utils/domEvent.d.ts +18 -0
  286. package/dist/utils/dragSelect.d.ts +2 -0
  287. package/dist/utils/draw-relationship/bezier.d.ts +2 -0
  288. package/dist/utils/draw-relationship/corner.d.ts +9 -0
  289. package/dist/utils/draw-relationship/index.d.ts +18 -18
  290. package/dist/utils/draw-relationship/loop.d.ts +29 -0
  291. package/dist/utils/draw-relationship/pathFinding.d.ts +1 -1
  292. package/dist/utils/draw-relationship/sort.d.ts +8 -1
  293. package/dist/utils/draw-relationship/stub.d.ts +4 -3
  294. package/dist/utils/emitter.d.ts +64 -4
  295. package/dist/utils/file/exportFile.d.ts +15 -5
  296. package/dist/utils/file/importFile.d.ts +9 -5
  297. package/dist/utils/file/importSchema.d.ts +45 -0
  298. package/dist/utils/find-replace/findMatches.d.ts +90 -0
  299. package/dist/utils/find-replace/index.d.ts +5 -0
  300. package/dist/utils/find-replace/matcher.d.ts +53 -0
  301. package/dist/utils/find-replace/present.d.ts +24 -0
  302. package/dist/utils/find-replace/replaceActions.d.ts +20 -0
  303. package/dist/utils/generator-code/columnTypes.d.ts +99 -0
  304. package/dist/utils/generator-code/doctrine.d.ts +6 -0
  305. package/dist/utils/generator-code/doctrineReservedWords.d.ts +7 -0
  306. package/dist/utils/generator-code/graphql.d.ts +6 -0
  307. package/dist/utils/generator-code/heck.d.ts +5 -0
  308. package/dist/utils/generator-code/java.d.ts +28 -0
  309. package/dist/utils/generator-code/jsonSchema.d.ts +50 -0
  310. package/dist/utils/generator-code/jsonShape.d.ts +37 -0
  311. package/dist/utils/generator-code/kotlin.d.ts +1 -0
  312. package/dist/utils/generator-code/mermaid.d.ts +5 -0
  313. package/dist/utils/generator-code/php.d.ts +28 -0
  314. package/dist/utils/generator-code/rust.d.ts +13 -0
  315. package/dist/utils/generator-code/rustTypes.d.ts +44 -0
  316. package/dist/utils/generator-code/scala.d.ts +1 -0
  317. package/dist/utils/generator-code/seaorm.d.ts +22 -0
  318. package/dist/utils/generator-code/swift.d.ts +44 -0
  319. package/dist/utils/generator-code/utils.d.ts +31 -1
  320. package/dist/utils/generator-code/zod.d.ts +25 -0
  321. package/dist/utils/globalEventObservable.d.ts +10 -1
  322. package/dist/utils/highlightWords.d.ts +29 -0
  323. package/dist/utils/index.d.ts +1 -2
  324. package/dist/utils/keyboard-shortcut/bindKeys.d.ts +9 -0
  325. package/dist/utils/keyboard-shortcut/index.d.ts +15 -1
  326. package/dist/utils/keyboard-shortcut/utils.d.ts +21 -0
  327. package/dist/utils/loadValue.d.ts +7 -0
  328. package/dist/utils/map-columns/alignTypes.d.ts +37 -0
  329. package/dist/utils/map-columns/buildRows.d.ts +102 -0
  330. package/dist/utils/map-columns/candidateKeys.d.ts +24 -0
  331. package/dist/utils/map-columns/index.d.ts +8 -0
  332. package/dist/utils/map-columns/mapping.d.ts +67 -0
  333. package/dist/utils/map-columns/prefill.d.ts +26 -0
  334. package/dist/utils/map-columns/toMapColumnsActions.d.ts +10 -0
  335. package/dist/utils/map-columns/validate.d.ts +45 -0
  336. package/dist/utils/memo.d.ts +4 -0
  337. package/dist/utils/referentialAction.d.ts +21 -0
  338. package/dist/utils/schema-aml-parser/types.d.ts +8 -0
  339. package/dist/utils/schema-dbml-parser/tokenizer.d.ts +2 -0
  340. package/dist/utils/schema-dbml-parser/types.d.ts +14 -0
  341. package/dist/utils/schema-sql/Databricks.d.ts +13 -3
  342. package/dist/utils/schema-sql/MSSQL.d.ts +19 -2
  343. package/dist/utils/schema-sql/MariaDB.d.ts +10 -4
  344. package/dist/utils/schema-sql/MySQL.d.ts +18 -4
  345. package/dist/utils/schema-sql/Oracle.d.ts +23 -4
  346. package/dist/utils/schema-sql/PostgreSQL.d.ts +16 -4
  347. package/dist/utils/schema-sql/SQLite.d.ts +16 -4
  348. package/dist/utils/schema-sql/Snowflake.d.ts +8 -3
  349. package/dist/utils/schema-sql/index.d.ts +21 -1
  350. package/dist/utils/schema-sql/options.d.ts +57 -0
  351. package/dist/utils/schema-sql/utils.d.ts +120 -2
  352. package/dist/utils/schema-sql-parser/index.d.ts +5 -1
  353. package/dist/utils/stageCursor.d.ts +20 -0
  354. package/dist/utils/table-clipboard/payload.d.ts +3 -0
  355. package/dist/utils/table-clipboard/placement.d.ts +2 -0
  356. package/dist/utils/tableColor.d.ts +29 -0
  357. package/dist/utils/tableGroup.d.ts +142 -0
  358. package/dist/utils/tableKeys.d.ts +54 -0
  359. package/dist/workers/elkLayout.shared-worker.js +1 -1
  360. package/dist/workers/exportPng.shared-worker.js +30 -28
  361. package/dist/workers/shiki.shared-worker.js +1 -1
  362. package/dist/workers/spawn.d.ts +1 -2
  363. package/dist/workers/spawn.inline.d.ts +0 -1
  364. package/package.json +12 -18
  365. package/dist/components/generator-code/GeneratorCode.styles.d.ts +0 -2
  366. package/dist/schemaGCService-BagQ1wfF.js +0 -38
  367. package/dist/services/schema-gc/index.d.ts +0 -18
  368. package/dist/services/schema-gc/procGC.d.ts +0 -4
  369. package/dist/services/schema-gc/schemaGC.shared-worker.d.ts +0 -2
  370. package/dist/services/schema-gc/schemaGCService.d.ts +0 -5
  371. package/dist/shared-store-BqPSXAEf.js +0 -1072
  372. package/dist/store-hooks-DuzDVhPy.js +0 -10282
  373. package/dist/styles/colorPicker.style.d.ts +0 -7
  374. package/dist/utils/draw-relationship/chamfer.d.ts +0 -3
  375. package/dist/workers/schemaGC.shared-worker.js +0 -1
@@ -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
@@ -0,0 +1,49 @@
1
+ import { Viewport } from '../../../engine/modules/editor/state';
2
+ import { Rect } from '../../../konva/scene/metrics';
3
+ /** The room between the buttons and the table, and between them and the canvas edge. */
4
+ export declare const PILL_MARGIN = 8;
5
+ /** How far past the buttons' outer edge the gutter beside them reaches. */
6
+ export declare const GUTTER_REACH = 4;
7
+ export type PillSide = 'left' | 'right';
8
+ export type PillSize = {
9
+ width: number;
10
+ height: number;
11
+ };
12
+ export type PillPlacement = {
13
+ x: number;
14
+ y: number;
15
+ side: PillSide;
16
+ };
17
+ export type PlacePillInput = {
18
+ /** The table's box on screen. */
19
+ card: Rect;
20
+ viewport: Viewport;
21
+ /** How far in from the left edge Find and Replace hides the canvas. */
22
+ covered: number;
23
+ /** The chrome drawn over the canvas that the buttons keep clear of. */
24
+ obstacles: readonly Rect[];
25
+ pill: PillSize;
26
+ };
27
+ /** The part of the table's height the canvas shows, a margin in from its edges. */
28
+ export declare function getVisibleSpan(card: Rect, viewport: Viewport): {
29
+ top: number;
30
+ bottom: number;
31
+ };
32
+ /**
33
+ * Left of the table, else right of it, else over its left edge; level with the
34
+ * top of its shown part and inside the canvas. Off the minimap and the floating
35
+ * toolbar by moving below or above it, then by the other side, else put.
36
+ */
37
+ export declare function placePill({ card, viewport, covered, obstacles, pill, }: PlacePillInput): PillPlacement;
38
+ /**
39
+ * The clear strip from a little past the buttons to the table, as tall as both,
40
+ * which takes a press that would reach a neighbour or the start table under it,
41
+ * so only the outlined table is drawn to. None where the buttons cover the table.
42
+ */
43
+ export declare function getGutterRect({ card, viewport, placement, pill, }: {
44
+ card: Rect;
45
+ viewport: Viewport;
46
+ placement: PillPlacement;
47
+ pill: PillSize;
48
+ }): Rect | null;
49
+ //# sourceMappingURL=placePill.d.ts.map
@@ -3,13 +3,19 @@ import { ValuesType } from '../../../internal-types';
3
3
  export declare const ErdContextMenuType: {
4
4
  readonly ERD: "ERD";
5
5
  readonly table: "table";
6
+ readonly memo: "memo";
6
7
  readonly relationship: "relationship";
8
+ readonly tableGroup: "tableGroup";
7
9
  };
8
10
  export type ErdContextMenuType = ValuesType<typeof ErdContextMenuType>;
9
11
  export type ErdContextMenuProps = {
10
12
  type: ErdContextMenuType;
11
13
  relationshipId?: string;
12
14
  tableId?: string;
15
+ /** The column whose row the press that raised a table menu landed on. */
16
+ columnId?: string;
17
+ memoId?: string;
18
+ tableGroupId?: string;
13
19
  onClose: () => void;
14
20
  };
15
21
  declare const ErdContextMenu: FC<ErdContextMenuProps>;
@@ -1,9 +1,11 @@
1
1
  import { AppContext } from '../../../appContext';
2
2
  import { NotationIconName } from '../../../primitives/icon/icons';
3
+ import { PlainMessageKey } from '../../../../i18n/translate';
3
4
  import { KeyBindingName } from '../../../../utils/keyboard-shortcut';
4
5
  type Menu = {
5
6
  iconName: NotationIconName;
6
7
  name: string;
8
+ labelKey?: PlainMessageKey;
7
9
  keyBindingName: KeyBindingName;
8
10
  relationshipType: number;
9
11
  };
@@ -11,6 +13,7 @@ export declare const menus: Menu[];
11
13
  export declare function createDrawRelationshipMenus({ store, keyBindingMap }: AppContext, onClose: () => void): {
12
14
  iconName: "ZeroOneN" | "ZeroOne" | "ZeroN" | "OneOnly" | "OneN" | "One" | "N";
13
15
  name: string;
16
+ labelKey: PlainMessageKey | undefined;
14
17
  shortcut: string;
15
18
  onClick: () => void;
16
19
  }[];
@@ -1,11 +1,16 @@
1
1
  import { AppContext } from '../../../appContext';
2
2
  import { IconName } from '../../../primitives/icon/icons';
3
- import { Theme } from '../../../../themes/tokens';
3
+ import { I18n } from '../../../../i18n/translate';
4
4
  type Menu = {
5
5
  icon: IconName;
6
6
  name: string;
7
7
  onClick: () => void;
8
8
  };
9
- export declare function createExportMenus(app: AppContext, onClose: () => void, theme: Theme): Menu[];
9
+ /**
10
+ * The Export rows: json by its format's name, Schema SQL and Image in the
11
+ * reader's language. Schema SQL saves nothing yet: it opens the tab, its
12
+ * options out, where Save file writes the text the reader settled on.
13
+ */
14
+ export declare function createExportMenus(app: AppContext, onClose: () => void, i18n?: Pick<I18n, 't'>): Menu[];
10
15
  export {};
11
16
  //# sourceMappingURL=exportMenus.d.ts.map
@@ -1,10 +1,14 @@
1
1
  import { AppContext } from '../../../appContext';
2
2
  import { IconName } from '../../../primitives/icon/icons';
3
+ import { PlainMessageKey } from '../../../../i18n/translate';
4
+ import { ImportMode } from '../../../../utils/file/importFile';
3
5
  type Menu = {
4
6
  icon: IconName;
5
7
  name: string;
8
+ labelKey?: PlainMessageKey;
6
9
  onClick: () => void;
7
10
  };
8
- export declare function createImportMenus(app: AppContext, onClose: () => void): Menu[];
11
+ /** The five formats of the Import menu, or of Import and Add for an append. */
12
+ export declare function createImportMenus(app: AppContext, onClose: () => void, mode?: ImportMode): Menu[];
9
13
  export {};
10
14
  //# sourceMappingURL=importMenus.d.ts.map
@@ -1,8 +1,23 @@
1
1
  import { AppContext } from '../../../appContext';
2
- export declare function createRelationshipMenus({ store }: AppContext, relationshipId?: string): {
2
+ import { I18n } from '../../../../i18n/translate';
3
+ /** A notation's name as this menu gives it, and none for a value it does not know. */
4
+ export declare function relationshipTypeName(relationshipType: number, { t }: Pick<I18n, 't'>): string;
5
+ /** The four types a relationship can take, its own one checked, named in the reader's language. */
6
+ export declare function createRelationshipMenus({ store }: AppContext, relationshipId?: string, i18n?: Pick<I18n, 't'>): {
3
7
  checked: boolean;
4
8
  iconName: "ZeroOneN" | "ZeroOne" | "ZeroN" | "OneOnly" | "OneN" | "One" | "N";
5
9
  name: string;
6
10
  onClick: () => void;
7
11
  }[];
12
+ export type ReferentialActionField = 'onDelete' | 'onUpdate';
13
+ /**
14
+ * The ON DELETE or ON UPDATE choices of a relationship, its own one checked.
15
+ * One the current database's DDL would drop stays choosable, with a note.
16
+ */
17
+ export declare function createReferentialActionMenus({ store }: AppContext, field: ReferentialActionField, relationshipId?: string, i18n?: Pick<I18n, 't'>): {
18
+ checked: boolean;
19
+ name: string;
20
+ note: string | null;
21
+ onClick: () => void;
22
+ }[];
8
23
  //# sourceMappingURL=relationshipMenus.d.ts.map
@@ -1,5 +1,7 @@
1
1
  import { AppContext } from '../../../appContext';
2
- export declare function createShowMenus({ store }: AppContext): {
2
+ import { I18n } from '../../../../i18n/translate';
3
+ /** The View Option rows, each named in the reader's language and checked while it shows. */
4
+ export declare function createShowMenus({ store }: AppContext, i18n?: Pick<I18n, 't'>): {
3
5
  checked: boolean;
4
6
  name: string;
5
7
  onClick: () => void;
@@ -1,8 +1,10 @@
1
1
  import { AppContext } from '../../../appContext';
2
2
  import { IconName } from '../../../primitives/icon/icons';
3
3
  import { TablePlacement } from '../../../../constants/tablePlacement';
4
+ import { PlainMessageKey } from '../../../../i18n/translate';
4
5
  type Menu = {
5
6
  name: string;
7
+ labelKey?: PlainMessageKey;
6
8
  iconName: IconName;
7
9
  placement: TablePlacement;
8
10
  };
@@ -17,6 +19,7 @@ export declare const menus: Menu[];
17
19
  */
18
20
  export declare function createTablePlacementMenus({ emitter }: AppContext, onClose: () => void): {
19
21
  name: string;
22
+ labelKey: PlainMessageKey | undefined;
20
23
  iconName: IconName;
21
24
  onClick: () => void;
22
25
  }[];
@@ -2,6 +2,8 @@ import { DOMTemplateLiterals } from '@dineug/r-html';
2
2
  import { ContentCompass } from '../content-compass/compassGeometry';
3
3
  export type ToolbarCompassOptions = {
4
4
  compass: ContentCompass | null;
5
+ /** What the compass names itself, in the language of the bar it stands in. */
6
+ title: string;
5
7
  className?: string;
6
8
  onClick: () => void;
7
9
  };
@@ -10,5 +12,5 @@ export type ToolbarCompassOptions = {
10
12
  * lies and how far. A template rather than a component, so the label changes in
11
13
  * the same pass as the bar and a menu anchored over it moves with it.
12
14
  */
13
- export declare function toolbarCompass({ compass, className, onClick, }: ToolbarCompassOptions): DOMTemplateLiterals | null;
15
+ export declare function toolbarCompass({ compass, title, className, onClick, }: ToolbarCompassOptions): DOMTemplateLiterals | null;
14
16
  //# sourceMappingURL=ToolbarCompass.template.d.ts.map
@@ -0,0 +1,85 @@
1
+ import { GeneratorAction } from '../../engine/generator.actions';
2
+ import { FocusType } from '../../engine/modules/editor/state';
3
+ import { RxStore } from '../../engine/rx-store';
4
+ import { RootState } from '../../engine/state';
5
+ import { Table } from '../../internal-types';
6
+ import { Rect } from '../../konva/scene/metrics';
7
+ /** The part of a cell's text a jump is for, a search's match say: text from start to end. */
8
+ export type TextRange = {
9
+ text: string;
10
+ start: number;
11
+ end: number;
12
+ };
13
+ /** What a jump to the ERD lands on: a table, one cell of a column, or a memo. */
14
+ export type ErdTarget = {
15
+ kind: 'table';
16
+ tableId: string;
17
+ focusType?: FocusType;
18
+ range?: TextRange;
19
+ } | {
20
+ kind: 'column';
21
+ tableId: string;
22
+ columnId: string;
23
+ focusType: FocusType;
24
+ range?: TextRange;
25
+ } | {
26
+ kind: 'memo';
27
+ memoId: string;
28
+ };
29
+ type Span = {
30
+ start: number;
31
+ end: number;
32
+ };
33
+ /**
34
+ * The scroll that puts the rect in the middle of what the screen shows at the
35
+ * document's own zoom, unless it is shown whole already, since that scroll is
36
+ * the one change of a jump the host hears of.
37
+ *
38
+ * @param focus The part of a rect too big for the screen that has to show.
39
+ */
40
+ export declare function scrollIntoView(state: RootState, rect: Rect, covered?: number, focus?: Rect): Generator<import('@dineug/r-html').AnyAction<{
41
+ originX: number;
42
+ originY: number;
43
+ }>, void, unknown>;
44
+ /**
45
+ * Brings a table on screen whole, or one too big for the screen by the header
46
+ * cell a jump rings, its name unless it asks for the comment, rather than by
47
+ * a middle.
48
+ *
49
+ * @param range Where the text a jump is for stands in that cell, in from its left edge.
50
+ */
51
+ export declare function scrollTableIntoView(state: RootState, table: Table, covered?: number, focusType?: FocusType, range?: Span): Generator<import('@dineug/r-html').AnyAction<{
52
+ originX: number;
53
+ originY: number;
54
+ }>, void, unknown>;
55
+ /**
56
+ * Selects the table alone and brings it to the front, as a press on it does,
57
+ * bar the press's part in a relationship being drawn: a jump only shows, so it
58
+ * never starts or finishes one, which would add a relationship and a column.
59
+ */
60
+ export declare const selectTableAloneAction$: (tableId: string) => GeneratorAction;
61
+ /**
62
+ * Stands the reader on a table, a column cell or a memo the way the Go to ERD
63
+ * button stands them on a table, with the focus ring on the cell asked for. A
64
+ * row too wide goes by the ringed cell, a cell too wide by the range found.
65
+ *
66
+ * @param covered How far in from the left edge a panel over the canvas hides it.
67
+ */
68
+ export declare const showErdTargetAction$: (target: ErdTarget, covered?: number) => GeneratorAction;
69
+ /**
70
+ * Takes the ERD tab when another is up, in a dispatch of its own: a batch is
71
+ * classified by the state before it, so a scroll travelling with the tab
72
+ * change would be redirected into the view it leaves.
73
+ */
74
+ export declare function showErdTab(store: RxStore): void;
75
+ /**
76
+ * A jump from outside the canvas, a search result say, to anything it holds,
77
+ * from whichever tab is up. It lands clear of the Find and Replace panel, read
78
+ * once the ERD tab is up, so a panel that tab draws again counts too.
79
+ *
80
+ * @example
81
+ * goToErdTarget(store, { kind: 'memo', memoId: 'note' });
82
+ */
83
+ export declare function goToErdTarget(store: RxStore, target: ErdTarget): void;
84
+ export {};
85
+ //# sourceMappingURL=goToErdTarget.d.ts.map
@@ -1,9 +1,15 @@
1
1
  import { Stage } from 'konva/lib/Stage';
2
2
  /** The scene entities the erd routing tells apart from one another. */
3
- export type SceneEntityKind = 'table' | 'memo' | 'relationship';
3
+ export type SceneEntityKind = 'table' | 'memo' | 'relationship' | 'tableGroup';
4
+ /** The part of a table group a press landed on: its title bar, its body or a sash on its edge. */
5
+ export type TableGroupPart = 'title' | 'body' | 'sash';
4
6
  export type SceneHit = {
5
7
  kind: SceneEntityKind;
6
8
  id: string;
9
+ /** The column whose row a press inside a table landed on, absent off the rows. */
10
+ columnId?: string;
11
+ /** The part of a group a press landed on, for a group alone. */
12
+ part?: TableGroupPart;
7
13
  };
8
14
  /**
9
15
  * Records the entity konva hit for every press a stage dispatches, and returns
@@ -14,6 +20,15 @@ export type SceneHit = {
14
20
  * addUnsubscribe(trackSceneHits(stage));
15
21
  */
16
22
  export declare function trackSceneHits(stage: Stage): () => void;
23
+ /**
24
+ * Whether a press over the scene belongs to what it landed on, so the canvas
25
+ * under it neither pans, draws a marquee nor unselects: a table, a memo, a
26
+ * group's title bar or sash, and any part of a group for any other button.
27
+ *
28
+ * @example
29
+ * const canUnselectAll = !ownsPress(sceneHit(canvas, event), event);
30
+ */
31
+ export declare function ownsPress(hit: SceneHit | null, event: MouseEvent | TouchEvent): boolean;
17
32
  /**
18
33
  * The scene entity a pointer event landed on, or null for bare canvas and for a
19
34
  * target outside the stage. Konva resolved it as it dispatched that same event,
@@ -4,7 +4,7 @@ export type MinimapSceneProps = {};
4
4
  /**
5
5
  * The whole scene on one layer, with no culling: a thumbnail that dropped
6
6
  * what is off screen would stop being a map of where the rest of it is. Boxes
7
- * only, because a connector between two of them is noise at this size.
7
+ * only, the groups behind, because a connector between two is noise at this size.
8
8
  */
9
9
  declare const MinimapScene: FC<MinimapSceneProps>;
10
10
  /**
@@ -6,9 +6,9 @@ export type TableProps = {
6
6
  ratio: number;
7
7
  };
8
8
  /**
9
- * A table as the minimap draws it: the box and nothing in it, no smaller than a
10
- * mark however far the map is folded. The id stays off the node because two
11
- * stages spelling one id make an id scan ambiguous, so it is found by name and table.
9
+ * A table as the minimap draws it: the box in the table's own color and nothing in it, no smaller
10
+ * than a mark however far the map is folded. The id stays off the node because two stages
11
+ * spelling one id make an id scan ambiguous, so it is found by name and table.
12
12
  */
13
13
  declare const Table: FC<TableProps>;
14
14
  export default Table;
@@ -0,0 +1,17 @@
1
+ import { FC } from '@dineug/r-html';
2
+ import { Table, TableGroup } from '../../../../internal-types';
3
+ export type TableGroupProps = {
4
+ group: TableGroup;
5
+ /** The group's member tables, read once for every group by the minimap scene. */
6
+ members: ReadonlyArray<Table>;
7
+ /** Thumbnail pixels per scene unit, which is what the box is floored at. */
8
+ ratio: number;
9
+ };
10
+ /**
11
+ * A table group as the minimap draws it: the box the canvas draws it in,
12
+ * filled in its color, or the bar color of a group with none, at a low alpha
13
+ * behind the table marks.
14
+ */
15
+ declare const TableGroup: FC<TableGroupProps>;
16
+ export default TableGroup;
17
+ //# sourceMappingURL=TableGroup.d.ts.map
@@ -0,0 +1,15 @@
1
+ import { FC } from '@dineug/r-html';
2
+ import { Rect } from '../../../konva/scene/metrics';
3
+ export type TableGroupDraftProps = {
4
+ /**
5
+ * The draw under way, whose box in the erd root's own pixels this reads
6
+ * itself, so a step of the draw re-renders the box alone and not the root.
7
+ */
8
+ draw: {
9
+ draft: Rect | null;
10
+ };
11
+ };
12
+ /** The box a table group draw spans while the pointer travels, the group it adds on release. */
13
+ declare const TableGroupDraft: FC<TableGroupDraftProps>;
14
+ export default TableGroupDraft;
15
+ //# sourceMappingURL=TableGroupDraft.d.ts.map
@@ -0,0 +1,6 @@
1
+ /**
2
+ * The box a table group draw spans, outlined in the focus color over a fill of
3
+ * it at the low alpha a group's body takes, so the canvas reads through.
4
+ */
5
+ export declare const root: import('@dineug/r-html').CSSTemplateLiterals;
6
+ //# sourceMappingURL=TableGroupDraft.styles.d.ts.map
@@ -0,0 +1,21 @@
1
+ import { GeneratorAction } from '../../../engine/generator.actions';
2
+ import { RxStore } from '../../../engine/rx-store';
3
+ /**
4
+ * Opens the editor over a group's title bar, the table focus let go so Enter and the arrows are the
5
+ * name's. A readonly store opens nothing, nor do hidden groups, whose bar no editor stands over and
6
+ * which would leave the canvas shortcuts waiting on an editor that never opened.
7
+ *
8
+ * @example
9
+ * openTableGroupNameEditor(store, groupId);
10
+ */
11
+ export declare function openTableGroupNameEditor(store: RxStore, id: string): void;
12
+ /**
13
+ * Adds a group through the batch given and opens its name editor, so a name
14
+ * can be typed at once. The group is the one id the batch adds to the
15
+ * document, and nothing opens when it adds none.
16
+ *
17
+ * @example
18
+ * addTableGroupAndRename(store, addTableGroupFromTablesAction$());
19
+ */
20
+ export declare function addTableGroupAndRename(store: RxStore, action: GeneratorAction): void;
21
+ //# sourceMappingURL=tableGroupName.d.ts.map
@@ -0,0 +1,25 @@
1
+ import { Ref } from '@dineug/r-html';
2
+ import { AppContext } from '../../appContext';
3
+ import { Rect } from '../../../konva/scene/metrics';
4
+ export type TableGroupDrawOptions = {
5
+ /** The editor whose store the group lands in. */
6
+ app: () => AppContext;
7
+ /** The box the scene hangs in, which the draw is measured against. */
8
+ root: Ref<HTMLDivElement>;
9
+ };
10
+ /**
11
+ * The draw mode's gesture: from a press on the canvas, a box the travel spans,
12
+ * never under the least a group takes at the zoom, which the release adds as a
13
+ * group. A release with no travel adds a default-size group at the press.
14
+ *
15
+ * @example
16
+ * const draw = useTableGroupDraw({ app: () => app.value, root });
17
+ * draw.start(event);
18
+ */
19
+ export declare function useTableGroupDraw({ app, root }: TableGroupDrawOptions): {
20
+ state: {
21
+ draft: Rect | null;
22
+ };
23
+ start: (event: MouseEvent | TouchEvent) => void;
24
+ };
25
+ //# sourceMappingURL=useTableGroupDraw.d.ts.map
@@ -1,6 +1,8 @@
1
1
  import { FC } from '@dineug/r-html';
2
2
  export type TablePropertiesProps = {
3
3
  isDarkMode: boolean;
4
+ /** The editor's readonly mode, which the dialog shows and its controls follow; the store refuses the edits anyway. */
5
+ readonly?: boolean;
4
6
  tableId: string;
5
7
  tableIds: string[];
6
8
  onChange: (tableId: string) => void;
@@ -1,7 +1,29 @@
1
+ /**
2
+ * Dims the canvas and centres the dialog in it, whose fixed height keeps it
3
+ * still when the tabs switch.
4
+ */
1
5
  export declare const root: import('@dineug/r-html').CSSTemplateLiterals;
6
+ /**
7
+ * One fixed box for all three tabs, so the frame never jumps; a short host
8
+ * gets the height it has. It sets no font size, or the tabs would shrink too.
9
+ */
2
10
  export declare const container: import('@dineug/r-html').CSSTemplateLiterals;
3
- export declare const scrollbarArea: import('@dineug/r-html').CSSTemplateLiterals;
4
11
  export declare const header: import('@dineug/r-html').CSSTemplateLiterals;
5
- export declare const tab: import('@dineug/r-html').CSSTemplateLiterals;
12
+ export declare const title: import('@dineug/r-html').CSSTemplateLiterals;
13
+ export declare const readonlyBadge: import('@dineug/r-html').CSSTemplateLiterals;
14
+ /**
15
+ * Shades a sideways scroller's edge only where more lies past it: two covers
16
+ * in the panel colour, solid as wide as a shade, ride with the content over
17
+ * two edge shades, the cue an overlay scrollbar leaves out.
18
+ */
19
+ export declare const edgeShade: import('@dineug/r-html').CSSTemplateLiterals;
20
+ export declare const tables: import('@dineug/r-html').CSSTemplateLiterals;
21
+ export declare const tableChip: import('@dineug/r-html').CSSTemplateLiterals;
22
+ export declare const close: import('@dineug/r-html').CSSTemplateLiterals;
23
+ export declare const scrollbarArea: import('@dineug/r-html').CSSTemplateLiterals;
24
+ /**
25
+ * The Indexes panes side by side, stacked once the dialog is too narrow for
26
+ * both; a code tab instead fills the body as a well that scrolls on its own.
27
+ */
6
28
  export declare const scope: import('@dineug/r-html').CSSTemplateLiterals;
7
29
  //# sourceMappingURL=TableProperties.styles.d.ts.map
@@ -1,6 +1,8 @@
1
1
  import { FC } from '@dineug/r-html';
2
2
  export type TablePropertiesIndexesProps = {
3
3
  tableId: string;
4
+ /** The editor's readonly mode: nothing here offers an edit, and picking a row only shows it. */
5
+ readonly?: boolean;
4
6
  };
5
7
  declare const TablePropertiesIndexes: FC<TablePropertiesIndexesProps>;
6
8
  export default TablePropertiesIndexes;
@@ -1,4 +1,36 @@
1
+ /**
2
+ * The room the keys and indexes stick in, which keeps their width. Side by
3
+ * side it stretches as tall as the columns, so they stay in sight while a
4
+ * long list scrolls; stacked above the columns it is only as tall as its rows.
5
+ */
6
+ export declare const leftTrack: import('@dineug/r-html').CSSTemplateLiterals;
1
7
  export declare const leftArea: import('@dineug/r-html').CSSTemplateLiterals;
8
+ /**
9
+ * The columns, which take what the keys leave and scroll sideways past that.
10
+ * A box the keyboard reaches scrolls clear of the stuck heading and order,
11
+ * which the browser would otherwise count as showing it.
12
+ */
2
13
  export declare const rightArea: import('@dineug/r-html').CSSTemplateLiterals;
14
+ /**
15
+ * The Columns heading, stuck to the top of the body while the rows scroll
16
+ * under it. It reaches back over the body padding, as the order does at the
17
+ * bottom, so no row shows above it.
18
+ */
19
+ export declare const columnsHead: import('@dineug/r-html').CSSTemplateLiterals;
20
+ export declare const sectionLabel: import('@dineug/r-html').CSSTemplateLiterals;
21
+ /**
22
+ * Read, not hinted at: the placeholder colour is too faint for a sentence. A
23
+ * flex box draws no ellipsis, so its text span cuts itself short.
24
+ */
25
+ export declare const sectionStatus: import('@dineug/r-html').CSSTemplateLiterals;
26
+ export declare const columns: import('@dineug/r-html').CSSTemplateLiterals;
27
+ export declare const hint: import('@dineug/r-html').CSSTemplateLiterals;
3
28
  export declare const addIndexButtonArea: import('@dineug/r-html').CSSTemplateLiterals;
29
+ export declare const addIcon: import('@dineug/r-html').CSSTemplateLiterals;
30
+ /**
31
+ * The selected index's column order, ruled off under the columns. It sticks
32
+ * to the bottom of the body while a long list scrolls, and sits in place
33
+ * under a short one.
34
+ */
35
+ export declare const order: import('@dineug/r-html').CSSTemplateLiterals;
4
36
  //# sourceMappingURL=TablePropertiesIndexes.styles.d.ts.map
@@ -3,6 +3,13 @@ import { Index } from '../../../../../internal-types';
3
3
  export type IndexesCheckboxColumnProps = {
4
4
  tableId: string;
5
5
  index: Index | null;
6
+ /**
7
+ * The columns of a key the columns declare, picked instead of an index: they
8
+ * show checked, and every box stays disabled, since no index owns them.
9
+ */
10
+ keyColumnIds?: string[] | null;
11
+ /** The editor's readonly mode, which disables every box as a picked key does. */
12
+ readonly?: boolean;
6
13
  };
7
14
  declare const IndexesCheckboxColumn: FC<IndexesCheckboxColumnProps>;
8
15
  export default IndexesCheckboxColumn;
@@ -1,2 +1,7 @@
1
+ /**
2
+ * The column rows at their own width, the tint running to the end of each
3
+ * row however far the list scrolls sideways. A column of the picked index
4
+ * or key wears the picked row's tint and bar; an idle list hovers no row.
5
+ */
1
6
  export declare const root: import('@dineug/r-html').CSSTemplateLiterals;
2
7
  //# sourceMappingURL=IndexesCheckboxColumn.styles.d.ts.map
@@ -2,6 +2,13 @@ import { FC } from '@dineug/r-html';
2
2
  import { Index } from '../../../../../internal-types';
3
3
  export type IndexesColumnProps = {
4
4
  index: Index;
5
+ /**
6
+ * The alternate key the index is, 1 for AK1, whose marks each row then
7
+ * carries as the diagram draws them; 0 or left out while it is none.
8
+ */
9
+ alternateKey?: number;
10
+ /** The editor's readonly mode: the rows neither drag nor flip their sort order. */
11
+ readonly?: boolean;
5
12
  };
6
13
  declare const IndexesColumn: FC<IndexesColumnProps>;
7
14
  export default IndexesColumn;