ezux 1.1.13 → 1.1.18

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 (513) hide show
  1. package/README.md +58 -15
  2. package/dist/DeleteConfirmationModal-CukNDgtX.cjs +1 -0
  3. package/dist/DeleteConfirmationModal-p8XGDGIw.js +38 -0
  4. package/dist/EzContextMenu-BCUoEQp5.cjs +1 -0
  5. package/dist/EzContextMenu-srLxujt8.js +287 -0
  6. package/dist/EzErrorBoundary-C7a6VisX.js +74 -0
  7. package/dist/EzErrorBoundary-d_2g-_EK.cjs +1 -0
  8. package/dist/EzEventModal-C079wLjP.js +725 -0
  9. package/dist/EzEventModal-CAA9cAM0.cjs +1 -0
  10. package/dist/EzFlow-C74NbZA9.js +2545 -0
  11. package/dist/EzFlow-CQFeY7DL.cjs +5 -0
  12. package/dist/EzGroupingPanel-BVaAJaVU.js +107 -0
  13. package/dist/EzGroupingPanel-BwWDWEuW.cjs +1 -0
  14. package/dist/EzKanban-BlJWybKe.js +1575 -0
  15. package/dist/EzKanban-DdKODRRv.cjs +2 -0
  16. package/dist/EzLayout-BGnqFtvO.cjs +1 -0
  17. package/dist/EzLayout-CiaPLniV.js +7005 -0
  18. package/dist/EzProvider-AlmsYIDk.js +982 -0
  19. package/dist/EzProvider-L2qQMq-v.cjs +1 -0
  20. package/dist/EzScheduler-C1Jtvvju.js +2700 -0
  21. package/dist/EzScheduler-CkqTngI6.cjs +1 -0
  22. package/dist/EzSchedulerQuickAdd-BIC8xbSn.js +124 -0
  23. package/dist/EzSchedulerQuickAdd-BeNfGdWs.cjs +1 -0
  24. package/dist/EzSchedulerToolbar-BJwTpgas.cjs +1 -0
  25. package/dist/EzSchedulerToolbar-Ba4gbvUg.js +305 -0
  26. package/dist/EzSignature-7UHO5lSP.js +386 -0
  27. package/dist/EzSignature-Df7UZ-IS.cjs +1 -0
  28. package/dist/EzTable-CEXvJR1t.cjs +3 -0
  29. package/dist/EzTable-D2p1IWHc.js +4290 -0
  30. package/dist/EzTableEditDialog-BXnnYSSy.cjs +1 -0
  31. package/dist/EzTableEditDialog-Ccd5XoHm.js +84 -0
  32. package/dist/EzTableFooter-CtexeDAC.cjs +1 -0
  33. package/dist/EzTableFooter-DrLoWelo.js +35 -0
  34. package/dist/EzTableToolbar-BH5z9fSJ.js +160 -0
  35. package/dist/EzTableToolbar-DwuumvWP.cjs +1 -0
  36. package/dist/EzTreeView-D1G0Aomc.js +818 -0
  37. package/dist/EzTreeView-KMGlU4ax.cjs +1 -0
  38. package/dist/HighlightText-BViuwe03.cjs +1 -0
  39. package/dist/HighlightText-DNA2R2uf.js +56 -0
  40. package/dist/KanbanBoard-B7_Z5sh1.js +1697 -0
  41. package/dist/KanbanBoard-CyitudI1.cjs +1 -0
  42. package/dist/Modal-BmX1C448.cjs +1 -0
  43. package/dist/Modal-CrzpKyjK.js +74 -0
  44. package/dist/NotificationPanel-BzpDc10Q.js +54 -0
  45. package/dist/NotificationPanel-CFME00wq.cjs +1 -0
  46. package/dist/TooltipWrapper-BSAmUx9H.js +44 -0
  47. package/dist/TooltipWrapper-DfbFAZ1U.cjs +1 -0
  48. package/dist/advanced.cjs +10 -0
  49. package/dist/advanced.d.ts +44 -0
  50. package/dist/advanced.es.js +400 -0
  51. package/dist/avatar-BSdRHETK.cjs +1 -0
  52. package/dist/avatar-BvCUJ-_r.js +27 -0
  53. package/dist/button-BBMwzUtG.cjs +1 -0
  54. package/dist/button-CYyNwV8S.js +44 -0
  55. package/dist/calendar-DEHX32Cp.cjs +1 -0
  56. package/dist/calendar-DOIPGsyI.js +112 -0
  57. package/dist/card-CPlRZxbq.cjs +1 -0
  58. package/dist/card-ZUNxcdIM.js +60 -0
  59. package/dist/checkbox-BrCh_Iid.cjs +1 -0
  60. package/dist/checkbox-DRkQuB4W.js +21 -0
  61. package/dist/components/EzFlow/EzConnectionLine.d.ts +5 -0
  62. package/dist/components/EzFlow/EzFlow.examples.d.ts +5 -0
  63. package/dist/components/EzFlow/EzFlow.types.d.ts +260 -0
  64. package/dist/components/EzFlow/EzFlowBackground.d.ts +5 -0
  65. package/dist/components/EzFlow/EzFlowCanvas.d.ts +3 -0
  66. package/dist/components/EzFlow/EzFlowControls.d.ts +5 -0
  67. package/dist/components/EzFlow/EzFlowEdge.d.ts +5 -0
  68. package/dist/components/EzFlow/EzFlowHeader.d.ts +6 -0
  69. package/dist/components/EzFlow/EzFlowToolbox.d.ts +6 -0
  70. package/dist/components/EzFlow/EzWorkflow.d.ts +5 -0
  71. package/dist/components/EzFlow/EzWorkflowPerformance.d.ts +3 -0
  72. package/dist/components/EzFlow/EzWorkflowServiceAdapters.d.ts +24 -0
  73. package/dist/components/EzFlow/EzWorkflowValidation.d.ts +95 -0
  74. package/dist/components/EzFlow/index.d.ts +13 -0
  75. package/dist/components/EzFlow/nodes/ActionNode.d.ts +3 -0
  76. package/dist/components/EzFlow/nodes/ApprovalNode.d.ts +3 -0
  77. package/dist/components/EzFlow/nodes/DecisionNode.d.ts +3 -0
  78. package/dist/components/EzFlow/nodes/DelayNode.d.ts +3 -0
  79. package/dist/components/EzFlow/nodes/EndNode.d.ts +3 -0
  80. package/dist/components/EzFlow/nodes/GroupNode.d.ts +3 -0
  81. package/dist/components/EzFlow/nodes/LoopNode.d.ts +3 -0
  82. package/dist/components/EzFlow/nodes/RequestNode.d.ts +3 -0
  83. package/dist/components/EzFlow/nodes/StartNode.d.ts +3 -0
  84. package/dist/components/EzFlow/nodes/index.d.ts +9 -0
  85. package/dist/components/EzKanban/EzKanban.types.d.ts +808 -0
  86. package/dist/components/EzKanban/components/CardEditorModal.d.ts +23 -0
  87. package/dist/components/EzKanban/components/EzKanbanErrorFallback.d.ts +1 -0
  88. package/dist/components/EzKanban/components/FilterPopover.d.ts +10 -0
  89. package/dist/components/EzKanban/components/KanbanBoard.d.ts +59 -0
  90. package/dist/components/EzKanban/components/KanbanCard.d.ts +46 -0
  91. package/dist/components/EzKanban/components/KanbanColumn.d.ts +55 -0
  92. package/dist/components/EzKanban/components/KanbanSwimlane.d.ts +45 -0
  93. package/dist/components/EzKanban/components/KanbanToolbar.d.ts +41 -0
  94. package/dist/components/EzKanban/exports.d.ts +4 -0
  95. package/dist/components/EzKanban/hooks/useKanbanCards.d.ts +36 -0
  96. package/dist/components/EzKanban/hooks/useKanbanColumns.d.ts +27 -0
  97. package/dist/components/EzKanban/hooks/useKanbanDragDrop.d.ts +31 -0
  98. package/dist/components/EzKanban/hooks/useKanbanFilters.d.ts +23 -0
  99. package/dist/components/EzKanban/hooks/useKanbanState.d.ts +79 -0
  100. package/dist/components/EzKanban/hooks/useKanbanSwimlanes.d.ts +27 -0
  101. package/dist/components/EzKanban/hooks/useKanbanVirtualization.d.ts +16 -0
  102. package/dist/components/EzKanban/index.d.ts +51 -0
  103. package/dist/components/EzKanban/services/KanbanService.d.ts +31 -0
  104. package/dist/components/EzKanban/state/kanban.store.d.ts +33 -0
  105. package/dist/components/EzKanban/useEzKanban.d.ts +87 -0
  106. package/dist/components/EzKanban/views/KanbanTimelineView.d.ts +15 -0
  107. package/dist/components/EzLayout/Authentication/AuthSlider.d.ts +13 -0
  108. package/dist/components/EzLayout/Authentication/InputPassword.d.ts +7 -0
  109. package/dist/components/EzLayout/Authentication/SignInForm.d.ts +21 -0
  110. package/dist/components/EzLayout/Authentication/SignUpForm.d.ts +20 -0
  111. package/dist/components/EzLayout/EzHeader.d.ts +48 -0
  112. package/dist/components/EzLayout/EzLanguageSwitcher.d.ts +4 -0
  113. package/dist/components/EzLayout/EzLayout.types.d.ts +261 -0
  114. package/dist/components/EzLayout/EzOrganizationSwitcher.d.ts +14 -0
  115. package/dist/components/EzLayout/EzSidebar.d.ts +24 -0
  116. package/dist/components/EzLayout/EzThemeColorChanger.d.ts +9 -0
  117. package/dist/components/EzLayout/EzThemeSwitcher.d.ts +8 -0
  118. package/dist/components/EzLayout/EzUserProfile.d.ts +27 -0
  119. package/dist/components/EzLayout/components/EzSidebarFooter.d.ts +8 -0
  120. package/dist/components/EzLayout/components/EzSidebarNav.d.ts +10 -0
  121. package/dist/components/EzLayout/components/EzSidebarNavItem.d.ts +11 -0
  122. package/dist/components/EzLayout/components/MainContent.d.ts +13 -0
  123. package/dist/components/EzLayout/hooks/useLayoutImperative.d.ts +17 -0
  124. package/dist/components/EzLayout/hooks/useLayoutState.d.ts +25 -0
  125. package/dist/components/EzLayout/index.d.ts +23 -0
  126. package/dist/components/EzLayout/useEzLayout.d.ts +34 -0
  127. package/dist/components/EzScheduler/EzScheduler.types.d.ts +1252 -0
  128. package/dist/components/EzScheduler/EzSchedulerToolbar.d.ts +117 -0
  129. package/dist/components/EzScheduler/components/EzEventModal.d.ts +23 -0
  130. package/dist/components/EzScheduler/components/EzOverlapAlert.d.ts +12 -0
  131. package/dist/components/EzScheduler/components/EzQuickInfoPopup.d.ts +22 -0
  132. package/dist/components/EzScheduler/components/EzResourceSidebar.d.ts +33 -0
  133. package/dist/components/EzScheduler/components/EzSchedulerContent.d.ts +111 -0
  134. package/dist/components/EzScheduler/components/EzSchedulerQuickAdd.d.ts +17 -0
  135. package/dist/components/EzScheduler/components/RecurrenceEditor.d.ts +7 -0
  136. package/dist/components/EzScheduler/components/SchedulerLoadingSpinner.d.ts +2 -0
  137. package/dist/components/EzScheduler/components/dnd/DraggableEvent.d.ts +24 -0
  138. package/dist/components/EzScheduler/components/dnd/DroppableSlot.d.ts +19 -0
  139. package/dist/components/EzScheduler/hooks/useRecurrence.d.ts +2 -0
  140. package/dist/components/EzScheduler/hooks/useSchedulerEventHandlers.d.ts +15 -0
  141. package/dist/components/EzScheduler/hooks/useSchedulerEvents.d.ts +27 -0
  142. package/dist/components/EzScheduler/hooks/useSchedulerImperative.d.ts +19 -0
  143. package/dist/components/EzScheduler/hooks/useSchedulerNavigation.d.ts +9 -0
  144. package/dist/components/EzScheduler/hooks/useSchedulerResources.d.ts +10 -0
  145. package/dist/components/EzScheduler/hooks/useSchedulerState.d.ts +14 -0
  146. package/dist/components/EzScheduler/hooks/useSchedulerVirtualization.d.ts +9 -0
  147. package/dist/components/EzScheduler/index.d.ts +43 -0
  148. package/dist/components/EzScheduler/models/EventSettings.d.ts +11 -0
  149. package/dist/components/EzScheduler/models/View.d.ts +49 -0
  150. package/dist/components/EzScheduler/models/index.d.ts +2 -0
  151. package/dist/components/EzScheduler/services/AttendeeService.d.ts +15 -0
  152. package/dist/components/EzScheduler/services/AuditService.d.ts +15 -0
  153. package/dist/components/EzScheduler/services/CollisionDetectionService.d.ts +19 -0
  154. package/dist/components/EzScheduler/services/DragAndDropService.d.ts +16 -0
  155. package/dist/components/EzScheduler/services/HistoryService.d.ts +31 -0
  156. package/dist/components/EzScheduler/services/ICalendarImportService.d.ts +16 -0
  157. package/dist/components/EzScheduler/services/PrintService.d.ts +7 -0
  158. package/dist/components/EzScheduler/services/RecurrenceEngine.d.ts +7 -0
  159. package/dist/components/EzScheduler/services/ReminderService.d.ts +17 -0
  160. package/dist/components/EzScheduler/services/SchedulerService.d.ts +71 -0
  161. package/dist/components/EzScheduler/services/SearchService.d.ts +11 -0
  162. package/dist/components/EzScheduler/services/SecurityService.d.ts +25 -0
  163. package/dist/components/EzScheduler/services/TimezoneService.d.ts +20 -0
  164. package/dist/components/EzScheduler/services/VirtualScrollingService.d.ts +34 -0
  165. package/dist/components/EzScheduler/state/scheduler.store.d.ts +27 -0
  166. package/dist/components/EzScheduler/templates/CellTemplate.d.ts +42 -0
  167. package/dist/components/EzScheduler/templates/EditorTemplate.d.ts +32 -0
  168. package/dist/components/EzScheduler/templates/HeaderTemplate.d.ts +36 -0
  169. package/dist/components/EzScheduler/useEzScheduler.d.ts +104 -0
  170. package/dist/components/EzScheduler/utils/createDragConstraint.d.ts +7 -0
  171. package/dist/components/EzScheduler/utils/getWeekNumber.d.ts +8 -0
  172. package/dist/components/EzScheduler/utils/sanitizeHtml.d.ts +18 -0
  173. package/dist/components/EzScheduler/views/AgendaView.d.ts +28 -0
  174. package/dist/components/EzScheduler/views/DayWeekView.d.ts +177 -0
  175. package/dist/components/EzScheduler/views/MonthView.d.ts +60 -0
  176. package/dist/components/EzScheduler/views/TimelineView.d.ts +116 -0
  177. package/dist/components/EzSignature/EzSignature.d.ts +42 -0
  178. package/dist/components/EzSignature/EzSignature.types.d.ts +132 -0
  179. package/dist/components/EzSignature/index.d.ts +2 -0
  180. package/dist/components/EzTable/EzColumnMenu.d.ts +7 -0
  181. package/dist/components/EzTable/EzDateFilterTree.d.ts +7 -0
  182. package/dist/components/EzTable/EzExcelFilter.d.ts +8 -0
  183. package/dist/components/EzTable/EzFilterBuilder.d.ts +12 -0
  184. package/dist/components/EzTable/EzGroupingPanel.d.ts +9 -0
  185. package/dist/components/EzTable/EzHeaderContextMenu.d.ts +8 -0
  186. package/dist/components/EzTable/EzPagination.d.ts +19 -0
  187. package/dist/components/EzTable/EzTable.types.d.ts +1 -0
  188. package/dist/components/EzTable/EzTableEditDialog.d.ts +15 -0
  189. package/dist/components/EzTable/EzTableFooter.d.ts +10 -0
  190. package/dist/components/EzTable/EzTableOverlays.d.ts +11 -0
  191. package/dist/components/EzTable/EzTableStatusBar.d.ts +10 -0
  192. package/dist/components/EzTable/EzTableToolbar.d.ts +60 -0
  193. package/dist/components/EzTable/SmartCell.d.ts +7 -0
  194. package/dist/components/EzTable/components/AdvancedColumnFilter.d.ts +16 -0
  195. package/dist/components/EzTable/components/BooleanFilterSection.d.ts +7 -0
  196. package/dist/components/EzTable/components/EzDraggableHeader.d.ts +10 -0
  197. package/dist/components/EzTable/components/EzHeaderDragPreview.d.ts +7 -0
  198. package/dist/components/EzTable/components/EzTableBodySection.d.ts +72 -0
  199. package/dist/components/EzTable/components/EzTableCell.d.ts +46 -0
  200. package/dist/components/EzTable/components/EzTableHeaderSection.d.ts +23 -0
  201. package/dist/components/EzTable/components/EzTablePaginationSection.d.ts +31 -0
  202. package/dist/components/EzTable/components/EzTableRow.d.ts +58 -0
  203. package/dist/components/EzTable/components/FilterActionButtons.d.ts +16 -0
  204. package/dist/components/EzTable/components/FilterRuleSelect.d.ts +26 -0
  205. package/dist/components/EzTable/components/SelectAllCheckbox.d.ts +21 -0
  206. package/dist/components/EzTable/components/SelectFilterSection.d.ts +18 -0
  207. package/dist/components/EzTable/components/VirtualizedFilterList.d.ts +21 -0
  208. package/dist/components/EzTable/constants/filterOptions.d.ts +47 -0
  209. package/dist/components/EzTable/context/EzTableContext.d.ts +10 -0
  210. package/dist/components/EzTable/context/TableConfigContext.d.ts +13 -0
  211. package/dist/components/EzTable/context/TableStore.d.ts +17 -0
  212. package/dist/components/EzTable/filterUtils.d.ts +5 -0
  213. package/dist/components/EzTable/hooks/useAutoFit.d.ts +4 -0
  214. package/dist/components/EzTable/hooks/useCellEventHandlers.d.ts +16 -0
  215. package/dist/components/EzTable/hooks/useColumnSizeVars.d.ts +6 -0
  216. package/dist/components/EzTable/hooks/useContainerResize.d.ts +11 -0
  217. package/dist/components/EzTable/hooks/useDialogStateInitialization.d.ts +8 -0
  218. package/dist/components/EzTable/hooks/useFilterSelection.d.ts +12 -0
  219. package/dist/components/EzTable/hooks/useTableFiltering.d.ts +23 -0
  220. package/dist/components/EzTable/hooks/useTableHistory.d.ts +87 -0
  221. package/dist/components/EzTable/hooks/useTableImperative.d.ts +42 -0
  222. package/dist/components/EzTable/hooks/useTableSelection.d.ts +32 -0
  223. package/dist/components/EzTable/hooks/useTableState.d.ts +33 -0
  224. package/dist/components/EzTable/hooks/useTableVirtualization.d.ts +35 -0
  225. package/dist/components/EzTable/index.d.ts +54 -0
  226. package/dist/components/EzTable/renderers/index.d.ts +6 -0
  227. package/dist/components/EzTable/services/TableService.d.ts +29 -0
  228. package/dist/components/EzTable/types/EzTableColumn.types.d.ts +146 -0
  229. package/dist/components/EzTable/types/EzTableEdit.types.d.ts +58 -0
  230. package/dist/components/EzTable/types/EzTableFilter.types.d.ts +50 -0
  231. package/dist/components/EzTable/types/EzTableProps.d.ts +750 -0
  232. package/dist/components/EzTable/types/index.d.ts +4 -0
  233. package/dist/components/EzTable/useEzTable.d.ts +17 -0
  234. package/dist/components/EzTable/utils/SizingUtils.d.ts +11 -0
  235. package/dist/components/EzTable/utils/TextMeasurer.d.ts +1 -0
  236. package/dist/components/EzTable/utils/TruncatedTooltip.d.ts +7 -0
  237. package/dist/components/EzTable/utils/columnTypeDetector.d.ts +5 -0
  238. package/dist/components/EzTable/utils/filterTypeGuards.d.ts +3 -0
  239. package/dist/components/EzTable/utils/index.d.ts +1 -0
  240. package/dist/components/EzTreeView/EzTreeView.types.d.ts +364 -0
  241. package/dist/components/EzTreeView/EzTreeViewItem.d.ts +89 -0
  242. package/dist/components/EzTreeView/EzVirtualTree.d.ts +84 -0
  243. package/dist/components/EzTreeView/components/EzTreeViewLoadingSpinner.d.ts +2 -0
  244. package/dist/components/EzTreeView/hooks/useTreeDragDrop.d.ts +31 -0
  245. package/dist/components/EzTreeView/hooks/useTreeExpansion.d.ts +21 -0
  246. package/dist/components/EzTreeView/hooks/useTreeImperative.d.ts +28 -0
  247. package/dist/components/EzTreeView/hooks/useTreeSelection.d.ts +31 -0
  248. package/dist/components/EzTreeView/hooks/useTreeState.d.ts +21 -0
  249. package/dist/components/EzTreeView/hooks/useTreeVirtualization.d.ts +18 -0
  250. package/dist/components/EzTreeView/index.d.ts +40 -0
  251. package/dist/components/EzTreeView/services/TreeService.d.ts +11 -0
  252. package/dist/components/EzTreeView/useEzTreeView.d.ts +50 -0
  253. package/dist/components/EzTreeView/utils/treeUtils.d.ts +17 -0
  254. package/dist/components/shared/components/EzErrorBoundary.d.ts +18 -0
  255. package/dist/components/shared/components/EzLayoutErrorFallback.d.ts +2 -0
  256. package/dist/components/shared/components/EzLoadingSpinner.d.ts +8 -0
  257. package/dist/components/shared/components/EzSchedulerErrorFallback.d.ts +2 -0
  258. package/dist/components/shared/components/EzSortableList.d.ts +12 -0
  259. package/dist/components/shared/components/EzTableErrorFallback.d.ts +2 -0
  260. package/dist/components/shared/components/EzTreeViewErrorFallback.d.ts +2 -0
  261. package/dist/components/ui/avatar.d.ts +10 -0
  262. package/dist/components/ui/badge.d.ts +9 -0
  263. package/dist/components/ui/breadcrumb.d.ts +19 -0
  264. package/dist/components/ui/button.d.ts +13 -0
  265. package/dist/components/ui/calendar.d.ts +15 -0
  266. package/dist/components/ui/card.d.ts +10 -0
  267. package/dist/components/ui/checkbox.d.ts +7 -0
  268. package/dist/components/ui/combobox.d.ts +19 -0
  269. package/dist/components/ui/command.d.ts +78 -0
  270. package/dist/components/ui/context-menu.d.ts +27 -0
  271. package/dist/components/ui/date-time-picker.d.ts +14 -0
  272. package/dist/components/ui/dropdown-menu.d.ts +31 -0
  273. package/dist/components/ui/index.d.ts +27 -0
  274. package/dist/components/ui/input.d.ts +5 -0
  275. package/dist/components/ui/label.d.ts +9 -0
  276. package/dist/components/ui/modal.d.ts +9 -0
  277. package/dist/components/ui/password-input.d.ts +5 -0
  278. package/dist/components/ui/popover.d.ts +10 -0
  279. package/dist/components/ui/progress.d.ts +7 -0
  280. package/dist/components/ui/radio-group.d.ts +5 -0
  281. package/dist/components/ui/resizable.d.ts +8 -0
  282. package/dist/components/ui/scroll-area.d.ts +5 -0
  283. package/dist/components/ui/select.d.ts +26 -0
  284. package/dist/components/ui/skeleton.d.ts +2 -0
  285. package/dist/components/ui/switch.d.ts +6 -0
  286. package/dist/components/ui/table.d.ts +10 -0
  287. package/dist/components/ui/tabs.d.ts +22 -0
  288. package/dist/components/ui/textarea.d.ts +5 -0
  289. package/dist/components/ui/tooltip.d.ts +10 -0
  290. package/dist/date-time-picker-Bs-7XzHD.cjs +1 -0
  291. package/dist/date-time-picker-fUzf4TnU.js +127 -0
  292. package/dist/dropdown-menu-BRP0tyR_.cjs +1 -0
  293. package/dist/dropdown-menu-B_7_K13o.js +78 -0
  294. package/dist/ezux.css +2 -1
  295. package/dist/flow.cjs +1 -0
  296. package/dist/flow.d.ts +2 -0
  297. package/dist/flow.es.js +2 -0
  298. package/dist/index.cjs +3 -12
  299. package/dist/index.d.ts +66 -6404
  300. package/dist/index.es.js +229 -1041
  301. package/dist/input-CYlvlbF7.cjs +1 -0
  302. package/dist/input-Cj3sQK3M.js +14 -0
  303. package/dist/kanban.cjs +1 -1
  304. package/dist/kanban.d.ts +2 -1343
  305. package/dist/kanban.es.js +4 -17
  306. package/dist/label-BGgvoZWD.cjs +1 -0
  307. package/dist/label-DWEV--5W.js +16 -0
  308. package/dist/layout.cjs +1 -1
  309. package/dist/layout.d.ts +2 -690
  310. package/dist/layout.es.js +2 -20
  311. package/dist/lib/perfect-freehand.d.ts +221 -0
  312. package/dist/lib/utils.d.ts +2 -0
  313. package/dist/mock-services.cjs +1 -0
  314. package/dist/mock-services.d.ts +8 -0
  315. package/dist/mock-services.es.js +161 -0
  316. package/dist/popover-D1akYj0W.js +17 -0
  317. package/dist/popover-wZKNvYM5.cjs +1 -0
  318. package/dist/scheduler.cjs +1 -1
  319. package/dist/scheduler.d.ts +2 -1430
  320. package/dist/scheduler.es.js +2 -11
  321. package/dist/scroll-area-BJs87d45.js +35 -0
  322. package/dist/scroll-area-DSkE2KB_.cjs +1 -0
  323. package/dist/select-D4tFaSai.js +43 -0
  324. package/dist/select-sVieKbLu.cjs +1 -0
  325. package/dist/shared/components/AnimatedText.d.ts +44 -0
  326. package/dist/shared/components/BaseCell.d.ts +14 -0
  327. package/dist/shared/components/BooleanRenderer.d.ts +34 -0
  328. package/dist/shared/components/ChartRenderer.d.ts +19 -0
  329. package/dist/shared/components/DeleteConfirmationModal.d.ts +11 -0
  330. package/dist/shared/components/EzContextMenu.d.ts +12 -0
  331. package/dist/shared/components/EzNotificationDropdown.d.ts +2 -0
  332. package/dist/shared/components/HighlightText.d.ts +4 -0
  333. package/dist/shared/components/Modal.d.ts +13 -0
  334. package/dist/shared/components/NotificationPanel.d.ts +2 -0
  335. package/dist/shared/components/PrimitiveRenderer.d.ts +39 -0
  336. package/dist/shared/components/SearchableSelect.d.ts +13 -0
  337. package/dist/shared/components/SelectRenderer.d.ts +33 -0
  338. package/dist/shared/components/StatusBadge.d.ts +21 -0
  339. package/dist/shared/components/TooltipWrapper.d.ts +12 -0
  340. package/dist/shared/components/index.d.ts +9 -0
  341. package/dist/shared/contexts/EzProvider.d.ts +56 -0
  342. package/dist/shared/hooks/index.d.ts +56 -0
  343. package/dist/shared/hooks/useBaseComponent.d.ts +59 -0
  344. package/dist/shared/hooks/useComponentImperativeAPI.d.ts +11 -0
  345. package/dist/shared/hooks/useComponentState.d.ts +39 -0
  346. package/dist/shared/hooks/useCurrentTime.d.ts +6 -0
  347. package/dist/shared/hooks/useDataChangeEvents.d.ts +53 -0
  348. package/dist/shared/hooks/useDebounce.d.ts +10 -0
  349. package/dist/shared/hooks/useDeleteConfirmation.d.ts +9 -0
  350. package/dist/shared/hooks/useDialogState.d.ts +21 -0
  351. package/dist/shared/hooks/useDndHandlers.d.ts +19 -0
  352. package/dist/shared/hooks/useEditing.d.ts +107 -0
  353. package/dist/shared/hooks/useEventHandlers.d.ts +61 -0
  354. package/dist/shared/hooks/useEzTheme.d.ts +22 -0
  355. package/dist/shared/hooks/useFieldValidation.d.ts +24 -0
  356. package/dist/shared/hooks/useHistory.d.ts +13 -0
  357. package/dist/shared/hooks/useI18n.d.ts +8 -0
  358. package/dist/shared/hooks/useImperativeAPI.d.ts +8 -0
  359. package/dist/shared/hooks/useInitCoreServices.d.ts +5 -0
  360. package/dist/shared/hooks/useKeyboardNavigation.d.ts +36 -0
  361. package/dist/shared/hooks/useKeyboardShortcuts.d.ts +14 -0
  362. package/dist/shared/hooks/useLifecycleEvents.d.ts +22 -0
  363. package/dist/shared/hooks/useLoadingState.d.ts +17 -0
  364. package/dist/shared/hooks/useMediaQuery.d.ts +6 -0
  365. package/dist/shared/hooks/useNotificationService.d.ts +8 -0
  366. package/dist/shared/hooks/usePerformanceMonitor.d.ts +22 -0
  367. package/dist/shared/hooks/useRowSelectionEvents.d.ts +44 -0
  368. package/dist/shared/hooks/useSelection.d.ts +73 -0
  369. package/dist/shared/hooks/useService.d.ts +12 -0
  370. package/dist/shared/hooks/useServiceState.d.ts +1 -0
  371. package/dist/shared/hooks/useStateChangeEvents.d.ts +61 -0
  372. package/dist/shared/hooks/useTheme.d.ts +13 -0
  373. package/dist/shared/hooks/useVirtualization.d.ts +85 -0
  374. package/dist/shared/services/BaseService.d.ts +57 -0
  375. package/dist/shared/services/ContextMenuService.d.ts +58 -0
  376. package/dist/shared/services/ExportService.d.ts +35 -0
  377. package/dist/shared/services/FocusManagerService.d.ts +33 -0
  378. package/dist/shared/services/HierarchyService.d.ts +43 -0
  379. package/dist/shared/services/I18nService.d.ts +84 -0
  380. package/dist/shared/services/LayoutService.d.ts +80 -0
  381. package/dist/shared/services/NotificationService.d.ts +44 -0
  382. package/dist/shared/services/PersistenceService.d.ts +69 -0
  383. package/dist/shared/services/ServiceRegistry.d.ts +52 -0
  384. package/dist/shared/services/ThemeService.d.ts +49 -0
  385. package/dist/shared/services/VirtualizationService.d.ts +51 -0
  386. package/dist/shared/state/store.d.ts +10 -0
  387. package/dist/shared/themes.d.ts +25 -0
  388. package/dist/shared/types/BaseProps.d.ts +17 -0
  389. package/dist/shared/types/common.d.ts +373 -0
  390. package/dist/shared/types/index.d.ts +2 -0
  391. package/dist/shared/utils/canvasUtils.d.ts +16 -0
  392. package/dist/shared/utils/commonUtils.d.ts +28 -0
  393. package/dist/shared/utils/csvUtils.d.ts +7 -0
  394. package/dist/shared/utils/dateUtils.d.ts +5 -0
  395. package/dist/shared/utils/dndUtils.d.ts +16 -0
  396. package/dist/shared/utils/formatUtils.d.ts +20 -0
  397. package/dist/shared/utils/imperativeApiUtils.d.ts +36 -0
  398. package/dist/shared/utils/index.d.ts +11 -0
  399. package/dist/shared/utils/renderUtils.d.ts +6 -0
  400. package/dist/shared/utils/serviceUtils.d.ts +10 -0
  401. package/dist/shared/utils/styleUtils.d.ts +121 -0
  402. package/dist/shared/utils/validationUtils.d.ts +16 -0
  403. package/dist/signature.cjs +1 -1
  404. package/dist/signature.d.ts +2 -410
  405. package/dist/signature.es.js +2 -4
  406. package/dist/table.cjs +1 -1
  407. package/dist/table.d.ts +2 -1059
  408. package/dist/table.es.js +2 -17
  409. package/dist/theme-vars.css +143 -135
  410. package/dist/tooltip-B1wC9m05.js +16 -0
  411. package/dist/tooltip-Qmzrg5u5.cjs +1 -0
  412. package/dist/treeview.cjs +1 -1
  413. package/dist/treeview.d.ts +2 -656
  414. package/dist/treeview.es.js +2 -954
  415. package/dist/useComponentState-DiSFLYju.js +57 -0
  416. package/dist/useComponentState-Wcz6pjd6.cjs +1 -0
  417. package/dist/useImperativeAPI-Dbx2hMTb.js +7 -0
  418. package/dist/useImperativeAPI-VrgLwXEO.cjs +1 -0
  419. package/dist/useInitCoreServices-CuBrviDM.js +40 -0
  420. package/dist/useInitCoreServices-DlALVDNx.cjs +1 -0
  421. package/dist/useService-CnCBGG3G.js +10 -0
  422. package/dist/useService-CyF782jv.cjs +1 -0
  423. package/dist/useServiceState-CkrJZm1D.js +21 -0
  424. package/dist/useServiceState-PyYQWxHi.cjs +1 -0
  425. package/package.json +76 -56
  426. package/dist/EzContextMenu-B6HBUjWv.cjs +0 -5
  427. package/dist/EzContextMenu-BSA_B6Pr.js +0 -3500
  428. package/dist/EzErrorBoundary-CEdz_hDo.cjs +0 -41
  429. package/dist/EzErrorBoundary-D4NBadES.js +0 -3727
  430. package/dist/EzEventModal-BUMp_BFi.js +0 -689
  431. package/dist/EzEventModal-xzHfzi0O.cjs +0 -1
  432. package/dist/EzGroupingPanel-BUsIYDRi.js +0 -143
  433. package/dist/EzGroupingPanel-D0HdSomF.cjs +0 -1
  434. package/dist/EzSchedulerQuickAdd-C653LTGh.js +0 -118
  435. package/dist/EzSchedulerQuickAdd-UnOWCpJd.cjs +0 -1
  436. package/dist/EzSchedulerToolbar-C-5OdRY6.cjs +0 -1
  437. package/dist/EzSchedulerToolbar-CO5jjDQg.js +0 -240
  438. package/dist/EzSignature-BaNesxwC.cjs +0 -1
  439. package/dist/EzSignature-D4EYwo9W.js +0 -419
  440. package/dist/EzTableEditDialog-Cd948V1C.js +0 -63
  441. package/dist/EzTableEditDialog-NiOubaMT.cjs +0 -1
  442. package/dist/EzTableFooter-CWjfGCjL.cjs +0 -1
  443. package/dist/EzTableFooter-DveD12RC.js +0 -54
  444. package/dist/EzTableToolbar-Bz8UWv6j.js +0 -246
  445. package/dist/EzTableToolbar-DHE7Bb1R.cjs +0 -1
  446. package/dist/HighlightText-8D6KEyBw.js +0 -68
  447. package/dist/HighlightText-LtZmzCle.cjs +0 -1
  448. package/dist/NotificationPanel-D2Y-_ahk.js +0 -68
  449. package/dist/NotificationPanel-zLxrtTGf.cjs +0 -1
  450. package/dist/TooltipWrapper-BrRTi5EJ.js +0 -2021
  451. package/dist/TooltipWrapper-DWts4bAI.cjs +0 -1
  452. package/dist/avatar-BeK0E4mn.js +0 -41
  453. package/dist/avatar-DZAaTK2f.cjs +0 -1
  454. package/dist/bell-DAz8P0BR.js +0 -14
  455. package/dist/bell-DOX2y38e.cjs +0 -1
  456. package/dist/calendar-BMZ8ddOf.cjs +0 -1
  457. package/dist/calendar-Dy3rVMW2.js +0 -90
  458. package/dist/checkbox-B0lGHUyy.cjs +0 -1
  459. package/dist/checkbox-boJRxICT.js +0 -46
  460. package/dist/chevron-down-C3s8jU6B.js +0 -5
  461. package/dist/chevron-down-DZVL7VHW.cjs +0 -1
  462. package/dist/chevron-left-BFr8XZyF.js +0 -5
  463. package/dist/chevron-left-HWhRo6IH.cjs +0 -1
  464. package/dist/circle-alert-77QqFR-z.cjs +0 -1
  465. package/dist/circle-alert-B2AMDd8N.js +0 -9
  466. package/dist/circle-x-Cv7bfIC_.js +0 -9
  467. package/dist/circle-x-DwVXxhXr.cjs +0 -1
  468. package/dist/date-time-picker-DTxHdPgQ.cjs +0 -1
  469. package/dist/date-time-picker-Dj2eftJI.js +0 -1636
  470. package/dist/download-0ZhO2XaW.cjs +0 -1
  471. package/dist/download-panVHmk6.js +0 -9
  472. package/dist/ellipsis-CuqNthAj.js +0 -9
  473. package/dist/ellipsis-CzlqJf-i.cjs +0 -1
  474. package/dist/grip-vertical-CSyDKBul.js +0 -12
  475. package/dist/grip-vertical-DZNBW1Dn.cjs +0 -1
  476. package/dist/index-B3ipEEhH.cjs +0 -2
  477. package/dist/index-BPPb7bcs.js +0 -3220
  478. package/dist/index-BQKw_Vho.js +0 -9604
  479. package/dist/index-C5STgBSy.js +0 -5203
  480. package/dist/index-C6NfgycP.js +0 -4644
  481. package/dist/index-D4f2ZdrG.cjs +0 -2
  482. package/dist/index-DUY1SqMo.cjs +0 -1
  483. package/dist/index-c1Zg--dt.cjs +0 -7
  484. package/dist/input-BgM_la4k.cjs +0 -1
  485. package/dist/input-jYQ5VKNR.js +0 -21
  486. package/dist/isBefore-C3Y_wbk3.js +0 -15
  487. package/dist/isBefore-Cp1ttk6q.cjs +0 -1
  488. package/dist/label-ClOW9UCt.js +0 -55
  489. package/dist/label-Dx6oDB-X.cjs +0 -1
  490. package/dist/layers-BA4i1fYX.js +0 -27
  491. package/dist/layers-xSPd-hz3.cjs +0 -1
  492. package/dist/popover-BJq1CKmi.cjs +0 -1
  493. package/dist/popover-Cmlb7w3R.js +0 -341
  494. package/dist/scroll-area-9fwpVNxT.js +0 -573
  495. package/dist/scroll-area-CwwZSSA4.cjs +0 -1
  496. package/dist/select-GxA46anr.cjs +0 -1
  497. package/dist/select-mDCun_IR.js +0 -35
  498. package/dist/settings-CvyjK75A.js +0 -31
  499. package/dist/settings-DKPknrt8.cjs +0 -1
  500. package/dist/sortable.esm-CsRPuXyD.cjs +0 -1
  501. package/dist/sortable.esm-CzMCDPet.js +0 -477
  502. package/dist/tooltip-B41iztKT.cjs +0 -1
  503. package/dist/tooltip-BCtrEe0z.js +0 -490
  504. package/dist/useComponentState-C87xXa5d.js +0 -64
  505. package/dist/useComponentState-DDgGbBXv.cjs +0 -1
  506. package/dist/useImperativeAPI-DXmCQvPL.js +0 -7
  507. package/dist/useImperativeAPI-DbZ3owSV.cjs +0 -1
  508. package/dist/useInitCoreServices-CwXv2p4S.cjs +0 -1
  509. package/dist/useInitCoreServices-D1WaWlaI.js +0 -3929
  510. package/dist/useService-8OoezWr8.cjs +0 -1
  511. package/dist/useService-BUi3uAqE.js +0 -10
  512. package/dist/useServiceState-BjpCjUn2.cjs +0 -1
  513. package/dist/useServiceState-VE-viK8b.js +0 -24
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Sort/Filter/Page event callbacks shared across components.
3
+ */
4
+ export interface StateChangeCallbacks {
5
+ onSort?: (args: {
6
+ columns: {
7
+ field: string;
8
+ direction: 'asc' | 'desc';
9
+ }[];
10
+ }) => void;
11
+ onPageChange?: (args: {
12
+ currentPage: number;
13
+ pageSize: number;
14
+ }) => void;
15
+ onFilter?: (args: {
16
+ columns: {
17
+ field: string;
18
+ operator: string;
19
+ value: any;
20
+ }[];
21
+ }) => void;
22
+ onSearch?: (term: string) => void;
23
+ }
24
+ /**
25
+ * Sort state from TanStack
26
+ */
27
+ export interface SortingState {
28
+ id: string;
29
+ desc: boolean;
30
+ }
31
+ /**
32
+ * Pagination state from TanStack
33
+ */
34
+ export interface PaginationState {
35
+ pageIndex: number;
36
+ pageSize: number;
37
+ }
38
+ /**
39
+ * Filter state from TanStack
40
+ */
41
+ export interface ColumnFilterState {
42
+ id: string;
43
+ value: any;
44
+ }
45
+ /**
46
+ * Shared hook for state change events (sort, page, filter).
47
+ * Creates wrappers that emit aliased events alongside native TanStack callbacks.
48
+ * Used by EzTable, EzScheduler, EzTreeView.
49
+ *
50
+ * @example
51
+ * const { wrapSortingChange, wrapPaginationChange } = useStateChangeEvents(props);
52
+ *
53
+ * // Use in table config
54
+ * onSortingChange: wrapSortingChange(setSorting)
55
+ */
56
+ export declare const useStateChangeEvents: (callbacks: StateChangeCallbacks) => {
57
+ wrapSortingChange: <T extends (SortingState[] | ((old: SortingState[]) => SortingState[]))>(setter: (updater: T) => void, nativeCallback?: (state: SortingState[]) => void) => (updater: T) => void;
58
+ wrapPaginationChange: (setter: (updater: PaginationState | ((old: PaginationState) => PaginationState)) => void, nativeCallback?: (state: PaginationState) => void) => (updater: PaginationState | ((old: PaginationState) => PaginationState)) => void;
59
+ emitSort: (sorting: SortingState[]) => void;
60
+ emitPageChange: (pagination: PaginationState) => void;
61
+ };
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Hook for accessing and managing theme state
3
+ * Integrates with the global UI store for theme management
4
+ */
5
+ export declare const useTheme: () => {
6
+ theme: "light" | "dark" | "system";
7
+ rtl: boolean;
8
+ setTheme: (newTheme: "light" | "dark" | "system") => void;
9
+ toggleTheme: () => void;
10
+ setRTL: (newRtl: boolean) => void;
11
+ isDark: boolean;
12
+ isLight: boolean;
13
+ };
@@ -0,0 +1,85 @@
1
+ import { Virtualizer, Range } from '@tanstack/react-virtual';
2
+ /**
3
+ * Configuration for the useVirtualization hook.
4
+ * @group Properties
5
+ */
6
+ export interface VirtualizationConfig {
7
+ /** Total number of rows in the dataset. @group Data */
8
+ rowCount: number;
9
+ /** Fixed height or dynamic accessor for row height. @group Appearance */
10
+ rowHeight?: number | ((index: number) => number);
11
+ /** Number of rows to render outside the visible area. @group Performance */
12
+ overscanCount?: number;
13
+ /** Whether row virtualization is enabled. @default true @group Properties */
14
+ enableRowVirtualization?: boolean;
15
+ /** Unique ID for service registration. @group Properties */
16
+ id?: string;
17
+ /** Total number of columns (for 2D virtualization). @group Data */
18
+ columnCount?: number;
19
+ /** Fixed width or dynamic accessor for column width. @group Appearance */
20
+ columnWidth?: number | ((index: number) => number);
21
+ /** Whether column virtualization is enabled. @group Properties */
22
+ enableColumnVirtualization?: boolean;
23
+ /** Margin to add to the scroll container's size. @group Appearance */
24
+ scrollMargin?: number;
25
+ /** Padding at the start of the scrollable area. @group Appearance */
26
+ scrollPaddingStart?: number;
27
+ /** Padding at the end of the scrollable area. @group Appearance */
28
+ scrollPaddingEnd?: number;
29
+ /** Reduces overscan during active scrolling for performance. @group Performance */
30
+ progressiveRendering?: boolean;
31
+ /** Distance in rows to trigger pre-fetching. @group Performance */
32
+ prefetchDistance?: number;
33
+ /** Automatically adjusts sizes based on content. @group Performance */
34
+ adaptiveSizing?: boolean;
35
+ /** Text direction (ltr or rtl). @group Appearance */
36
+ languageDirection?: 'ltr' | 'rtl';
37
+ /** Enables debug logging. @group Properties */
38
+ debug?: boolean;
39
+ /** Custom logic to determine which items to render. @group Performance */
40
+ customRangeExtractor?: (range: Range) => number[];
41
+ /** Callback triggered when scroll offset changes. @group Events */
42
+ onScroll?: (offset: number) => void;
43
+ /** Callback triggered when scrolling begins. @group Events */
44
+ onScrollStart?: () => void;
45
+ /** Callback triggered when scrolling stops. @group Events */
46
+ onScrollStop?: () => void;
47
+ }
48
+ /**
49
+ * Result object for the useVirtualization hook.
50
+ * @group Methods
51
+ */
52
+ export interface VirtualizationResult {
53
+ /** Ref to attach to the scroll container. @group Properties */
54
+ parentRef: React.RefObject<HTMLDivElement | null>;
55
+ /** The TanStack virtualizer instance for rows. @group Properties */
56
+ rowVirtualizer: Virtualizer<HTMLDivElement, Element>;
57
+ /** The TanStack virtualizer instance for columns (if enabled). @group Properties */
58
+ columnVirtualizer?: Virtualizer<HTMLDivElement, Element>;
59
+ /** Scrolls to a specific index (alias for scrollToRow). @group Methods */
60
+ scrollToIndex: (index: number, options?: {
61
+ align?: 'start' | 'center' | 'end' | 'auto';
62
+ }) => void;
63
+ /** Scrolls to a specific row index. @group Methods */
64
+ scrollToRow: (index: number, options?: {
65
+ align?: 'start' | 'center' | 'end' | 'auto';
66
+ }) => void;
67
+ /** Scrolls to a specific column index. @group Methods */
68
+ scrollToColumn?: (index: number, options?: {
69
+ align?: 'start' | 'center' | 'end' | 'auto';
70
+ }) => void;
71
+ /** Returns the list of items to currently render. @group Methods */
72
+ getVirtualItems: () => any[];
73
+ /** Current vertical scroll offset. @group State */
74
+ scrollOffset: number;
75
+ }
76
+ /**
77
+ * Shared virtualization hook for table, tree, and scheduler components.
78
+ *
79
+ * Provides standardized row and column virtualization using TanStack Virtual.
80
+ * Includes optimized progressive rendering, service integration, and pre-fetching support.
81
+ *
82
+ * @param config Virtualization configuration.
83
+ * @group Hooks
84
+ */
85
+ export declare const useVirtualization: (config: VirtualizationConfig) => VirtualizationResult;
@@ -0,0 +1,57 @@
1
+ import { IService } from './ServiceRegistry';
2
+ import { Store } from '@tanstack/store';
3
+ /**
4
+ * Abstract base class for all reactive services in EzUX.
5
+ *
6
+ * Provides built-in reactive state management with debouncing,
7
+ * automatic subscription handling, and a standardized cleanup lifecycle.
8
+ *
9
+ * @template TState The shape of the service's internal state.
10
+ * @group Services
11
+ */
12
+ export declare abstract class BaseService<TState> implements IService {
13
+ abstract name: string;
14
+ store: Store<TState>;
15
+ protected cleanupTasks: (() => void)[];
16
+ protected debounceMs: number;
17
+ private debounceTimer;
18
+ constructor(initialState: TState);
19
+ /**
20
+ * Allows accessing the current state directly via getter
21
+ * to maintain backward compatibility.
22
+ */
23
+ protected get state(): TState;
24
+ /** Returns the current active state of the service. @group Methods */
25
+ getState(): TState;
26
+ /**
27
+ * Registers a task to be executed during service cleanup.
28
+ * Useful for clearing timers, removing event listeners, or closing connections.
29
+ * @group Methods
30
+ */
31
+ protected registerCleanup(task: () => void): void;
32
+ /**
33
+ * Subscribes to service state changes.
34
+ * @param listener Callback triggered on state updates.
35
+ * @returns Unsubscribe function.
36
+ * @group Methods
37
+ */
38
+ subscribe(listener: (state: TState) => void): () => void;
39
+ /**
40
+ * Updates the service state.
41
+ * Supports both partial objects and functional updaters.
42
+ * @group Methods
43
+ */
44
+ protected setState(updater: Partial<TState> | ((prev: TState) => Partial<TState>)): void;
45
+ /**
46
+ * Sets a debounce time for notifications to prevent rapid re-renders in components.
47
+ * @param ms Delay in milliseconds. Set to 0 to disable (immediate).
48
+ * @group Methods
49
+ */
50
+ setDebounce(ms: number): void;
51
+ /**
52
+ * Performs final cleanup for the service.
53
+ * Triggers all registered cleanup tasks and clears all subscribers.
54
+ * @group Methods
55
+ */
56
+ cleanup(): void;
57
+ }
@@ -0,0 +1,58 @@
1
+ import { IService } from './ServiceRegistry';
2
+ /**
3
+ * Represents an individual item in a context menu.
4
+ * @group Services
5
+ */
6
+ export interface MenuItem {
7
+ /** Unique identifier for the menu item. @group Data */
8
+ id: string;
9
+ /** Text label to display. @group Data */
10
+ label: string;
11
+ /** Internal action identifier triggered on click. @group Data */
12
+ action: string;
13
+ /** Optional icon element. @group Appearance */
14
+ icon?: React.ReactNode;
15
+ /** Keyboard shortcut hint (e.g., 'Ctrl+C'). @group Appearance */
16
+ shortcut?: string;
17
+ /** Whether the item is non-interactive. @group Properties */
18
+ disabled?: boolean;
19
+ /** Whether to render a visual separator below this item. @group Appearance */
20
+ isSeparator?: boolean;
21
+ /** Custom CSS class for the item. @group Appearance */
22
+ className?: string;
23
+ /** Custom click handler. @group Events */
24
+ onClick?: (data: any) => void;
25
+ }
26
+ /**
27
+ * Functional provider that generates menu items for a specific data context.
28
+ * @group Services
29
+ */
30
+ export type ContextMenuProvider<T = any> = (data: T) => MenuItem[];
31
+ /**
32
+ * Service for managing dynamic, context-aware menus across the application.
33
+ *
34
+ * Supports registration of menu providers by context ID and retrieval
35
+ * of localized, state-dependent menu items for specific data targets.
36
+ *
37
+ * @group Services
38
+ */
39
+ export declare class ContextMenuService implements IService {
40
+ name: string;
41
+ private providers;
42
+ /**
43
+ * Registers a menu provider for a specific context.
44
+ * @param contextId Unique ID for the context (e.g., 'table-row').
45
+ * @param provider function that returns menu items based on the target data.
46
+ * @returns Unsubscribe function to remove the provider.
47
+ * @group Methods
48
+ */
49
+ register<T>(contextId: string, provider: ContextMenuProvider<T>): () => boolean;
50
+ /**
51
+ * Retrieves the list of menu items for a specific context and data target.
52
+ * @param contextId The ID of the context to lookup.
53
+ * @param data The data object the menu is opening for.
54
+ * @group Methods
55
+ */
56
+ getItems(contextId: string, data: any): MenuItem[];
57
+ cleanup(): void;
58
+ }
@@ -0,0 +1,35 @@
1
+ import { IService } from './ServiceRegistry';
2
+ /**
3
+ * Options for configuring data exports.
4
+ * @group Properties
5
+ */
6
+ export interface ExportOptions {
7
+ /** Target filename (without extension). @group Properties */
8
+ fileName?: string;
9
+ /** Internal sheet name (for Excel). @group Properties */
10
+ sheetName?: string;
11
+ /** List of field names to omit from the export. @group Data */
12
+ excludeColumns?: string[];
13
+ }
14
+ /**
15
+ * Service for client-side data exportation in various formats.
16
+ *
17
+ * Provides efficient CSV and Excel generation using `file-saver` and `xlsx`.
18
+ *
19
+ * @group Services
20
+ */
21
+ export declare class ExportService implements IService {
22
+ name: string;
23
+ /**
24
+ * Exports an array of data to a CSV file.
25
+ * @param data The row data to export.
26
+ * @param columns Column definitions for mapping headers and accessors.
27
+ * @param options Export configuration options.
28
+ * @group Methods
29
+ */
30
+ exportToCSV<T>(data: T[], columns: {
31
+ header: string;
32
+ accessorKey?: string;
33
+ id?: string;
34
+ }[], options?: ExportOptions): void;
35
+ }
@@ -0,0 +1,33 @@
1
+ import { IService } from './ServiceRegistry';
2
+ /**
3
+ * Service for managing keyboard focus and accessibility across the application.
4
+ *
5
+ * Handles registration of focusable elements, programmatic focus movement,
6
+ * and standard ARIA focus trapping for modals and popovers.
7
+ *
8
+ * @group Services
9
+ */
10
+ export declare class FocusManagerService implements IService {
11
+ name: string;
12
+ private focusableElements;
13
+ private currentFocusIndex;
14
+ constructor();
15
+ /** Registers an element as focusable and ensures proper tab order. @group Methods */
16
+ registerFocusable(element: HTMLElement): void;
17
+ /** Unregisters an element and updates the current focus tracking. @group Methods */
18
+ unregisterFocusable(element: HTMLElement): void;
19
+ /** Moves focus to the next element in the registration list. @group Methods */
20
+ focusNext(): void;
21
+ /** Moves focus to the previous element in the registration list. @group Methods */
22
+ focusPrevious(): void;
23
+ /**
24
+ * Traps keyboard focus within a specific DOM container.
25
+ * Common for dialogs and side sheets to maintain focus context.
26
+ *
27
+ * @param container The element to trap focus inside.
28
+ * @returns Cleanup function to release the trap.
29
+ * @group Methods
30
+ */
31
+ trapFocus(container: HTMLElement): () => void;
32
+ cleanup(): void;
33
+ }
@@ -0,0 +1,43 @@
1
+ import { IService } from './ServiceRegistry';
2
+ /**
3
+ * Represents a node in a hierarchical data structure.
4
+ * @group Services
5
+ */
6
+ export interface HierarchyNode {
7
+ /** Unique identifier for the node. @group Data */
8
+ id: string;
9
+ /** Array of child node IDs. @group Data */
10
+ children?: string[];
11
+ /** ID of the parent node. @group Data */
12
+ parentId?: string;
13
+ /** Depth level in the hierarchy (0-indexed). @group Data */
14
+ level: number;
15
+ }
16
+ /**
17
+ * Service for managing complex hierarchical relationships between data elements.
18
+ *
19
+ * Provides utility methods for traversing parent-child relationships,
20
+ * finding ancestors/descendants, and managing structural integrity of trees.
21
+ *
22
+ * @group Services
23
+ */
24
+ export declare class HierarchyService implements IService {
25
+ name: string;
26
+ private nodeMap;
27
+ constructor();
28
+ /** Registers a node in the hierarchy map. @group Methods */
29
+ registerNode(node: HierarchyNode): void;
30
+ /** Removes a node and its structural links from the map. @group Methods */
31
+ unregisterNode(id: string): void;
32
+ /** Returns the direct parent node of a given node ID. @group Methods */
33
+ getParent(id: string): HierarchyNode | undefined;
34
+ /** Returns an array of direct child nodes for a given node ID. @group Methods */
35
+ getChildren(id: string): HierarchyNode[];
36
+ /** Returns all descendants (children, grandchildren, etc.) IDs for a node. @group Methods */
37
+ getDescendants(id: string): string[];
38
+ /** Returns all ancestor (parent, grandparent, etc.) IDs for a node. @group Methods */
39
+ getAncestors(id: string): string[];
40
+ /** Retrieves a specific hierarchy node by ID. @group Methods */
41
+ getNode(id: string): HierarchyNode | undefined;
42
+ cleanup(): void;
43
+ }
@@ -0,0 +1,84 @@
1
+ import { BaseService } from './BaseService';
2
+ /**
3
+ * Current state of the internationalization service.
4
+ * @group State
5
+ */
6
+ export interface I18nState {
7
+ /** Current locale code (e.g., 'en', 'fr'). @group Data */
8
+ locale: string;
9
+ /** Text direction associated with the locale (ltr or rtl). @group Data */
10
+ dir: 'ltr' | 'rtl';
11
+ /** Map of all registered translations. @group Data */
12
+ translations: Record<string, Record<string, string>>;
13
+ }
14
+ /**
15
+ * A reactive internationalization service for EzUX.
16
+ *
17
+ * Manages locale changes, text direction (RTL support), and translation lookups.
18
+ * Supports dynamic registration of component-specific translation strings.
19
+ *
20
+ * @group Services
21
+ */
22
+ export declare class I18nService extends BaseService<I18nState> {
23
+ name: string;
24
+ readonly supportedLanguages: {
25
+ code: string;
26
+ name: string;
27
+ country: string;
28
+ }[];
29
+ private initialTranslations;
30
+ private _locale;
31
+ private _translations;
32
+ constructor(defaultLocale?: string);
33
+ get locale(): string;
34
+ get dir(): "ltr" | "rtl";
35
+ /**
36
+ * Sets the active locale and updates text direction.
37
+ * @param locale The locale code to switch to.
38
+ * @group Methods
39
+ */
40
+ setLocale: (locale: string) => void;
41
+ /**
42
+ * Dynamically registers custom translations for a specific locale.
43
+ * @param locale The locale to add translations for.
44
+ * @param da Key-value pairs of translation strings.
45
+ * @group Methods
46
+ */
47
+ registerTranslations: (locale: string, da: Record<string, string>) => void;
48
+ /**
49
+ * Translates a key based on the current active locale.
50
+ * Falls back to the provided defaultValue, then to English, then returns the key itself.
51
+ * @param key The translation key to lookup.
52
+ * @param defaultValue Optional fallback string if the key is not found.
53
+ * @returns The localized string or the fallback/key if not found.
54
+ * @group Methods
55
+ */
56
+ t: (key: string, defaultValue?: string) => string;
57
+ /**
58
+ * Formats a date based on the current active locale.
59
+ * @param value The date to format.
60
+ * @param options Formatting options.
61
+ * @group Formatting
62
+ */
63
+ formatDate: (value: Date | string | null | undefined, options?: {
64
+ format?: "short" | "long" | "relative" | "iso";
65
+ }) => string;
66
+ /**
67
+ * Formats a number based on the current active locale.
68
+ * @param value The number to format.
69
+ * @param options Formatting options.
70
+ * @group Formatting
71
+ */
72
+ formatNumber: (value: number | null | undefined, options?: {
73
+ format?: "integer" | "float" | "currency" | "percentage";
74
+ decimals?: number;
75
+ currency?: string;
76
+ }) => string;
77
+ /**
78
+ * Formats a currency based on the current active locale.
79
+ * @param value The amount to format.
80
+ * @param currency The currency code (default: USD).
81
+ * @group Formatting
82
+ */
83
+ formatCurrency: (value: number, currency?: string) => string;
84
+ }
@@ -0,0 +1,80 @@
1
+ import { BaseService } from './BaseService';
2
+ type LayoutMode = 'dashboard' | 'auth' | 'minimal';
3
+ /**
4
+ * Reactive state for the application layout system.
5
+ * @group State
6
+ */
7
+ export interface LayoutState {
8
+ /** Whether the primary sidebar is visible. @group State */
9
+ sidebarOpen: boolean;
10
+ /** Current high-level layout mode. @group Properties */
11
+ mode: LayoutMode;
12
+ /** Fixed height of the application header. @group Appearance */
13
+ headerHeight: number;
14
+ /** Fixed width of the application sidebar. @group Appearance */
15
+ sidebarWidth: number;
16
+ /** Viewport width threshold for mobile behavior (in px). @group Properties */
17
+ breakpoint: number;
18
+ /** Current tracked height of the viewport. @group State */
19
+ viewportHeight: number;
20
+ /** Whether the current viewport is considered mobile. @group State */
21
+ isMobile: boolean;
22
+ /** Active page in the auth flow. @group State */
23
+ authPage: 'signin' | 'signup';
24
+ /** Dynamic overlay or side panels currently active. @group State */
25
+ panels: {
26
+ id: string;
27
+ content: any;
28
+ position: 'left' | 'right' | 'bottom';
29
+ }[];
30
+ }
31
+ /**
32
+ * Service for managing the application's shell, responsiveness, and dynamic panels.
33
+ *
34
+ * Centralizes layout configuration, viewport tracking, and provides a reactive
35
+ * API for controlling the UI frame from anywhere in the application.
36
+ *
37
+ * @group Services
38
+ */
39
+ export declare class LayoutService extends BaseService<LayoutState> {
40
+ name: string;
41
+ constructor();
42
+ private handleResize;
43
+ /**
44
+ * Updates the core layout dimensions and breakpoints.
45
+ * @group Methods
46
+ */
47
+ updateConfig(config: {
48
+ headerHeight?: number;
49
+ sidebarWidth?: number;
50
+ breakpoint?: number;
51
+ }): void;
52
+ /**
53
+ * Toggles the sidebar visibility.
54
+ * @param open Optional explicit state to set.
55
+ * @group Methods
56
+ */
57
+ toggleSidebar(open?: boolean): void;
58
+ /** Sets the active layout mode. @group Methods */
59
+ setMode(mode: LayoutMode): void;
60
+ /** Switches the active auth page view. @group Methods */
61
+ setAuthPage(page: 'signin' | 'signup'): void;
62
+ /** Registers a new floating or docked panel. @group Methods */
63
+ addPanel(panel: {
64
+ id: string;
65
+ content: any;
66
+ position: 'left' | 'right' | 'bottom';
67
+ }): void;
68
+ /** Removes a registered panel by ID. @group Methods */
69
+ removePanel(id: string): void;
70
+ /**
71
+ * Helper to get CSS styles for the main content area based on layout state.
72
+ * @group Methods
73
+ */
74
+ getMainContentStyle(): {
75
+ height: string;
76
+ marginLeft: string;
77
+ transition: string;
78
+ };
79
+ }
80
+ export {};
@@ -0,0 +1,44 @@
1
+ import { IService } from './ServiceRegistry';
2
+ /**
3
+ * Represents a single user notification item.
4
+ * @group Services
5
+ */
6
+ export interface Notification {
7
+ /** Unique identifier for the notification. @group Data */
8
+ id: string;
9
+ /** The alert level: info, success, warning, or error. @group Data */
10
+ type: 'info' | 'success' | 'warning' | 'error';
11
+ /** The message content to display. @group Data */
12
+ message: string;
13
+ /** Optional auto-dismiss duration in milliseconds (0 for persistent). @group Properties */
14
+ duration?: number;
15
+ }
16
+ /**
17
+ * A central service for managing application-wide alerts and feedback.
18
+ *
19
+ * Supports multiple concurrent notifications with automatic dismissal and
20
+ * reactive state synchronization for UI panels.
21
+ *
22
+ * @group Services
23
+ */
24
+ export declare class NotificationService implements IService {
25
+ name: string;
26
+ private subscribers;
27
+ private notifications;
28
+ /** Adds a new notification to the active queue. @group Methods */
29
+ add(notification: Omit<Notification, 'id'>): void;
30
+ /** Direct alias for `add`. @group Methods */
31
+ show(notification: Omit<Notification, 'id'>): void;
32
+ /** Manually removes a notification by its ID. @group Methods */
33
+ remove(id: string): void;
34
+ /** Clears all active notifications. @group Methods */
35
+ clearAll(): void;
36
+ /**
37
+ * Subscribes to notifications queue changes.
38
+ * @param callback Callback triggered when notifications are added or removed.
39
+ * @returns Unsubscribe function.
40
+ * @group Methods
41
+ */
42
+ subscribe(callback: (notifications: Notification[]) => void): () => boolean;
43
+ private notify;
44
+ }
@@ -0,0 +1,69 @@
1
+ import { BaseService } from './BaseService';
2
+ /**
3
+ * Data structure for persisting complex component states.
4
+ * @group State
5
+ */
6
+ export interface EzTableStatePersistence {
7
+ /** Active sorting criteria. @group Data */
8
+ sorting?: any[];
9
+ /** Applied column filters. @group Data */
10
+ columnFilters?: any[];
11
+ /** Visibility state of columns. @group Appearance */
12
+ columnVisibility?: Record<string, boolean>;
13
+ /** Current display order of columns. @group Appearance */
14
+ columnOrder?: string[];
15
+ /** Pinning configuration for columns. @group Appearance */
16
+ columnPinning?: {
17
+ left?: string[];
18
+ right?: string[];
19
+ };
20
+ /** Data grouping configuration. @group Data */
21
+ grouping?: string[];
22
+ /** Pagination state. @group Data */
23
+ pagination?: {
24
+ pageIndex: number;
25
+ pageSize: number;
26
+ };
27
+ }
28
+ /**
29
+ * Service for handling local browser persistence of application state.
30
+ *
31
+ * Provides a standardized way to save and load serialized state objects to
32
+ * `localStorage` with error handling and reactive access tracking.
33
+ *
34
+ * @group Services
35
+ */
36
+ /**
37
+ * Internal state for the Persistence Service.
38
+ * @group State
39
+ */
40
+ interface PersistenceState {
41
+ /** The key of the last state object saved or loaded. @group Data */
42
+ lastAccessedKey: string | null;
43
+ }
44
+ export declare class PersistenceService extends BaseService<PersistenceState> {
45
+ name: string;
46
+ constructor();
47
+ /**
48
+ * Saves a state object to the local storage with a specific key.
49
+ * @param key Unique key for the storage entry.
50
+ * @param state The state object to persist.
51
+ * @group Methods
52
+ */
53
+ saveState(key: string, state: EzTableStatePersistence): void;
54
+ /**
55
+ * Loads a state object from local storage.
56
+ * @param key Unique key for the storage entry.
57
+ * @returns The parsed state object or null if not found.
58
+ * @group Methods
59
+ */
60
+ loadState(key: string): EzTableStatePersistence | null;
61
+ /**
62
+ * Removes a state entry from local storage.
63
+ * @param key Unique key to clear.
64
+ * @group Methods
65
+ */
66
+ clearState(key: string): void;
67
+ }
68
+ export declare const globalPersistenceService: PersistenceService;
69
+ export {};