@dcs-tech/ui 0.9.0 → 0.11.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 (235) hide show
  1. package/CHANGELOG.md +488 -0
  2. package/README.md +43 -7
  3. package/THIRD_PARTY_NOTICES.md +23 -0
  4. package/dist/ChartImageMenu-sB2QNQzd.js +9673 -0
  5. package/dist/ChartView-BstZkP1g.js +1942 -0
  6. package/dist/{SummaryChart-CxRjK_HU.js → SummaryChart-B5ibDNOZ.js} +11 -10
  7. package/dist/{SummaryImage-Crf1R-3a.js → SummaryImage-CRP7X2Nl.js} +2 -2
  8. package/dist/SummarySeeAll-CtYRGV4G.js +101 -0
  9. package/dist/assets/fileTask.worker-D97s2vRV.js +1 -0
  10. package/dist/columnValue-BOn9NC8X.js +644 -0
  11. package/dist/exportContext-CMzuzRjc.js +274 -0
  12. package/dist/{exportEngine-BFZD6djX.js → exportEngine-CYDN8Ty-.js} +167 -137
  13. package/dist/file-worker.js +1 -1
  14. package/dist/{fileActions-CFNO14Aj.js → fileActions-DkPEWE-t.js} +1 -1
  15. package/dist/{geometry-yZmKN662.js → geometry-CFS5If1N.js} +848 -439
  16. package/dist/index.js +24208 -12603
  17. package/dist/{labels-CnqqTrne.js → labels-mukFhYkc.js} +126 -1
  18. package/dist/{runFileTask-BIZTFnZP.js → runFileTask-DI_39TjR.js} +17 -0
  19. package/dist/scrollArea-B52kugL1.js +291 -0
  20. package/dist/style.css +1 -1
  21. package/dist/{summaryChartData-CARqGRUl.js → summaryChartData-D15kw64n.js} +10 -3
  22. package/dist/types/components/Alert/Alert.d.ts +16 -0
  23. package/dist/types/components/Alert/index.d.ts +2 -0
  24. package/dist/types/components/Card/Card.d.ts +4 -3
  25. package/dist/types/components/Card/index.d.ts +1 -1
  26. package/dist/types/components/Charts/BarList.d.ts +4 -3
  27. package/dist/types/components/Charts/CalendarHeatmap.d.ts +4 -2
  28. package/dist/types/components/Charts/Chart.d.ts +3 -2
  29. package/dist/types/components/Charts/ChartView.d.ts +3 -2
  30. package/dist/types/components/Charts/ColumnChart.d.ts +4 -3
  31. package/dist/types/components/Charts/Donut.d.ts +3 -2
  32. package/dist/types/components/Charts/Funnel.d.ts +4 -2
  33. package/dist/types/components/Charts/Gauge.d.ts +3 -2
  34. package/dist/types/components/Charts/LineChart.d.ts +4 -3
  35. package/dist/types/components/Charts/NumberTrend.d.ts +4 -3
  36. package/dist/types/components/Charts/Progress.d.ts +3 -2
  37. package/dist/types/components/Charts/StackedBar.d.ts +3 -2
  38. package/dist/types/components/Charts/Treemap.d.ts +3 -2
  39. package/dist/types/components/Charts/chartData.d.ts +6 -0
  40. package/dist/types/components/Charts/chartImage.d.ts +3 -0
  41. package/dist/types/components/Charts/geometry.d.ts +3 -0
  42. package/dist/types/components/Charts/index.d.ts +2 -0
  43. package/dist/types/components/Charts/palette.d.ts +1 -0
  44. package/dist/types/components/Charts/parts.d.ts +14 -0
  45. package/dist/types/components/Charts/useChartMotion.d.ts +8 -0
  46. package/dist/types/components/ChipInput/ChipTags.d.ts +3 -0
  47. package/dist/types/components/CommandPalette/CommandPaletteTrigger.d.ts +9 -0
  48. package/dist/types/components/CommandPalette/index.d.ts +2 -0
  49. package/dist/types/components/DataTable/DataTable.d.ts +3 -1
  50. package/dist/types/components/DataTable/DisplayPopover.d.ts +1 -0
  51. package/dist/types/components/DataTable/HeaderMenu.d.ts +1 -0
  52. package/dist/types/components/DataTable/TableColumnModal.d.ts +4 -1
  53. package/dist/types/components/DataTable/TablePagination.d.ts +1 -1
  54. package/dist/types/components/DataTable/TableToolbar.d.ts +21 -1
  55. package/dist/types/components/DataTable/TableView.d.ts +19 -2
  56. package/dist/types/components/DataTable/cards/CardView.d.ts +25 -5
  57. package/dist/types/components/DataTable/cards/cardFields.d.ts +1 -0
  58. package/dist/types/components/DataTable/cards/rowParts.d.ts +1 -0
  59. package/dist/types/components/DataTable/cellSelection/CellRangeBar.d.ts +16 -0
  60. package/dist/types/components/DataTable/cellSelection/cellRangeStore.d.ts +18 -0
  61. package/dist/types/components/DataTable/cellSelection/paintRanges.d.ts +2 -0
  62. package/dist/types/components/DataTable/cellSelection/useCellSelection.d.ts +63 -0
  63. package/dist/types/components/DataTable/data/listDelta.d.ts +27 -0
  64. package/dist/types/components/DataTable/data/rowLineage.d.ts +3 -0
  65. package/dist/types/components/DataTable/data/rowModels.d.ts +9 -0
  66. package/dist/types/components/DataTable/data/rowTransaction.d.ts +9 -0
  67. package/dist/types/components/DataTable/data/useServerData.d.ts +3 -1
  68. package/dist/types/components/DataTable/defaults.d.ts +4 -0
  69. package/dist/types/components/DataTable/export/exportCells.d.ts +5 -2
  70. package/dist/types/components/DataTable/export/exportEngine.d.ts +7 -2
  71. package/dist/types/components/DataTable/export/useTableExport.d.ts +17 -1
  72. package/dist/types/components/DataTable/filters/filterRowModel.d.ts +1 -0
  73. package/dist/types/components/DataTable/grouping/groupModel.d.ts +11 -0
  74. package/dist/types/components/DataTable/index.d.ts +1 -1
  75. package/dist/types/components/DataTable/keyboard/ShortcutsDialog.d.ts +4 -1
  76. package/dist/types/components/DataTable/keyboard/useGridKeyboard.d.ts +8 -0
  77. package/dist/types/components/DataTable/labels.d.ts +130 -0
  78. package/dist/types/components/DataTable/layout/LayoutSwitcher.d.ts +10 -2
  79. package/dist/types/components/DataTable/layout/useFitWidths.d.ts +7 -0
  80. package/dist/types/components/DataTable/menu/RowMenu.d.ts +1 -0
  81. package/dist/types/components/DataTable/menu/buildRowMenu.d.ts +6 -3
  82. package/dist/types/components/DataTable/motion/RowChangeNotice.d.ts +19 -0
  83. package/dist/types/components/DataTable/motion/rowChanges.d.ts +25 -0
  84. package/dist/types/components/DataTable/motion/useNoticeInsets.d.ts +2 -0
  85. package/dist/types/components/DataTable/motion/useRowChangeNotices.d.ts +35 -0
  86. package/dist/types/components/DataTable/motion/useRowMotion.d.ts +29 -3
  87. package/dist/types/components/DataTable/persistence/reconcile.d.ts +4 -0
  88. package/dist/types/components/DataTable/persistence/useColumnPersistence.d.ts +5 -1
  89. package/dist/types/components/DataTable/pivot/PivotPanel.d.ts +11 -0
  90. package/dist/types/components/DataTable/pivot/PivotView.d.ts +22 -0
  91. package/dist/types/components/DataTable/pivot/pivotModel.d.ts +54 -0
  92. package/dist/types/components/DataTable/pivot/usePivot.d.ts +44 -0
  93. package/dist/types/components/DataTable/rows/PressRow.d.ts +1 -0
  94. package/dist/types/components/DataTable/rows/RowLead.d.ts +23 -0
  95. package/dist/types/components/DataTable/rows/rowPress.d.ts +2 -0
  96. package/dist/types/components/DataTable/rows/usePinnedRows.d.ts +34 -0
  97. package/dist/types/components/DataTable/rows/useRowDrag.d.ts +44 -0
  98. package/dist/types/components/DataTable/split/SplitView.d.ts +4 -2
  99. package/dist/types/components/DataTable/summary/SummaryChart.d.ts +2 -1
  100. package/dist/types/components/DataTable/summary/TableSummary.d.ts +2 -1
  101. package/dist/types/components/DataTable/summary/summaryModel.d.ts +28 -6
  102. package/dist/types/components/DataTable/summary/useTableSummary.d.ts +3 -0
  103. package/dist/types/components/DataTable/toolbar/ToolbarMore.d.ts +14 -0
  104. package/dist/types/components/DataTable/toolbar/useToolbarFit.d.ts +10 -0
  105. package/dist/types/components/DataTable/tree/TreeChips.d.ts +5 -0
  106. package/dist/types/components/DataTable/tree/treeExport.d.ts +54 -0
  107. package/dist/types/components/DataTable/tree/treeMove.d.ts +1 -0
  108. package/dist/types/components/DataTable/tree/useTreeChildren.d.ts +15 -0
  109. package/dist/types/components/DataTable/tree/useTreeData.d.ts +60 -0
  110. package/dist/types/components/DataTable/types.d.ts +290 -6
  111. package/dist/types/components/DataTable/ui-local/TableReorderList.d.ts +13 -0
  112. package/dist/types/components/DataTable/ui.d.ts +2 -1
  113. package/dist/types/components/DataTable/useDataChangeTracker.d.ts +11 -4
  114. package/dist/types/components/DataTable/useTable.d.ts +14 -1
  115. package/dist/types/components/DataTable/virtual/useVirtualLines.d.ts +1 -0
  116. package/dist/types/components/DatePicker/PeriodGrid.d.ts +13 -0
  117. package/dist/types/components/DatePicker/PeriodPicker.d.ts +19 -0
  118. package/dist/types/components/DatePicker/index.d.ts +1 -1
  119. package/dist/types/components/Dialog/dialogSlots.d.ts +9 -0
  120. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +8 -0
  121. package/dist/types/components/EventCalendar/EventCalendar.d.ts +46 -0
  122. package/dist/types/components/EventCalendar/eventParts.d.ts +10 -0
  123. package/dist/types/components/EventCalendar/index.d.ts +3 -0
  124. package/dist/types/components/EventCalendar/useCalendarEdit.d.ts +40 -0
  125. package/dist/types/components/FieldWrapper/index.d.ts +1 -1
  126. package/dist/types/components/Fields/index.d.ts +1 -1
  127. package/dist/types/components/Icon/Icon.d.ts +36 -0
  128. package/dist/types/components/Icon/Icon.storyData.d.ts +6 -0
  129. package/dist/types/components/Icon/IconContext.d.ts +7 -0
  130. package/dist/types/components/Icon/icons.d.ts +223 -0
  131. package/dist/types/components/Icon/index.d.ts +7 -0
  132. package/dist/types/components/Icon/useIconDone.d.ts +5 -0
  133. package/dist/types/components/Image/ImageEditor.d.ts +21 -0
  134. package/dist/types/components/Image/ImagePicker.d.ts +10 -1
  135. package/dist/types/components/Image/imageRender.d.ts +33 -0
  136. package/dist/types/components/Image/index.d.ts +3 -1
  137. package/dist/types/components/Image/prepareImage.d.ts +4 -3
  138. package/dist/types/components/Link/Link.d.ts +22 -0
  139. package/dist/types/components/Link/index.d.ts +2 -0
  140. package/dist/types/components/NavList/NavList.d.ts +13 -0
  141. package/dist/types/components/NavList/index.d.ts +2 -0
  142. package/dist/types/components/PageProgress/PageProgress.d.ts +10 -0
  143. package/dist/types/components/PageProgress/index.d.ts +2 -0
  144. package/dist/types/components/Pagination/Pagination.d.ts +19 -0
  145. package/dist/types/components/Pagination/index.d.ts +2 -0
  146. package/dist/types/components/Popover/Popover.d.ts +2 -1
  147. package/dist/types/components/Popover/floatingPosition.d.ts +26 -2
  148. package/dist/types/components/ReorderList/ReorderGroup.d.ts +16 -0
  149. package/dist/types/components/ReorderList/ReorderList.d.ts +56 -0
  150. package/dist/types/components/ReorderList/crossListDrag.d.ts +61 -0
  151. package/dist/types/components/ReorderList/index.d.ts +5 -0
  152. package/dist/types/components/ReorderList/useReorderDrag.d.ts +28 -0
  153. package/dist/types/components/Scroll/ui.d.ts +1 -0
  154. package/dist/types/components/SlidingHighlight/index.d.ts +2 -0
  155. package/dist/types/components/SlidingHighlight/useSlidingHighlight.d.ts +20 -0
  156. package/dist/types/components/Suggest/SuggestionList.d.ts +1 -0
  157. package/dist/types/components/Tooltip/useTooltip.d.ts +4 -0
  158. package/dist/types/components/UIProvider/UILabelsContext.d.ts +120 -0
  159. package/dist/types/components/UIProvider/UIProvider.d.ts +2 -0
  160. package/dist/types/core/hooks/index.d.ts +2 -1
  161. package/dist/types/core/hooks/useMeasuredState.d.ts +1 -0
  162. package/dist/types/core/hooks/usePresence.d.ts +1 -0
  163. package/dist/types/core/icons/actions.icons.d.ts +37 -0
  164. package/dist/types/core/icons/commerce.icons.d.ts +16 -0
  165. package/dist/types/core/icons/communication.icons.d.ts +10 -0
  166. package/dist/types/core/icons/delivery.icons.d.ts +13 -0
  167. package/dist/types/core/icons/devices.icons.d.ts +16 -0
  168. package/dist/types/core/icons/files.icons.d.ts +13 -0
  169. package/dist/types/core/icons/general.icons.d.ts +24 -0
  170. package/dist/types/core/icons/index.d.ts +14 -0
  171. package/dist/types/core/icons/media.icons.d.ts +11 -0
  172. package/dist/types/core/icons/navigation.icons.d.ts +25 -0
  173. package/dist/types/core/icons/people.icons.d.ts +13 -0
  174. package/dist/types/core/icons/registry.d.ts +2 -0
  175. package/dist/types/core/icons/state.icons.d.ts +14 -0
  176. package/dist/types/core/icons/status.icons.d.ts +10 -0
  177. package/dist/types/core/icons/table.icons.d.ts +22 -0
  178. package/dist/types/core/icons/text.icons.d.ts +13 -0
  179. package/dist/types/core/logic/alert.logic.d.ts +3 -0
  180. package/dist/types/core/logic/cellRange.logic.d.ts +66 -0
  181. package/dist/types/core/logic/cellTouch.logic.d.ts +16 -0
  182. package/dist/types/core/logic/columnGroups.logic.d.ts +31 -0
  183. package/dist/types/core/logic/commandPalette.logic.d.ts +2 -0
  184. package/dist/types/core/logic/datePicker.logic.d.ts +12 -0
  185. package/dist/types/core/logic/dropdownSide.logic.d.ts +19 -0
  186. package/dist/types/core/logic/eventCalendar.logic.d.ts +225 -0
  187. package/dist/types/core/logic/fieldWrapper.logic.d.ts +6 -1
  188. package/dist/types/core/logic/fitColumns.logic.d.ts +7 -0
  189. package/dist/types/core/logic/icon.logic.d.ts +24 -0
  190. package/dist/types/core/logic/imageEditor.logic.d.ts +132 -0
  191. package/dist/types/core/logic/imageTransform.logic.d.ts +57 -0
  192. package/dist/types/core/logic/index.d.ts +25 -0
  193. package/dist/types/core/logic/inertProps.d.ts +3 -0
  194. package/dist/types/core/logic/pageProgress.logic.d.ts +3 -0
  195. package/dist/types/core/logic/pagination.logic.d.ts +7 -0
  196. package/dist/types/core/logic/periodPicker.logic.d.ts +86 -0
  197. package/dist/types/core/logic/pivot.logic.d.ts +100 -0
  198. package/dist/types/core/logic/reorder.logic.d.ts +49 -0
  199. package/dist/types/core/logic/rowActions.logic.d.ts +7 -0
  200. package/dist/types/core/logic/rowDrag.logic.d.ts +36 -0
  201. package/dist/types/core/logic/rowPinning.logic.d.ts +12 -0
  202. package/dist/types/core/logic/slidingHighlight.logic.d.ts +20 -0
  203. package/dist/types/core/logic/toolbarOverflow.logic.d.ts +21 -0
  204. package/dist/types/core/logic/treeData.logic.d.ts +44 -0
  205. package/dist/types/core/logic/treeDrag.logic.d.ts +63 -0
  206. package/dist/types/core/logic/tween.logic.d.ts +33 -0
  207. package/dist/types/core/logic/visualViewport.logic.d.ts +13 -0
  208. package/dist/types/core/types/chipinput.types.d.ts +3 -1
  209. package/dist/types/core/types/collapsible.types.d.ts +3 -0
  210. package/dist/types/core/types/datePicker.types.d.ts +7 -0
  211. package/dist/types/core/types/eventCalendar.types.d.ts +18 -0
  212. package/dist/types/core/types/field.types.d.ts +6 -3
  213. package/dist/types/core/types/fieldWrapper.types.d.ts +2 -0
  214. package/dist/types/core/types/fields.types.d.ts +6 -1
  215. package/dist/types/core/types/fileEngine.types.d.ts +6 -0
  216. package/dist/types/core/types/form.types.d.ts +1 -0
  217. package/dist/types/core/types/format.types.d.ts +2 -0
  218. package/dist/types/core/types/icon.types.d.ts +109 -0
  219. package/dist/types/core/types/index.d.ts +2 -0
  220. package/dist/types/core/types/input.types.d.ts +2 -0
  221. package/dist/types/core/types/navigation.types.d.ts +1 -0
  222. package/dist/types/core/types/select.types.d.ts +2 -6
  223. package/dist/types/core/types/suggest.types.d.ts +2 -0
  224. package/dist/types/index.d.ts +31 -6
  225. package/package.json +4 -4
  226. package/dist/ChartImageMenu-DDVNJNc6.js +0 -1499
  227. package/dist/ChartView-CW3m4Z_1.js +0 -1703
  228. package/dist/SummarySeeAll-BRHOMQRA.js +0 -101
  229. package/dist/assets/fileTask.worker--Q3rI3Bn.js +0 -1
  230. package/dist/columnValue-DwUqueZ6.js +0 -610
  231. package/dist/exportContext-BKFnNQ0q.js +0 -166
  232. package/dist/scrollArea-DbYFqbIH.js +0 -269
  233. package/dist/types/components/DataTable/ui-local/DragAndDropList/DragAndDropList.d.ts +0 -4
  234. package/dist/types/components/DataTable/ui-local/DragAndDropList/index.d.ts +0 -3
  235. package/dist/types/components/DataTable/ui-local/DragAndDropList/types.d.ts +0 -70
@@ -0,0 +1,63 @@
1
+ export interface TreeShape {
2
+ parentOf: ReadonlyMap<string, string | null>;
3
+ childrenOf: ReadonlyMap<string, readonly string[]>;
4
+ roots: readonly string[];
5
+ }
6
+ export interface TreeDragLine {
7
+ id: string;
8
+ depth: number;
9
+ }
10
+ export interface TreeDropPlace {
11
+ parent: string | null;
12
+ index: number;
13
+ }
14
+ export interface TreeDropTarget extends TreeDropPlace {
15
+ gap: number;
16
+ level: number;
17
+ inside: boolean;
18
+ }
19
+ export declare function treeMovingRoots(tree: Pick<TreeShape, 'parentOf'>, ids: readonly string[]): string[];
20
+ export declare function treeMovingSet(tree: Pick<TreeShape, 'childrenOf'>, roots: readonly string[]): Set<string>;
21
+ export declare function treeRestLines<L extends TreeDragLine>(lines: readonly L[], moving: ReadonlySet<string>): L[];
22
+ export declare function treeGapLevels(rest: readonly TreeDragLine[], gap: number): {
23
+ min: number;
24
+ max: number;
25
+ };
26
+ export declare function treeInsideTarget(tree: TreeShape, rest: readonly TreeDragLine[], line: number, moving: ReadonlySet<string>): TreeDropTarget | null;
27
+ export declare function treeGapTarget(tree: TreeShape, rest: readonly TreeDragLine[], gap: number, level: number, moving: ReadonlySet<string>): TreeDropTarget;
28
+ export interface TreeLineRect {
29
+ line: number;
30
+ top: number;
31
+ bottom: number;
32
+ }
33
+ export declare function treePointerSpot(rects: readonly TreeLineRect[], y: number): {
34
+ gap: number;
35
+ } | {
36
+ inside: number;
37
+ } | null;
38
+ export declare function treePlaceOf(tree: TreeShape, id: string): {
39
+ parent: string | null;
40
+ index: number;
41
+ };
42
+ export declare function treeStartGap(lines: readonly TreeDragLine[], moving: ReadonlySet<string>, first: string): {
43
+ gap: number;
44
+ level: number;
45
+ };
46
+ export declare function treeIndentPlace(tree: TreeShape, roots: readonly string[], moving: ReadonlySet<string>): TreeDropPlace | null;
47
+ export declare function treeOutdentPlace(tree: TreeShape, roots: readonly string[], moving: ReadonlySet<string>): TreeDropPlace | null;
48
+ export interface TreeMove {
49
+ from: Array<{
50
+ id: string;
51
+ parent: string | null;
52
+ index: number;
53
+ }>;
54
+ parent: string | null;
55
+ index: number;
56
+ siblings: string[];
57
+ parentOf: Map<string, string | null>;
58
+ childrenOf: Map<string, string[]>;
59
+ roots: string[];
60
+ order: string[];
61
+ }
62
+ export declare function moveTreeRows(tree: TreeShape, roots: readonly string[], place: TreeDropPlace): TreeMove | null;
63
+ export declare function treeOrderOf(tree: Pick<TreeShape, 'childrenOf' | 'roots'>): string[];
@@ -0,0 +1,33 @@
1
+ export declare const MOTION_MS: {
2
+ readonly micro: 100;
3
+ readonly short: 150;
4
+ readonly medium: 200;
5
+ readonly long: 300;
6
+ };
7
+ export declare const EASE_STANDARD_POINTS: readonly [0.2, 0, 0, 1];
8
+ export declare function cubicBezier(x1: number, y1: number, x2: number, y2: number): (t: number) => number;
9
+ export declare const easeStandard: (t: number) => number;
10
+ export type TweenValues = Readonly<Record<string, number>>;
11
+ export interface Tween {
12
+ from: TweenValues;
13
+ to: TweenValues;
14
+ start: number;
15
+ duration: number;
16
+ hold?: (name: string) => boolean;
17
+ }
18
+ export declare const tweenDone: (tween: Tween, now: number) => boolean;
19
+ export declare function tweenAt(tween: Tween, now: number, ease?: (t: number) => number): Record<string, number>;
20
+ export declare function retarget(current: Tween | null, settled: TweenValues, to: TweenValues, now: number, duration: number, ease?: (t: number) => number, hold?: (name: string) => boolean): Tween;
21
+ export declare function sameValues(a: TweenValues, b: TweenValues): boolean;
22
+ export declare function withLeaving<T>(current: readonly T[], previous: readonly T[], keyOf: (item: T) => string, alive: (key: string) => boolean): T[];
23
+ export declare function presenceGaps(presence: readonly number[]): number[];
24
+ export declare function presenceBands(presence: readonly number[]): Array<{
25
+ start: number;
26
+ size: number;
27
+ }>;
28
+ export declare function presenceSpread(presence: readonly number[]): number[];
29
+ export declare function drawnTicks(values: TweenValues, prefix: string): Array<{
30
+ value: number;
31
+ alpha: number;
32
+ }>;
33
+ export declare const tickAt: (value: number, max: number) => number;
@@ -0,0 +1,13 @@
1
+ export interface VisualViewportBox {
2
+ height: number;
3
+ offsetTop: number;
4
+ }
5
+ export interface VerticalBand {
6
+ top: number;
7
+ bottom: number;
8
+ }
9
+ export declare function visibleBand(bounds: VerticalBand, visual?: VisualViewportBox | null): VerticalBand;
10
+ export declare function roomInBand(side: 'top' | 'bottom', anchor: {
11
+ top: number;
12
+ bottom: number;
13
+ }, band: VerticalBand, offset?: number, padding?: number): number;
@@ -48,7 +48,9 @@ export type ChipInputSize = FieldSize;
48
48
  export type ChipInputVariant = FieldVariant;
49
49
  export type ChipInputLayout = FieldLayout;
50
50
  export interface ChipInputProps extends TextFieldProps<string, HTMLDivElement> {
51
- sources: ChipSources;
51
+ sources?: ChipSources;
52
+ tags?: string[];
53
+ onTagsChange?: (tags: string[]) => void;
52
54
  syntax?: ChipTokenSyntax;
53
55
  inputClassName?: string;
54
56
  previewData?: Record<string, Record<string, any>>;
@@ -23,6 +23,7 @@ export interface CollapsibleItemProps {
23
23
  disabled?: boolean;
24
24
  collapsedIcon?: ReactNode;
25
25
  expandedIcon?: ReactNode;
26
+ keepMounted?: boolean;
26
27
  onChange?: (expanded: boolean) => void;
27
28
  authorize?: CollapsibleAuthorize;
28
29
  className?: string;
@@ -48,6 +49,7 @@ export interface CollapsibleProps {
48
49
  disclosure?: CollapsibleDisclosure;
49
50
  iconTile?: boolean;
50
51
  headingLevel?: CollapsibleHeadingLevel;
52
+ keepMounted?: boolean;
51
53
  disabled?: boolean;
52
54
  className?: string;
53
55
  style?: CSSProperties;
@@ -73,6 +75,7 @@ export interface CollapsibleContextValue {
73
75
  disclosure: CollapsibleDisclosure;
74
76
  iconTile: boolean;
75
77
  headingLevel: CollapsibleHeadingLevel;
78
+ keepMounted: boolean;
76
79
  keyboardNavigation: boolean;
77
80
  disabled: boolean;
78
81
  animated: boolean;
@@ -3,14 +3,20 @@ import type { FieldChangeEvent } from './control.types';
3
3
  import type { FieldPopupProps, TextFieldProps } from './field.types';
4
4
  export type DateDisplayFormat = 'dd-mm-yyyy' | 'dd/mm/yyyy' | 'yyyy-mm-dd';
5
5
  export type DateTextOrder = 'dmy' | 'mdy' | 'ymd';
6
+ export type DatePickerMode = 'date' | 'month' | 'year';
6
7
  export interface DateRangeValue {
7
8
  from: string;
8
9
  to: string;
9
10
  }
10
11
  export interface DatePickerBaseProps extends Omit<TextFieldProps<string, HTMLInputElement, FieldChangeEvent<string>>, 'value' | 'onChange'>, FieldPopupProps {
12
+ picker?: DatePickerMode;
11
13
  withTime?: boolean;
12
14
  min?: string;
13
15
  max?: string;
16
+ yearRange?: {
17
+ back?: number;
18
+ ahead?: number;
19
+ };
14
20
  displayFormat?: DateDisplayFormat;
15
21
  textOrder?: DateTextOrder;
16
22
  weekStart?: number;
@@ -27,6 +33,7 @@ export interface DatePickerBaseProps extends Omit<TextFieldProps<string, HTMLInp
27
33
  placement?: 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end';
28
34
  showCalendarIcon?: boolean;
29
35
  clearable?: boolean;
36
+ autoComplete?: string;
30
37
  placeholder?: string;
31
38
  hint?: ReactNode;
32
39
  error?: ReactNode;
@@ -0,0 +1,18 @@
1
+ import type { SemanticColor } from './control.types';
2
+ export type CalendarEventColor = SemanticColor | (string & {});
3
+ export type CalendarDateInput = Date | string;
4
+ export interface CalendarEvent {
5
+ id: string | number;
6
+ title: string;
7
+ start: CalendarDateInput;
8
+ end?: CalendarDateInput;
9
+ allDay?: boolean;
10
+ color?: CalendarEventColor;
11
+ }
12
+ export type CalendarViewType = 'month' | 'week' | 'day';
13
+ export interface CalendarEventChange<T extends CalendarEvent = CalendarEvent> {
14
+ event: T;
15
+ start: string;
16
+ end: string | undefined;
17
+ allDay: boolean;
18
+ }
@@ -1,6 +1,6 @@
1
1
  import type { CSSProperties, FocusEvent, KeyboardEvent, ReactNode } from 'react';
2
2
  import type { DataAttributes } from './common.types';
3
- import type { FieldTooltipSupport } from './fieldWrapper.types';
3
+ import type { FieldTooltipSupport, FieldWidth } from './fieldWrapper.types';
4
4
  import type { ControlLabelPosition, ControlLayout, ControlSize, ControlVariant, FieldCellContext, FieldChangeEvent, FieldColor, ToggleVariant } from './control.types';
5
5
  import type { FieldKeyboardConfig } from './keyboard.types';
6
6
  export interface FieldIdentityProps<V = any, C = FieldChangeEvent<V>> {
@@ -32,7 +32,6 @@ export interface FieldChromeProps {
32
32
  className?: string;
33
33
  labelClassName?: string;
34
34
  style?: CSSProperties;
35
- fullWidth?: boolean;
36
35
  }
37
36
  export interface FieldA11yProps {
38
37
  'aria-label'?: string;
@@ -73,8 +72,12 @@ export interface FieldHandle {
73
72
  }
74
73
  export type BaseFieldProps<V = any, E extends HTMLElement = HTMLElement, C = FieldChangeEvent<V>> = FieldIdentityProps<V, C> & FieldChromeProps & FieldA11yProps & FieldInteractionProps<E> & FieldCellContext & FieldTooltipSupport & DataAttributes;
75
74
  export type TextFieldProps<V = any, E extends HTMLElement = HTMLElement, C = FieldChangeEvent<V>> = BaseFieldProps<V, E, C> & ControlSurfaceProps & {
75
+ width?: FieldWidth;
76
+ fullWidth?: boolean;
76
77
  placeholder?: string;
77
78
  inputMode?: 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url' | 'none';
78
79
  spellCheck?: boolean;
79
80
  };
80
- export type ToggleFieldProps<V = any, E extends HTMLElement = HTMLInputElement, C = FieldChangeEvent<V>> = BaseFieldProps<V, E, C> & ToggleSurfaceProps;
81
+ export type ToggleFieldProps<V = any, E extends HTMLElement = HTMLInputElement, C = FieldChangeEvent<V>> = BaseFieldProps<V, E, C> & ToggleSurfaceProps & {
82
+ fullWidth?: boolean;
83
+ };
@@ -5,6 +5,7 @@ export type FieldLayout = ControlLayout;
5
5
  export type FieldSize = ControlSize;
6
6
  export type FieldVariant = ControlVariant;
7
7
  export type { ToggleVariant } from './control.types';
8
+ export type FieldWidth = 'full' | 'auto' | number | string;
8
9
  export interface FieldTooltipSupport {
9
10
  tooltip?: TooltipProp;
10
11
  tooltipTrigger?: TooltipTrigger;
@@ -19,6 +20,7 @@ export interface FieldWrapperProps extends FieldTooltipSupport {
19
20
  className?: string;
20
21
  labelClassName?: string;
21
22
  style?: CSSProperties;
23
+ width?: FieldWidth;
22
24
  disabled?: boolean;
23
25
  children: ReactNode;
24
26
  extraMessages?: ReactNode;
@@ -1,3 +1,4 @@
1
+ import type { DatePickerProps } from './datePicker.types';
1
2
  import { ReactNode, ComponentType, Dispatch, SetStateAction } from 'react';
2
3
  import type { InputProps } from './input.types';
3
4
  import type { SwitchProps } from './switch.types';
@@ -195,6 +196,10 @@ export interface ChildFieldDefinition<T> extends BaseFieldDefinition<T> {
195
196
  props?: Record<string, any>;
196
197
  };
197
198
  }
199
+ export interface DateFieldDefinition<T> extends BaseFieldDefinition<T> {
200
+ field: 'date';
201
+ fprop?: Partial<DatePickerProps>;
202
+ }
198
203
  export interface EditableTableFieldDefinition<T> extends BaseFieldDefinition<T> {
199
204
  field: 'editableTable';
200
205
  fprop?: Record<string, any>;
@@ -203,7 +208,7 @@ export interface ChipInputFieldDefinition<T> extends BaseFieldDefinition<T> {
203
208
  field: 'chipinput';
204
209
  fprop?: Record<string, any>;
205
210
  }
206
- export type FieldDefinition<T> = InputFieldDefinition<T> | SwitchFieldDefinition<T> | SelectFieldDefinition<T> | SuggestFieldDefinition<T> | RadioFieldDefinition<T> | CheckboxFieldDefinition<T> | ButtonFieldDefinition<T> | ChildFieldDefinition<T> | EditableTableFieldDefinition<T> | ChipInputFieldDefinition<T>;
211
+ export type FieldDefinition<T> = InputFieldDefinition<T> | SwitchFieldDefinition<T> | SelectFieldDefinition<T> | SuggestFieldDefinition<T> | RadioFieldDefinition<T> | CheckboxFieldDefinition<T> | ButtonFieldDefinition<T> | ChildFieldDefinition<T> | DateFieldDefinition<T> | EditableTableFieldDefinition<T> | ChipInputFieldDefinition<T>;
207
212
  export type FieldsDefinition<T> = Array<FieldDefinition<T>>;
208
213
  export type ErrorObject = Record<string, string>;
209
214
  export type TouchedObject = Record<string, boolean>;
@@ -59,12 +59,18 @@ export interface XlsxColumnSpec {
59
59
  align?: 'left' | 'center' | 'right';
60
60
  style?: XlsxCellStyle;
61
61
  }
62
+ export type XlsxHeaderGroupRow = Array<{
63
+ label: string;
64
+ start: number;
65
+ span: number;
66
+ }>;
62
67
  export interface XlsxSheetSpec {
63
68
  name: string;
64
69
  columns: XlsxColumnSpec[];
65
70
  rows: XlsxCellValue[][];
66
71
  freezeHeader?: boolean;
67
72
  before?: XlsxRowSpec[];
73
+ headerGroups?: XlsxHeaderGroupRow[];
68
74
  after?: XlsxRowSpec[];
69
75
  headerStyle?: XlsxCellStyle;
70
76
  stripe?: string;
@@ -119,6 +119,7 @@ export interface FormProps<T = any> extends FormCallbacks<T> {
119
119
  columns?: number;
120
120
  header?: FormHeader;
121
121
  footer?: FormFooter;
122
+ dialogSlots?: boolean;
122
123
  actions?: Array<FormAction<T>>;
123
124
  showSubmit?: boolean;
124
125
  submitButton?: Partial<FormAction<T>>;
@@ -12,4 +12,6 @@ export interface UIFormat {
12
12
  money: (value: number, decimals?: number) => string;
13
13
  percent: (value: number, decimals?: number) => string;
14
14
  day: (value: unknown) => string;
15
+ dateTime: (value: unknown) => string;
16
+ shortDate: (value: unknown) => string;
15
17
  }
@@ -0,0 +1,109 @@
1
+ interface IconShapeBase {
2
+ fill?: boolean;
3
+ cutout?: boolean;
4
+ duo?: boolean | 'only';
5
+ }
6
+ export interface IconPathShape extends IconShapeBase {
7
+ type: 'path';
8
+ d: string;
9
+ }
10
+ export interface IconCircleShape extends IconShapeBase {
11
+ type: 'circle';
12
+ cx: number;
13
+ cy: number;
14
+ r: number;
15
+ }
16
+ export interface IconEllipseShape extends IconShapeBase {
17
+ type: 'ellipse';
18
+ cx: number;
19
+ cy: number;
20
+ rx: number;
21
+ ry: number;
22
+ }
23
+ export interface IconRectShape extends IconShapeBase {
24
+ type: 'rect';
25
+ x: number;
26
+ y: number;
27
+ width: number;
28
+ height: number;
29
+ rx?: number;
30
+ }
31
+ export interface IconLineShape extends IconShapeBase {
32
+ type: 'line';
33
+ x1: number;
34
+ y1: number;
35
+ x2: number;
36
+ y2: number;
37
+ }
38
+ export type IconShape = IconPathShape | IconCircleShape | IconEllipseShape | IconRectShape | IconLineShape;
39
+ export type IconMotionStyle = 'draw' | 'move';
40
+ export type IconMotionChoice = 'auto' | IconMotionStyle;
41
+ export type IconMotionKind = 'pulse' | 'wiggle' | 'spin' | 'draw';
42
+ export interface IconMotion {
43
+ kind: IconMotionKind;
44
+ x?: number;
45
+ y?: number;
46
+ rotate?: number;
47
+ scale?: number | readonly [number, number];
48
+ origin?: readonly [number, number] | 'center';
49
+ delay?: number;
50
+ }
51
+ export interface IconPart {
52
+ shapes: readonly IconShape[];
53
+ motion?: IconMotion;
54
+ draw?: boolean | number;
55
+ }
56
+ export type IconCategory = 'navigation' | 'actions' | 'table' | 'state' | 'status' | 'files' | 'media' | 'text' | 'people' | 'communication' | 'commerce' | 'delivery' | 'devices' | 'general';
57
+ export interface IconDefinition {
58
+ name: string;
59
+ category: IconCategory;
60
+ keywords?: readonly string[];
61
+ parts: readonly IconPart[];
62
+ motion?: IconMotionStyle;
63
+ filled?: readonly IconPart[];
64
+ spinning?: boolean;
65
+ }
66
+ export type IconSizeName = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
67
+ export type IconSize = IconSizeName | number;
68
+ export type IconWeight = 'light' | 'regular' | 'bold';
69
+ export type IconVariant = 'outline' | 'duotone';
70
+ export type IconTone = 'primary' | 'success' | 'warning' | 'danger' | 'info' | 'muted';
71
+ export type IconAnimate = 'hover' | 'always' | 'off';
72
+ export type IconChange = 'fill-in' | 'fill-out' | 'swap' | 'done' | 'undone';
73
+ export interface IconDrawnState {
74
+ name: string;
75
+ filled: boolean;
76
+ done: boolean;
77
+ }
78
+ export type IconBadge = boolean | number | string;
79
+ export interface IconBadgeGeometry {
80
+ x: number;
81
+ y: number;
82
+ width: number;
83
+ height: number;
84
+ rx: number;
85
+ cut: {
86
+ x: number;
87
+ y: number;
88
+ width: number;
89
+ height: number;
90
+ rx: number;
91
+ };
92
+ textX: number;
93
+ textY: number;
94
+ fontSize: number;
95
+ }
96
+ export interface IconDefaults {
97
+ animate?: IconAnimate;
98
+ motion?: IconMotionChoice;
99
+ size?: IconSize;
100
+ weight?: IconWeight;
101
+ variant?: IconVariant;
102
+ duotoneTone?: IconTone;
103
+ animateChanges?: boolean;
104
+ press?: boolean;
105
+ badgeTone?: IconTone;
106
+ badgeMax?: number;
107
+ doneDuration?: number;
108
+ }
109
+ export {};
@@ -23,3 +23,5 @@ export type { DataAttributes } from './common.types';
23
23
  export * from './fileEngine.types';
24
24
  export * from './format.types';
25
25
  export * from './standardSchema.types';
26
+ export * from './eventCalendar.types';
27
+ export * from './icon.types';
@@ -25,6 +25,8 @@ export type InputEditableTableCellProps = FieldCellContext;
25
25
  export interface InputProps extends TextFieldProps<string | number, HTMLInputElement | HTMLTextAreaElement, ChangeEvent<HTMLInputElement | HTMLTextAreaElement>> {
26
26
  type?: InputType;
27
27
  autoComplete?: string;
28
+ accept?: string;
29
+ multiple?: boolean;
28
30
  validation?: ValidationConfig;
29
31
  min?: number | string;
30
32
  max?: number | string;
@@ -3,6 +3,7 @@ export interface NavItem {
3
3
  id: string;
4
4
  label: ReactNode;
5
5
  icon?: ReactNode;
6
+ iconOnly?: boolean;
6
7
  badge?: ReactNode;
7
8
  keywords?: string;
8
9
  disabled?: boolean;
@@ -109,6 +109,7 @@ export interface SelectProps extends TextFieldProps<any, HTMLDivElement, SelectE
109
109
  virtualScroll?: boolean | VirtualScrollConfig;
110
110
  keyboard?: FieldKeyboardConfig & KeyboardConfig;
111
111
  position?: DropdownPosition | PositionConfig;
112
+ listWidth?: 'fit' | 'field';
112
113
  emptyState?: EmptyStateConfig;
113
114
  loading?: LoadingConfig;
114
115
  triggerClassName?: string;
@@ -140,8 +141,6 @@ export interface SelectState {
140
141
  searchTerm: string;
141
142
  filteredOptions: SelectOption[];
142
143
  highlightedIndex: number;
143
- draggedItem: SelectOption | null;
144
- draggedOver: SelectOption | null;
145
144
  collapsedGroups: Set<string>;
146
145
  isInModal: boolean;
147
146
  }
@@ -167,10 +166,7 @@ export interface UseSelectReturn {
167
166
  pickHighlighted: () => boolean;
168
167
  handleSearchChange: (event: ChangeEvent<HTMLInputElement>) => void;
169
168
  handleClickOutside: (event: MouseEvent) => void;
170
- handleDragStart: (event: DragEvent, option: SelectOption) => void;
171
- handleDragOver: (event: DragEvent, option: SelectOption) => void;
172
- handleDragEnd: () => void;
173
- handleDrop: (event: DragEvent, targetOption: SelectOption) => void;
169
+ handleReorder: (rows: SelectOption[]) => void;
174
170
  handleSelectAll: () => void;
175
171
  handleClear: () => void;
176
172
  handleBlur: (event: FocusEvent<HTMLDivElement>) => void;
@@ -63,6 +63,7 @@ export interface SuggestionListProps<T = any> {
63
63
  inputRef: RefObject<HTMLInputElement | null>;
64
64
  containerRef: RefObject<HTMLDivElement | null>;
65
65
  portal?: boolean;
66
+ listWidth?: 'fit' | 'field';
66
67
  zIndex?: number;
67
68
  exiting?: boolean;
68
69
  renderItem?: (item: T, isHighlighted: boolean, searchValue: string) => ReactNode;
@@ -94,6 +95,7 @@ export interface SuggestProps extends TextFieldProps<string, HTMLInputElement, C
94
95
  portal?: boolean;
95
96
  portalContainer?: Element;
96
97
  position?: 'auto' | 'top' | 'bottom';
98
+ listWidth?: 'fit' | 'field';
97
99
  }
98
100
  export interface SuggestionGroup {
99
101
  name: string;
@@ -5,8 +5,13 @@ export { Typography } from './components/Typography';
5
5
  export type { TypographyProps, TypographyVariant, TypographyColor, TypographyAlign, TypographyWeight, TypographyTransform, TypographyDecoration, TypographyComponent, TruncateConfig, GradientConfig, } from './components/Typography';
6
6
  export { Button, ButtonGroup } from './components/Button';
7
7
  export type { ButtonProps, ButtonGroupProps, ButtonVariant, ButtonSize, ButtonColor, ButtonShape, LoadingPosition, GroupOrientation, ButtonGroupContextValue, } from './components/Button';
8
+ export { Icon, IconSwap, createIcon, IconProvider, useIconDefaults, useIconDone } from './components/Icon';
9
+ export type { IconProps, IconComponentProps, IconComponent, IconSwapProps, IconProviderProps, UseIconDoneOptions } from './components/Icon';
10
+ export { IconChevronLeft, IconChevronRight, IconChevronUp, IconChevronDown, IconFirstPage, IconLastPage, IconArrowLeft, IconArrowUp, IconArrowDown, IconArrowToTop, IconArrowToBottom, IconOpenExternal, IconExpandAll, IconCollapseAll, IconDragHandle, IconMoreVertical, IconMoreHorizontal, IconClose, IconAdd, IconDelete, IconEdit, IconCopy, IconCopyRow, IconSave, IconShare, IconPrint, IconDownload, IconExport, IconReset, IconSearch, IconCheck, IconPlay, IconPause, IconBug, IconSettings, IconSliders, IconFilter, IconFilterOnly, IconFilterAdd, IconFilterExclude, IconFilterRow, IconSort, IconColumns, IconPivot, IconOpenDetail, IconGroupBy, IconAutoFit, IconSelectRows, IconViews, IconCustomize, IconLayoutTable, IconLayoutCards, IconLayoutSplit, IconLayoutList, IconInsights, IconBolt, IconClick, IconPin, IconPinOff, IconStar, IconBookmark, IconBookmarkAdd, IconCheckbox, IconEye, IconEyeOff, IconSuccess, IconWarning, IconError, IconSpinner, IconFile, IconFileText, IconFileSheet, IconBraces, IconCode, IconGlobe, IconDatabase, IconFolder, IconHome, IconMenu, IconSwapHorizontal, IconUpload, IconRefresh, IconAlignLeft, IconAlignCenter, IconAlignRight, IconLock, IconUnlock, IconInfo, IconHelp, IconImageAdd, IconZoomIn, IconZoomOut, IconRotateLeft, IconRotateRight, IconFlip, IconRuler, IconHand, IconUser, IconUsers, IconCalendar, IconClock, IconStore, IconCard, IconArrowRight, IconArrowUpRight, IconPanelLeft, IconPanelRight, IconUndo, IconRedo, IconRepeat, IconLink, IconUnlink, IconScissors, IconMinus, IconPlusCircle, IconMinusCircle, IconMaximize, IconMinimize, IconWrench, IconHeart, IconBookmarkCheck, IconCircle, IconBan, IconCancel, IconCheckDouble, IconFilePlus, IconFileCheck, IconFileUpload, IconFileDownload, IconImage, IconCrop, IconBold, IconItalic, IconUnderline, IconStrikethrough, IconFontSize, IconText, IconEraser, IconHash, IconListNumbered, IconListCheck, IconListPlus, IconListMinus, IconUserAdd, IconUserCheck, IconUserSearch, IconUserSettings, IconUserShield, IconAccountCircle, IconIdCard, IconLogout, IconKey, IconShield, IconShieldCheck, IconBadgeCheck, IconMail, IconPhone, IconPhoneCall, IconMessage, IconComment, IconSend, IconAtSign, IconBell, IconInbox, IconCart, IconShoppingBag, IconWallet, IconCoins, IconBanknote, IconReceipt, IconInvoice, IconCalculator, IconPercent, IconTag, IconGift, IconPointOfSale, IconBank, IconRupee, IconDollar, IconTruck, IconPackage, IconBoxes, IconArchive, IconWarehouse, IconBuilding, IconLocationPin, IconMap, IconRoute, IconBarcode, IconQrCode, IconScan, IconMonitor, IconSmartphone, IconTablet, IconCloud, IconCloudOff, IconCloudUpload, IconCloudDownload, IconWifiOff, IconPower, IconMoon, IconSun, IconPalette, IconDashboard, IconLayers, IconGrid, IconHistory, IconClockPlus, IconBriefcase, IconBook, IconClipboard, IconClipboardList, IconClipboardCheck, IconHierarchy, IconBranch, IconShapes, IconScale, IconLifeBuoy, IconAward, IconTarget, IconBarChart, IconSparkles, IconHandshake, } from './components/Icon';
11
+ export { chevronLeftIcon, chevronRightIcon, chevronUpIcon, chevronDownIcon, firstPageIcon, lastPageIcon, arrowLeftIcon, arrowUpIcon, arrowDownIcon, arrowToTopIcon, arrowToBottomIcon, openExternalIcon, expandAllIcon, collapseAllIcon, dragHandleIcon, moreVerticalIcon, moreHorizontalIcon, closeIcon, addIcon, deleteIcon, editIcon, copyIcon, copyRowIcon, saveIcon, shareIcon, printIcon, downloadIcon, exportIcon, resetIcon, searchIcon, checkIcon, playIcon, pauseIcon, bugIcon, settingsIcon, slidersIcon, filterIcon, filterOnlyIcon, filterAddIcon, filterExcludeIcon, filterRowIcon, sortIcon, columnsIcon, pivotIcon, openDetailIcon, groupByIcon, autoFitIcon, selectRowsIcon, viewsIcon, customizeIcon, layoutTableIcon, layoutCardsIcon, layoutSplitIcon, layoutListIcon, insightsIcon, boltIcon, clickIcon, pinIcon, pinOffIcon, starIcon, bookmarkIcon, bookmarkAddIcon, checkboxIcon, eyeIcon, eyeOffIcon, successIcon, warningIcon, errorIcon, spinnerIcon, fileIcon, fileTextIcon, fileSheetIcon, bracesIcon, codeIcon, globeIcon, databaseIcon, folderIcon, homeIcon, menuIcon, swapHorizontalIcon, uploadIcon, refreshIcon, alignLeftIcon, alignCenterIcon, alignRightIcon, lockIcon, unlockIcon, infoIcon, helpIcon, imageAddIcon, zoomInIcon, zoomOutIcon, rotateLeftIcon, rotateRightIcon, flipIcon, rulerIcon, handIcon, userIcon, usersIcon, calendarIcon, clockIcon, storeIcon, cardIcon, arrowRightIcon, arrowUpRightIcon, panelLeftIcon, panelRightIcon, undoIcon, redoIcon, repeatIcon, linkIcon, unlinkIcon, scissorsIcon, minusIcon, plusCircleIcon, minusCircleIcon, maximizeIcon, minimizeIcon, wrenchIcon, heartIcon, bookmarkCheckIcon, circleIcon, banIcon, cancelIcon, checkDoubleIcon, filePlusIcon, fileCheckIcon, fileUploadIcon, fileDownloadIcon, imageIcon, cropIcon, boldIcon, italicIcon, underlineIcon, strikethroughIcon, fontSizeIcon, textIcon, eraserIcon, hashIcon, listNumberedIcon, listCheckIcon, listPlusIcon, listMinusIcon, userAddIcon, userCheckIcon, userSearchIcon, userSettingsIcon, userShieldIcon, accountCircleIcon, idCardIcon, logoutIcon, keyIcon, shieldIcon, shieldCheckIcon, badgeCheckIcon, mailIcon, phoneIcon, phoneCallIcon, messageIcon, commentIcon, sendIcon, atSignIcon, bellIcon, inboxIcon, cartIcon, shoppingBagIcon, walletIcon, coinsIcon, banknoteIcon, receiptIcon, invoiceIcon, calculatorIcon, percentIcon, tagIcon, giftIcon, pointOfSaleIcon, bankIcon, rupeeIcon, dollarIcon, truckIcon, packageIcon, boxesIcon, archiveIcon, warehouseIcon, buildingIcon, locationPinIcon, mapIcon, routeIcon, barcodeIcon, qrCodeIcon, scanIcon, monitorIcon, smartphoneIcon, tabletIcon, cloudIcon, cloudOffIcon, cloudUploadIcon, cloudDownloadIcon, wifiOffIcon, powerIcon, moonIcon, sunIcon, paletteIcon, dashboardIcon, layersIcon, gridIcon, historyIcon, clockPlusIcon, briefcaseIcon, bookIcon, clipboardIcon, clipboardListIcon, clipboardCheckIcon, hierarchyIcon, branchIcon, shapesIcon, scaleIcon, lifeBuoyIcon, awardIcon, targetIcon, barChartIcon, sparklesIcon, handshakeIcon, } from './core/icons';
12
+ export type { IconDefinition, IconPart, IconShape, IconPathShape, IconCircleShape, IconEllipseShape, IconRectShape, IconLineShape, IconMotion, IconMotionKind, IconMotionStyle, IconMotionChoice, IconCategory, IconSize, IconSizeName, IconTone, IconAnimate, IconDefaults, IconBadge, IconWeight, IconVariant, } from './core/types';
8
13
  export { FieldWrapper } from './components/FieldWrapper';
9
- export type { FieldWrapperProps, FieldLayout, FieldSize, } from './components/FieldWrapper';
14
+ export type { FieldWrapperProps, FieldWidth, FieldLayout, FieldSize, } from './components/FieldWrapper';
10
15
  export { FieldContext, FieldProvider, useFieldContext, useFieldSurface, useToggleSurface, useField, useFormKeyboard, } from './components/FieldContext';
11
16
  export type { FieldContextValue, FieldProviderProps, FieldSurfaceInput, FieldSurfaceDefaults, ResolvedFieldSurface, ResolvedToggleSurface, UseFieldOptions, UseFieldResult, UseFormKeyboardOptions, } from './components/FieldContext';
12
17
  export type { BaseFieldProps, TextFieldProps, ToggleFieldProps, FieldIdentityProps, FieldChromeProps, FieldA11yProps, FieldInteractionProps, FieldSurfaceProps, ControlSurfaceProps, ToggleSurfaceProps, FieldPopupProps, FieldHandle, FieldFocusEvent, OpenReason, FieldKeyboardConfig, FieldWidget, FieldKeyState, FieldKeyAction, KeyResolution, KeyEventLike, NavAction, GridMode, } from './core/types';
@@ -23,7 +28,9 @@ export type { InputProps, InputType, InputVariant, InputSize, InputLayout, Valid
23
28
  export { Select, useSelect } from './components/Select';
24
29
  export type { SelectProps, SelectOption, SelectSize, SelectLayout, SelectState, SelectEvent, SelectAccessibilityConfig, UseSelectReturn, UseSelectConfig, MultiSelectConfig, SearchConfig, SortConfig, ReorderConfig, GroupConfig, VirtualScrollConfig, KeyboardConfig, DropdownPosition, PositionConfig, EmptyStateConfig, LoadingConfig, ChipProps, GroupDisplayProps, OptionItemProps, AutoScrollState, DropdownDimensions, OptionValue, } from './components/Select';
25
30
  export { DatePicker, Calendar } from './components/DatePicker';
26
- export type { DatePickerProps, DatePickerBaseProps, DatePickerSingleProps, DatePickerRangeProps, DateRangeValue, DateDisplayFormat, DateTextOrder, CalendarProps, } from './components/DatePicker';
31
+ export type { DatePickerProps, DatePickerBaseProps, DatePickerSingleProps, DatePickerRangeProps, DatePickerMode, DateRangeValue, DateDisplayFormat, DateTextOrder, CalendarProps, } from './components/DatePicker';
32
+ export { EventCalendar } from './components/EventCalendar';
33
+ export type { EventCalendarProps, EventCalendarRenderInfo, CalendarEvent, CalendarEventColor, CalendarDateInput, CalendarViewType, CalendarEventChange, } from './components/EventCalendar';
27
34
  export { Suggest, SuggestionList, useSuggest } from './components/Suggest';
28
35
  export { FORMATTER_UTILITY_CLASSES, SUGGEST_SEARCH_ENGINE_OPTIONS, SUGGEST_SEARCH_MODE_OPTIONS, } from './components/Suggest';
29
36
  export type { SuggestProps, SuggestSize, SuggestLayout, SuggestSearchEngine, SuggestSearchMode, RenderKey, SuggestionConfig, SuggestionItemProps, SuggestionListProps, SuggestionGroup, UseSuggestOptions, UseSuggestReturn, SuggestSearchOptions, } from './components/Suggest';
@@ -31,7 +38,7 @@ export { Collapsible, CollapsibleItem, CollapsibleContext, useCollapsibleContext
31
38
  export type { CollapsibleProps, CollapsibleItemProps, CollapsibleContextValue, CollapsibleVariant, CollapsibleSize, CollapsibleColor, CollapsibleIconPosition, CollapsibleExpansionMode, CollapsibleAuthorize, CollapsibleDisclosure, CollapsibleTone, CollapsibleHeadingLevel, } from './components/Collapsible';
32
39
  export { Fields, Field } from './components/Fields';
33
40
  export { useFieldCondition, useFieldRender, useFieldDisabled, useFieldValue, useFieldChange, useFieldBlur, useFieldValidation, useFieldSelect, } from './components/Fields';
34
- export type { FieldsProps, FieldProps, FieldsBaseProps, FieldsWithSetState, FieldsWithOnChange, FieldDefinition, FieldsDefinition, FieldAuthorize, FieldTooltipProps, FieldComponentRegistry, FieldEditableTableProps, BaseFieldDefinition, InputFieldDefinition, SwitchFieldDefinition, SelectFieldDefinition, SuggestFieldDefinition, RadioFieldDefinition, CheckboxFieldDefinition, ButtonFieldDefinition, ChildFieldDefinition, EditableTableFieldDefinition, ChipInputFieldDefinition, ConditionOperator, ConditionCompareType, ConditionObject, ConditionRegexObject, ConditionFunction, ConditionSimpleKey, Condition, ConditionContext, NestedKeys, NestedValue, ResetKeyConfig, SelectCopyKeyConfig, ChangeContext, ChangeAdditionalDataContext, SelectAdditionalDataContext, EditableTableCustomPropContext, ErrorObject, TouchedObject, } from './components/Fields';
41
+ export type { FieldsProps, FieldProps, FieldsBaseProps, FieldsWithSetState, FieldsWithOnChange, FieldDefinition, FieldsDefinition, FieldAuthorize, FieldTooltipProps, FieldComponentRegistry, FieldEditableTableProps, BaseFieldDefinition, InputFieldDefinition, SwitchFieldDefinition, SelectFieldDefinition, SuggestFieldDefinition, RadioFieldDefinition, CheckboxFieldDefinition, ButtonFieldDefinition, ChildFieldDefinition, DateFieldDefinition, EditableTableFieldDefinition, ChipInputFieldDefinition, ConditionOperator, ConditionCompareType, ConditionObject, ConditionRegexObject, ConditionFunction, ConditionSimpleKey, Condition, ConditionContext, NestedKeys, NestedValue, ResetKeyConfig, SelectCopyKeyConfig, ChangeContext, ChangeAdditionalDataContext, SelectAdditionalDataContext, EditableTableCustomPropContext, ErrorObject, TouchedObject, } from './components/Fields';
35
42
  export { Form } from './components/Form';
36
43
  export type { FormProps, FormMethods, FormSection, FormAction, FormValidation, FormHeader, FormFooter, FormCallbacks, FormState, FormLayout, FormSize, FormVariant, } from './components/Form';
37
44
  export { validateStandardSchema, isStandardSchema } from './core/logic/standardSchema.logic';
@@ -57,13 +64,18 @@ export type { BadgeProps, BadgeColor, BadgeVariant, BadgeSize } from './componen
57
64
  export { Avatar, AvatarGroup } from './components/Avatar';
58
65
  export type { AvatarProps, AvatarGroupProps, AvatarSize, AvatarShape } from './components/Avatar';
59
66
  export { Card } from './components/Card';
60
- export type { CardProps, CardVariant, CardPadding } from './components/Card';
67
+ export type { CardProps, CardVariant, CardPadding, CardHeadingLevel } from './components/Card';
68
+ export { ReorderList, ReorderGroup } from './components/ReorderList';
69
+ export type { ReorderListProps, ReorderItemState, ReorderHandleProps, ReorderDragFrom, ReorderAxis, ReorderMove, ReorderLabels, ReorderListHandle, ReorderWhenFull, ReorderGroupProps, ReorderGroupMove, } from './components/ReorderList';
61
70
  export { Popover } from './components/Popover';
62
71
  export type { PopoverProps } from './components/Popover';
63
72
  export { DropdownMenu } from './components/DropdownMenu';
64
73
  export type { DropdownMenuProps, DropdownMenuItem } from './components/DropdownMenu';
65
- export { ImagePicker, ImageStrip, ImageViewer, prepareImage, ImagePrepareError } from './components/Image';
66
- export type { ImagePickerProps, ImagePickerItem, ImageStripProps, StripImage, ImageViewerProps, ViewerImage, PrepareImageOptions, PreparedImage, } from './components/Image';
74
+ export { ImagePicker, ImageStrip, ImageViewer, ImageEditor, prepareImage, ImagePrepareError } from './components/Image';
75
+ export type { ImagePickerProps, ImagePickerItem, ImageStripProps, StripImage, ImageViewerProps, ViewerImage, PrepareImageOptions, PreparedImage, ImagePickerEditorOptions, ImageEditorProps, ImageEditorResult, ImageEditorPanelContext, } from './components/Image';
76
+ export { resolveImageTransform, imageOutputSize } from './core/logic/imageTransform.logic';
77
+ export type { ImageTransform, ImageTransformInput, ImageCropRect, ImageQuarterTurn, ImageSize, ImageOutputLimits, } from './core/logic/imageTransform.logic';
78
+ export type { ImageEditorOptions, ImageEditorCropOptions, ImageEditorOutputOptions, ImageEditorRatio, } from './core/logic/imageEditor.logic';
67
79
  export { Dialog } from './components/Dialog';
68
80
  export type { DialogProps, DialogPlacement, DialogSize } from './components/Dialog';
69
81
  export { useDialog, DialogHost } from './components/Dialog/DialogHost';
@@ -91,6 +103,19 @@ export type { AppBarProps, AppBarSize, AppBarVariant } from './components/AppBar
91
103
  export { Breadcrumbs } from './components/Breadcrumbs';
92
104
  export type { BreadcrumbsProps } from './components/Breadcrumbs';
93
105
  export type { NavItem } from './core/types';
106
+ export { Link } from './components/Link';
107
+ export type { LinkProps, LinkOwnProps, LinkColor, LinkUnderline } from './components/Link';
108
+ export { Alert } from './components/Alert';
109
+ export type { AlertProps } from './components/Alert';
110
+ export type { AlertTone } from './core/logic';
111
+ export { Pagination } from './components/Pagination';
112
+ export type { PaginationProps, PaginationVariant } from './components/Pagination';
113
+ export { CommandPaletteTrigger } from './components/CommandPalette';
114
+ export type { CommandPaletteTriggerProps } from './components/CommandPalette';
115
+ export { PageProgress } from './components/PageProgress';
116
+ export type { PageProgressProps } from './components/PageProgress';
117
+ export { NavList } from './components/NavList';
118
+ export type { NavListProps } from './components/NavList';
94
119
  export { useArrowKeyFocus } from './components/ArrowKeyFocus/useArrowKeyFocus';
95
120
  export type { ArrowKeyFocusOptions, ArrowKeyFocusHandlers } from './components/ArrowKeyFocus/useArrowKeyFocus';
96
121
  export { buildFieldControlClassKeys, buildPopupListClassKeys, buildPopupRowClassKeys, computeTooltipPosition, normalizeTooltip, resolveTooltipPlacementOrder, shouldAnchorToPointer, useMergeRefs, } from './core/logic';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcs-tech/ui",
3
- "version": "0.9.0",
3
+ "version": "0.11.0",
4
4
  "description": "React UI component library — fields, buttons, tooltips, tables and design tokens.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
@@ -9,7 +9,8 @@
9
9
  ],
10
10
  "files": [
11
11
  "dist",
12
- "CHANGELOG.md"
12
+ "CHANGELOG.md",
13
+ "THIRD_PARTY_NOTICES.md"
13
14
  ],
14
15
  "main": "./dist/index.js",
15
16
  "types": "./dist/types/index.d.ts",
@@ -45,8 +46,7 @@
45
46
  "exceljs": "^4.4.0",
46
47
  "fuse.js": "^7.5.0",
47
48
  "match-sorter": "^8.1.0",
48
- "pdfmake": "^0.2.7",
49
- "react-icons": "^5.7.0"
49
+ "pdfmake": "^0.2.7"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "react": ">=18",