@dcs-tech/ui 0.2.0 → 0.3.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 (283) hide show
  1. package/README.md +31 -0
  2. package/dist/ChartImageMenu-gvNAYVkY.js +2938 -0
  3. package/dist/Charts-COljjy0x.js +1759 -0
  4. package/dist/SummaryChart-D4jcOv-K.js +31 -0
  5. package/dist/SummaryImage-BSbatHym.js +19 -0
  6. package/dist/SummarySeeAll-vnaL3pdy.js +97 -0
  7. package/dist/defaults-BbLB8QmD.js +709 -0
  8. package/dist/exportContext-CAX8VPrP.js +243 -0
  9. package/dist/exportEngine-C4n1MiOw.js +891 -0
  10. package/dist/fuseSearch-vLQR3O5a.js +37 -0
  11. package/dist/index.js +19289 -9411
  12. package/dist/style.css +1 -1
  13. package/dist/summaryChartData-CU_W5ocv.js +82 -0
  14. package/dist/types/published/dcs-ui/src/index.d.ts +0 -28
  15. package/dist/types/published/dcs-ui/src/publicLogic.d.ts +0 -33
  16. package/dist/types/published/dcs-ui/src/publicTypes.d.ts +0 -12
  17. package/dist/types/shared-logic/src/report/aggregate.d.ts +0 -21
  18. package/dist/types/shared-logic/src/report/canvas.d.ts +0 -55
  19. package/dist/types/shared-logic/src/report/conditions.d.ts +0 -14
  20. package/dist/types/shared-logic/src/report/constants.d.ts +0 -39
  21. package/dist/types/shared-logic/src/report/dataset.d.ts +0 -26
  22. package/dist/types/shared-logic/src/report/edit.d.ts +0 -62
  23. package/dist/types/shared-logic/src/report/fields.d.ts +0 -51
  24. package/dist/types/shared-logic/src/report/format.d.ts +0 -22
  25. package/dist/types/shared-logic/src/report/fromColumns.d.ts +0 -30
  26. package/dist/types/shared-logic/src/report/layout.d.ts +1 -55
  27. package/dist/types/shared-logic/src/report/metrics.d.ts +0 -45
  28. package/dist/types/shared-logic/src/report/migrate.d.ts +0 -60
  29. package/dist/types/shared-logic/src/report/paginate.d.ts +0 -32
  30. package/dist/types/shared-logic/src/report/renderers/html.d.ts +0 -21
  31. package/dist/types/shared-logic/src/report/renderers/pdfmake.d.ts +0 -27
  32. package/dist/types/shared-logic/src/report/resolve.d.ts +0 -29
  33. package/dist/types/shared-logic/src/report/scope.d.ts +0 -28
  34. package/dist/types/shared-logic/src/report/storage.d.ts +0 -76
  35. package/dist/types/shared-logic/src/report/validate.d.ts +0 -18
  36. package/dist/types/shared-logic/src/ui/cellRules.logic.d.ts +0 -35
  37. package/dist/types/shared-logic/src/ui/chipinput.logic.d.ts +0 -12
  38. package/dist/types/shared-logic/src/ui/collapsible.logic.d.ts +0 -7
  39. package/dist/types/shared-logic/src/ui/colorScheme.d.ts +0 -14
  40. package/dist/types/shared-logic/src/ui/columnOrder.logic.d.ts +0 -11
  41. package/dist/types/shared-logic/src/ui/datePicker.logic.d.ts +136 -0
  42. package/dist/types/shared-logic/src/ui/editableTable.logic.d.ts +0 -27
  43. package/dist/types/shared-logic/src/ui/fieldControl.logic.d.ts +2 -14
  44. package/dist/types/shared-logic/src/ui/form.logic.d.ts +0 -8
  45. package/dist/types/shared-logic/src/ui/index.d.ts +3 -29
  46. package/dist/types/shared-logic/src/ui/keyboard.logic.d.ts +0 -60
  47. package/dist/types/shared-logic/src/ui/navigation.logic.d.ts +0 -24
  48. package/dist/types/shared-logic/src/ui/popover.logic.d.ts +22 -20
  49. package/dist/types/shared-logic/src/ui/popupList.logic.d.ts +0 -35
  50. package/dist/types/shared-logic/src/ui/quickAddGrid.logic.d.ts +183 -0
  51. package/dist/types/shared-logic/src/ui/select.logic.d.ts +0 -14
  52. package/dist/types/shared-logic/src/ui/tableLayout.logic.d.ts +0 -34
  53. package/dist/types/shared-logic/src/ui/tableSummary.logic.d.ts +0 -19
  54. package/dist/types/shared-logic/src/ui/timeField.logic.d.ts +26 -0
  55. package/dist/types/shared-logic/src/ui/tooltip.logic.d.ts +0 -24
  56. package/dist/types/shared-logic/src/ui/useMergeRefs.d.ts +0 -8
  57. package/dist/types/shared-types/src/report/bands.d.ts +0 -20
  58. package/dist/types/shared-types/src/report/blocks.d.ts +0 -59
  59. package/dist/types/shared-types/src/report/conditions.d.ts +0 -13
  60. package/dist/types/shared-types/src/report/dataset.d.ts +0 -53
  61. package/dist/types/shared-types/src/report/document.d.ts +0 -80
  62. package/dist/types/shared-types/src/report/primitives.d.ts +0 -40
  63. package/dist/types/shared-types/src/report/registry.d.ts +0 -46
  64. package/dist/types/shared-types/src/report/storage.d.ts +0 -31
  65. package/dist/types/shared-types/src/report/template.d.ts +0 -60
  66. package/dist/types/shared-types/src/ui/button.types.d.ts +0 -11
  67. package/dist/types/shared-types/src/ui/checkbox.types.d.ts +0 -4
  68. package/dist/types/shared-types/src/ui/chipinput.types.d.ts +0 -10
  69. package/dist/types/shared-types/src/ui/collapsible.types.d.ts +0 -18
  70. package/dist/types/shared-types/src/ui/common.types.d.ts +0 -11
  71. package/dist/types/shared-types/src/ui/control.types.d.ts +0 -97
  72. package/dist/types/shared-types/src/ui/datePicker.types.d.ts +46 -0
  73. package/dist/types/shared-types/src/ui/editableTable.types.d.ts +0 -79
  74. package/dist/types/shared-types/src/ui/field.types.d.ts +4 -124
  75. package/dist/types/shared-types/src/ui/fieldWrapper.types.d.ts +0 -10
  76. package/dist/types/shared-types/src/ui/fields.types.d.ts +0 -45
  77. package/dist/types/shared-types/src/ui/form.types.d.ts +0 -30
  78. package/dist/types/shared-types/src/ui/index.d.ts +1 -16
  79. package/dist/types/shared-types/src/ui/input.types.d.ts +0 -4
  80. package/dist/types/shared-types/src/ui/keyboard.types.d.ts +2 -109
  81. package/dist/types/shared-types/src/ui/navigation.types.d.ts +0 -22
  82. package/dist/types/shared-types/src/ui/radio.types.d.ts +0 -6
  83. package/dist/types/shared-types/src/ui/select.types.d.ts +0 -41
  84. package/dist/types/shared-types/src/ui/suggest.types.d.ts +0 -10
  85. package/dist/types/shared-types/src/ui/switch.types.d.ts +0 -4
  86. package/dist/types/shared-types/src/ui/table.types.d.ts +0 -59
  87. package/dist/types/shared-types/src/ui/tooltip.types.d.ts +0 -25
  88. package/dist/types/shared-types/src/ui/typography.types.d.ts +0 -4
  89. package/dist/types/shared-web-ui/src/AppBar/AppBar.d.ts +0 -9
  90. package/dist/types/shared-web-ui/src/ArrowKeyFocus/useArrowKeyFocus.d.ts +0 -19
  91. package/dist/types/shared-web-ui/src/Avatar/Avatar.d.ts +0 -14
  92. package/dist/types/shared-web-ui/src/Badge/Badge.d.ts +0 -11
  93. package/dist/types/shared-web-ui/src/Breadcrumbs/Breadcrumbs.d.ts +0 -52
  94. package/dist/types/shared-web-ui/src/Card/Card.d.ts +0 -16
  95. package/dist/types/shared-web-ui/src/Charts/AnchoredMenu.d.ts +17 -0
  96. package/dist/types/shared-web-ui/src/Charts/BarList.d.ts +12 -0
  97. package/dist/types/shared-web-ui/src/Charts/CalendarHeatmap.d.ts +17 -0
  98. package/dist/types/shared-web-ui/src/Charts/Chart.d.ts +20 -0
  99. package/dist/types/shared-web-ui/src/Charts/ChartIcon.d.ts +5 -0
  100. package/dist/types/shared-web-ui/src/Charts/ChartImageMenu.d.ts +4 -0
  101. package/dist/types/shared-web-ui/src/Charts/ChartTable.d.ts +8 -0
  102. package/dist/types/shared-web-ui/src/Charts/ChartTooltip.d.ts +44 -0
  103. package/dist/types/shared-web-ui/src/Charts/ChartView.d.ts +15 -0
  104. package/dist/types/shared-web-ui/src/Charts/ColumnChart.d.ts +15 -0
  105. package/dist/types/shared-web-ui/src/Charts/Donut.d.ts +14 -0
  106. package/dist/types/shared-web-ui/src/Charts/Funnel.d.ts +10 -0
  107. package/dist/types/shared-web-ui/src/Charts/Gauge.d.ts +15 -0
  108. package/dist/types/shared-web-ui/src/Charts/Legend.d.ts +6 -0
  109. package/dist/types/shared-web-ui/src/Charts/LineChart.d.ts +13 -0
  110. package/dist/types/shared-web-ui/src/Charts/NumberTrend.d.ts +21 -0
  111. package/dist/types/shared-web-ui/src/Charts/Progress.d.ts +12 -0
  112. package/dist/types/shared-web-ui/src/Charts/StackedBar.d.ts +11 -0
  113. package/dist/types/shared-web-ui/src/Charts/Treemap.d.ts +12 -0
  114. package/dist/types/shared-web-ui/src/Charts/chartData.d.ts +69 -0
  115. package/dist/types/shared-web-ui/src/Charts/chartImage.d.ts +121 -0
  116. package/dist/types/shared-web-ui/src/Charts/geometry.d.ts +178 -0
  117. package/dist/types/shared-web-ui/src/Charts/index.d.ts +32 -0
  118. package/dist/types/shared-web-ui/src/Charts/labels.d.ts +46 -0
  119. package/dist/types/shared-web-ui/src/Charts/menuPlacement.d.ts +25 -0
  120. package/dist/types/shared-web-ui/src/Charts/palette.d.ts +81 -0
  121. package/dist/types/shared-web-ui/src/Charts/parts.d.ts +24 -0
  122. package/dist/types/shared-web-ui/src/Charts/pointer.d.ts +41 -0
  123. package/dist/types/shared-web-ui/src/Charts/types.d.ts +51 -0
  124. package/dist/types/shared-web-ui/src/Charts/ui.d.ts +3 -0
  125. package/dist/types/shared-web-ui/src/Charts/useBoxSize.d.ts +6 -0
  126. package/dist/types/shared-web-ui/src/Charts/useLegendFit.d.ts +1 -0
  127. package/dist/types/shared-web-ui/src/Collapsible/CollapsibleItem.d.ts +0 -2
  128. package/dist/types/shared-web-ui/src/ColorSchemeSelect/ColorSchemeSelect.d.ts +0 -15
  129. package/dist/types/shared-web-ui/src/CommandPalette/CommandPalette.d.ts +0 -27
  130. package/dist/types/shared-web-ui/src/DataTable/DataTable.d.ts +16 -0
  131. package/dist/types/shared-web-ui/src/DataTable/DisplayPopover.d.ts +22 -0
  132. package/dist/types/shared-web-ui/src/DataTable/HeaderMenu.d.ts +31 -0
  133. package/dist/types/shared-web-ui/src/DataTable/ManageModal.d.ts +31 -0
  134. package/dist/types/shared-web-ui/src/DataTable/SingleRowView.d.ts +9 -0
  135. package/dist/types/shared-web-ui/src/DataTable/SortModal.d.ts +16 -0
  136. package/dist/types/shared-web-ui/src/DataTable/StatusRow.d.ts +49 -0
  137. package/dist/types/shared-web-ui/src/DataTable/TableColumnModal.d.ts +18 -0
  138. package/dist/types/shared-web-ui/src/DataTable/TableControls.d.ts +48 -0
  139. package/dist/types/shared-web-ui/src/DataTable/TablePagination.d.ts +38 -0
  140. package/dist/types/shared-web-ui/src/DataTable/TableScrollStrip.d.ts +2 -0
  141. package/dist/types/shared-web-ui/src/DataTable/TableToolbar.d.ts +69 -0
  142. package/dist/types/shared-web-ui/src/DataTable/TableView.d.ts +61 -0
  143. package/dist/types/shared-web-ui/src/DataTable/bulk/BulkConfirmDialog.d.ts +13 -0
  144. package/dist/types/shared-web-ui/src/DataTable/bulk/TableToast.d.ts +13 -0
  145. package/dist/types/shared-web-ui/src/DataTable/bulk/bulkActions.d.ts +23 -0
  146. package/dist/types/shared-web-ui/src/DataTable/cards/CardFieldsEditor.d.ts +16 -0
  147. package/dist/types/shared-web-ui/src/DataTable/cards/CardView.d.ts +50 -0
  148. package/dist/types/shared-web-ui/src/DataTable/cards/cardFields.d.ts +32 -0
  149. package/dist/types/shared-web-ui/src/DataTable/cards/rowParts.d.ts +38 -0
  150. package/dist/types/shared-web-ui/src/DataTable/data/useServerData.d.ts +28 -0
  151. package/dist/types/shared-web-ui/src/DataTable/defaults.d.ts +18 -0
  152. package/dist/types/shared-web-ui/src/DataTable/detail/BuiltInDetail.d.ts +10 -0
  153. package/dist/types/shared-web-ui/src/DataTable/detail/DetailHost.d.ts +13 -0
  154. package/dist/types/shared-web-ui/src/DataTable/export/ExportPopover.d.ts +18 -0
  155. package/dist/types/shared-web-ui/src/DataTable/export/ExportPreviewModal.d.ts +11 -0
  156. package/dist/types/shared-web-ui/src/DataTable/export/ExportSettingsModal.d.ts +31 -0
  157. package/dist/types/shared-web-ui/src/DataTable/export/ExportTemplateCards.d.ts +19 -0
  158. package/dist/types/shared-web-ui/src/DataTable/export/exportContext.d.ts +10 -0
  159. package/dist/types/shared-web-ui/src/DataTable/export/exportEngine.d.ts +77 -0
  160. package/dist/types/shared-web-ui/src/DataTable/export/exportRows.d.ts +10 -0
  161. package/dist/types/shared-web-ui/src/DataTable/export/templateDisplay.d.ts +7 -0
  162. package/dist/types/shared-web-ui/src/DataTable/export/templateOptions.d.ts +6 -0
  163. package/dist/types/shared-web-ui/src/DataTable/export/useTableExport.d.ts +53 -0
  164. package/dist/types/shared-web-ui/src/DataTable/filters/ColumnFilterPopover.d.ts +14 -0
  165. package/dist/types/shared-web-ui/src/DataTable/filters/FilterConditionRow.d.ts +11 -0
  166. package/dist/types/shared-web-ui/src/DataTable/filters/FilterGroup.d.ts +12 -0
  167. package/dist/types/shared-web-ui/src/DataTable/filters/FilterModal.d.ts +14 -0
  168. package/dist/types/shared-web-ui/src/DataTable/filters/FilterRow.d.ts +20 -0
  169. package/dist/types/shared-web-ui/src/DataTable/filters/columnFilterModel.d.ts +29 -0
  170. package/dist/types/shared-web-ui/src/DataTable/filters/filterEngine.d.ts +16 -0
  171. package/dist/types/shared-web-ui/src/DataTable/filters/filterRowModel.d.ts +28 -0
  172. package/dist/types/shared-web-ui/src/DataTable/filters/quickFilterMatch.d.ts +3 -0
  173. package/dist/types/shared-web-ui/src/DataTable/grouping/GroupUi.d.ts +36 -0
  174. package/dist/types/shared-web-ui/src/DataTable/grouping/groupModel.d.ts +82 -0
  175. package/dist/types/shared-web-ui/src/DataTable/grouping/useGrouping.d.ts +39 -0
  176. package/dist/types/shared-web-ui/src/DataTable/host.d.ts +14 -0
  177. package/dist/types/shared-web-ui/src/DataTable/index.d.ts +18 -0
  178. package/dist/types/shared-web-ui/src/DataTable/keyboard/ShortcutsDialog.d.ts +14 -0
  179. package/dist/types/shared-web-ui/src/DataTable/keyboard/shortcuts.d.ts +22 -0
  180. package/dist/types/shared-web-ui/src/DataTable/keyboard/useGridKeyboard.d.ts +48 -0
  181. package/dist/types/shared-web-ui/src/DataTable/labels.d.ts +618 -0
  182. package/dist/types/shared-web-ui/src/DataTable/layout/LayoutSwitcher.d.ts +9 -0
  183. package/dist/types/shared-web-ui/src/DataTable/layout/layouts.d.ts +20 -0
  184. package/dist/types/shared-web-ui/src/DataTable/layout/scrollArea.d.ts +2 -0
  185. package/dist/types/shared-web-ui/src/DataTable/layout/useFillHeight.d.ts +11 -0
  186. package/dist/types/shared-web-ui/src/DataTable/menu/RowMenu.d.ts +56 -0
  187. package/dist/types/shared-web-ui/src/DataTable/menu/buildRowMenu.d.ts +35 -0
  188. package/dist/types/shared-web-ui/src/DataTable/menu/clipboard.d.ts +4 -0
  189. package/dist/types/shared-web-ui/src/DataTable/menu/valueFilter.d.ts +15 -0
  190. package/dist/types/shared-web-ui/src/DataTable/motion/useRowMotion.d.ts +32 -0
  191. package/dist/types/shared-web-ui/src/DataTable/persistence/adapters.d.ts +6 -0
  192. package/dist/types/shared-web-ui/src/DataTable/persistence/reconcile.d.ts +64 -0
  193. package/dist/types/shared-web-ui/src/DataTable/persistence/useColumnPersistence.d.ts +51 -0
  194. package/dist/types/shared-web-ui/src/DataTable/persistence/useManagePrefs.d.ts +23 -0
  195. package/dist/types/shared-web-ui/src/DataTable/persistence/useOrphanPrefs.d.ts +3 -0
  196. package/dist/types/shared-web-ui/src/DataTable/pinning.d.ts +10 -0
  197. package/dist/types/shared-web-ui/src/DataTable/rows/RowActions.d.ts +15 -0
  198. package/dist/types/shared-web-ui/src/DataTable/rows/rowPress.d.ts +35 -0
  199. package/dist/types/shared-web-ui/src/DataTable/sharing/Sharing.d.ts +21 -0
  200. package/dist/types/shared-web-ui/src/DataTable/split/SplitView.d.ts +29 -0
  201. package/dist/types/shared-web-ui/src/DataTable/summary/ManageSummaryCards.d.ts +18 -0
  202. package/dist/types/shared-web-ui/src/DataTable/summary/SummaryChart.d.ts +11 -0
  203. package/dist/types/shared-web-ui/src/DataTable/summary/SummaryControls.d.ts +33 -0
  204. package/dist/types/shared-web-ui/src/DataTable/summary/SummaryImage.d.ts +12 -0
  205. package/dist/types/shared-web-ui/src/DataTable/summary/SummarySeeAll.d.ts +17 -0
  206. package/dist/types/shared-web-ui/src/DataTable/summary/TableSummary.d.ts +34 -0
  207. package/dist/types/shared-web-ui/src/DataTable/summary/summaryCatalogue.d.ts +64 -0
  208. package/dist/types/shared-web-ui/src/DataTable/summary/summaryChartData.d.ts +9 -0
  209. package/dist/types/shared-web-ui/src/DataTable/summary/summaryModel.d.ts +152 -0
  210. package/dist/types/shared-web-ui/src/DataTable/summary/summaryWidth.d.ts +22 -0
  211. package/dist/types/shared-web-ui/src/DataTable/summary/useTableSummary.d.ts +18 -0
  212. package/dist/types/shared-web-ui/src/DataTable/types.d.ts +1145 -0
  213. package/dist/types/shared-web-ui/src/DataTable/ui-local/AutoHeight.d.ts +9 -0
  214. package/dist/types/shared-web-ui/src/DataTable/ui-local/DateRangePicker.d.ts +16 -0
  215. package/dist/types/shared-web-ui/src/DataTable/ui-local/DragAndDropList/DragAndDropList.d.ts +4 -0
  216. package/dist/types/shared-web-ui/src/DataTable/ui-local/DragAndDropList/index.d.ts +3 -0
  217. package/dist/types/shared-web-ui/src/DataTable/ui-local/DragAndDropList/types.d.ts +70 -0
  218. package/dist/types/shared-web-ui/src/DataTable/ui-local/ReactModal.d.ts +20 -0
  219. package/dist/types/shared-web-ui/src/DataTable/ui.d.ts +13 -0
  220. package/dist/types/shared-web-ui/src/DataTable/useDataChangeTracker.d.ts +11 -0
  221. package/dist/types/shared-web-ui/src/DataTable/useTable.d.ts +12 -0
  222. package/dist/types/shared-web-ui/src/DataTable/vendor/columnOrder.d.ts +1 -0
  223. package/dist/types/shared-web-ui/src/DataTable/vendor/diff.d.ts +5 -0
  224. package/dist/types/shared-web-ui/src/DataTable/vendor/fileActions.d.ts +19 -0
  225. package/dist/types/shared-web-ui/src/DataTable/vendor/index.d.ts +3 -0
  226. package/dist/types/shared-web-ui/src/DataTable/virtual/useVirtualLines.d.ts +27 -0
  227. package/dist/types/shared-web-ui/src/DatePicker/Calendar.d.ts +14 -0
  228. package/dist/types/shared-web-ui/src/DatePicker/DatePicker.d.ts +5 -0
  229. package/dist/types/shared-web-ui/src/DatePicker/TimeField.d.ts +16 -0
  230. package/dist/types/shared-web-ui/src/DatePicker/index.d.ts +4 -0
  231. package/dist/types/shared-web-ui/src/DatePicker/useOneMonthPane.d.ts +2 -0
  232. package/dist/types/shared-web-ui/src/Dialog/Dialog.d.ts +0 -45
  233. package/dist/types/shared-web-ui/src/Dialog/DialogHost.d.ts +0 -36
  234. package/dist/types/shared-web-ui/src/DropdownMenu/DropdownMenu.d.ts +24 -24
  235. package/dist/types/shared-web-ui/src/EditableTable/EditableTable.d.ts +0 -5
  236. package/dist/types/shared-web-ui/src/EditableTable/EditableTableCell.d.ts +0 -18
  237. package/dist/types/shared-web-ui/src/EditableTable/EditableTableRow.d.ts +0 -11
  238. package/dist/types/shared-web-ui/src/EditableTable/EditableTableSummary.d.ts +0 -11
  239. package/dist/types/shared-web-ui/src/EditableTable/useRowAnimation.d.ts +0 -32
  240. package/dist/types/shared-web-ui/src/FieldContext/FieldContext.d.ts +0 -15
  241. package/dist/types/shared-web-ui/src/FieldContext/FieldProvider.d.ts +0 -9
  242. package/dist/types/shared-web-ui/src/FieldContext/useField.d.ts +0 -27
  243. package/dist/types/shared-web-ui/src/FieldContext/useFieldSurface.d.ts +0 -23
  244. package/dist/types/shared-web-ui/src/FieldContext/useFormKeyboard.d.ts +0 -3
  245. package/dist/types/shared-web-ui/src/Fields/FieldButton.d.ts +0 -15
  246. package/dist/types/shared-web-ui/src/Floating/index.d.ts +3 -0
  247. package/dist/types/shared-web-ui/src/Floating/layers.d.ts +4 -0
  248. package/dist/types/shared-web-ui/src/Floating/scrollLock.d.ts +2 -0
  249. package/dist/types/shared-web-ui/src/Floating/useFloatingLayer.d.ts +20 -0
  250. package/dist/types/shared-web-ui/src/Popover/Popover.d.ts +6 -25
  251. package/dist/types/shared-web-ui/src/Popover/floatingPosition.d.ts +17 -0
  252. package/dist/types/shared-web-ui/src/ReportDesigner/BandList.d.ts +0 -8
  253. package/dist/types/shared-web-ui/src/ReportDesigner/BlockEditor.d.ts +0 -11
  254. package/dist/types/shared-web-ui/src/ReportDesigner/ConditionEditor.d.ts +0 -2
  255. package/dist/types/shared-web-ui/src/ReportDesigner/FieldPicker.d.ts +0 -13
  256. package/dist/types/shared-web-ui/src/ReportDesigner/Inspector.d.ts +0 -7
  257. package/dist/types/shared-web-ui/src/ReportDesigner/ReportDesigner.d.ts +0 -22
  258. package/dist/types/shared-web-ui/src/ReportDesigner/TableEditor.d.ts +0 -8
  259. package/dist/types/shared-web-ui/src/ReportDesigner/chipSources.d.ts +0 -1
  260. package/dist/types/shared-web-ui/src/ReportDesigner/labels.d.ts +0 -12
  261. package/dist/types/shared-web-ui/src/ReportDesigner/parts.d.ts +0 -30
  262. package/dist/types/shared-web-ui/src/ReportDesigner/types.d.ts +0 -39
  263. package/dist/types/shared-web-ui/src/ReportPreview/ReportPreview.d.ts +0 -24
  264. package/dist/types/shared-web-ui/src/Scroll/ScrollRule.d.ts +2 -0
  265. package/dist/types/shared-web-ui/src/Scroll/ScrollStrip.d.ts +9 -0
  266. package/dist/types/shared-web-ui/src/Scroll/index.d.ts +4 -0
  267. package/dist/types/shared-web-ui/src/Scroll/labels.d.ts +5 -0
  268. package/dist/types/shared-web-ui/src/Scroll/scrollActivity.d.ts +14 -0
  269. package/dist/types/shared-web-ui/src/Scroll/ui.d.ts +1 -0
  270. package/dist/types/shared-web-ui/src/Sidebar/Sidebar.d.ts +0 -31
  271. package/dist/types/shared-web-ui/src/Skeleton/Skeleton.d.ts +0 -15
  272. package/dist/types/shared-web-ui/src/Tabs/Tabs.d.ts +0 -43
  273. package/dist/types/shared-web-ui/src/Toast/ToastHost.d.ts +0 -14
  274. package/dist/types/shared-web-ui/src/Toast/ToastItem.d.ts +0 -9
  275. package/dist/types/shared-web-ui/src/Toast/toast.types.d.ts +0 -13
  276. package/dist/types/shared-web-ui/src/Tooltip/Tooltip.d.ts +0 -16
  277. package/dist/types/shared-web-ui/src/Tooltip/useTooltip.d.ts +0 -9
  278. package/dist/types/shared-web-ui/src/UIProvider/UIPortalContext.d.ts +0 -14
  279. package/dist/types/shared-web-ui/src/UIProvider/UIProvider.d.ts +0 -41
  280. package/dist/types/shared-web-ui/src/UIProvider/UIThemeContext.d.ts +0 -8
  281. package/dist/types/shared-web-ui/src/index.d.ts +5 -0
  282. package/dist/ui-DJFwpPdX.js +4997 -0
  283. package/package.json +9 -7
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export interface AutoHeightProps {
3
+ children: React.ReactNode;
4
+ duration?: number;
5
+ className?: string;
6
+ style?: React.CSSProperties;
7
+ }
8
+ export declare const AutoHeight: React.FC<AutoHeightProps>;
9
+ export default AutoHeight;
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import './ui-local.css';
3
+ export interface DateRangeState {
4
+ from: string;
5
+ to: string;
6
+ withtime?: boolean;
7
+ }
8
+ export interface DateRangePickerProps {
9
+ range?: boolean;
10
+ state: DateRangeState;
11
+ setState: (updater: DateRangeState | ((prev: DateRangeState) => DateRangeState)) => void;
12
+ fromLabel?: string;
13
+ toLabel?: string;
14
+ }
15
+ export declare function DateRangePicker({ range, state, setState, fromLabel, toLabel }: DateRangePickerProps): React.JSX.Element;
16
+ export default DateRangePicker;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { type DragAndDropListProps, type DragAndDropItem } from './types';
3
+ import './DragAndDropList.css';
4
+ export default function DragAndDropList<T = DragAndDropItem>({ state, setState, renderKeys, onReorder, renderItem, getItemKey, className, showDragHandle, isItemDraggable, dragHandleProps, emptyMessage, showManualButtons, showSerialNumber, maxHeight, enableScrolling }: DragAndDropListProps<T>): React.JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { default } from './DragAndDropList';
2
+ export { default as DragAndDropList } from './DragAndDropList';
3
+ export * from './types';
@@ -0,0 +1,70 @@
1
+ import { type CSSProperties, type ReactNode, type MouseEvent, type TouchEvent, type DragEvent } from 'react';
2
+ export type DragAndDropItem = any;
3
+ export type GetItemKeyFn<T = DragAndDropItem> = (item: T, index: number) => string | number;
4
+ export type IsItemDraggableFn<T = DragAndDropItem> = (item: T, index: number) => boolean;
5
+ export type OnReorderFn<T = DragAndDropItem> = (newItems: T[]) => void;
6
+ export type RenderItemFn<T = DragAndDropItem> = (item: T, index: number, isDragging: boolean, isDragOver: boolean, dragHandle: ReactNode, moveItem: (fromIndex: number, toIndex: number) => void) => ReactNode;
7
+ export interface DragHandleProps {
8
+ className?: string;
9
+ style?: CSSProperties;
10
+ title?: string;
11
+ 'aria-label'?: string;
12
+ onClick?: (e: MouseEvent<HTMLSpanElement>) => void;
13
+ onMouseDown?: (e: MouseEvent<HTMLSpanElement>) => void;
14
+ }
15
+ export interface DragAndDropListProps<T = DragAndDropItem> {
16
+ state: T[];
17
+ setState?: (items: T[]) => void;
18
+ renderKeys?: string | string[];
19
+ onReorder?: OnReorderFn<T>;
20
+ renderItem?: RenderItemFn<T>;
21
+ getItemKey?: GetItemKeyFn<T>;
22
+ className?: string;
23
+ showDragHandle?: boolean;
24
+ isItemDraggable?: IsItemDraggableFn<T>;
25
+ dragHandleProps?: DragHandleProps;
26
+ emptyMessage?: string;
27
+ showManualButtons?: boolean;
28
+ showSerialNumber?: boolean;
29
+ maxHeight?: string | number;
30
+ enableScrolling?: boolean;
31
+ }
32
+ export interface DragAndDropState {
33
+ draggedIndex: number | null;
34
+ dragOverIndex: number | null;
35
+ isDragging: boolean;
36
+ touchStartY: number | null;
37
+ touchCurrentY: number | null;
38
+ touchStartX: number | null;
39
+ isDragReady: boolean;
40
+ touchStartTime: number | null;
41
+ }
42
+ export type AutoScrollDirection = 'up' | 'down';
43
+ export interface TouchEventData {
44
+ clientX: number;
45
+ clientY: number;
46
+ startY: number;
47
+ startX: number;
48
+ startTime: number;
49
+ }
50
+ export interface DragEventHandlers {
51
+ handleDragStart: (e: DragEvent<HTMLDivElement>, index: number) => void;
52
+ handleDragEnd: () => void;
53
+ handleDragOver: (e: DragEvent<HTMLDivElement>) => void;
54
+ handleDragEnter: (e: DragEvent<HTMLDivElement>, index: number) => void;
55
+ handleDragLeave: (e: DragEvent<HTMLDivElement>) => void;
56
+ handleDrop: (e: DragEvent<HTMLDivElement>, dropIndex: number) => void;
57
+ }
58
+ export interface TouchEventHandlers {
59
+ handleTouchStart: (e: TouchEvent<HTMLDivElement>, index: number) => void;
60
+ handleTouchMove: (e: TouchEvent<HTMLDivElement>) => void;
61
+ handleTouchEnd: () => void;
62
+ }
63
+ export interface ItemRenderContext<T = DragAndDropItem> {
64
+ item: T;
65
+ index: number;
66
+ isCurrentDragging: boolean;
67
+ isCurrentDragOver: boolean;
68
+ isDraggable: boolean;
69
+ itemKey: string | number;
70
+ }
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import './ui-local.css';
3
+ export interface ReactModalProps {
4
+ isopen?: boolean;
5
+ onClose?: () => void;
6
+ showCloseIcon?: boolean;
7
+ closeOnOverlayClick?: boolean;
8
+ closeOnEsc?: boolean;
9
+ modelstyleclass?: 'customModal' | 'customModal2' | 'customModal3' | string;
10
+ modelclass?: string;
11
+ size?: 'sm' | 'md' | 'lg' | 'xl';
12
+ bodyPadding?: boolean;
13
+ header?: React.ReactNode;
14
+ subheader?: React.ReactNode;
15
+ footer?: React.ReactNode;
16
+ children?: React.ReactNode;
17
+ 'aria-label'?: string;
18
+ }
19
+ export declare function ReactModal({ isopen, onClose, showCloseIcon, closeOnOverlayClick, closeOnEsc, modelstyleclass, modelclass, size, bodyPadding, header, subheader, footer, children, 'aria-label': ariaLabel, }: ReactModalProps): React.ReactPortal | null;
20
+ export default ReactModal;
@@ -0,0 +1,13 @@
1
+ export { Button as SmartButton, ButtonGroup as SmartButtonGroup } from '../Button';
2
+ export { Input as SmartInput } from '../Input';
3
+ export { Select as SmartSelect } from '../Select';
4
+ export { Checkbox as SmartCheckbox } from '../Checkbox';
5
+ export { Switch as SmartSwitch } from '../Switch';
6
+ export { Tabs as SmartTabs } from '../Tabs';
7
+ export { DropdownMenu as SmartDropdownMenu } from '../DropdownMenu';
8
+ export { Dialog as SmartDialog } from '../Dialog';
9
+ export { Badge as SmartBadge } from '../Badge';
10
+ export { ReactModal } from './ui-local/ReactModal';
11
+ export { DragAndDropList } from './ui-local/DragAndDropList';
12
+ export { AutoHeight } from './ui-local/AutoHeight';
13
+ export { DateRangePicker } from './ui-local/DateRangePicker';
@@ -0,0 +1,11 @@
1
+ import { type DataTableColumn, type DataTableView, type DataTableFlashColor } from './types';
2
+ export interface CellChange {
3
+ direction: 'up' | 'down' | 'changed';
4
+ newValue?: any;
5
+ }
6
+ export declare const FLASH_COLOR_MAP: Record<DataTableFlashColor, {
7
+ bg: string;
8
+ text: string;
9
+ }>;
10
+ export declare function resolveFlashColor(change: CellChange, column: DataTableColumn, config: DataTableView): DataTableFlashColor;
11
+ export declare function useDataChangeTracker(data: any[], rowKey: string | undefined, columns: DataTableColumn[]): Map<string, Map<string, CellChange>>;
@@ -0,0 +1,12 @@
1
+ import { type DataTableView, type DataTableColumn, type UseTableReturn, type DataTableInitialState } from './types';
2
+ import { type DataTableLabels } from './labels';
3
+ export declare function rowMatchesSearch<TData>(row: TData, columns: DataTableColumn<TData>[], search: string): boolean;
4
+ export interface UseTableOptions {
5
+ serverMode?: boolean;
6
+ rowCount?: number;
7
+ initialState?: DataTableInitialState;
8
+ defaultPageSize?: number;
9
+ labels?: DataTableLabels;
10
+ customPaging?: boolean;
11
+ }
12
+ export declare function useTable<TData = any>(data: TData[], config: DataTableView<TData>, options?: UseTableOptions): UseTableReturn<TData>;
@@ -0,0 +1 @@
1
+ export declare function mergeColumnOrder(saved: readonly string[], config: readonly string[]): string[];
@@ -0,0 +1,5 @@
1
+ export type DeepPartial<T> = T extends readonly unknown[] ? T : T extends object ? {
2
+ [K in keyof T]?: DeepPartial<T[K]>;
3
+ } : T;
4
+ export declare function extractDifferences<T>(current: T, defaults: T): DeepPartial<T>;
5
+ export declare function applyDifferences<T>(diff: DeepPartial<T>, defaults: T): T;
@@ -0,0 +1,19 @@
1
+ import type { DataTablePdfFonts } from '../types';
2
+ export type FileFormat = 'pdf' | 'xlsx' | 'csv' | 'html' | 'json' | 'xml' | 'png';
3
+ export type FileAction = 'download' | 'print' | 'share' | 'open' | 'preview';
4
+ export declare const EXTENSION_MAP: Record<FileFormat, string>;
5
+ export declare const MIME_MAP: Record<FileFormat, string>;
6
+ export declare function createPdfBlob(docDef: unknown, fontConfig?: DataTablePdfFonts): Promise<Blob>;
7
+ export declare function rawDataToBlob(format: FileFormat, data: any, fontConfig?: DataTablePdfFonts): Promise<Blob>;
8
+ export declare function safeFileBaseName(name: string): string;
9
+ export declare function safeFileName(filename: string): string;
10
+ export declare function downloadBlob(blob: Blob, filename: string): void;
11
+ export declare function shareFile(blob: Blob, filename: string): Promise<boolean>;
12
+ export declare function openPreview(blob: Blob, format: FileFormat, title?: string): {
13
+ type: "new_tab";
14
+ } | {
15
+ type: "modal";
16
+ };
17
+ export declare function executeFileAction(data: any, filename: string, format: FileFormat, action: string, title?: string, fontConfig?: DataTablePdfFonts): Promise<void>;
18
+ export declare function getExtension(format: FileFormat): string;
19
+ export declare function getFormatLabel(format: FileFormat): string;
@@ -0,0 +1,3 @@
1
+ export { mergeColumnOrder } from './columnOrder';
2
+ export { extractDifferences, applyDifferences, type DeepPartial } from './diff';
3
+ export { createPdfBlob, rawDataToBlob, downloadBlob, shareFile, openPreview, executeFileAction, getExtension, getFormatLabel, safeFileName, safeFileBaseName, EXTENSION_MAP, MIME_MAP, type FileFormat, type FileAction, } from './fileActions';
@@ -0,0 +1,27 @@
1
+ import { type MutableRefObject, type RefObject } from 'react';
2
+ import type { DataTableVirtualizeConfig } from '../types';
3
+ export interface VirtualOptions {
4
+ overscan: number;
5
+ estimate: number;
6
+ maxHeight?: number | string;
7
+ }
8
+ export interface ScrollApi {
9
+ scrollToIndex: (index: number) => void;
10
+ }
11
+ export declare const DEFAULT_OVERSCAN = 8;
12
+ export declare const DEFAULT_ROW_ESTIMATE = 44;
13
+ export declare function resolveVirtual(cfg: DataTableVirtualizeConfig | undefined): VirtualOptions | null;
14
+ export interface VirtualWindow {
15
+ indexes: number[];
16
+ before: number;
17
+ after: number;
18
+ measure: (el: Element | null) => void;
19
+ }
20
+ export declare function useVirtualLines(opts: {
21
+ options: VirtualOptions | null;
22
+ count: number;
23
+ scrollRef: RefObject<HTMLElement | null>;
24
+ getKey: (index: number) => string;
25
+ scrollMargin?: number;
26
+ scrollApi?: MutableRefObject<ScrollApi | null>;
27
+ }): VirtualWindow | null;
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ import type { CalendarView, IsoDay } from '../../../published/dcs-ui/src/publicLogic';
3
+ export type CalendarOutside = 'all' | 'leading' | 'trailing' | 'none';
4
+ export interface CalendarProps {
5
+ view: CalendarView;
6
+ dayId: (day: IsoDay) => string;
7
+ dayLabel: (day: IsoDay) => string;
8
+ weekdayNames: string[];
9
+ label: string;
10
+ outside?: CalendarOutside;
11
+ onPick: (day: IsoDay) => void;
12
+ }
13
+ export declare const Calendar: React.FC<CalendarProps>;
14
+ export default Calendar;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type { DatePickerProps, FieldHandle } from '../../../published/dcs-ui/src/publicTypes';
3
+ export declare const TYPING_SETTLE_MS = 250;
4
+ declare const DatePicker: React.ForwardRefExoticComponent<DatePickerProps & React.RefAttributes<FieldHandle>>;
5
+ export default DatePicker;
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import type { ControlSize, ControlVariant } from '../../../published/dcs-ui/src/publicTypes';
3
+ export interface TimeFieldProps {
4
+ id?: string;
5
+ size?: ControlSize;
6
+ variant?: ControlVariant;
7
+ label: string;
8
+ value: string;
9
+ onChange: (next: string) => void;
10
+ hour12?: boolean;
11
+ minuteStep?: number;
12
+ disabled?: boolean;
13
+ fallback?: string;
14
+ }
15
+ export declare const TimeField: React.FC<TimeFieldProps>;
16
+ export default TimeField;
@@ -0,0 +1,4 @@
1
+ export { default as DatePicker } from './DatePicker';
2
+ export { default as Calendar } from './Calendar';
3
+ export type { CalendarProps } from './Calendar';
4
+ export type { DatePickerProps, DatePickerBaseProps, DatePickerSingleProps, DatePickerRangeProps, DateRangeValue, DateDisplayFormat, DateTextOrder, } from '../../../published/dcs-ui/src/publicTypes';
@@ -0,0 +1,2 @@
1
+ export declare const ONE_MONTH_PANE = "(max-width: 768px)";
2
+ export declare function useOneMonthPane(): boolean;
@@ -19,53 +19,28 @@ export interface DialogStyles {
19
19
  }
20
20
  export interface DialogProps {
21
21
  open: boolean;
22
- /** Fired for the close button, backdrop, Escape, or a programmatic close. */
23
22
  onClose?: () => void;
24
- /**
25
- * Veto a close by returning false — a dirty-form guard. Runs for EVERY route out,
26
- * including Escape and the backdrop, so there is no way around it.
27
- */
28
23
  onBeforeClose?: () => boolean;
29
- /** Fired when Escape is pressed, before the close is decided. */
30
24
  onEscKeyDown?: (event: Event) => void;
31
- /** Fired when the backdrop is clicked, before the close is decided. */
32
25
  onOverlayClick?: (event: React.PointerEvent) => void;
33
- /** Fired after the exit animation finishes and the dialog has left the DOM. */
34
26
  onAnimationEnd?: () => void;
35
27
  children?: React.ReactNode;
36
28
  title?: React.ReactNode;
37
29
  subtitle?: React.ReactNode;
38
- /** Footer band, right-aligned. */
39
30
  footer?: React.ReactNode;
40
- /**
41
- * Blocks the page behind it and dims it. **Default true** — what most people mean by
42
- * "a modal". `false` opens a non-blocking panel and, because it uses `show()` rather than
43
- * `showModal()`, does not trap focus.
44
- */
45
31
  modal?: boolean;
46
- /** `center` is a dialog; `right` / `left` / `bottom` / `top` are what a "Sheet" is. */
47
32
  placement?: DialogPlacement;
48
33
  size?: DialogSize;
49
34
  closeOnBackdrop?: boolean;
50
35
  closeOnEscape?: boolean;
51
36
  showCloseButton?: boolean;
52
- /** Replace the built-in ✕. */
53
37
  closeIcon?: React.ReactNode;
54
38
  closeIconId?: string;
55
- /** Lock page scroll while open. Default true. */
56
39
  blockScroll?: boolean;
57
- /**
58
- * Pad the body by the scrollbar width when locking, so the page doesn't jump sideways as
59
- * the scrollbar disappears. Default true. No-op where scrollbars are overlaid (macOS).
60
- */
61
40
  reserveScrollBarGap?: boolean;
62
- /** Focus this when it opens, instead of the first focusable child. */
63
41
  initialFocusRef?: React.RefObject<HTMLElement | null>;
64
- /** Where to render. Defaults to `document.body`. */
65
42
  container?: Element | null;
66
- /** Enter/exit animation length in ms. Default 200. `0` disables. */
67
43
  animationDuration?: number;
68
- /** Body padding. Off for a full-bleed child — a table, an embedded report. */
69
44
  padded?: boolean;
70
45
  classNames?: DialogClassNames;
71
46
  styleSlots?: DialogStyles;
@@ -77,25 +52,5 @@ export interface DialogProps {
77
52
  'aria-labelledby'?: string;
78
53
  'aria-describedby'?: string;
79
54
  }
80
- /**
81
- * A dialog, on the native `<dialog>` element.
82
- *
83
- * Why the platform element rather than a div in a portal:
84
- *
85
- * - **`showModal()` puts it in the browser's TOP LAYER**, outside the z-index system entirely.
86
- * Nothing on the page can cover it — not a `z-index: 9999` loading overlay, which is the
87
- * exact failure that once locked this app behind an unreachable confirm.
88
- * - Focus trapping, `Escape`, an inert background, `::backdrop` and correct stacking of nested
89
- * dialogs come from the platform rather than being re-implemented.
90
- * - No dependency reaches consumers of the published package.
91
- *
92
- * The catch is the inverse of the win: because the dialog is in the top layer, a Popover
93
- * portalled to `<body>` would render BEHIND it. So the dialog publishes itself as the portal
94
- * container for its own subtree (`UIPortalContext`) — any Select, Suggest or Popover inside
95
- * renders into the dialog and therefore above it.
96
- *
97
- * Padding lives on the bands, not the panel, so a full-bleed child sits flush between a padded
98
- * header and footer. Same rule as Card.
99
- */
100
55
  declare const Dialog: React.FC<DialogProps>;
101
56
  export default Dialog;
@@ -1,43 +1,28 @@
1
1
  import React from 'react';
2
2
  import type { ButtonProps } from '../../../published/dcs-ui/src/publicTypes';
3
- /** Everything a Button takes, minus what the host drives itself. */
4
3
  export type DialogActionProps = Omit<ButtonProps, 'onClick' | 'loading' | 'children'>;
5
4
  export interface DialogChoice extends DialogActionProps {
6
- /** What `choose()` resolves to. Also the React key. */
7
5
  value: string;
8
6
  label: NonNullable<ButtonProps['label']>;
9
- /** Run when picked. May be async — the button shows loading until it settles. */
10
7
  action?: (...args: any[]) => unknown;
11
8
  args?: unknown[];
12
9
  }
13
10
  interface BaseOptions {
14
11
  title?: string;
15
- /** Newlines are preserved, so a multi-line message reads as written. */
16
12
  message: React.ReactNode;
17
- /** Cancel renders LAST. `null` drops it; Escape and the backdrop still cancel. */
18
13
  cancelLabel?: string | null;
19
14
  cancelButton?: DialogActionProps;
20
15
  }
21
16
  export interface ConfirmOptions extends BaseOptions {
22
17
  confirmLabel?: string;
23
- /** `danger` colours the confirm button `error`. */
24
18
  tone?: 'primary' | 'danger';
25
19
  confirmButton?: DialogActionProps;
26
20
  action?: (...args: any[]) => unknown;
27
21
  args?: unknown[];
28
- /**
29
- * Which button holds focus when the dialog opens, so Enter answers it. Default `confirm`;
30
- * pass `cancel` for a destructive question. Arrows move between the buttons either way.
31
- */
32
22
  focus?: 'confirm' | 'cancel';
33
23
  }
34
24
  export interface ChooseOptions extends BaseOptions {
35
- /** Two or more, rendered left-to-right before Cancel. */
36
25
  choices: DialogChoice[];
37
- /**
38
- * The `value` of the choice that holds focus when the dialog opens, or `'cancel'`.
39
- * Default: the first choice. Arrows move between the buttons either way.
40
- */
41
26
  focus?: string;
42
27
  }
43
28
  export interface AlertOptions {
@@ -48,32 +33,11 @@ export interface AlertOptions {
48
33
  okButton?: DialogActionProps;
49
34
  }
50
35
  export interface DialogApi {
51
- /** Yes / no. Resolves `false` on cancel, Escape or backdrop. */
52
36
  confirm: (opts: ConfirmOptions) => Promise<boolean>;
53
- /** N options. Resolves the chosen `value`, or `null` if dismissed. */
54
37
  choose: (opts: ChooseOptions) => Promise<string | null>;
55
- /** Acknowledge-only. */
56
38
  alert: (opts: AlertOptions) => Promise<void>;
57
39
  }
58
- /**
59
- * The imperative dialog API.
60
- *
61
- * Throws outside a `UIProvider` rather than returning no-ops: an `await confirm()` that
62
- * silently resolved `false` would look like the user clicking Cancel, and the calling code
63
- * would quietly do nothing. A dialog needs a host, so this is the one place the provider is
64
- * genuinely required.
65
- */
66
40
  export declare const useDialog: () => DialogApi;
67
- /**
68
- * Rendered once by `UIProvider`. Owns the single dialog instance the imperative API drives.
69
- *
70
- * This is the reason the API is worth moving into the library: the previous hook returned a
71
- * `confirmHost` ELEMENT that every call site had to remember to render, with a warning in its
72
- * own docstring that returning a component instead remounted the subtree and broke a form
73
- * mid-edit. Hosting centrally removes the whole class of mistake.
74
- *
75
- * Renders through `<Dialog>` rather than beside it, so there is one dialog implementation.
76
- */
77
41
  export declare const DialogHost: React.FC<{
78
42
  children?: React.ReactNode;
79
43
  }>;
@@ -1,49 +1,49 @@
1
1
  import React from 'react';
2
2
  import type { PopoverPlacement } from '../../../published/dcs-ui/src/publicLogic';
3
+ import type { FloatingAnchor } from '../Popover/floatingPosition';
3
4
  export interface DropdownMenuItem {
4
- /** Returned by `onSelect`. Also the React key. */
5
5
  value: string;
6
6
  label: React.ReactNode;
7
- /** Secondary line under the label. */
8
7
  description?: React.ReactNode;
9
8
  icon?: React.ReactNode;
10
- /** Trailing hint — a shortcut, a count. */
11
9
  hint?: React.ReactNode;
12
10
  disabled?: boolean;
13
- /** Renders in the destructive colour. */
14
11
  danger?: boolean;
15
- /** Non-selectable heading above this item. */
16
12
  groupLabel?: string;
17
- /** Separator line above this item. */
18
13
  divider?: boolean;
14
+ pane?: string;
15
+ }
16
+ export interface DropdownMenuIcon {
17
+ value: string;
18
+ label: string;
19
+ shortLabel?: string;
20
+ icon: React.ReactNode;
21
+ shortcut?: string;
22
+ disabled?: boolean;
23
+ pane?: string;
24
+ }
25
+ export interface DropdownMenuPane {
26
+ id: string;
27
+ title: React.ReactNode;
28
+ content: React.ReactNode;
19
29
  }
20
30
  export interface DropdownMenuProps {
21
- /** Element that opens the menu. Cloned to attach the ref, click and ARIA wiring. */
22
- trigger: React.ReactElement;
31
+ trigger?: React.ReactElement;
32
+ open?: boolean;
33
+ anchor?: FloatingAnchor | null;
34
+ onClose?: () => void;
35
+ header?: React.ReactNode;
36
+ icons?: DropdownMenuIcon[];
37
+ panes?: DropdownMenuPane[];
38
+ present?: 'popover' | 'sheet';
23
39
  items: DropdownMenuItem[];
24
40
  onSelect?: (value: string, item: DropdownMenuItem) => void;
25
41
  placement?: PopoverPlacement;
26
- /** Force the menu to the trigger's width. */
27
42
  matchTriggerWidth?: boolean;
28
- /**
29
- * Row density. Drives the shared popup list's `size_*` class, which is what DEFINES
30
- * `--popup-row-pad-y` / `--popup-pad-x` / the font steps. Without one the rows render
31
- * with no padding at all, because `.row` reads custom properties nothing declared.
32
- */
33
43
  size?: 'xxs' | 'xs' | 'small' | 'medium' | 'large' | 'xl';
34
- /** Keep it open after a selection — for a menu of toggles. Default false. */
35
44
  closeOnSelect?: boolean;
36
45
  'aria-label'?: string;
37
46
  className?: string;
38
47
  }
39
- /**
40
- * A menu on top of `Popover` — no second positioning implementation, and the rows reuse the
41
- * same `popupList` module Select and Suggest render, so a menu row and an option row are the
42
- * same object visually.
43
- *
44
- * Keyboard follows the menu pattern rather than the listbox one: arrows move a roving cursor,
45
- * Home/End jump, Enter or Space activates, Escape closes and returns focus to the trigger.
46
- * Disabled items are skipped rather than focused-and-ignored.
47
- */
48
48
  declare const DropdownMenu: React.FC<DropdownMenuProps>;
49
49
  export default DropdownMenu;
@@ -1,10 +1,5 @@
1
1
  import React from 'react';
2
2
  import type { EditableTableMethods, EditableTableProps } from '../../../published/dcs-ui/src/publicTypes';
3
- /**
4
- * `forwardRef` around a GENERIC component loses the generic, so the cast puts it back —
5
- * the same two lines `Form` uses, deliberately, since these two are the halves of one
6
- * entry screen and should be reached the same way.
7
- */
8
3
  declare const EditableTable: <T extends Record<string, any>>(props: EditableTableProps<T> & {
9
4
  ref?: React.Ref<EditableTableMethods<T>>;
10
5
  }) => React.ReactElement | null;
@@ -1,33 +1,15 @@
1
1
  import React from 'react';
2
2
  import type { ChangeContext, ColumnAlign, EditableTableColumnDefinition, FieldComponentRegistry, FieldTooltipProps, ResolvedColumnLayout } from '../../../published/dcs-ui/src/publicTypes';
3
3
  import type { ResolvedRule } from '../../../published/dcs-ui/src/publicLogic';
4
- /**
5
- * The frame attributes a column's cells share — header, body and totals alike.
6
- *
7
- * Alignment travels as CSS variables rather than a prop on every field: the field's
8
- * text reads `--cell-text-align`, a toggle's container reads `--cell-justify`, and
9
- * neither needs to know which column it is in.
10
- */
11
4
  export declare function frameProps(layout: ResolvedColumnLayout): {
12
5
  'data-align': ColumnAlign;
13
6
  'data-sticky'?: 'left' | 'right';
14
7
  'data-sticky-edge'?: '';
15
8
  style: React.CSSProperties;
16
9
  };
17
- /**
18
- * A derived value's default display. Numbers group `en-IN` exactly as the Table's
19
- * totals do, so a T.Cost cell and the T.Cost total below it read the same way; a
20
- * blank row still being typed shows nothing rather than `0` or `NaN`.
21
- */
22
10
  export declare function formatReadOnlyValue(value: unknown): string;
23
11
  export interface EditableTableCellProps<T> {
24
- /**
25
- * This cell's resolved rules. A failure becomes the field's `error`, which the cell
26
- * layout already draws as a red inset edge with the message in the control's tooltip —
27
- * no extra row, so nothing below shifts while someone is typing.
28
- */
29
12
  rule?: ResolvedRule;
30
- /** Focus landed here after a row was added or removed — flash it once. */
31
13
  landed?: boolean;
32
14
  column: EditableTableColumnDefinition<T>;
33
15
  layout: ResolvedColumnLayout;
@@ -3,23 +3,12 @@ import type { EditableTableRowProps, ResolvedColumnLayout } from '../../../publi
3
3
  import type { EditableTableCellActions } from '../../../published/dcs-ui/src/publicTypes';
4
4
  import type { ResolvedRule } from '../../../published/dcs-ui/src/publicLogic';
5
5
  export interface EditableTableRowRenderProps<T> extends EditableTableRowProps<T> {
6
- /** One resolved frame per column, from `resolveTableLayout`. */
7
6
  columnLayouts: ResolvedColumnLayout[];
8
- /** Per-cell validation, resolved by the table (pure `resolveColumnRules` underneath). */
9
7
  getCellRule?: (rowIndex: number, cellindex: number) => ResolvedRule;
10
- /** The table's row operations, for cells that ACT — a button column's `onClick`. */
11
8
  cellActions?: EditableTableCellActions;
12
- /** `'entering'` | `'exiting'` while this row is animating — see `useRowAnimation`. */
13
9
  rowState?: 'entering' | 'exiting';
14
- /** The column focus landed on after a row operation, flashed once so it can be seen. */
15
10
  landedCellIndex?: number | null;
16
11
  }
17
- /**
18
- * A row is just its cells. It used to hand the whole column list to `Fields`, which
19
- * wrapped each field in a bare `<td>` it had no way to size, align or pin — so the
20
- * row could not own its frame. Each column now renders through `EditableTableCell`,
21
- * which does.
22
- */
23
12
  declare const EditableTableRow: <T extends Record<string, any>>({ defaultData, rowIndex, rowData, columnFields, columnLayouts, getCellRule, cellActions, rowState, landedCellIndex, editableTableData, onChange, onKeyDown, onSelect, onCellFocus, registerCellRef, focusedRowIndex, isFocusedRow, focusedCellIndex, tableDataKey, renderAuthorize, renderTooltip, componentRegistry, }: EditableTableRowRenderProps<T>) => React.JSX.Element;
24
13
  declare const _default: typeof EditableTableRow;
25
14
  export default _default;
@@ -1,17 +1,6 @@
1
1
  import React from 'react';
2
2
  import type { ResolvedTableSummary } from '../../../published/dcs-ui/src/publicLogic';
3
3
  import type { EditableTableProps, EditableTableSummaryContext, SummaryLicenseConfig } from '../../../published/dcs-ui/src/publicTypes';
4
- /**
5
- * The area under the table (D4) — everything that is not a column total.
6
- *
7
- * Two forms, one prop:
8
- * - **config** — the client Table's `TableSummaryConfig`, unchanged, resolved by the
9
- * same pure logic, so a summary written for a report table renders here as-is;
10
- * - **render function** — handed the rows, the resolved column totals and the row
11
- * actions, for custom figures and action buttons the table knows nothing about.
12
- *
13
- * Rendered below the scroll container, so it is always visible without sticking.
14
- */
15
4
  interface EditableTableSummaryProps<T> {
16
5
  summary: NonNullable<EditableTableProps<T>['summary']>;
17
6
  resolved: ResolvedTableSummary;