@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,13 @@
1
+ /**
2
+ * The chevron over the list's end, the clicks passing through it to the list.
3
+ * Its ink starts 5/24 into its 14 px box, so 7 px off the edge puts it 8.9 px
4
+ * past the border, where a value's first letter stands past its 8 px padding.
5
+ */
6
+ export declare const chevron: import('@dineug/r-html').CSSTemplateLiterals;
7
+ /**
8
+ * A native list in the editor's colours, the browser's arrow off and the
9
+ * editor's chevron in its place, a value never running under it; its popup
10
+ * takes the appearance from color-scheme.
11
+ */
12
+ export declare const root: import('@dineug/r-html').CSSTemplateLiterals;
13
+ //# sourceMappingURL=Select.styles.d.ts.map
@@ -3,6 +3,8 @@ export type TextInputProps = {
3
3
  class?: any;
4
4
  title?: string;
5
5
  placeholder?: string;
6
+ /** auto for what a reader types, which runs in its own direction whatever the page's, once there is some. */
7
+ dir?: 'auto';
6
8
  readonly?: boolean;
7
9
  disabled?: boolean;
8
10
  width?: number;
@@ -1,12 +1,16 @@
1
1
  import { DOMTemplateLiterals, FC } from '@dineug/r-html';
2
+ /** What became of the thing a toast reports: done, or not done. */
3
+ export type ToastTone = 'success' | 'error';
2
4
  export type ToastProps = {
3
5
  title?: DOMTemplateLiterals | string;
4
6
  description?: DOMTemplateLiterals | string;
5
7
  action?: DOMTemplateLiterals | string;
6
- /** The thing reported is still running, which a turning ring says. */
8
+ /** The thing reported is still running, which lucide's turning loader says. */
7
9
  busy?: boolean;
8
10
  /** How far along it is, from 0 to 1, which the ring fills up by. */
9
11
  progress?: number;
12
+ /** How it ended, which a check or a warning sign in the tone's color says. */
13
+ tone?: ToastTone;
10
14
  };
11
15
  declare const Toast: FC<ToastProps>;
12
16
  export default Toast;
@@ -1,7 +1,7 @@
1
1
  export declare const root: import('@dineug/r-html').CSSTemplateLiterals;
2
2
  /**
3
- * The ring beside the text of a toast that reports something still running.
4
- * A busy one turns a quarter of it; one with a progress fills it from the top.
3
+ * What stands beside the text: lucide's turning loader while busy, a ring that
4
+ * fills from the top with a progress, or the mark of a tone in its own color.
5
5
  */
6
6
  export declare const indicator: import('@dineug/r-html').CSSTemplateLiterals;
7
7
  export declare const textWrap: import('@dineug/r-html').CSSTemplateLiterals;
@@ -1,5 +1,6 @@
1
1
  import { FC } from '@dineug/r-html';
2
- export type QuickSearchProps = {};
2
+ import { PalettePreferences } from './actions';
3
+ export type QuickSearchProps = PalettePreferences;
3
4
  declare const QuickSearch: FC<QuickSearchProps>;
4
5
  export default QuickSearch;
5
6
  //# sourceMappingURL=QuickSearch.d.ts.map
@@ -1,6 +1,12 @@
1
1
  export declare const root: import('@dineug/r-html').CSSTemplateLiterals;
2
2
  export declare const container: import('@dineug/r-html').CSSTemplateLiterals;
3
+ export declare const field: import('@dineug/r-html').CSSTemplateLiterals;
3
4
  export declare const search: import('@dineug/r-html').CSSTemplateLiterals;
5
+ export declare const scope: import('@dineug/r-html').CSSTemplateLiterals;
6
+ export declare const hint: import('@dineug/r-html').CSSTemplateLiterals;
7
+ export declare const hintItem: import('@dineug/r-html').CSSTemplateLiterals;
8
+ export declare const empty: import('@dineug/r-html').CSSTemplateLiterals;
9
+ export declare const prefix: import('@dineug/r-html').CSSTemplateLiterals;
4
10
  export declare const list: import('@dineug/r-html').CSSTemplateLiterals;
5
11
  export declare const action: import('@dineug/r-html').CSSTemplateLiterals;
6
12
  export declare const icon: import('@dineug/r-html').CSSTemplateLiterals;
@@ -1,15 +1,73 @@
1
1
  import { DOMTemplateLiterals } from '@dineug/r-html';
2
2
  import { AppContext } from '../appContext';
3
+ import { RootState } from '../../engine/state';
4
+ import { LocaleOption } from '../../i18n/locales';
5
+ import { LabeledMenu } from '../../i18n/menuLabel';
6
+ import { I18n, PlainMessageKey } from '../../i18n/translate';
7
+ import { AppearanceOption } from '../../themes/radix-ui-theme';
8
+ import { FindReplaceQuery } from '../../utils/emitter';
9
+ import { FindMatch } from '../../utils/find-replace';
3
10
  export type Action = {
4
11
  icon?: DOMTemplateLiterals | null;
5
12
  name: string;
6
13
  keywords?: string;
7
14
  shortcut?: string;
15
+ /** The table a row jumps to, whose keyword names the kind of row, not the table. */
16
+ tableId?: string;
17
+ /** What choosing the row types into the input, which stays open, instead of running a command. */
18
+ insert?: string;
19
+ /** The English of a translated name and keywords, each its own text, which a search also reads and the list never shows. */
20
+ alias?: string[];
21
+ /** The option in force among a submenu's rows, which the submenu opens on. */
22
+ checked?: boolean;
23
+ /** The message key of a row opening a submenu, by which an open palette finds that submenu again in a rebuilt level. */
24
+ id?: PlainMessageKey;
8
25
  filter?: (app: AppContext) => boolean;
9
26
  perform?: (app: AppContext) => void;
10
27
  next?: Action[];
11
28
  };
29
+ /** What names a row: a message key, or a shared menu whose name stays as written where it has no key. */
30
+ type RowLabel = PlainMessageKey | LabeledMenu;
31
+ /**
32
+ * A row's name and keywords in the reader's language. The English of each one
33
+ * a translation changes goes into its alias apart, so a search scores it as in
34
+ * English and a command is found by its English words too; English has none.
35
+ */
36
+ export declare function named(i18n: Pick<I18n, 't'>, label: RowLabel, keywordsKey?: PlainMessageKey): Pick<Action, 'name' | 'keywords' | 'alias'>;
37
+ /**
38
+ * Whether a row holds the keyword: as typed, or by its Hangul letters, which
39
+ * an IME spells out one jamo at a time and a choseong search abbreviates.
40
+ */
41
+ export declare function keywordHolder(keyword: string): (action: Action) => boolean;
42
+ /**
43
+ * How loose a fuzzy hit may be: stricter than fuse.js's 0.6, which fuzzed most
44
+ * words to some command (memo to the relationships, #us to orders), while a
45
+ * typo such as tabel still finds New Table. A row holding the keyword stays.
46
+ */
47
+ export declare const SEARCH_THRESHOLD = 0.4;
12
48
  export declare function searchActions(actions: Action[], keyword: string): Action[];
13
- export declare function createScopeActions(app: AppContext): Action[];
14
- export declare const allScopeActions: Action[];
49
+ /** The theme and the display language the element holds, each given only while it offers that picker. */
50
+ export type PalettePreferences = {
51
+ appearance?: AppearanceOption;
52
+ locale?: LocaleOption;
53
+ };
54
+ /**
55
+ * The palette's top level: the commands of every tab, then a jump to each
56
+ * table, which only the # prefix lists, each in the reader's language. Theme
57
+ * and Display Language show on every tab, each only while its picker is given.
58
+ */
59
+ export declare function createScopeActions(app: AppContext, i18n?: I18n, preferences?: PalettePreferences): Action[];
60
+ /**
61
+ * Theme and Display Language, each only while the element offers its picker,
62
+ * with a check on the option in force. A pick goes through the emitter as the
63
+ * pickers' own do, so the host hears it; a language is named in itself.
64
+ */
65
+ export declare function createPreferenceActions(i18n: I18n, { appearance, locale }: PalettePreferences): Action[];
66
+ /** The row for one field a search found, saying where it is, which stands the reader on it when chosen. */
67
+ export declare function createMatchAction(state: RootState, match: FindMatch, i18n?: I18n): Action;
68
+ /** The row handing a search to Find and Replace, named with the count the panel opens on. */
69
+ export declare function createShowAllAction(count: number, payload: FindReplaceQuery, i18n?: I18n): Action;
70
+ /** The five tabs the Tab row opens, each but the one shown. */
71
+ export declare function createTabActions(i18n?: I18n): Action[];
72
+ export {};
15
73
  //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1,79 @@
1
+ import { Matcher, TextRange } from '../../utils/find-replace';
2
+ import { FindChunksArgs } from '../../utils/highlightWords';
3
+ export type HangulForms = {
4
+ /** The text spelled in jamo letter by letter and lower-cased, as disassemble spells it. */
5
+ jamo: string;
6
+ /** The initial of each syllable and each lone consonant, a cluster split in two, run together without the spaces. */
7
+ choseong: string;
8
+ };
9
+ /** A text's forms, spelled once and kept until the palette next opens or closes, since it reads every field again on each keystroke. */
10
+ export declare function hangulFormsOf(text: string): HangulForms;
11
+ /** Lets go of every form kept, as the palette opens and closes: they last one open and outlive no text the document dropped. */
12
+ export declare function clearHangulForms(): void;
13
+ export type HangulQuery = {
14
+ /** The keyword spelled in jamo, which the text's jamo has to hold. */
15
+ jamo: string;
16
+ /** The consonants of a keyword typed as initials alone, a cluster split in two, spaces dropped; null for any other keyword. */
17
+ choseong: string | null;
18
+ };
19
+ /**
20
+ * How a keyword reads as a Hangul search, or null when it holds no Hangul and
21
+ * the palette matches as it always has.
22
+ *
23
+ * @example
24
+ * hangulQueryOf('ㅅㅇㅈ'); // { jamo: 'ㅅㅇㅈ', choseong: 'ㅅㅇㅈ' }
25
+ * hangulQueryOf('ㅄ'); // { jamo: 'ㅂㅅ', choseong: 'ㅂㅅ' }
26
+ * hangulQueryOf('사요'); // { jamo: 'ㅅㅏㅇㅛ', choseong: null }
27
+ */
28
+ export declare function hangulQueryOf(keyword: string): HangulQuery | null;
29
+ /** How closely a text holds a Hangul keyword: all of it, from its start, or somewhere inside. */
30
+ export declare const HangulTier: {
31
+ readonly exact: 0;
32
+ readonly prefix: 1;
33
+ readonly inside: 2;
34
+ };
35
+ export type HangulTier = (typeof HangulTier)[keyof typeof HangulTier];
36
+ /**
37
+ * How closely a text holds a Hangul keyword, by its jamo or, for a keyword of
38
+ * initials, by the initials of its syllables; null when it holds it neither way.
39
+ */
40
+ export declare function hangulTier(text: string, query: HangulQuery): HangulTier | null;
41
+ /**
42
+ * Every place a text holds a Hangul keyword, as whole letters of the text in
43
+ * order of where they start, so a jamo typed mid-syllable covers the syllables
44
+ * it spells: 상 in 사용자 covers 사용.
45
+ */
46
+ export declare function hangulRanges(text: string, query: HangulQuery): TextRange[];
47
+ /** How a text holds the keyword: as typed, which Find and Replace finds too, and where; or by its Hangul letters alone, and how closely. */
48
+ export type TextHit = (TextRange & {
49
+ literal: true;
50
+ }) | {
51
+ literal: false;
52
+ tier: HangulTier;
53
+ };
54
+ /**
55
+ * Whether a text holds the keyword: as typed, or failing that by its Hangul
56
+ * letters, which only the palette reads. Where those letters lie waits for
57
+ * hitRange, which spells the text again.
58
+ */
59
+ export declare function matchText(text: string, matcher: Matcher, hangul: HangulQuery | null): TextHit | null;
60
+ /**
61
+ * The first place a text holds a hit, which for one its Hangul letters hold
62
+ * spells the text again, so a list reads it only for the rows it shows.
63
+ */
64
+ export declare function hitRange(text: string, hit: TextHit, hangul: HangulQuery | null): TextRange;
65
+ /**
66
+ * Hits in a Hangul search's order: those holding the keyword as typed first,
67
+ * as they came, the way a search without Hangul lists them, then those only its
68
+ * letters hold, closest first and as they came within a tier.
69
+ */
70
+ export declare function rankHits<T extends {
71
+ hit: TextHit;
72
+ }>(hits: T[]): T[];
73
+ /**
74
+ * The ranges a palette row lights up: each word where the text holds it as
75
+ * typed, and a Hangul word where the text holds it by its letters, widened to
76
+ * whole syllables. HighlightedText merges the ones that overlap or touch.
77
+ */
78
+ export declare function findPaletteChunks(args: FindChunksArgs): TextRange[];
79
+ //# sourceMappingURL=hangul.d.ts.map
@@ -0,0 +1,38 @@
1
+ import { I18n, PlainMessageKey } from '../../i18n/translate';
2
+ import { ValuesType } from '../../internal-types';
3
+ export declare const PaletteScope: {
4
+ readonly tables: "tables";
5
+ readonly columns: "columns";
6
+ readonly text: "text";
7
+ readonly help: "help";
8
+ };
9
+ export type PaletteScope = ValuesType<typeof PaletteScope>;
10
+ export type PalettePrefix = {
11
+ prefix: string;
12
+ scope: PaletteScope;
13
+ labelKey: PlainMessageKey;
14
+ descriptionKey: PlainMessageKey;
15
+ };
16
+ /** The characters that, typed first, narrow the palette to one kind of row, in the order its hint lists them. */
17
+ export declare const PALETTE_PREFIXES: ReadonlyArray<PalettePrefix>;
18
+ export type PaletteQuery = {
19
+ /** The kind of row the prefix asks for, or null with no prefix, which lists the commands. */
20
+ scope: PaletteScope | null;
21
+ /** What is searched for, without the prefix, the space after it or the table part. */
22
+ keyword: string;
23
+ /** The table part of a column search, the text before its first dot; null when it has no dot. */
24
+ table: string | null;
25
+ };
26
+ /** The label the palette shows beside its input while a prefix narrows the list, in the reader's language. */
27
+ export declare function scopeLabel(scope: PaletteScope, i18n?: Pick<I18n, 't'>): string;
28
+ /**
29
+ * Reads what is typed into the palette: a prefix counts only as the first
30
+ * character past any space, in its full-width form too, a space may follow it,
31
+ * and a column search splits on its first dot.
32
+ *
33
+ * @example
34
+ * parsePaletteQuery('@users.em'); // { scope: 'columns', keyword: 'em', table: 'users' }
35
+ * parsePaletteQuery(':login email'); // { scope: 'text', keyword: 'login email', table: null }
36
+ */
37
+ export declare function parsePaletteQuery(value: string): PaletteQuery;
38
+ //# sourceMappingURL=paletteQuery.d.ts.map
@@ -0,0 +1,42 @@
1
+ import { AppContext } from '../appContext';
2
+ import { I18n } from '../../i18n/translate';
3
+ import { FindField } from '../../utils/find-replace';
4
+ import { Action } from './actions';
5
+ import { PaletteQuery, PaletteScope } from './paletteQuery';
6
+ /** How many rows a prefixed list shows, few enough to draw at once. */
7
+ export declare const SCOPED_ACTION_LIMIT = 100;
8
+ /** What the colon searches: the free text, never a name. */
9
+ export declare const TEXT_FIELDS: FindField[];
10
+ /**
11
+ * The rows of a level a scope hands to the fuzzy search: the commands without
12
+ * a prefix, the tables after # alone, and none for a scope whose rows are read
13
+ * from the document. A submenu holds commands only.
14
+ */
15
+ export declare function scopeBase(actions: Action[], scope: PaletteScope | null): Action[];
16
+ /**
17
+ * What the top level lists for a query, from the fuzzy hits of its scope: the
18
+ * commands, then the prefixes when none holds the keyword; the tables; or rows
19
+ * read from the document for the columns, the free text and the help.
20
+ */
21
+ export declare function paletteRows(app: AppContext, found: Action[], { scope, keyword, table }: PaletteQuery, i18n?: I18n): Action[];
22
+ /**
23
+ * The table rows the keyword fuzzes to, those holding it as typed or by its
24
+ * Hangul letters first, up to the scoped limit, past which a table whose name
25
+ * the panel finds it in hands the search to Find and Replace over the names.
26
+ */
27
+ export declare function rankTableActions(app: AppContext, found: Action[], keyword: string, i18n?: I18n): Action[];
28
+ /**
29
+ * One row a field of the kinds given holding the keyword, Hangul letters too,
30
+ * or every column or text, up to the scoped limit, past which one holding it as
31
+ * typed hands it to Find and Replace over those kinds, without the table part.
32
+ */
33
+ export declare function createFieldActions(app: AppContext, fields: FindField[], keyword: string, table?: string | null, i18n?: I18n): Action[];
34
+ /** The prefixes as rows, each typing its character into the input when chosen; a keyword fuzzes them. */
35
+ export declare function createHelpActions(keyword?: string, i18n?: I18n): Action[];
36
+ /**
37
+ * The prefixes that search the document as rows offering the keyword to one,
38
+ * what a search with no prefix lists below its commands once none holds it:
39
+ * choosing one types its prefix before the keyword, so users becomes #users.
40
+ */
41
+ export declare function createPrefixActions(keyword: string, i18n?: I18n): Action[];
42
+ //# sourceMappingURL=scopedActions.d.ts.map
@@ -1,7 +1,9 @@
1
1
  import { FC } from '@dineug/r-html';
2
2
  export type SchemaSQLProps = {
3
3
  isDarkMode: boolean;
4
+ /** One table's DDL, as Table Properties shows it: always created, no options. */
4
5
  tableId?: string;
6
+ readonly?: boolean;
5
7
  };
6
8
  declare const SchemaSQL: FC<SchemaSQLProps>;
7
9
  export default SchemaSQL;
@@ -1,2 +1,9 @@
1
+ /** The code and, beside it, the options panel. */
1
2
  export declare const root: import('@dineug/r-html').CSSTemplateLiterals;
3
+ /** The code takes what the panel leaves, and no more. */
4
+ export declare const code: import('@dineug/r-html').CSSTemplateLiterals;
5
+ /** Why the code is empty while no table is chosen, centred over it in any language. */
6
+ export declare const empty: import('@dineug/r-html').CSSTemplateLiterals;
7
+ /** Show options, over the code's own colour so it reads above the text. */
8
+ export declare const show: import('@dineug/r-html').CSSTemplateLiterals;
2
9
  //# sourceMappingURL=SchemaSQL.styles.d.ts.map
@@ -1,5 +1,8 @@
1
1
  import { FC } from '@dineug/r-html';
2
2
  export type SchemaSQLContextMenuProps = {
3
+ /** The whole document's tab, which adds the statements, the header, the panel and Save file to the menu. */
4
+ full?: boolean;
5
+ onSave?: () => void;
3
6
  onClose: () => void;
4
7
  };
5
8
  declare const SchemaSQLContextMenu: FC<SchemaSQLContextMenuProps>;
@@ -1,12 +1,15 @@
1
1
  import { AppContext } from '../../../appContext';
2
+ import { PlainMessageKey } from '../../../../i18n/translate';
2
3
  type Menu = {
3
4
  name: string;
5
+ labelKey?: PlainMessageKey;
4
6
  value: number;
5
7
  };
6
8
  export declare const menus: Menu[];
7
9
  export declare function createBracketMenus({ store }: AppContext): {
8
10
  checked: boolean;
9
11
  name: string;
12
+ labelKey: PlainMessageKey | undefined;
10
13
  onClick: () => void;
11
14
  }[];
12
15
  export {};
@@ -0,0 +1,29 @@
1
+ import { AppContext } from '../../../appContext';
2
+ import { I18n, PlainMessageKey } from '../../../../i18n/translate';
3
+ import { SchemaSQLHeader } from '../../../../utils/schema-sql';
4
+ import { SchemaSQLSupport } from '../../../../utils/schema-sql/options';
5
+ type Menu = {
6
+ id: SchemaSQLHeader;
7
+ name: string;
8
+ labelKey?: PlainMessageKey;
9
+ };
10
+ /** No header, then the two as the SQL they write names them, which no language translates. */
11
+ export declare const menus: ReadonlyArray<Menu>;
12
+ /** Whether a database writes the header; every one can write none. */
13
+ export declare const isHeaderSupported: ({ headers }: SchemaSQLSupport, id: SchemaSQLHeader) => boolean;
14
+ /** What a header writes in a database, or nothing for none or one it lacks. */
15
+ export declare const headerHint: (database: number, id: SchemaSQLHeader) => string | undefined;
16
+ /**
17
+ * The Header rows of the Schema SQL menu, ruled as the Statements rows are:
18
+ * None in the reader's language, the two headers as SQL.
19
+ */
20
+ export declare function createHeaderMenus(app: Pick<AppContext, 'store'>, i18n: Pick<I18n, 't'>): {
21
+ id: SchemaSQLHeader;
22
+ name: string;
23
+ literal: boolean;
24
+ checked: boolean;
25
+ note: string | null;
26
+ onClick: (() => void) | undefined;
27
+ }[];
28
+ export {};
29
+ //# sourceMappingURL=headerMenus.d.ts.map
@@ -0,0 +1,27 @@
1
+ import { AppContext } from '../../../appContext';
2
+ import { I18n } from '../../../../i18n/translate';
3
+ import { SchemaSQLStatements } from '../../../../utils/schema-sql';
4
+ import { SchemaSQLSupport } from '../../../../utils/schema-sql/options';
5
+ type Menu = {
6
+ id: SchemaSQLStatements;
7
+ name: string;
8
+ };
9
+ /** The three ways the tables are written, named alike in every language, as the owner decided. */
10
+ export declare const menus: ReadonlyArray<Menu>;
11
+ /** Whether a database writes the statements: every one drops and re-creates, not every one checks first. */
12
+ export declare const isStatementsSupported: ({ ifNotExists }: SchemaSQLSupport, id: SchemaSQLStatements) => boolean;
13
+ /** A database by the name its menu gives it, or nothing for a value no menu lists. */
14
+ export declare const databaseLabel: (database: number) => string;
15
+ /**
16
+ * The Statements rows of the Schema SQL menu: the one the database writes
17
+ * checked, one it lacks noted and inert, a pick kept for this window alone.
18
+ */
19
+ export declare function createStatementsMenus(app: Pick<AppContext, 'store'>, i18n: Pick<I18n, 't'>): {
20
+ id: SchemaSQLStatements;
21
+ name: string;
22
+ checked: boolean;
23
+ note: string | null;
24
+ onClick: (() => void) | undefined;
25
+ }[];
26
+ export {};
27
+ //# sourceMappingURL=statementsMenus.d.ts.map
@@ -0,0 +1,24 @@
1
+ import { FC } from '@dineug/r-html';
2
+ /** The panel's id, which the button folding it away controls. */
3
+ export declare const SCHEMA_SQL_OPTIONS_ID = "schema-sql-options";
4
+ /** Space is the hand tool's key, whose binding cancels the keydown and with it a native button's press. */
5
+ export declare const keepSpace: (event: KeyboardEvent) => void;
6
+ export type SchemaSQLOptionsProps = {
7
+ isDarkMode: boolean;
8
+ readonly: boolean;
9
+ /** The tables a drop and re-create names, in the order the DDL writes them. */
10
+ tables: ReadonlyArray<string>;
11
+ /** The Oracle names over 30 bytes, which 12.2 was the first to take. */
12
+ longNames: ReadonlyArray<string>;
13
+ onHide: () => void;
14
+ onSave: () => void;
15
+ onCopy: () => void;
16
+ };
17
+ /**
18
+ * The options beside the Schema SQL: the database and the bracket, then this
19
+ * window's statements, header and tables, then the scripts the document
20
+ * saves, and the buttons that save and copy the text.
21
+ */
22
+ declare const SchemaSQLOptions: FC<SchemaSQLOptionsProps>;
23
+ export default SchemaSQLOptions;
24
+ //# sourceMappingURL=SchemaSQLOptions.d.ts.map
@@ -0,0 +1,45 @@
1
+ /**
2
+ * The options beside the code, a fixed width whatever the editor's, its rule
3
+ * on the left, where the code stands in every language.
4
+ */
5
+ export declare const panel: import('@dineug/r-html').CSSTemplateLiterals;
6
+ export declare const head: import('@dineug/r-html').CSSTemplateLiterals;
7
+ export declare const title: import('@dineug/r-html').CSSTemplateLiterals;
8
+ /** The part that scrolls, between the title and the buttons. */
9
+ export declare const body: import('@dineug/r-html').CSSTemplateLiterals;
10
+ export declare const group: import('@dineug/r-html').CSSTemplateLiterals;
11
+ /** A group under a rule, drawn halfway into the gap above it. */
12
+ export declare const separated: import('@dineug/r-html').CSSTemplateLiterals;
13
+ export declare const row: import('@dineug/r-html').CSSTemplateLiterals;
14
+ export declare const column: import('@dineug/r-html').CSSTemplateLiterals;
15
+ export declare const caption: import('@dineug/r-html').CSSTemplateLiterals;
16
+ export declare const note: import('@dineug/r-html').CSSTemplateLiterals;
17
+ /** A list beside its name, as wide whatever the database or the bracket. */
18
+ export declare const select: import('@dineug/r-html').CSSTemplateLiterals;
19
+ export declare const segments: import('@dineug/r-html').CSSTemplateLiterals;
20
+ export declare const segment: import('@dineug/r-html').CSSTemplateLiterals;
21
+ /** The Tables list: All, each table group, then No group. */
22
+ export declare const choices: import('@dineug/r-html').CSSTemplateLiterals;
23
+ /**
24
+ * A box and its name on one line, the whole line taking the press; the box
25
+ * in the accent colour once checked, a dash while All is mixed.
26
+ */
27
+ export declare const choice: import('@dineug/r-html').CSSTemplateLiterals;
28
+ /** A table group's color, ringed so a pale one shows on the panel. */
29
+ export declare const dot: import('@dineug/r-html').CSSTemplateLiterals;
30
+ /** A name cut to one line; a group without one reads unnamed, dimmed. */
31
+ export declare const choiceName: import('@dineug/r-html').CSSTemplateLiterals;
32
+ /**
33
+ * What a drop and re-create takes with it, in the panel's own warning colours,
34
+ * a long table name broken to stay inside the box.
35
+ */
36
+ export declare const warning: import('@dineug/r-html').CSSTemplateLiterals;
37
+ /** One line of the text tall, so the icon stands beside the first. */
38
+ export declare const warningIcon: import('@dineug/r-html').CSSTemplateLiterals;
39
+ /** The buttons under the scrolling part, always in sight. */
40
+ export declare const foot: import('@dineug/r-html').CSSTemplateLiterals;
41
+ export declare const actions: import('@dineug/r-html').CSSTemplateLiterals;
42
+ export declare const action: import('@dineug/r-html').CSSTemplateLiterals;
43
+ /** A square icon button: the panel's Hide and the code's Show. */
44
+ export declare const icon: import('@dineug/r-html').CSSTemplateLiterals;
45
+ //# sourceMappingURL=SchemaSQLOptions.styles.d.ts.map
@@ -0,0 +1,20 @@
1
+ import { FC } from '@dineug/r-html';
2
+ export type ScriptEditorProps = {
3
+ /** What the label beside it points its for at. */
4
+ id: string;
5
+ /** The script the document holds. */
6
+ value: string;
7
+ placeholder: string;
8
+ theme: 'dark' | 'light';
9
+ readonly: boolean;
10
+ /** Called once per edit, as the field loses the focus, with the text it holds. */
11
+ onCommit: (value: string) => void;
12
+ };
13
+ /**
14
+ * A text field over its own highlighted text, left to right in any language as
15
+ * the code block is, which commits what was typed as it loses the focus: one
16
+ * action per edit. A change of the script while focused shows once it is left untyped.
17
+ */
18
+ declare const ScriptEditor: FC<ScriptEditorProps>;
19
+ export default ScriptEditor;
20
+ //# sourceMappingURL=ScriptEditor.d.ts.map
@@ -0,0 +1,13 @@
1
+ /**
2
+ * The box both layers fill, its background the highlight's, set inline, and a
3
+ * stacking context of its own, so the raised field stays under the overlays.
4
+ */
5
+ export declare const editor: import('@dineug/r-html').CSSTemplateLiterals;
6
+ /**
7
+ * The field a reader types into, in flow and as tall as its text, raised over
8
+ * the preview, which an absolute box would otherwise paint above it.
9
+ */
10
+ export declare const input: import('@dineug/r-html').CSSTemplateLiterals;
11
+ /** The highlighted text under the field, stretched onto it. */
12
+ export declare const preview: import('@dineug/r-html').CSSTemplateLiterals;
13
+ //# sourceMappingURL=ScriptEditor.styles.d.ts.map
@@ -0,0 +1,8 @@
1
+ import { I18n } from '../../../i18n/translate';
2
+ /**
3
+ * What a drop and re-create takes with it, the tables named in the reader's
4
+ * language, the first four and a count past five; Snowflake replaces them in
5
+ * place. Null with no table to drop.
6
+ */
7
+ export declare function formatDropWarning(i18n: Pick<I18n, 'locale' | 'dir' | 't'>, database: number, tables: ReadonlyArray<string>): string | null;
8
+ //# sourceMappingURL=dropWarning.d.ts.map
@@ -0,0 +1,71 @@
1
+ import { AppContext } from '../appContext';
2
+ import { RootState } from '../../engine/state';
3
+ import { SchemaSQLHeader, SchemaSQLStatements } from '../../utils/schema-sql';
4
+ /** Whether an options panel shows: unset until the editor is first measured. */
5
+ export type OptionsPanelState = 'unset' | 'open' | 'closed';
6
+ /** Where a tab keeps its options panel's place, the Code Generator's as this one's. */
7
+ export type PanelView = {
8
+ panel: OptionsPanelState;
9
+ };
10
+ /** Which tables the DDL writes, by the table group they are in. */
11
+ export type SchemaSQLTableChoice = {
12
+ /** Each table group checked or not, by id. */
13
+ groups: Readonly<Record<string, boolean>>;
14
+ /** Whether the tables in no group are checked. */
15
+ noGroup: boolean;
16
+ };
17
+ export type SchemaSQLView = {
18
+ /** The statements asked for, which each database resolves to what it has. */
19
+ statements: SchemaSQLStatements;
20
+ /** The header asked for, resolved the same way. */
21
+ header: SchemaSQLHeader;
22
+ /** Replaced whole, never changed in place, so a watcher hears one change. */
23
+ tables: SchemaSQLTableChoice;
24
+ panel: OptionsPanelState;
25
+ /** Set by the export path, spent by the panel on the Save file button. */
26
+ focusSave: boolean;
27
+ };
28
+ /**
29
+ * The window's own Schema SQL choices: never in the store, the file or a
30
+ * change event, kept until the element goes, one set per editor.
31
+ */
32
+ export declare function schemaSQLViewOf({ store, }: Pick<AppContext, 'store'>): SchemaSQLView;
33
+ /**
34
+ * Whether the panel shows: an unset panel opens on an editor 640px wide or
35
+ * more, once it is measured, and keeps that whatever the width does next.
36
+ */
37
+ export declare function resolvePanel(view: PanelView, editorWidth: number): 'open' | 'closed' | 'unknown';
38
+ /** Folds a panel away or opens it; one not measured yet opens. */
39
+ export declare function togglePanel(view: PanelView, editorWidth: number): void;
40
+ /** Folds the Schema SQL panel away or opens it. */
41
+ export declare function toggleSchemaSQLPanel(app: Pick<AppContext, 'store'>): void;
42
+ /** The Schema SQL tab with its panel open and Save file focused, which saves nothing yet. */
43
+ export declare function showSchemaSQLExport(app: Pick<AppContext, 'store'>): void;
44
+ /** Whether every group the choice holds and the tables in none are checked. */
45
+ export declare function isEveryTableChosen({ groups, noGroup }: SchemaSQLTableChoice): boolean;
46
+ /**
47
+ * The choice over the groups the document lists, in its order: a group it has
48
+ * not met starts checked only while every box was, and one no longer listed
49
+ * is dropped; with no group listed, every box is checked again.
50
+ */
51
+ export declare function resolveTableChoice(choice: SchemaSQLTableChoice, groupIds: ReadonlyArray<string>): SchemaSQLTableChoice;
52
+ /**
53
+ * Matches the choice to the document's groups as they change, so a group added
54
+ * later starts as every box was then; it writes only a choice that moved.
55
+ */
56
+ export declare function syncTableChoice(view: SchemaSQLView, groupIds: ReadonlyArray<string>): void;
57
+ /** Checks or unchecks every box. */
58
+ export declare function chooseAllTables(view: SchemaSQLView, groupIds: ReadonlyArray<string>, checked: boolean): void;
59
+ /** Checks or unchecks one group, every other box as it reads. */
60
+ export declare function chooseTableGroup(view: SchemaSQLView, groupIds: ReadonlyArray<string>, groupId: string, checked: boolean): void;
61
+ /** Checks or unchecks the tables in no group, every other box as it reads. */
62
+ export declare function chooseNoGroup(view: SchemaSQLView, groupIds: ReadonlyArray<string>, checked: boolean): void;
63
+ /** Whether no box is checked while the document has a group, which writes nothing. */
64
+ export declare function isNoTableChosen(choice: SchemaSQLTableChoice, groupIds: ReadonlyArray<string>): boolean;
65
+ /**
66
+ * The ids of the tables the checked boxes hold, in document order, or
67
+ * undefined for the whole document, while every box is checked or the
68
+ * document has no group; a table's group reads as getTableGroupId reads it.
69
+ */
70
+ export declare function chosenTableIds(state: RootState, choice: SchemaSQLTableChoice): string[] | undefined;
71
+ //# sourceMappingURL=schemaSQLView.d.ts.map
@@ -5,6 +5,13 @@ export declare const content: import('@dineug/r-html').CSSTemplateLiterals;
5
5
  export declare const section: import('@dineug/r-html').CSSTemplateLiterals;
6
6
  export declare const row: import('@dineug/r-html').CSSTemplateLiterals;
7
7
  export declare const vertical: (size: number) => import('@dineug/r-html').CSSTemplateLiterals;
8
+ export declare const lockSection: import('@dineug/r-html').CSSTemplateLiterals;
9
+ export declare const lockList: import('@dineug/r-html').CSSTemplateLiterals;
10
+ export declare const lockRow: import('@dineug/r-html').CSSTemplateLiterals;
11
+ export declare const lockName: import('@dineug/r-html').CSSTemplateLiterals;
12
+ export declare const lockControl: import('@dineug/r-html').CSSTemplateLiterals;
13
+ export declare const lockValue: import('@dineug/r-html').CSSTemplateLiterals;
14
+ export declare const lockButton: import('@dineug/r-html').CSSTemplateLiterals;
8
15
  export declare const columnOrderSection: import('@dineug/r-html').CSSTemplateLiterals;
9
16
  export declare const columnOrderList: import('@dineug/r-html').CSSTemplateLiterals;
10
17
  export declare const columnOrderItem: import('@dineug/r-html').CSSTemplateLiterals;
@@ -0,0 +1,8 @@
1
+ import { PlainMessageKey } from '../../i18n/translate';
2
+ /**
3
+ * The name the column order list gives each column type, as the key of its
4
+ * message: kept beside the list, out of the schema constants the peer entry
5
+ * reaches, so no editor text travels with the peer.
6
+ */
7
+ export declare const ColumnTypeToMessageKey: Readonly<Record<number, PlainMessageKey>>;
8
+ //# sourceMappingURL=columnTypeLabels.d.ts.map