@seniorsistemas/data-seniorx-core 2.3.0 → 3.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 (262) hide show
  1. package/core/constants/autocomplete.const.d.ts +4 -0
  2. package/core/constants/context-selector.const.d.ts +1 -0
  3. package/core/constants/gantt.const.d.ts +7 -0
  4. package/core/constants/hyperlink.const.d.ts +1 -0
  5. package/core/constants/inline-edit.const.d.ts +4 -0
  6. package/core/constants/kanban.const.d.ts +2 -0
  7. package/core/constants/pin-code-field.const.d.ts +5 -0
  8. package/core/constants/rating-scale.const.d.ts +1 -0
  9. package/core/constants/spotlight.const.d.ts +8 -0
  10. package/core/constants/star-rating.const.d.ts +4 -0
  11. package/core/constants/stepper.const.d.ts +1 -0
  12. package/core/constants/tiered-menu.const.d.ts +3 -0
  13. package/core/types/autocomplete.type.d.ts +9 -0
  14. package/core/types/chat.type.d.ts +12 -0
  15. package/core/types/checkbox-list.type.d.ts +12 -0
  16. package/core/types/gantt.type.d.ts +22 -0
  17. package/core/types/grid-menu.type.d.ts +13 -0
  18. package/core/types/hyperlink.type.d.ts +1 -0
  19. package/core/types/image-cropper.type.d.ts +20 -0
  20. package/core/types/inline-edit.type.d.ts +26 -0
  21. package/core/types/kanban.type.d.ts +36 -0
  22. package/core/types/panel.type.d.ts +16 -0
  23. package/core/types/profile-picture-picker.type.d.ts +9 -0
  24. package/core/types/rating-scale.type.d.ts +5 -0
  25. package/core/types/select-button.type.d.ts +1 -0
  26. package/core/types/spotlight.type.d.ts +34 -0
  27. package/core/types/star-rating.type.d.ts +1 -0
  28. package/core/types/stepper.type.d.ts +20 -0
  29. package/core/types/table-column.type.d.ts +3 -1
  30. package/core/types/table-options.type.d.ts +8 -2
  31. package/core/types/table.type.d.ts +1 -1
  32. package/core/types/tiered-menu.type.d.ts +16 -0
  33. package/core/types/tree.type.d.ts +25 -0
  34. package/core/types/workspace-switch.type.d.ts +6 -0
  35. package/core/utils/body-scroll.util.d.ts +2 -0
  36. package/core/utils/roving-focus.util.d.ts +2 -0
  37. package/core/utils/selection.util.d.ts +3 -0
  38. package/core/utils/tree.util.d.ts +4 -0
  39. package/esm2022/core/constants/autocomplete.const.mjs +5 -0
  40. package/esm2022/core/constants/context-selector.const.mjs +2 -0
  41. package/esm2022/core/constants/gantt.const.mjs +7 -0
  42. package/esm2022/core/constants/hyperlink.const.mjs +2 -1
  43. package/esm2022/core/constants/inline-edit.const.mjs +5 -0
  44. package/esm2022/core/constants/kanban.const.mjs +3 -0
  45. package/esm2022/core/constants/pin-code-field.const.mjs +6 -0
  46. package/esm2022/core/constants/rating-scale.const.mjs +2 -0
  47. package/esm2022/core/constants/spotlight.const.mjs +9 -0
  48. package/esm2022/core/constants/star-rating.const.mjs +5 -0
  49. package/esm2022/core/constants/stepper.const.mjs +2 -0
  50. package/esm2022/core/constants/table.const.mjs +2 -2
  51. package/esm2022/core/constants/tiered-menu.const.mjs +4 -0
  52. package/esm2022/core/types/autocomplete.type.mjs +2 -0
  53. package/esm2022/core/types/chat.type.mjs +2 -0
  54. package/esm2022/core/types/checkbox-list.type.mjs +2 -0
  55. package/esm2022/core/types/gantt.type.mjs +2 -0
  56. package/esm2022/core/types/grid-menu.type.mjs +2 -0
  57. package/esm2022/core/types/hyperlink.type.mjs +1 -1
  58. package/esm2022/core/types/image-cropper.type.mjs +2 -0
  59. package/esm2022/core/types/inline-edit.type.mjs +2 -0
  60. package/esm2022/core/types/kanban.type.mjs +2 -0
  61. package/esm2022/core/types/panel.type.mjs +9 -0
  62. package/esm2022/core/types/profile-picture-picker.type.mjs +2 -0
  63. package/esm2022/core/types/rating-scale.type.mjs +2 -0
  64. package/esm2022/core/types/select-button.type.mjs +1 -1
  65. package/esm2022/core/types/spotlight.type.mjs +2 -0
  66. package/esm2022/core/types/star-rating.type.mjs +2 -0
  67. package/esm2022/core/types/stepper.type.mjs +7 -0
  68. package/esm2022/core/types/table-column.type.mjs +1 -1
  69. package/esm2022/core/types/table-options.type.mjs +1 -1
  70. package/esm2022/core/types/table.type.mjs +1 -1
  71. package/esm2022/core/types/tiered-menu.type.mjs +2 -0
  72. package/esm2022/core/types/tree.type.mjs +2 -0
  73. package/esm2022/core/types/workspace-switch.type.mjs +2 -0
  74. package/esm2022/core/utils/body-scroll.util.mjs +19 -0
  75. package/esm2022/core/utils/combobox.util.mjs +3 -2
  76. package/esm2022/core/utils/roving-focus.util.mjs +20 -0
  77. package/esm2022/core/utils/selection.util.mjs +13 -0
  78. package/esm2022/core/utils/string.util.mjs +8 -3
  79. package/esm2022/core/utils/tree.util.mjs +23 -0
  80. package/esm2022/features/accordion/accordion.component.mjs +2 -2
  81. package/esm2022/features/accordion/{accordion-item.component.mjs → components/accordion-item/accordion-item.component.mjs} +7 -7
  82. package/esm2022/features/autocomplete/autocomplete.component.mjs +501 -0
  83. package/esm2022/features/autocomplete/components/autocomplete-chip/autocomplete-chip.component.mjs +30 -0
  84. package/esm2022/features/breadcrumb/breadcrumb.component.mjs +2 -2
  85. package/esm2022/features/card-list/card/card.component.mjs +63 -99
  86. package/esm2022/features/chat/chat.component.mjs +126 -0
  87. package/esm2022/features/checkbox-list/checkbox-list.component.mjs +125 -0
  88. package/esm2022/features/combobox/combobox.component.mjs +20 -8
  89. package/esm2022/features/context-selector/context-selector.component.mjs +198 -0
  90. package/esm2022/features/filters/filters.component.mjs +1 -1
  91. package/esm2022/features/gantt/components/gantt-side-table/gantt-side-table.component.mjs +17 -0
  92. package/esm2022/features/gantt/gantt-date.utils.mjs +97 -0
  93. package/esm2022/features/gantt/gantt.component.mjs +89 -0
  94. package/esm2022/features/gantt/gantt.engine.mjs +662 -0
  95. package/esm2022/features/grid-menu/grid-menu.component.mjs +104 -0
  96. package/esm2022/features/hyperlink/hyperlink.component.mjs +7 -4
  97. package/esm2022/features/icon-picker/icon-picker.component.mjs +3 -3
  98. package/esm2022/features/image-cropper/image-cropper.component.mjs +218 -0
  99. package/esm2022/features/image-cropper/services/image-cropper.service.mjs +50 -0
  100. package/esm2022/features/infinite-scroll/infinite-scroll.directive.mjs +89 -0
  101. package/esm2022/features/info-sign/info-sign.component.mjs +3 -3
  102. package/esm2022/features/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +38 -0
  103. package/esm2022/features/inline-edit/components/fields/inline-edit-text/inline-edit-text.component.mjs +29 -0
  104. package/esm2022/features/inline-edit/components/fields/inline-edit-textarea/inline-edit-textarea.component.mjs +29 -0
  105. package/esm2022/features/inline-edit/components/inline-edit-item/inline-edit-item.component.mjs +131 -0
  106. package/esm2022/features/inline-edit/fields/inline-edit-field.mjs +17 -0
  107. package/esm2022/features/inline-edit/fields/inline-edit-number-field.mjs +15 -0
  108. package/esm2022/features/inline-edit/fields/inline-edit-text-field.mjs +11 -0
  109. package/esm2022/features/inline-edit/fields/inline-edit-textarea-field.mjs +15 -0
  110. package/esm2022/features/inline-edit/inline-edit.component.mjs +27 -0
  111. package/esm2022/features/interactive-content/interactive-content.directive.mjs +140 -0
  112. package/esm2022/features/kanban/components/kanban-column/kanban-column.component.mjs +88 -0
  113. package/esm2022/features/kanban/components/kanban-item/kanban-item.component.mjs +72 -0
  114. package/esm2022/features/kanban/components/kanban-item-dragging/kanban-item-dragging.component.mjs +19 -0
  115. package/esm2022/features/kanban/directives/kanban-template.directive.mjs +22 -0
  116. package/esm2022/features/kanban/kanban.component.mjs +198 -0
  117. package/esm2022/features/kanban/services/kanban-event.service.mjs +27 -0
  118. package/esm2022/features/loading-state/loading-state.component.mjs +3 -62
  119. package/esm2022/features/mouse-events/directives/double-click.directive.mjs +34 -0
  120. package/esm2022/features/mouse-events/directives/long-press.directive.mjs +61 -0
  121. package/esm2022/features/paginator/paginator.component.mjs +8 -3
  122. package/esm2022/features/panel/panel.component.mjs +43 -11
  123. package/esm2022/features/pin-code-field/pin-code-field.component.mjs +234 -0
  124. package/esm2022/features/profile-picture-picker/profile-picture-picker.component.mjs +330 -0
  125. package/esm2022/features/rating-scale/rating-scale.component.mjs +86 -0
  126. package/esm2022/features/row-card-list/row-card/row-card.component.mjs +3 -3
  127. package/esm2022/features/scaffold/scaffold.component.mjs +4 -6
  128. package/esm2022/features/select-button/select-button.component.mjs +7 -4
  129. package/esm2022/features/speech-recognition/services/speech-recognition.service.mjs +148 -0
  130. package/esm2022/features/speech-recognition/services/text-to-speech.service.mjs +88 -0
  131. package/esm2022/features/speech-recognition/speech-recognition.component.mjs +243 -0
  132. package/esm2022/features/spotlight/components/spotlight-overlay/spotlight-overlay.component.mjs +521 -0
  133. package/esm2022/features/spotlight/directives/spotlight-step.directive.mjs +38 -0
  134. package/esm2022/features/spotlight/services/spotlight-tour.service.mjs +179 -0
  135. package/esm2022/features/spotlight/spotlight.component.mjs +160 -0
  136. package/esm2022/features/star-rating/star-rating.component.mjs +95 -0
  137. package/esm2022/features/stepper/stepper.component.mjs +86 -0
  138. package/esm2022/features/switch/switch.component.mjs +12 -8
  139. package/esm2022/features/tab/{tab-item.component.mjs → components/tab-item/tab-item.component.mjs} +1 -1
  140. package/esm2022/features/tab/tab.component.mjs +4 -4
  141. package/esm2022/features/table/components/table-cell-content.component.mjs +14 -5
  142. package/esm2022/features/table/table.component.mjs +220 -29
  143. package/esm2022/features/table/utils/table-data.util.mjs +71 -8
  144. package/esm2022/features/table/utils/table-layout.util.mjs +21 -1
  145. package/esm2022/features/tiered-menu/components/tiered-menu/tiered-menu.component.mjs +367 -0
  146. package/esm2022/features/tiered-menu/components/tiered-menu-divider/tiered-menu-divider.component.mjs +11 -0
  147. package/esm2022/features/tiered-menu/components/tiered-menu-item/tiered-menu-item.component.mjs +97 -0
  148. package/esm2022/features/tiered-menu/components/tiered-menu-nested/tiered-menu-nested.component.mjs +181 -0
  149. package/esm2022/features/tiered-menu/directives/tiered-menu.directive.mjs +246 -0
  150. package/esm2022/features/tiered-menu/services/tiered-menu.event.service.mjs +16 -0
  151. package/esm2022/features/tiered-menu/services/tiered-menu.global.service.mjs +12 -0
  152. package/esm2022/features/tiered-menu/services/tiered-menu.service.mjs +49 -0
  153. package/esm2022/features/tree/components/tree-node-item/tree-node-item.component.mjs +169 -0
  154. package/esm2022/features/tree/tree.component.mjs +211 -0
  155. package/esm2022/features/visual-sql-editor/components/visual-sql-editor-field-modal/visual-sql-editor-field-modal.component.mjs +41 -0
  156. package/esm2022/features/visual-sql-editor/components/visual-sql-editor-filter-modal/visual-sql-editor-filter-modal.component.mjs +38 -0
  157. package/esm2022/features/visual-sql-editor/components/visual-sql-editor-join-modal/visual-sql-editor-join-modal.component.mjs +29 -0
  158. package/esm2022/features/visual-sql-editor/components/visual-sql-editor-sort-modal/visual-sql-editor-sort-modal.component.mjs +29 -0
  159. package/esm2022/features/visual-sql-editor/components/visual-sql-editor-source-modal/visual-sql-editor-source-modal.component.mjs +35 -0
  160. package/esm2022/features/visual-sql-editor/services/visual-sql-editor-flow.service.mjs +106 -0
  161. package/esm2022/features/visual-sql-editor/services/visual-sql-editor-state.service.mjs +230 -0
  162. package/esm2022/features/visual-sql-editor/types/visual-sql-editor.types.mjs +2 -0
  163. package/esm2022/features/visual-sql-editor/utils/visual-sql-editor-sanitize.util.mjs +72 -0
  164. package/esm2022/features/visual-sql-editor/utils/visual-sql-editor-sql.util.mjs +281 -0
  165. package/esm2022/features/visual-sql-editor/utils/visual-sql-editor-text.util.mjs +37 -0
  166. package/esm2022/features/visual-sql-editor/utils/visual-sql-editor.constants.mjs +89 -0
  167. package/esm2022/features/visual-sql-editor/visual-sql-editor.component.mjs +172 -630
  168. package/esm2022/locales/en.json +351 -3
  169. package/esm2022/locales/es-CO.json +351 -3
  170. package/esm2022/locales/pt.json +351 -3
  171. package/esm2022/providers/features.provider.mjs +40 -4
  172. package/esm2022/public-api.mjs +56 -3
  173. package/features/accordion/accordion.component.d.ts +1 -1
  174. package/features/accordion/{accordion-item.component.d.ts → components/accordion-item/accordion-item.component.d.ts} +1 -1
  175. package/features/autocomplete/autocomplete.component.d.ts +102 -0
  176. package/features/autocomplete/components/autocomplete-chip/autocomplete-chip.component.d.ts +11 -0
  177. package/features/card-list/card/card.component.d.ts +14 -34
  178. package/features/chat/chat.component.d.ts +31 -0
  179. package/features/checkbox-list/checkbox-list.component.d.ts +26 -0
  180. package/features/combobox/combobox.component.d.ts +2 -1
  181. package/features/context-selector/context-selector.component.d.ts +37 -0
  182. package/features/gantt/components/gantt-side-table/gantt-side-table.component.d.ts +8 -0
  183. package/features/gantt/gantt-date.utils.d.ts +36 -0
  184. package/features/gantt/gantt.component.d.ts +24 -0
  185. package/features/gantt/gantt.engine.d.ts +52 -0
  186. package/features/grid-menu/grid-menu.component.d.ts +29 -0
  187. package/features/hyperlink/hyperlink.component.d.ts +2 -1
  188. package/features/image-cropper/image-cropper.component.d.ts +43 -0
  189. package/features/image-cropper/services/image-cropper.service.d.ts +13 -0
  190. package/features/infinite-scroll/infinite-scroll.directive.d.ts +25 -0
  191. package/features/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.d.ts +13 -0
  192. package/features/inline-edit/components/fields/inline-edit-text/inline-edit-text.component.d.ts +13 -0
  193. package/features/inline-edit/components/fields/inline-edit-textarea/inline-edit-textarea.component.d.ts +13 -0
  194. package/features/inline-edit/components/inline-edit-item/inline-edit-item.component.d.ts +37 -0
  195. package/features/inline-edit/fields/inline-edit-field.d.ts +12 -0
  196. package/features/inline-edit/fields/inline-edit-number-field.d.ts +9 -0
  197. package/features/inline-edit/fields/inline-edit-text-field.d.ts +7 -0
  198. package/features/inline-edit/fields/inline-edit-textarea-field.d.ts +9 -0
  199. package/features/inline-edit/inline-edit.component.d.ts +13 -0
  200. package/features/interactive-content/interactive-content.directive.d.ts +31 -0
  201. package/features/kanban/components/kanban-column/kanban-column.component.d.ts +22 -0
  202. package/features/kanban/components/kanban-item/kanban-item.component.d.ts +23 -0
  203. package/features/kanban/components/kanban-item-dragging/kanban-item-dragging.component.d.ts +8 -0
  204. package/features/kanban/directives/kanban-template.directive.d.ts +10 -0
  205. package/features/kanban/kanban.component.d.ts +32 -0
  206. package/features/kanban/services/kanban-event.service.d.ts +15 -0
  207. package/features/loading-state/loading-state.component.d.ts +0 -2
  208. package/features/mouse-events/directives/double-click.directive.d.ts +11 -0
  209. package/features/mouse-events/directives/long-press.directive.d.ts +14 -0
  210. package/features/panel/panel.component.d.ts +12 -3
  211. package/features/pin-code-field/pin-code-field.component.d.ts +44 -0
  212. package/features/profile-picture-picker/profile-picture-picker.component.d.ts +77 -0
  213. package/features/rating-scale/rating-scale.component.d.ts +24 -0
  214. package/features/select-button/select-button.component.d.ts +2 -1
  215. package/features/speech-recognition/services/speech-recognition.service.d.ts +29 -0
  216. package/features/speech-recognition/services/text-to-speech.service.d.ts +24 -0
  217. package/features/speech-recognition/speech-recognition.component.d.ts +50 -0
  218. package/features/spotlight/components/spotlight-overlay/spotlight-overlay.component.d.ts +59 -0
  219. package/features/spotlight/directives/spotlight-step.directive.d.ts +13 -0
  220. package/features/spotlight/services/spotlight-tour.service.d.ts +46 -0
  221. package/features/spotlight/spotlight.component.d.ts +59 -0
  222. package/features/star-rating/star-rating.component.d.ts +26 -0
  223. package/features/stepper/stepper.component.d.ts +23 -0
  224. package/features/switch/switch.component.d.ts +2 -1
  225. package/features/tab/tab.component.d.ts +1 -1
  226. package/features/table/components/table-cell-content.component.d.ts +4 -3
  227. package/features/table/table.component.d.ts +40 -5
  228. package/features/table/utils/table-data.util.d.ts +1 -0
  229. package/features/table/utils/table-layout.util.d.ts +1 -0
  230. package/features/tiered-menu/components/tiered-menu/tiered-menu.component.d.ts +49 -0
  231. package/features/tiered-menu/components/tiered-menu-divider/tiered-menu-divider.component.d.ts +5 -0
  232. package/features/tiered-menu/components/tiered-menu-item/tiered-menu-item.component.d.ts +19 -0
  233. package/features/tiered-menu/components/tiered-menu-nested/tiered-menu-nested.component.d.ts +26 -0
  234. package/features/tiered-menu/directives/tiered-menu.directive.d.ts +44 -0
  235. package/features/tiered-menu/services/tiered-menu.event.service.d.ts +13 -0
  236. package/features/tiered-menu/services/tiered-menu.global.service.d.ts +7 -0
  237. package/features/tiered-menu/services/tiered-menu.service.d.ts +14 -0
  238. package/features/tree/components/tree-node-item/tree-node-item.component.d.ts +37 -0
  239. package/features/tree/tree.component.d.ts +37 -0
  240. package/features/visual-sql-editor/components/visual-sql-editor-field-modal/visual-sql-editor-field-modal.component.d.ts +18 -0
  241. package/features/visual-sql-editor/components/visual-sql-editor-filter-modal/visual-sql-editor-filter-modal.component.d.ts +17 -0
  242. package/features/visual-sql-editor/components/visual-sql-editor-join-modal/visual-sql-editor-join-modal.component.d.ts +13 -0
  243. package/features/visual-sql-editor/components/visual-sql-editor-sort-modal/visual-sql-editor-sort-modal.component.d.ts +13 -0
  244. package/features/visual-sql-editor/components/visual-sql-editor-source-modal/visual-sql-editor-source-modal.component.d.ts +15 -0
  245. package/features/visual-sql-editor/services/visual-sql-editor-flow.service.d.ts +26 -0
  246. package/features/visual-sql-editor/services/visual-sql-editor-state.service.d.ts +72 -0
  247. package/features/visual-sql-editor/types/visual-sql-editor.types.d.ts +182 -0
  248. package/features/visual-sql-editor/utils/visual-sql-editor-sanitize.util.d.ts +14 -0
  249. package/features/visual-sql-editor/utils/visual-sql-editor-sql.util.d.ts +81 -0
  250. package/features/visual-sql-editor/utils/visual-sql-editor-text.util.d.ts +15 -0
  251. package/features/visual-sql-editor/utils/visual-sql-editor.constants.d.ts +36 -0
  252. package/features/visual-sql-editor/visual-sql-editor.component.d.ts +37 -199
  253. package/fesm2022/seniorsistemas-data-seniorx-core.mjs +14883 -6353
  254. package/fesm2022/seniorsistemas-data-seniorx-core.mjs.map +1 -1
  255. package/package.json +8 -8
  256. package/public-api.d.ts +72 -2
  257. package/src/locales/en.json +353 -15
  258. package/src/locales/es-CO.json +352 -14
  259. package/src/locales/pt.json +352 -14
  260. package/styles/sdc-global-variables.scss +1 -1
  261. package/styles.css +1 -1
  262. /package/features/tab/{tab-item.component.d.ts → components/tab-item/tab-item.component.d.ts} +0 -0
@@ -0,0 +1,37 @@
1
+ import { ElementRef, EventEmitter } from '@angular/core';
2
+ import type { InternalTreeNodeItem, TreeNodeEdit } from '../../../../core/types/tree.type';
3
+ import * as i0 from "@angular/core";
4
+ export declare class TreeNodeItemComponent {
5
+ private readonly cdr;
6
+ private readonly translate;
7
+ ariaLevel: number;
8
+ showCheckbox: boolean;
9
+ treeNodeItem: InternalTreeNodeItem;
10
+ treeNodeItemClicked: EventEmitter<{
11
+ item: InternalTreeNodeItem;
12
+ event: Event;
13
+ }>;
14
+ treeNodeEdit: EventEmitter<TreeNodeEdit>;
15
+ nodeExpanded: EventEmitter<InternalTreeNodeItem<unknown>>;
16
+ nodeCollapsed: EventEmitter<InternalTreeNodeItem<unknown>>;
17
+ protected input?: ElementRef<HTMLInputElement>;
18
+ protected get hasChildren(): boolean;
19
+ protected get editable(): boolean;
20
+ protected get checkboxAriaLabel(): string;
21
+ protected get expandAriaLabel(): string;
22
+ protected get collapseAriaLabel(): string;
23
+ protected get editInputAriaLabel(): string;
24
+ protected get editButtonAriaLabel(): string;
25
+ protected expandNode(): void;
26
+ protected collapseNode(): void;
27
+ protected handleCheckboxChange(event: Event, node: InternalTreeNodeItem): void;
28
+ protected onCheckboxKeydown(event: KeyboardEvent, node: InternalTreeNodeItem): void;
29
+ protected handleTreeNodeItemClick(event: Event, treeNodeItem?: InternalTreeNodeItem): void;
30
+ protected handleTreeNodeItemKeyboardActivate(event: Event): void;
31
+ protected toggleExpanded(treeNodeItem: InternalTreeNodeItem): void;
32
+ protected toggleEditing(event: Event): void;
33
+ protected cancelEdit(event: Event): void;
34
+ protected saveEdit(event: Event): void;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<TreeNodeItemComponent, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<TreeNodeItemComponent, "sdc-tree-node-item", never, { "ariaLevel": { "alias": "ariaLevel"; "required": false; }; "showCheckbox": { "alias": "showCheckbox"; "required": false; }; "treeNodeItem": { "alias": "treeNodeItem"; "required": true; }; }, { "treeNodeItemClicked": "treeNodeItemClicked"; "treeNodeEdit": "treeNodeEdit"; "nodeExpanded": "nodeExpanded"; "nodeCollapsed": "nodeCollapsed"; }, never, never, true, never>;
37
+ }
@@ -0,0 +1,37 @@
1
+ import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
+ import type { InternalTreeNodeItem, TreeNodeEdit, TreeNodeItem, TreeSelectionMode } from '../../core/types/tree.type';
3
+ import * as i0 from "@angular/core";
4
+ export declare class TreeComponent implements OnChanges {
5
+ treeData: TreeNodeItem[];
6
+ loading: boolean;
7
+ selectionMode: TreeSelectionMode;
8
+ showCheckbox: boolean;
9
+ allExpanded: boolean;
10
+ private _selected;
11
+ get selected(): TreeNodeItem[];
12
+ set selected(value: TreeNodeItem[] | TreeNodeItem | undefined);
13
+ selectedChange: EventEmitter<TreeNodeItem<unknown> | TreeNodeItem<unknown>[]>;
14
+ treeNodeItemClicked: EventEmitter<TreeNodeItem<unknown>>;
15
+ treeNodeEdit: EventEmitter<TreeNodeEdit>;
16
+ nodeExpanded: EventEmitter<TreeNodeItem<unknown>>;
17
+ nodeCollapsed: EventEmitter<TreeNodeItem<unknown>>;
18
+ ngOnChanges(changes: SimpleChanges): void;
19
+ protected onTreeNodeItemClicked({ item }: {
20
+ item: InternalTreeNodeItem;
21
+ }): void;
22
+ protected onTreeNodeEdit(payload: TreeNodeEdit): void;
23
+ protected onNodeExpanded(item: InternalTreeNodeItem): void;
24
+ protected onNodeCollapsed(item: InternalTreeNodeItem): void;
25
+ private toggleChecked;
26
+ private syncChildrenCheckedState;
27
+ private emitSelection;
28
+ private syncSelectedChanges;
29
+ private collapseAll;
30
+ private expandAll;
31
+ private normalizeTreeSelection;
32
+ private parseInternalTreeNodeItem;
33
+ private get selectedElements();
34
+ private get multiple();
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<TreeComponent, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<TreeComponent, "sdc-tree", never, { "treeData": { "alias": "treeData"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "selectionMode": { "alias": "selectionMode"; "required": false; }; "showCheckbox": { "alias": "showCheckbox"; "required": false; }; "allExpanded": { "alias": "allExpanded"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; }, { "selectedChange": "selectedChange"; "treeNodeItemClicked": "treeNodeItemClicked"; "treeNodeEdit": "treeNodeEdit"; "nodeExpanded": "nodeExpanded"; "nodeCollapsed": "nodeCollapsed"; }, never, never, true, never>;
37
+ }
@@ -0,0 +1,18 @@
1
+ import { EventEmitter } from "@angular/core";
2
+ import type { DynamicViewBuilderField, DynamicViewBuilderFieldFunction } from "../../../../core/types/dynamic-view-builder.type";
3
+ import type { FieldModalStep } from "../../types/visual-sql-editor.types";
4
+ import * as i0 from "@angular/core";
5
+ export declare class VisualSqlEditorFieldModalComponent {
6
+ visible: boolean;
7
+ step: FieldModalStep;
8
+ drafts: DynamicViewBuilderField[];
9
+ functionEditColumn: string | null;
10
+ functionDraft: DynamicViewBuilderFieldFunction;
11
+ readonly visibleChange: EventEmitter<boolean>;
12
+ readonly closed: EventEmitter<void>;
13
+ readonly stepChange: EventEmitter<FieldModalStep>;
14
+ readonly draftsChange: EventEmitter<DynamicViewBuilderField[]>;
15
+ readonly saved: EventEmitter<DynamicViewBuilderField[]>;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisualSqlEditorFieldModalComponent, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisualSqlEditorFieldModalComponent, "sdc-vse-field-modal", never, { "visible": { "alias": "visible"; "required": false; }; "step": { "alias": "step"; "required": false; }; "drafts": { "alias": "drafts"; "required": false; }; "functionEditColumn": { "alias": "functionEditColumn"; "required": false; }; "functionDraft": { "alias": "functionDraft"; "required": false; }; }, { "visibleChange": "visibleChange"; "closed": "closed"; "stepChange": "stepChange"; "draftsChange": "draftsChange"; "saved": "saved"; }, never, never, true, never>;
18
+ }
@@ -0,0 +1,17 @@
1
+ import { EventEmitter } from "@angular/core";
2
+ import type { DynamicViewBuilderFilter } from "../../../../core/types/dynamic-view-builder.type";
3
+ import type { FilterModalMode, FilterModalStep } from "../../types/visual-sql-editor.types";
4
+ import * as i0 from "@angular/core";
5
+ export declare class VisualSqlEditorFilterModalComponent {
6
+ visible: boolean;
7
+ editIndex: number | null;
8
+ step: FilterModalStep;
9
+ mode: FilterModalMode;
10
+ draft: Partial<DynamicViewBuilderFilter>;
11
+ readonly visibleChange: EventEmitter<boolean>;
12
+ readonly closed: EventEmitter<void>;
13
+ readonly stepChange: EventEmitter<FilterModalStep>;
14
+ readonly saved: EventEmitter<DynamicViewBuilderFilter>;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisualSqlEditorFilterModalComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisualSqlEditorFilterModalComponent, "sdc-vse-filter-modal", never, { "visible": { "alias": "visible"; "required": false; }; "editIndex": { "alias": "editIndex"; "required": false; }; "step": { "alias": "step"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "draft": { "alias": "draft"; "required": false; }; }, { "visibleChange": "visibleChange"; "closed": "closed"; "stepChange": "stepChange"; "saved": "saved"; }, never, never, true, never>;
17
+ }
@@ -0,0 +1,13 @@
1
+ import { EventEmitter } from "@angular/core";
2
+ import type { DynamicViewBuilderJoin } from "../../../../core/types/dynamic-view-builder.type";
3
+ import * as i0 from "@angular/core";
4
+ export declare class VisualSqlEditorJoinModalComponent {
5
+ visible: boolean;
6
+ editIndex: number | null;
7
+ draft: DynamicViewBuilderJoin;
8
+ readonly visibleChange: EventEmitter<boolean>;
9
+ readonly closed: EventEmitter<void>;
10
+ readonly saved: EventEmitter<DynamicViewBuilderJoin>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisualSqlEditorJoinModalComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisualSqlEditorJoinModalComponent, "sdc-vse-join-modal", never, { "visible": { "alias": "visible"; "required": false; }; "editIndex": { "alias": "editIndex"; "required": false; }; "draft": { "alias": "draft"; "required": false; }; }, { "visibleChange": "visibleChange"; "closed": "closed"; "saved": "saved"; }, never, never, true, never>;
13
+ }
@@ -0,0 +1,13 @@
1
+ import { EventEmitter } from "@angular/core";
2
+ import type { DynamicViewBuilderSort } from "../../../../core/types/dynamic-view-builder.type";
3
+ import * as i0 from "@angular/core";
4
+ export declare class VisualSqlEditorSortModalComponent {
5
+ visible: boolean;
6
+ editIndex: number | null;
7
+ draft: DynamicViewBuilderSort;
8
+ readonly visibleChange: EventEmitter<boolean>;
9
+ readonly closed: EventEmitter<void>;
10
+ readonly saved: EventEmitter<DynamicViewBuilderSort>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisualSqlEditorSortModalComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisualSqlEditorSortModalComponent, "sdc-vse-sort-modal", never, { "visible": { "alias": "visible"; "required": false; }; "editIndex": { "alias": "editIndex"; "required": false; }; "draft": { "alias": "draft"; "required": false; }; }, { "visibleChange": "visibleChange"; "closed": "closed"; "saved": "saved"; }, never, never, true, never>;
13
+ }
@@ -0,0 +1,15 @@
1
+ import { EventEmitter } from "@angular/core";
2
+ import type { SourceModalDraft, SourceModalStep } from "../../types/visual-sql-editor.types";
3
+ import * as i0 from "@angular/core";
4
+ export declare class VisualSqlEditorSourceModalComponent {
5
+ visible: boolean;
6
+ step: SourceModalStep;
7
+ drafts: SourceModalDraft[];
8
+ readonly visibleChange: EventEmitter<boolean>;
9
+ readonly closed: EventEmitter<void>;
10
+ readonly stepChange: EventEmitter<SourceModalStep>;
11
+ readonly draftsChange: EventEmitter<SourceModalDraft[]>;
12
+ readonly saved: EventEmitter<SourceModalDraft[]>;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisualSqlEditorSourceModalComponent, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisualSqlEditorSourceModalComponent, "sdc-vse-source-modal", never, { "visible": { "alias": "visible"; "required": false; }; "step": { "alias": "step"; "required": false; }; "drafts": { "alias": "drafts"; "required": false; }; }, { "visibleChange": "visibleChange"; "closed": "closed"; "stepChange": "stepChange"; "draftsChange": "draftsChange"; "saved": "saved"; }, never, never, true, never>;
15
+ }
@@ -0,0 +1,26 @@
1
+ import { OnDestroy, ElementRef, QueryList, ChangeDetectorRef } from "@angular/core";
2
+ import type { BuilderFlowArrow, BuilderSectionId } from "../types/visual-sql-editor.types";
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Context object provided by the host component so the flow service can read
6
+ * ViewChild / ViewChildren references without importing the component itself.
7
+ */
8
+ export interface FlowArrowContext {
9
+ sectionsContainer: ElementRef<HTMLElement> | undefined;
10
+ builderSections: QueryList<ElementRef<HTMLElement>> | undefined;
11
+ sectionOrder: readonly BuilderSectionId[];
12
+ changeDetectorRef: ChangeDetectorRef;
13
+ /** Callback invoked by the service when computed state changes. */
14
+ onFlowArrowsChange(arrows: BuilderFlowArrow[], measuredHeight: string): void;
15
+ }
16
+ export declare class VisualSqlEditorFlowService implements OnDestroy {
17
+ private refreshFlowArrowsFrame;
18
+ private refreshFlowArrowsTimeout;
19
+ ngOnDestroy(): void;
20
+ scheduleFlowArrowRefresh(context: FlowArrowContext): void;
21
+ refreshFlowArrows(context: FlowArrowContext): void;
22
+ refreshMeasuredPreviewHeight(context: FlowArrowContext): string;
23
+ buildFlowArrows(context: FlowArrowContext): BuilderFlowArrow[];
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisualSqlEditorFlowService, never>;
25
+ static ɵprov: i0.ɵɵInjectableDeclaration<VisualSqlEditorFlowService>;
26
+ }
@@ -0,0 +1,72 @@
1
+ import type { DynamicViewBuilderField, DynamicViewBuilderFilter, DynamicViewBuilderJoin, DynamicViewBuilderSort } from "../../../core/types/dynamic-view-builder.type";
2
+ import type { SourceModalStep, FieldModalStep, FilterModalStep, FilterModalMode, SourceModalDraft } from "../types/visual-sql-editor.types";
3
+ import * as i0 from "@angular/core";
4
+ export declare class VisualSqlEditorStateService {
5
+ sourceModalVisible: boolean;
6
+ sourceModalStep: SourceModalStep;
7
+ sourceModalDrafts: SourceModalDraft[];
8
+ openSourceModal(existingSources: Array<{
9
+ table: string;
10
+ alias?: string | null;
11
+ }>, resolveDefaultAlias: (table: string) => string, step?: SourceModalStep): void;
12
+ closeSourceModal(): void;
13
+ goToSourceModalStep(step: SourceModalStep): void;
14
+ joinModalVisible: boolean;
15
+ joinEditIndex: number | null;
16
+ joinDraft: {
17
+ sourceColumn: string;
18
+ targetColumn: string;
19
+ operator: string;
20
+ };
21
+ openJoinModal(current: DynamicViewBuilderJoin | null, index: number | null): void;
22
+ closeJoinModal(): void;
23
+ sortModalVisible: boolean;
24
+ sortEditIndex: number | null;
25
+ sortDraft: {
26
+ column: string;
27
+ functionName: string;
28
+ direction: string;
29
+ };
30
+ openSortModal(current: DynamicViewBuilderSort | null, index: number | null): void;
31
+ closeSortModal(): void;
32
+ fieldModalVisible: boolean;
33
+ fieldModalStep: FieldModalStep;
34
+ fieldModalDrafts: DynamicViewBuilderField[];
35
+ fieldFunctionEditColumn: string | null;
36
+ fieldFunctionDraft: {
37
+ column: string;
38
+ functionName: string;
39
+ functionAlias: string;
40
+ };
41
+ openFieldModal(drafts: DynamicViewBuilderField[], openAtStep: FieldModalStep): void;
42
+ closeFieldModal(): void;
43
+ goToFieldModalStep(step: FieldModalStep): void;
44
+ filterModalVisible: boolean;
45
+ filterEditIndex: number | null;
46
+ filterModalStep: FilterModalStep;
47
+ filterModalMode: FilterModalMode;
48
+ filterDraft: {
49
+ mode: FilterModalMode;
50
+ column: string;
51
+ operator: string;
52
+ connector: import("../../../core/types/dynamic-view-builder.type").DynamicViewBuilderFilterConnector;
53
+ optional: boolean;
54
+ valueType: import("../../../core/types/dynamic-view-builder.type").DynamicViewBuilderFilterValueType;
55
+ value: string;
56
+ valuesText: string;
57
+ betweenStart: string;
58
+ betweenEnd: string;
59
+ parameterName: string;
60
+ domainExpression: string;
61
+ };
62
+ openFilterModal(current: DynamicViewBuilderFilter | null, index: number | null): void;
63
+ private resolveFilterMode;
64
+ private resolveFilterModalStep;
65
+ private buildFilterDraft;
66
+ private buildEmptyFilterDraft;
67
+ private buildFilterDraftFromCurrent;
68
+ closeFilterModal(): void;
69
+ goToFilterModalStep(step: FilterModalStep, canProceed: boolean, canReview: boolean): void;
70
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisualSqlEditorStateService, never>;
71
+ static ɵprov: i0.ɵɵInjectableDeclaration<VisualSqlEditorStateService>;
72
+ }
@@ -0,0 +1,182 @@
1
+ import type { PicklistRecord } from "../../../core/types/picklist.type";
2
+ import type { BadgeColor } from "../../../core/types/badge.type";
3
+ export type SelectionModalMode = "tables" | "fields" | "groupBy";
4
+ export type BuilderLayoutMode = "stacked" | "split";
5
+ export type SourceModalStep = "select" | "configure";
6
+ export type FieldModalStep = "select" | "configure";
7
+ export type FilterModalStep = "select" | "configure" | "review";
8
+ export type BuilderSectionId = "tables" | "joins" | "groupBy" | "fields" | "sorting" | "filters";
9
+ export type FilterModalMode = "condition" | "domain";
10
+ export interface SelectionRow {
11
+ id: string;
12
+ name: string;
13
+ meta: string;
14
+ selected: boolean;
15
+ disabled: boolean;
16
+ dbLabel?: string;
17
+ tableLabel?: string;
18
+ pathType?: "table" | "column";
19
+ prefix?: string;
20
+ note?: string;
21
+ }
22
+ export interface SourceViewItem {
23
+ id: string;
24
+ dbLabel: string;
25
+ tableLabel: string;
26
+ alias: string;
27
+ hasCustomAlias: boolean;
28
+ }
29
+ export interface SourceModalDraft {
30
+ table: string;
31
+ alias: string;
32
+ }
33
+ export interface SourceConfiguredItem {
34
+ id: string;
35
+ table: string;
36
+ dbLabel: string;
37
+ tableLabel: string;
38
+ alias: string;
39
+ }
40
+ export interface JoinViewItem {
41
+ id: string;
42
+ sourceTable: string;
43
+ sourceField: string;
44
+ operator: string;
45
+ targetTable: string;
46
+ targetField: string;
47
+ }
48
+ export interface SimpleViewItem {
49
+ id: string;
50
+ dbLabel: string;
51
+ tableLabel: string;
52
+ fieldLabel: string;
53
+ }
54
+ export interface FieldViewItem {
55
+ id: string;
56
+ sourceIndex: number;
57
+ column: string;
58
+ orderLabel: string;
59
+ dbLabel: string;
60
+ tableLabel: string;
61
+ fieldLabel: string;
62
+ alias: string;
63
+ width: string;
64
+ functionName: string;
65
+ functionLabel: string;
66
+ functionAlias: string;
67
+ hasCustomConfig: boolean;
68
+ order: number;
69
+ }
70
+ export interface SortViewItem {
71
+ id: string;
72
+ dbLabel: string;
73
+ tableLabel: string;
74
+ fieldLabel: string;
75
+ functionName: string;
76
+ functionLabel: string;
77
+ direction: string;
78
+ }
79
+ export interface SortSelectableItem {
80
+ id: string;
81
+ column: string;
82
+ functionName: string;
83
+ tableLabel: string;
84
+ fieldLabel: string;
85
+ meta: string;
86
+ }
87
+ export interface FilterViewItem {
88
+ id: string;
89
+ dbLabel: string;
90
+ tableLabel: string;
91
+ fieldLabel: string;
92
+ operatorLabel: string;
93
+ subtitle: string;
94
+ optional: boolean;
95
+ isDomain: boolean;
96
+ }
97
+ export interface FilterReviewItem {
98
+ id: string;
99
+ label: string;
100
+ value: string;
101
+ emphasize?: "path" | "code" | "default";
102
+ }
103
+ export interface ColumnDisplayParts {
104
+ dbLabel: string;
105
+ tableLabel: string;
106
+ fieldLabel: string;
107
+ }
108
+ export interface TableDisplayParts {
109
+ dbLabel: string;
110
+ tableLabel: string;
111
+ }
112
+ export interface FieldModalConfiguredItem {
113
+ id: string;
114
+ column: string;
115
+ tableLabel: string;
116
+ fieldLabel: string;
117
+ alias: string;
118
+ width: string;
119
+ functionName: string;
120
+ functionLabel: string;
121
+ functionAlias: string;
122
+ }
123
+ export interface BuilderFlowArrow {
124
+ id: string;
125
+ direction: "right" | "down";
126
+ left: number;
127
+ top: number;
128
+ }
129
+ export interface ColumnPicklistItem extends PicklistRecord {
130
+ [key: string]: unknown;
131
+ id: number;
132
+ title: string;
133
+ titlePrefix: string;
134
+ titleSuffix: string;
135
+ titlePrefixColor: string;
136
+ titleSuffixColor: string;
137
+ badge: string;
138
+ badgeColor: BadgeColor;
139
+ column: string;
140
+ }
141
+ export interface SortPicklistItem extends PicklistRecord {
142
+ [key: string]: unknown;
143
+ id: number;
144
+ title: string;
145
+ titlePrefix: string;
146
+ titleSuffix: string;
147
+ titlePrefixColor: string;
148
+ titleSuffixColor: string;
149
+ badge: string;
150
+ badgeColor: BadgeColor;
151
+ selectionId: string;
152
+ column: string;
153
+ }
154
+ export interface TablePicklistItem extends PicklistRecord {
155
+ [key: string]: unknown;
156
+ id: number;
157
+ title: string;
158
+ titlePrefix: string;
159
+ titleSuffix: string;
160
+ titlePrefixColor: string;
161
+ titleSuffixColor: string;
162
+ badge: string;
163
+ badgeColor: BadgeColor;
164
+ table: string;
165
+ }
166
+ export interface PreviewColumnLike {
167
+ field: string;
168
+ header?: string;
169
+ type?: string;
170
+ }
171
+ export type DynamicModalDimension = {
172
+ width: string;
173
+ height: string;
174
+ };
175
+ export type DynamicModalDimensionsMap = {
176
+ source: DynamicModalDimension;
177
+ selection: DynamicModalDimension;
178
+ join: DynamicModalDimension;
179
+ sort: DynamicModalDimension;
180
+ filter: DynamicModalDimension;
181
+ field: DynamicModalDimension;
182
+ };
@@ -0,0 +1,14 @@
1
+ import type { DynamicViewBuilderColumnOption } from "../../../core/types/dynamic-view-builder.type";
2
+ /**
3
+ * Returns true when the given data type string is a numeric type.
4
+ */
5
+ export declare function isNumericType(value?: string): boolean;
6
+ /**
7
+ * Returns true when the given data type string is a date/time type.
8
+ */
9
+ export declare function isDateType(value?: string): boolean;
10
+ /**
11
+ * Returns the list of valid filter operator keys for a given column option,
12
+ * based on the column's data type.
13
+ */
14
+ export declare function filterOperatorsForColumn(column: DynamicViewBuilderColumnOption): string[];
@@ -0,0 +1,81 @@
1
+ import type { DynamicViewBuilderColumnOption, DynamicViewBuilderField, DynamicViewBuilderFilter, DynamicViewBuilderFunction, DynamicViewBuilderJoin, DynamicViewBuilderSort, DynamicViewBuilderSource, DynamicViewBuilderTableOption } from "../../../core/types/dynamic-view-builder.type";
2
+ /**
3
+ * Context object carrying the resolved config data needed by SQL generation functions.
4
+ * All functions in this util are pure with respect to this context.
5
+ */
6
+ export interface SqlContext {
7
+ /** Available column options from config.availableData.columns */
8
+ columns: DynamicViewBuilderColumnOption[];
9
+ /** Available table options from config.availableData.tables */
10
+ tables: DynamicViewBuilderTableOption[];
11
+ /** Selected sources from config.generated.sources */
12
+ sources: DynamicViewBuilderSource[];
13
+ }
14
+ /**
15
+ * Wraps a SQL string value in single quotes, escaping internal single quotes.
16
+ */
17
+ export declare function quoteSqlValue(value: string): string;
18
+ /**
19
+ * Decorates a string value with % wildcards according to the LIKE operator variant.
20
+ */
21
+ export declare function decorateLikeValue(operator: string, value: string): string;
22
+ /**
23
+ * Resolves the SQL fragment for a source table including its alias.
24
+ */
25
+ export declare function resolveSourceSql(ctx: SqlContext, source: DynamicViewBuilderTableOption | {
26
+ table: string;
27
+ alias: string;
28
+ }): string;
29
+ /**
30
+ * Resolves the SQL fragment for a column reference using the source alias.
31
+ */
32
+ export declare function resolveColumnSql(ctx: SqlContext, value: string): string;
33
+ /**
34
+ * Resolves the SQL fragment for an aggregate function call.
35
+ */
36
+ export declare function resolveFunctionSql(ctx: SqlContext, item: DynamicViewBuilderFunction): string;
37
+ /**
38
+ * Resolves the SQL fragment for a field (column or function expression) in the SELECT list.
39
+ */
40
+ export declare function resolveFieldSql(ctx: SqlContext, field: string | DynamicViewBuilderField): string;
41
+ /**
42
+ * Resolves the SQL fragment for a sort item (column or function expression).
43
+ */
44
+ export declare function resolveSortSql(ctx: SqlContext, item: DynamicViewBuilderSort): string;
45
+ /**
46
+ * Resolves the SQL comparison operator string for a filter operator key.
47
+ */
48
+ export declare function resolveFilterOperatorSql(value: string): string;
49
+ /**
50
+ * Resolves the SQL value fragment for a filter, applying quoting and LIKE decoration.
51
+ */
52
+ export declare function resolveFilterValueSql(ctx: SqlContext, columnValue: string, operator: string, value: unknown): string;
53
+ /**
54
+ * Resolves the full SQL fragment for a single filter condition.
55
+ */
56
+ export declare function resolveFilterSql(// NOSONAR - complexity: extraction would risk behavior change
57
+ ctx: SqlContext, filter: DynamicViewBuilderFilter): string;
58
+ /**
59
+ * Resolves the full SQL fragment for a JOIN clause.
60
+ */
61
+ export declare function resolveJoinSql(ctx: SqlContext, item: DynamicViewBuilderJoin): string;
62
+ /**
63
+ * Builds the WHERE clause lines for a list of filters.
64
+ * Returns an empty array when no filters are provided.
65
+ */
66
+ export declare function buildWhereSql(ctx: SqlContext, filters: DynamicViewBuilderFilter[]): string[];
67
+ /**
68
+ * Builds the GROUP BY clause lines for a list of column identifiers.
69
+ * Returns an empty array when groupBy is empty.
70
+ */
71
+ export declare function buildGroupBySql(ctx: SqlContext, groupBy: string[]): string[];
72
+ /**
73
+ * Builds the ORDER BY clause lines for a list of sort items.
74
+ * Returns an empty array when sorting is empty.
75
+ */
76
+ export declare function buildOrderBySql(ctx: SqlContext, sorting: DynamicViewBuilderSort[]): string[];
77
+ /**
78
+ * Builds the complete generated SQL string from the provided config data.
79
+ * Returns an empty string when sources is empty.
80
+ */
81
+ export declare function buildGeneratedSql(sources: DynamicViewBuilderSource[], normalizedFields: DynamicViewBuilderField[], joins: DynamicViewBuilderJoin[], filters: DynamicViewBuilderFilter[], groupBy: string[], sorting: DynamicViewBuilderSort[], ctx: SqlContext): string;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Normalizes a string for search comparison by removing diacritics,
3
+ * converting to lowercase and trimming whitespace.
4
+ */
5
+ export declare function normalize(value: string): string;
6
+ /**
7
+ * Converts a string to a slug by normalizing and replacing non-alphanumeric
8
+ * characters with underscores, then trimming leading/trailing underscores.
9
+ */
10
+ export declare function slugify(value: string): string;
11
+ /**
12
+ * Deduplicates an array of items by a key resolved from each item.
13
+ * Preserves the last occurrence of each key.
14
+ */
15
+ export declare function deduplicateByKey<T>(items: T[], keyResolver: (item: T) => string): T[];
@@ -0,0 +1,36 @@
1
+ import type { BadgeColor } from "../../../core/types/badge.type";
2
+ import type { DynamicViewBuilderFilterConnector, DynamicViewBuilderFilterValueType } from "../../../core/types/dynamic-view-builder.type";
3
+ import type { DynamicModalDimensionsMap } from "../types/visual-sql-editor.types";
4
+ export declare const EMPTY_VALUE = "";
5
+ export declare const DEFAULT_JOIN_OPERATOR = "EQUALS";
6
+ export declare const DEFAULT_FUNCTION_NAME = "count";
7
+ export declare const DEFAULT_SORT_DIRECTION = "ASC";
8
+ export declare const EMPTY_SORT_FUNCTION = "__base__";
9
+ export declare const FLOW_ARROW_INSET = 3;
10
+ export declare const FLOW_ARROW_MIN_GAP = 12;
11
+ export declare const FLOW_ARROWS_REFRESH_DELAY_MS = 120;
12
+ export declare const DEFAULT_FILTER_OPERATOR = "EQUAL";
13
+ export declare const DEFAULT_FILTER_CONNECTOR: DynamicViewBuilderFilterConnector;
14
+ export declare const DEFAULT_FILTER_VALUE_TYPE: DynamicViewBuilderFilterValueType;
15
+ export declare const FILTER_MODE_DOMAIN = "domain";
16
+ export declare const OVERLAY_APPEND_TARGET = "body";
17
+ export declare const MODAL_Z_INDEX_OFFSET = 20;
18
+ export declare const MODAL_OVERLAY_Z_INDEX: number;
19
+ export declare const FIELD_PICKLIST_ROWS = 8;
20
+ export declare const FILTER_PICKLIST_ROWS = 9;
21
+ export declare const VISUAL_SQL_TABLE_COLOR = "#425466";
22
+ export declare const VISUAL_SQL_FIELD_COLOR = "#1f8a52";
23
+ export declare const PICKLIST_DATA_TYPE_BADGE_COLOR: BadgeColor;
24
+ export declare const PICKLIST_FUNCTION_BADGE_COLOR: BadgeColor;
25
+ export declare const FALLBACK_SELECT_TABLES = "Selecionar tabelas";
26
+ export declare const FALLBACK_EMPTY_SELECTION = "Nenhum selecionado";
27
+ export declare const PREVIEW_ROWS_PER_PAGE_OPTIONS: number[];
28
+ export declare const ALIAS_MAX_LENGTH = 12;
29
+ export declare const MIN_PARTS_FOR_DB = 3;
30
+ export declare const DB_PARTS_OFFSET = -2;
31
+ export declare const MIN_PARTS_FOR_TABLE = 2;
32
+ export declare const JOIN_OPERATOR_LABELS: Record<string, {
33
+ key: string;
34
+ fallback: string;
35
+ }>;
36
+ export declare const DYNAMIC_MODAL_DIMENSIONS: DynamicModalDimensionsMap;