@umodeapporg/ui 0.1.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 (667) hide show
  1. package/dist/assets/images/common-pngs/sparkles.png.js +5 -0
  2. package/dist/assets/images/common-pngs/sparkles.png.js.map +1 -0
  3. package/dist/assets/umode-ui.css +182 -0
  4. package/dist/components/DateTime/DatePicker.d.ts +19 -0
  5. package/dist/components/DateTime/DatePicker.js +121 -0
  6. package/dist/components/DateTime/DatePicker.js.map +1 -0
  7. package/dist/components/DateTime/DateRangePicker.d.ts +19 -0
  8. package/dist/components/DateTime/DateRangePicker.js +205 -0
  9. package/dist/components/DateTime/DateRangePicker.js.map +1 -0
  10. package/dist/components/Form/ControlledButton.d.ts +13 -0
  11. package/dist/components/Form/ControlledButton.js +68 -0
  12. package/dist/components/Form/ControlledButton.js.map +1 -0
  13. package/dist/components/Form/ControlledCheckbox.d.ts +12 -0
  14. package/dist/components/Form/ControlledCheckbox.js +101 -0
  15. package/dist/components/Form/ControlledCheckbox.js.map +1 -0
  16. package/dist/components/Form/ControlledDialog.d.ts +44 -0
  17. package/dist/components/Form/ControlledDialog.js +185 -0
  18. package/dist/components/Form/ControlledDialog.js.map +1 -0
  19. package/dist/components/Form/ControlledDialogPrimitives.d.ts +30 -0
  20. package/dist/components/Form/ControlledDialogPrimitives.js +121 -0
  21. package/dist/components/Form/ControlledDialogPrimitives.js.map +1 -0
  22. package/dist/components/Form/ControlledDrawer.d.ts +37 -0
  23. package/dist/components/Form/ControlledDrawer.js +237 -0
  24. package/dist/components/Form/ControlledDrawer.js.map +1 -0
  25. package/dist/components/Form/ControlledForm/InputField.d.ts +11 -0
  26. package/dist/components/Form/ControlledForm/InputField.js +75 -0
  27. package/dist/components/Form/ControlledForm/InputField.js.map +1 -0
  28. package/dist/components/Form/ControlledForm/index.d.ts +27 -0
  29. package/dist/components/Form/ControlledForm/index.js +113 -0
  30. package/dist/components/Form/ControlledForm/index.js.map +1 -0
  31. package/dist/components/Form/ControlledImage/Img.d.ts +11 -0
  32. package/dist/components/Form/ControlledImage/Img.js +29 -0
  33. package/dist/components/Form/ControlledImage/Img.js.map +1 -0
  34. package/dist/components/Form/ControlledImage/index.d.ts +30 -0
  35. package/dist/components/Form/ControlledImage/index.js +107 -0
  36. package/dist/components/Form/ControlledImage/index.js.map +1 -0
  37. package/dist/components/Form/ControlledImage/useImage.d.ts +9 -0
  38. package/dist/components/Form/ControlledImage/useImage.js +110 -0
  39. package/dist/components/Form/ControlledImage/useImage.js.map +1 -0
  40. package/dist/components/Form/ControlledInput.d.ts +23 -0
  41. package/dist/components/Form/ControlledInput.js +52 -0
  42. package/dist/components/Form/ControlledInput.js.map +1 -0
  43. package/dist/components/Form/ControlledRadio.d.ts +15 -0
  44. package/dist/components/Form/ControlledRadio.js +91 -0
  45. package/dist/components/Form/ControlledRadio.js.map +1 -0
  46. package/dist/components/Form/ControlledSelect.d.ts +44 -0
  47. package/dist/components/Form/ControlledSelect.js +545 -0
  48. package/dist/components/Form/ControlledSelect.js.map +1 -0
  49. package/dist/components/Form/ControlledSwitch.d.ts +14 -0
  50. package/dist/components/Form/ControlledSwitch.js +88 -0
  51. package/dist/components/Form/ControlledSwitch.js.map +1 -0
  52. package/dist/components/Form/ControlledTabs.d.ts +70 -0
  53. package/dist/components/Form/ControlledTabs.js +470 -0
  54. package/dist/components/Form/ControlledTabs.js.map +1 -0
  55. package/dist/components/Form/ControlledTabsPrimitives.d.ts +43 -0
  56. package/dist/components/Form/ControlledTabsPrimitives.js +47 -0
  57. package/dist/components/Form/ControlledTabsPrimitives.js.map +1 -0
  58. package/dist/components/Form/ControlledTextarea.d.ts +22 -0
  59. package/dist/components/Form/ControlledTextarea.js +46 -0
  60. package/dist/components/Form/ControlledTextarea.js.map +1 -0
  61. package/dist/components/Form/ControlledTimeline.d.ts +26 -0
  62. package/dist/components/Form/ControlledTimeline.js +57 -0
  63. package/dist/components/Form/ControlledTimeline.js.map +1 -0
  64. package/dist/components/Form/ControlledViewToggle.d.ts +74 -0
  65. package/dist/components/Form/ControlledViewToggle.js +157 -0
  66. package/dist/components/Form/ControlledViewToggle.js.map +1 -0
  67. package/dist/components/Form/ControlledVoiceTextarea.d.ts +11 -0
  68. package/dist/components/Form/ControlledVoiceTextarea.js +88 -0
  69. package/dist/components/Form/ControlledVoiceTextarea.js.map +1 -0
  70. package/dist/components/Form/CurrencyInput.d.ts +8 -0
  71. package/dist/components/Form/CurrencyInput.js +17 -0
  72. package/dist/components/Form/CurrencyInput.js.map +1 -0
  73. package/dist/components/Form/RichTextEditor.d.ts +80 -0
  74. package/dist/components/Form/RichTextEditor.js +546 -0
  75. package/dist/components/Form/RichTextEditor.js.map +1 -0
  76. package/dist/components/Form/attachments/AttachmentPreviewList.d.ts +8 -0
  77. package/dist/components/Form/attachments/AttachmentPreviewList.js +71 -0
  78. package/dist/components/Form/attachments/AttachmentPreviewList.js.map +1 -0
  79. package/dist/components/Form/attachments/FileDropzone.d.ts +12 -0
  80. package/dist/components/Form/attachments/FileDropzone.js +84 -0
  81. package/dist/components/Form/attachments/FileDropzone.js.map +1 -0
  82. package/dist/components/Navigation/ControlledBreadcrumb.d.ts +13 -0
  83. package/dist/components/Navigation/ControlledBreadcrumb.js +23 -0
  84. package/dist/components/Navigation/ControlledBreadcrumb.js.map +1 -0
  85. package/dist/components/Navigation/ErrorPage.d.ts +2 -0
  86. package/dist/components/Navigation/ErrorPage.js +27 -0
  87. package/dist/components/Navigation/ErrorPage.js.map +1 -0
  88. package/dist/components/Navigation/PageTitle.d.ts +41 -0
  89. package/dist/components/Navigation/PageTitle.js +147 -0
  90. package/dist/components/Navigation/PageTitle.js.map +1 -0
  91. package/dist/components/Navigation/PageTitleNavigationContext.d.ts +21 -0
  92. package/dist/components/Navigation/PageTitleNavigationContext.js +17 -0
  93. package/dist/components/Navigation/PageTitleNavigationContext.js.map +1 -0
  94. package/dist/components/Search/UnifiedSearchBar.d.ts +31 -0
  95. package/dist/components/Search/UnifiedSearchBar.js +167 -0
  96. package/dist/components/Search/UnifiedSearchBar.js.map +1 -0
  97. package/dist/components/Search/filters/ActiveFiltersBar.d.ts +15 -0
  98. package/dist/components/Search/filters/ActiveFiltersBar.js +48 -0
  99. package/dist/components/Search/filters/ActiveFiltersBar.js.map +1 -0
  100. package/dist/components/Search/filters/FilterChipsRow.d.ts +17 -0
  101. package/dist/components/Search/filters/FilterChipsRow.js +113 -0
  102. package/dist/components/Search/filters/FilterChipsRow.js.map +1 -0
  103. package/dist/components/Search/filters/FilterFieldControl.d.ts +19 -0
  104. package/dist/components/Search/filters/FilterFieldControl.js +387 -0
  105. package/dist/components/Search/filters/FilterFieldControl.js.map +1 -0
  106. package/dist/components/Search/filters/FiltersButton.d.ts +24 -0
  107. package/dist/components/Search/filters/FiltersButton.js +52 -0
  108. package/dist/components/Search/filters/FiltersButton.js.map +1 -0
  109. package/dist/components/Search/filters/FiltersForm.d.ts +18 -0
  110. package/dist/components/Search/filters/FiltersForm.js +112 -0
  111. package/dist/components/Search/filters/FiltersForm.js.map +1 -0
  112. package/dist/components/Search/filters/FiltersPanel.d.ts +32 -0
  113. package/dist/components/Search/filters/FiltersPanel.js +264 -0
  114. package/dist/components/Search/filters/FiltersPanel.js.map +1 -0
  115. package/dist/components/Search/filters/FiltersSummaryTooltip.d.ts +20 -0
  116. package/dist/components/Search/filters/FiltersSummaryTooltip.js +26 -0
  117. package/dist/components/Search/filters/FiltersSummaryTooltip.js.map +1 -0
  118. package/dist/components/Search/filters/filterTypes.d.ts +162 -0
  119. package/dist/components/Search/filters/filterTypes.js +2 -0
  120. package/dist/components/Search/filters/filterTypes.js.map +1 -0
  121. package/dist/components/Search/filters/filterValues.d.ts +22 -0
  122. package/dist/components/Search/filters/filterValues.js +91 -0
  123. package/dist/components/Search/filters/filterValues.js.map +1 -0
  124. package/dist/components/Search/filters/filtersLayout.d.ts +4 -0
  125. package/dist/components/Search/filters/filtersLayout.js +18 -0
  126. package/dist/components/Search/filters/filtersLayout.js.map +1 -0
  127. package/dist/components/Search/filters/index.d.ts +11 -0
  128. package/dist/components/Search/filters/index.js +32 -0
  129. package/dist/components/Search/filters/index.js.map +1 -0
  130. package/dist/components/Search/filters/useFilters.d.ts +33 -0
  131. package/dist/components/Search/filters/useFilters.js +162 -0
  132. package/dist/components/Search/filters/useFilters.js.map +1 -0
  133. package/dist/components/Search/index.d.ts +2 -0
  134. package/dist/components/Search/index.js +34 -0
  135. package/dist/components/Search/index.js.map +1 -0
  136. package/dist/components/UI/AccordionIcon.d.ts +10 -0
  137. package/dist/components/UI/AccordionIcon.js +22 -0
  138. package/dist/components/UI/AccordionIcon.js.map +1 -0
  139. package/dist/components/UI/AlertInfo/dismissedAlertsStore.d.ts +2 -0
  140. package/dist/components/UI/AlertInfo/dismissedAlertsStore.js +22 -0
  141. package/dist/components/UI/AlertInfo/dismissedAlertsStore.js.map +1 -0
  142. package/dist/components/UI/AlertInfo/index.d.ts +30 -0
  143. package/dist/components/UI/AlertInfo/index.js +78 -0
  144. package/dist/components/UI/AlertInfo/index.js.map +1 -0
  145. package/dist/components/UI/BaseDataCard.d.ts +25 -0
  146. package/dist/components/UI/BaseDataCard.js +163 -0
  147. package/dist/components/UI/BaseDataCard.js.map +1 -0
  148. package/dist/components/UI/BulkActionBar.d.ts +35 -0
  149. package/dist/components/UI/BulkActionBar.js +125 -0
  150. package/dist/components/UI/BulkActionBar.js.map +1 -0
  151. package/dist/components/UI/Chips/OutlinedChip.d.ts +42 -0
  152. package/dist/components/UI/Chips/OutlinedChip.js +183 -0
  153. package/dist/components/UI/Chips/OutlinedChip.js.map +1 -0
  154. package/dist/components/UI/Chips/StatusChip.d.ts +8 -0
  155. package/dist/components/UI/Chips/StatusChip.js +33 -0
  156. package/dist/components/UI/Chips/StatusChip.js.map +1 -0
  157. package/dist/components/UI/Chips/chipTones.d.ts +6 -0
  158. package/dist/components/UI/Chips/chipTones.js +53 -0
  159. package/dist/components/UI/Chips/chipTones.js.map +1 -0
  160. package/dist/components/UI/ColorSwatch.d.ts +30 -0
  161. package/dist/components/UI/ColorSwatch.js +53 -0
  162. package/dist/components/UI/ColorSwatch.js.map +1 -0
  163. package/dist/components/UI/Colors.d.ts +10 -0
  164. package/dist/components/UI/Colors.js +41 -0
  165. package/dist/components/UI/Colors.js.map +1 -0
  166. package/dist/components/UI/ControlledAccordion.d.ts +38 -0
  167. package/dist/components/UI/ControlledAccordion.js +89 -0
  168. package/dist/components/UI/ControlledAccordion.js.map +1 -0
  169. package/dist/components/UI/ControlledCollapse.d.ts +13 -0
  170. package/dist/components/UI/ControlledCollapse.js +32 -0
  171. package/dist/components/UI/ControlledCollapse.js.map +1 -0
  172. package/dist/components/UI/ControlledMenu.d.ts +73 -0
  173. package/dist/components/UI/ControlledMenu.js +231 -0
  174. package/dist/components/UI/ControlledMenu.js.map +1 -0
  175. package/dist/components/UI/ControlledPopover.d.ts +44 -0
  176. package/dist/components/UI/ControlledPopover.js +144 -0
  177. package/dist/components/UI/ControlledPopover.js.map +1 -0
  178. package/dist/components/UI/ControlledProgress.d.ts +13 -0
  179. package/dist/components/UI/ControlledProgress.js +46 -0
  180. package/dist/components/UI/ControlledProgress.js.map +1 -0
  181. package/dist/components/UI/ControlledSlider.d.ts +13 -0
  182. package/dist/components/UI/ControlledSlider.js +29 -0
  183. package/dist/components/UI/ControlledSlider.js.map +1 -0
  184. package/dist/components/UI/ControlledTooltip.d.ts +21 -0
  185. package/dist/components/UI/ControlledTooltip.js +140 -0
  186. package/dist/components/UI/ControlledTooltip.js.map +1 -0
  187. package/dist/components/UI/CustomBadge.d.ts +15 -0
  188. package/dist/components/UI/CustomBadge.js +34 -0
  189. package/dist/components/UI/CustomBadge.js.map +1 -0
  190. package/dist/components/UI/CustomCard.d.ts +13 -0
  191. package/dist/components/UI/CustomCard.js +36 -0
  192. package/dist/components/UI/CustomCard.js.map +1 -0
  193. package/dist/components/UI/CustomChart.d.ts +21 -0
  194. package/dist/components/UI/CustomChart.js +108 -0
  195. package/dist/components/UI/CustomChart.js.map +1 -0
  196. package/dist/components/UI/DataTable/DataTable.d.ts +100 -0
  197. package/dist/components/UI/DataTable/DataTable.js +546 -0
  198. package/dist/components/UI/DataTable/DataTable.js.map +1 -0
  199. package/dist/components/UI/DataTable/DataTableAutoCard.d.ts +20 -0
  200. package/dist/components/UI/DataTable/DataTableAutoCard.js +39 -0
  201. package/dist/components/UI/DataTable/DataTableAutoCard.js.map +1 -0
  202. package/dist/components/UI/DataTable/DataTableBody.d.ts +29 -0
  203. package/dist/components/UI/DataTable/DataTableBody.js +243 -0
  204. package/dist/components/UI/DataTable/DataTableBody.js.map +1 -0
  205. package/dist/components/UI/DataTable/DataTableBodyCell.d.ts +21 -0
  206. package/dist/components/UI/DataTable/DataTableBodyCell.js +77 -0
  207. package/dist/components/UI/DataTable/DataTableBodyCell.js.map +1 -0
  208. package/dist/components/UI/DataTable/DataTableBulkEditButton.d.ts +11 -0
  209. package/dist/components/UI/DataTable/DataTableBulkEditButton.js +24 -0
  210. package/dist/components/UI/DataTable/DataTableBulkEditButton.js.map +1 -0
  211. package/dist/components/UI/DataTable/DataTableBulkEditDialog.d.ts +25 -0
  212. package/dist/components/UI/DataTable/DataTableBulkEditDialog.js +251 -0
  213. package/dist/components/UI/DataTable/DataTableBulkEditDialog.js.map +1 -0
  214. package/dist/components/UI/DataTable/DataTableColumnToggle.d.ts +34 -0
  215. package/dist/components/UI/DataTable/DataTableColumnToggle.js +168 -0
  216. package/dist/components/UI/DataTable/DataTableColumnToggle.js.map +1 -0
  217. package/dist/components/UI/DataTable/DataTableDetailModal.d.ts +17 -0
  218. package/dist/components/UI/DataTable/DataTableDetailModal.js +109 -0
  219. package/dist/components/UI/DataTable/DataTableDetailModal.js.map +1 -0
  220. package/dist/components/UI/DataTable/DataTableDetailPanel.d.ts +21 -0
  221. package/dist/components/UI/DataTable/DataTableDetailPanel.js +51 -0
  222. package/dist/components/UI/DataTable/DataTableDetailPanel.js.map +1 -0
  223. package/dist/components/UI/DataTable/DataTableDetailTable.d.ts +35 -0
  224. package/dist/components/UI/DataTable/DataTableDetailTable.js +129 -0
  225. package/dist/components/UI/DataTable/DataTableDetailTable.js.map +1 -0
  226. package/dist/components/UI/DataTable/DataTableEditModeButton.d.ts +12 -0
  227. package/dist/components/UI/DataTable/DataTableEditModeButton.js +29 -0
  228. package/dist/components/UI/DataTable/DataTableEditModeButton.js.map +1 -0
  229. package/dist/components/UI/DataTable/DataTableFilters.d.ts +20 -0
  230. package/dist/components/UI/DataTable/DataTableFilters.js +64 -0
  231. package/dist/components/UI/DataTable/DataTableFilters.js.map +1 -0
  232. package/dist/components/UI/DataTable/DataTableHead.d.ts +27 -0
  233. package/dist/components/UI/DataTable/DataTableHead.js +198 -0
  234. package/dist/components/UI/DataTable/DataTableHead.js.map +1 -0
  235. package/dist/components/UI/DataTable/DataTablePagination.d.ts +15 -0
  236. package/dist/components/UI/DataTable/DataTablePagination.js +145 -0
  237. package/dist/components/UI/DataTable/DataTablePagination.js.map +1 -0
  238. package/dist/components/UI/DataTable/DataTableSaveButton.d.ts +13 -0
  239. package/dist/components/UI/DataTable/DataTableSaveButton.js +21 -0
  240. package/dist/components/UI/DataTable/DataTableSaveButton.js.map +1 -0
  241. package/dist/components/UI/DataTable/DataTableSegmentedTabs.d.ts +8 -0
  242. package/dist/components/UI/DataTable/DataTableSegmentedTabs.js +35 -0
  243. package/dist/components/UI/DataTable/DataTableSegmentedTabs.js.map +1 -0
  244. package/dist/components/UI/DataTable/DataTableStates.d.ts +17 -0
  245. package/dist/components/UI/DataTable/DataTableStates.js +59 -0
  246. package/dist/components/UI/DataTable/DataTableStates.js.map +1 -0
  247. package/dist/components/UI/DataTable/DataTableToolbar.d.ts +28 -0
  248. package/dist/components/UI/DataTable/DataTableToolbar.js +109 -0
  249. package/dist/components/UI/DataTable/DataTableToolbar.js.map +1 -0
  250. package/dist/components/UI/DataTable/applyDataTableFilters.d.ts +16 -0
  251. package/dist/components/UI/DataTable/applyDataTableFilters.js +53 -0
  252. package/dist/components/UI/DataTable/applyDataTableFilters.js.map +1 -0
  253. package/dist/components/UI/DataTable/cells/DataTableActionsCell.d.ts +7 -0
  254. package/dist/components/UI/DataTable/cells/DataTableActionsCell.js +55 -0
  255. package/dist/components/UI/DataTable/cells/DataTableActionsCell.js.map +1 -0
  256. package/dist/components/UI/DataTable/cells/DataTableCell.d.ts +15 -0
  257. package/dist/components/UI/DataTable/cells/DataTableCell.js +63 -0
  258. package/dist/components/UI/DataTable/cells/DataTableCell.js.map +1 -0
  259. package/dist/components/UI/DataTable/cells/DataTableCodeCell.d.ts +6 -0
  260. package/dist/components/UI/DataTable/cells/DataTableCodeCell.js +7 -0
  261. package/dist/components/UI/DataTable/cells/DataTableCodeCell.js.map +1 -0
  262. package/dist/components/UI/DataTable/cells/DataTableColorCell.d.ts +7 -0
  263. package/dist/components/UI/DataTable/cells/DataTableColorCell.js +10 -0
  264. package/dist/components/UI/DataTable/cells/DataTableColorCell.js.map +1 -0
  265. package/dist/components/UI/DataTable/cells/DataTableCountCell.d.ts +5 -0
  266. package/dist/components/UI/DataTable/cells/DataTableCountCell.js +7 -0
  267. package/dist/components/UI/DataTable/cells/DataTableCountCell.js.map +1 -0
  268. package/dist/components/UI/DataTable/cells/DataTableDateCell.d.ts +5 -0
  269. package/dist/components/UI/DataTable/cells/DataTableDateCell.js +12 -0
  270. package/dist/components/UI/DataTable/cells/DataTableDateCell.js.map +1 -0
  271. package/dist/components/UI/DataTable/cells/DataTableEditableCell.d.ts +23 -0
  272. package/dist/components/UI/DataTable/cells/DataTableEditableCell.js +242 -0
  273. package/dist/components/UI/DataTable/cells/DataTableEditableCell.js.map +1 -0
  274. package/dist/components/UI/DataTable/cells/DataTableEmpenhoCell.d.ts +10 -0
  275. package/dist/components/UI/DataTable/cells/DataTableEmpenhoCell.js +7 -0
  276. package/dist/components/UI/DataTable/cells/DataTableEmpenhoCell.js.map +1 -0
  277. package/dist/components/UI/DataTable/cells/DataTableOriginCell.d.ts +6 -0
  278. package/dist/components/UI/DataTable/cells/DataTableOriginCell.js +25 -0
  279. package/dist/components/UI/DataTable/cells/DataTableOriginCell.js.map +1 -0
  280. package/dist/components/UI/DataTable/cells/DataTableStatusCell.d.ts +6 -0
  281. package/dist/components/UI/DataTable/cells/DataTableStatusCell.js +24 -0
  282. package/dist/components/UI/DataTable/cells/DataTableStatusCell.js.map +1 -0
  283. package/dist/components/UI/DataTable/cells/DataTableTagCell.d.ts +6 -0
  284. package/dist/components/UI/DataTable/cells/DataTableTagCell.js +25 -0
  285. package/dist/components/UI/DataTable/cells/DataTableTagCell.js.map +1 -0
  286. package/dist/components/UI/DataTable/cells/DataTableTextCell.d.ts +6 -0
  287. package/dist/components/UI/DataTable/cells/DataTableTextCell.js +7 -0
  288. package/dist/components/UI/DataTable/cells/DataTableTextCell.js.map +1 -0
  289. package/dist/components/UI/DataTable/cells/DataTableThumbnailCell.d.ts +6 -0
  290. package/dist/components/UI/DataTable/cells/DataTableThumbnailCell.js +10 -0
  291. package/dist/components/UI/DataTable/cells/DataTableThumbnailCell.js.map +1 -0
  292. package/dist/components/UI/DataTable/dataTableClasses.d.ts +12 -0
  293. package/dist/components/UI/DataTable/dataTableClasses.js +29 -0
  294. package/dist/components/UI/DataTable/dataTableClasses.js.map +1 -0
  295. package/dist/components/UI/DataTable/dataTableColumnWidths.d.ts +15 -0
  296. package/dist/components/UI/DataTable/dataTableColumnWidths.js +153 -0
  297. package/dist/components/UI/DataTable/dataTableColumnWidths.js.map +1 -0
  298. package/dist/components/UI/DataTable/dataTableColumnsStore.d.ts +12 -0
  299. package/dist/components/UI/DataTable/dataTableColumnsStore.js +68 -0
  300. package/dist/components/UI/DataTable/dataTableColumnsStore.js.map +1 -0
  301. package/dist/components/UI/DataTable/dataTableMotion.d.ts +6 -0
  302. package/dist/components/UI/DataTable/dataTableMotion.js +15 -0
  303. package/dist/components/UI/DataTable/dataTableMotion.js.map +1 -0
  304. package/dist/components/UI/DataTable/grid/GridFillHandle.d.ts +8 -0
  305. package/dist/components/UI/DataTable/grid/GridFillHandle.js +70 -0
  306. package/dist/components/UI/DataTable/grid/GridFillHandle.js.map +1 -0
  307. package/dist/components/UI/DataTable/grid/GridProvider.d.ts +31 -0
  308. package/dist/components/UI/DataTable/grid/GridProvider.js +85 -0
  309. package/dist/components/UI/DataTable/grid/GridProvider.js.map +1 -0
  310. package/dist/components/UI/DataTable/grid/fill/fillStrategies.d.ts +19 -0
  311. package/dist/components/UI/DataTable/grid/fill/fillStrategies.js +73 -0
  312. package/dist/components/UI/DataTable/grid/fill/fillStrategies.js.map +1 -0
  313. package/dist/components/UI/DataTable/grid/gridStore.d.ts +69 -0
  314. package/dist/components/UI/DataTable/grid/gridStore.js +219 -0
  315. package/dist/components/UI/DataTable/grid/gridStore.js.map +1 -0
  316. package/dist/components/UI/DataTable/grid/gridTypes.d.ts +47 -0
  317. package/dist/components/UI/DataTable/grid/gridTypes.js +27 -0
  318. package/dist/components/UI/DataTable/grid/gridTypes.js.map +1 -0
  319. package/dist/components/UI/DataTable/grid/useGridFillApply.d.ts +18 -0
  320. package/dist/components/UI/DataTable/grid/useGridFillApply.js +74 -0
  321. package/dist/components/UI/DataTable/grid/useGridFillApply.js.map +1 -0
  322. package/dist/components/UI/DataTable/grid/useGridInstance.d.ts +27 -0
  323. package/dist/components/UI/DataTable/grid/useGridInstance.js +41 -0
  324. package/dist/components/UI/DataTable/grid/useGridInstance.js.map +1 -0
  325. package/dist/components/UI/DataTable/grid/useGridKeyboard.d.ts +17 -0
  326. package/dist/components/UI/DataTable/grid/useGridKeyboard.js +114 -0
  327. package/dist/components/UI/DataTable/grid/useGridKeyboard.js.map +1 -0
  328. package/dist/components/UI/DataTable/index.d.ts +19 -0
  329. package/dist/components/UI/DataTable/index.js +34 -0
  330. package/dist/components/UI/DataTable/index.js.map +1 -0
  331. package/dist/components/UI/DataTable/types.d.ts +513 -0
  332. package/dist/components/UI/DataTable/types.js +13 -0
  333. package/dist/components/UI/DataTable/types.js.map +1 -0
  334. package/dist/components/UI/DataTable/useCellEditingState.d.ts +20 -0
  335. package/dist/components/UI/DataTable/useCellEditingState.js +33 -0
  336. package/dist/components/UI/DataTable/useCellEditingState.js.map +1 -0
  337. package/dist/components/UI/DataTable/useColumnOrder.d.ts +25 -0
  338. package/dist/components/UI/DataTable/useColumnOrder.js +94 -0
  339. package/dist/components/UI/DataTable/useColumnOrder.js.map +1 -0
  340. package/dist/components/UI/DataTable/useColumnSizing.d.ts +9 -0
  341. package/dist/components/UI/DataTable/useColumnSizing.js +21 -0
  342. package/dist/components/UI/DataTable/useColumnSizing.js.map +1 -0
  343. package/dist/components/UI/DataTable/useColumnVisibility.d.ts +19 -0
  344. package/dist/components/UI/DataTable/useColumnVisibility.js +47 -0
  345. package/dist/components/UI/DataTable/useColumnVisibility.js.map +1 -0
  346. package/dist/components/UI/DataTable/useDataTableCommitQueue.d.ts +69 -0
  347. package/dist/components/UI/DataTable/useDataTableCommitQueue.js +220 -0
  348. package/dist/components/UI/DataTable/useDataTableCommitQueue.js.map +1 -0
  349. package/dist/components/UI/DataTable/useDataTableEditBuffer.d.ts +36 -0
  350. package/dist/components/UI/DataTable/useDataTableEditBuffer.js +29 -0
  351. package/dist/components/UI/DataTable/useDataTableEditBuffer.js.map +1 -0
  352. package/dist/components/UI/DataTable/useDataTableInstance.d.ts +65 -0
  353. package/dist/components/UI/DataTable/useDataTableInstance.js +306 -0
  354. package/dist/components/UI/DataTable/useDataTableInstance.js.map +1 -0
  355. package/dist/components/UI/DataTable/useDataTableSource.d.ts +85 -0
  356. package/dist/components/UI/DataTable/useDataTableSource.js +199 -0
  357. package/dist/components/UI/DataTable/useDataTableSource.js.map +1 -0
  358. package/dist/components/UI/DataTable/useFlipRows.d.ts +22 -0
  359. package/dist/components/UI/DataTable/useFlipRows.js +90 -0
  360. package/dist/components/UI/DataTable/useFlipRows.js.map +1 -0
  361. package/dist/components/UI/ErrorBoundary.d.ts +20 -0
  362. package/dist/components/UI/ErrorBoundary.js +36 -0
  363. package/dist/components/UI/ErrorBoundary.js.map +1 -0
  364. package/dist/components/UI/GeneratedByAI.d.ts +2 -0
  365. package/dist/components/UI/GeneratedByAI.js +12 -0
  366. package/dist/components/UI/GeneratedByAI.js.map +1 -0
  367. package/dist/components/UI/HorizontalScrollArea.d.ts +22 -0
  368. package/dist/components/UI/HorizontalScrollArea.js +73 -0
  369. package/dist/components/UI/HorizontalScrollArea.js.map +1 -0
  370. package/dist/components/UI/ImageAiAdjust/ImageAiAdjustDialog.d.ts +15 -0
  371. package/dist/components/UI/ImageAiAdjust/ImageAiAdjustDialog.js +144 -0
  372. package/dist/components/UI/ImageAiAdjust/ImageAiAdjustDialog.js.map +1 -0
  373. package/dist/components/UI/ImageAiAdjust/useImageAiAdjust.d.ts +29 -0
  374. package/dist/components/UI/ImageAiAdjust/useImageAiAdjust.js +84 -0
  375. package/dist/components/UI/ImageAiAdjust/useImageAiAdjust.js.map +1 -0
  376. package/dist/components/UI/ImageAnnotator/AnnotationEditor.d.ts +12 -0
  377. package/dist/components/UI/ImageAnnotator/AnnotationEditor.js +267 -0
  378. package/dist/components/UI/ImageAnnotator/AnnotationEditor.js.map +1 -0
  379. package/dist/components/UI/ImageAnnotator/ImageAnnotationDialog.d.ts +13 -0
  380. package/dist/components/UI/ImageAnnotator/ImageAnnotationDialog.js +58 -0
  381. package/dist/components/UI/ImageAnnotator/ImageAnnotationDialog.js.map +1 -0
  382. package/dist/components/UI/ImageAnnotator/annotationStyle.d.ts +28 -0
  383. package/dist/components/UI/ImageAnnotator/annotationStyle.js +56 -0
  384. package/dist/components/UI/ImageAnnotator/annotationStyle.js.map +1 -0
  385. package/dist/components/UI/ImageAnnotator/canvas/AnnotationElementNode.d.ts +17 -0
  386. package/dist/components/UI/ImageAnnotator/canvas/AnnotationElementNode.js +329 -0
  387. package/dist/components/UI/ImageAnnotator/canvas/AnnotationElementNode.js.map +1 -0
  388. package/dist/components/UI/ImageAnnotator/canvas/AnnotationSelection.d.ts +10 -0
  389. package/dist/components/UI/ImageAnnotator/canvas/AnnotationSelection.js +125 -0
  390. package/dist/components/UI/ImageAnnotator/canvas/AnnotationSelection.js.map +1 -0
  391. package/dist/components/UI/ImageAnnotator/canvas/AnnotationStage.d.ts +19 -0
  392. package/dist/components/UI/ImageAnnotator/canvas/AnnotationStage.js +216 -0
  393. package/dist/components/UI/ImageAnnotator/canvas/AnnotationStage.js.map +1 -0
  394. package/dist/components/UI/ImageAnnotator/components/AnnotationActionBar.d.ts +15 -0
  395. package/dist/components/UI/ImageAnnotator/components/AnnotationActionBar.js +77 -0
  396. package/dist/components/UI/ImageAnnotator/components/AnnotationActionBar.js.map +1 -0
  397. package/dist/components/UI/ImageAnnotator/components/AnnotationColorPopover.d.ts +11 -0
  398. package/dist/components/UI/ImageAnnotator/components/AnnotationColorPopover.js +69 -0
  399. package/dist/components/UI/ImageAnnotator/components/AnnotationColorPopover.js.map +1 -0
  400. package/dist/components/UI/ImageAnnotator/components/AnnotationElementActions.d.ts +8 -0
  401. package/dist/components/UI/ImageAnnotator/components/AnnotationElementActions.js +58 -0
  402. package/dist/components/UI/ImageAnnotator/components/AnnotationElementActions.js.map +1 -0
  403. package/dist/components/UI/ImageAnnotator/components/AnnotationStyleBar.d.ts +13 -0
  404. package/dist/components/UI/ImageAnnotator/components/AnnotationStyleBar.js +183 -0
  405. package/dist/components/UI/ImageAnnotator/components/AnnotationStyleBar.js.map +1 -0
  406. package/dist/components/UI/ImageAnnotator/components/AnnotationTextOverlay.d.ts +15 -0
  407. package/dist/components/UI/ImageAnnotator/components/AnnotationTextOverlay.js +78 -0
  408. package/dist/components/UI/ImageAnnotator/components/AnnotationTextOverlay.js.map +1 -0
  409. package/dist/components/UI/ImageAnnotator/components/AnnotationToolButton.d.ts +15 -0
  410. package/dist/components/UI/ImageAnnotator/components/AnnotationToolButton.js +46 -0
  411. package/dist/components/UI/ImageAnnotator/components/AnnotationToolButton.js.map +1 -0
  412. package/dist/components/UI/ImageAnnotator/components/AnnotationToolbar.d.ts +10 -0
  413. package/dist/components/UI/ImageAnnotator/components/AnnotationToolbar.js +80 -0
  414. package/dist/components/UI/ImageAnnotator/components/AnnotationToolbar.js.map +1 -0
  415. package/dist/components/UI/ImageAnnotator/helpers/annotationCanvas.d.ts +21 -0
  416. package/dist/components/UI/ImageAnnotator/helpers/annotationCanvas.js +45 -0
  417. package/dist/components/UI/ImageAnnotator/helpers/annotationCanvas.js.map +1 -0
  418. package/dist/components/UI/ImageAnnotator/helpers/annotationElements.d.ts +15 -0
  419. package/dist/components/UI/ImageAnnotator/helpers/annotationElements.js +165 -0
  420. package/dist/components/UI/ImageAnnotator/helpers/annotationElements.js.map +1 -0
  421. package/dist/components/UI/ImageAnnotator/helpers/annotationExport.d.ts +15 -0
  422. package/dist/components/UI/ImageAnnotator/helpers/annotationExport.js +23 -0
  423. package/dist/components/UI/ImageAnnotator/helpers/annotationExport.js.map +1 -0
  424. package/dist/components/UI/ImageAnnotator/helpers/konvaFullBuild.d.ts +8 -0
  425. package/dist/components/UI/ImageAnnotator/helpers/konvaFullBuild.js +10 -0
  426. package/dist/components/UI/ImageAnnotator/helpers/konvaFullBuild.js.map +1 -0
  427. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationBaseImage.d.ts +9 -0
  428. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationBaseImage.js +56 -0
  429. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationBaseImage.js.map +1 -0
  430. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationDocument.d.ts +27 -0
  431. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationDocument.js +149 -0
  432. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationDocument.js.map +1 -0
  433. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationShortcuts.d.ts +14 -0
  434. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationShortcuts.js +79 -0
  435. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationShortcuts.js.map +1 -0
  436. package/dist/components/UI/ImageAnnotator/hooks/useCoarsePointer.d.ts +5 -0
  437. package/dist/components/UI/ImageAnnotator/hooks/useCoarsePointer.js +23 -0
  438. package/dist/components/UI/ImageAnnotator/hooks/useCoarsePointer.js.map +1 -0
  439. package/dist/components/UI/ImageAnnotator/hooks/useHtmlImage.d.ts +2 -0
  440. package/dist/components/UI/ImageAnnotator/hooks/useHtmlImage.js +27 -0
  441. package/dist/components/UI/ImageAnnotator/hooks/useHtmlImage.js.map +1 -0
  442. package/dist/components/UI/ImageAnnotator/interfaces/annotationDocument.d.ts +89 -0
  443. package/dist/components/UI/ImageAnnotator/interfaces/annotationDocument.js +13 -0
  444. package/dist/components/UI/ImageAnnotator/interfaces/annotationDocument.js.map +1 -0
  445. package/dist/components/UI/ImagePlaceholder.d.ts +24 -0
  446. package/dist/components/UI/ImagePlaceholder.js +26 -0
  447. package/dist/components/UI/ImagePlaceholder.js.map +1 -0
  448. package/dist/components/UI/ImageZoomOverlay.d.ts +7 -0
  449. package/dist/components/UI/ImageZoomOverlay.js +49 -0
  450. package/dist/components/UI/ImageZoomOverlay.js.map +1 -0
  451. package/dist/components/UI/InformationCard.d.ts +26 -0
  452. package/dist/components/UI/InformationCard.js +89 -0
  453. package/dist/components/UI/InformationCard.js.map +1 -0
  454. package/dist/components/UI/Kanban/KanbanBoard.d.ts +26 -0
  455. package/dist/components/UI/Kanban/KanbanBoard.js +89 -0
  456. package/dist/components/UI/Kanban/KanbanBoard.js.map +1 -0
  457. package/dist/components/UI/Kanban/KanbanCard.d.ts +22 -0
  458. package/dist/components/UI/Kanban/KanbanCard.js +47 -0
  459. package/dist/components/UI/Kanban/KanbanCard.js.map +1 -0
  460. package/dist/components/UI/Kanban/KanbanLane.d.ts +37 -0
  461. package/dist/components/UI/Kanban/KanbanLane.js +77 -0
  462. package/dist/components/UI/Kanban/KanbanLane.js.map +1 -0
  463. package/dist/components/UI/Kanban/index.d.ts +4 -0
  464. package/dist/components/UI/Kanban/index.js +11 -0
  465. package/dist/components/UI/Kanban/index.js.map +1 -0
  466. package/dist/components/UI/Kanban/kanbanBoardContext.d.ts +13 -0
  467. package/dist/components/UI/Kanban/kanbanBoardContext.js +13 -0
  468. package/dist/components/UI/Kanban/kanbanBoardContext.js.map +1 -0
  469. package/dist/components/UI/LazyMarkdown.d.ts +5 -0
  470. package/dist/components/UI/LazyMarkdown.js +8 -0
  471. package/dist/components/UI/LazyMarkdown.js.map +1 -0
  472. package/dist/components/UI/LoadingPage.d.ts +2 -0
  473. package/dist/components/UI/LoadingPage.js +13 -0
  474. package/dist/components/UI/LoadingPage.js.map +1 -0
  475. package/dist/components/UI/LoadingSpinner.d.ts +14 -0
  476. package/dist/components/UI/LoadingSpinner.js +32 -0
  477. package/dist/components/UI/LoadingSpinner.js.map +1 -0
  478. package/dist/components/UI/MaterialSymbol/consts.d.ts +2 -0
  479. package/dist/components/UI/MaterialSymbol/consts.js +3472 -0
  480. package/dist/components/UI/MaterialSymbol/consts.js.map +1 -0
  481. package/dist/components/UI/MaterialSymbol/index.d.ts +18 -0
  482. package/dist/components/UI/MaterialSymbol/index.js +46 -0
  483. package/dist/components/UI/MaterialSymbol/index.js.map +1 -0
  484. package/dist/components/UI/MaterialSymbol/types.d.ts +37 -0
  485. package/dist/components/UI/MaterialSymbol/types.js +2 -0
  486. package/dist/components/UI/MaterialSymbol/types.js.map +1 -0
  487. package/dist/components/UI/NoDataFound/index.d.ts +31 -0
  488. package/dist/components/UI/NoDataFound/index.js +215 -0
  489. package/dist/components/UI/NoDataFound/index.js.map +1 -0
  490. package/dist/components/UI/NoDataFound/noDataFoundPresets.d.ts +31 -0
  491. package/dist/components/UI/NoDataFound/noDataFoundPresets.js +99 -0
  492. package/dist/components/UI/NoDataFound/noDataFoundPresets.js.map +1 -0
  493. package/dist/components/UI/ReferenceCard.d.ts +16 -0
  494. package/dist/components/UI/ReferenceCard.js +59 -0
  495. package/dist/components/UI/ReferenceCard.js.map +1 -0
  496. package/dist/components/UI/RichTextContent.d.ts +14 -0
  497. package/dist/components/UI/RichTextContent.js +28 -0
  498. package/dist/components/UI/RichTextContent.js.map +1 -0
  499. package/dist/components/UI/SkeletonLoading.d.ts +9 -0
  500. package/dist/components/UI/SkeletonLoading.js +20 -0
  501. package/dist/components/UI/SkeletonLoading.js.map +1 -0
  502. package/dist/components/UI/ThreeDots.d.ts +11 -0
  503. package/dist/components/UI/ThreeDots.js +18 -0
  504. package/dist/components/UI/ThreeDots.js.map +1 -0
  505. package/dist/components/UI/Toast.d.ts +16 -0
  506. package/dist/components/UI/Toast.js +81 -0
  507. package/dist/components/UI/Toast.js.map +1 -0
  508. package/dist/components/UI/ToastHost.d.ts +2 -0
  509. package/dist/components/UI/ToastHost.js +25 -0
  510. package/dist/components/UI/ToastHost.js.map +1 -0
  511. package/dist/components/UI/TypingEffect.d.ts +10 -0
  512. package/dist/components/UI/TypingEffect.js +31 -0
  513. package/dist/components/UI/TypingEffect.js.map +1 -0
  514. package/dist/components/UI/UmodeLogo.d.ts +10 -0
  515. package/dist/components/UI/UmodeLogo.js +128 -0
  516. package/dist/components/UI/UmodeLogo.js.map +1 -0
  517. package/dist/components/UI/UsersAvatar.d.ts +7 -0
  518. package/dist/components/UI/UsersAvatar.js +29 -0
  519. package/dist/components/UI/UsersAvatar.js.map +1 -0
  520. package/dist/components/UI/access/UiAccessContext.d.ts +21 -0
  521. package/dist/components/UI/access/UiAccessContext.js +14 -0
  522. package/dist/components/UI/access/UiAccessContext.js.map +1 -0
  523. package/dist/components/UI/cells/ArrayCell.d.ts +5 -0
  524. package/dist/components/UI/cells/ArrayCell.js +25 -0
  525. package/dist/components/UI/cells/ArrayCell.js.map +1 -0
  526. package/dist/components/UI/cells/BooleanCell.d.ts +5 -0
  527. package/dist/components/UI/cells/BooleanCell.js +22 -0
  528. package/dist/components/UI/cells/BooleanCell.js.map +1 -0
  529. package/dist/components/UI/cells/DetailsTableCell.d.ts +7 -0
  530. package/dist/components/UI/cells/DetailsTableCell.js +30 -0
  531. package/dist/components/UI/cells/DetailsTableCell.js.map +1 -0
  532. package/dist/components/UI/cells/ProductImageCell.d.ts +5 -0
  533. package/dist/components/UI/cells/ProductImageCell.js +21 -0
  534. package/dist/components/UI/cells/ProductImageCell.js.map +1 -0
  535. package/dist/components/UI/cells/UrlLinkCell.d.ts +6 -0
  536. package/dist/components/UI/cells/UrlLinkCell.js +19 -0
  537. package/dist/components/UI/cells/UrlLinkCell.js.map +1 -0
  538. package/dist/components/Upload/SimpleUploaderComponent.d.ts +9 -0
  539. package/dist/components/Upload/SimpleUploaderComponent.js +72 -0
  540. package/dist/components/Upload/SimpleUploaderComponent.js.map +1 -0
  541. package/dist/components/Upload/UploaderComponent.d.ts +29 -0
  542. package/dist/components/Upload/UploaderComponent.js +241 -0
  543. package/dist/components/Upload/UploaderComponent.js.map +1 -0
  544. package/dist/components/Upload/XlsExportButton.d.ts +13 -0
  545. package/dist/components/Upload/XlsExportButton.js +47 -0
  546. package/dist/components/Upload/XlsExportButton.js.map +1 -0
  547. package/dist/helpers/composeRefs.d.ts +7 -0
  548. package/dist/helpers/composeRefs.js +14 -0
  549. package/dist/helpers/composeRefs.js.map +1 -0
  550. package/dist/helpers/dateHelpers.d.ts +47 -0
  551. package/dist/helpers/dateHelpers.js +69 -0
  552. package/dist/helpers/dateHelpers.js.map +1 -0
  553. package/dist/helpers/fileAttachments.d.ts +3 -0
  554. package/dist/helpers/fileAttachments.js +17 -0
  555. package/dist/helpers/fileAttachments.js.map +1 -0
  556. package/dist/helpers/formatHelpers.d.ts +36 -0
  557. package/dist/helpers/formatHelpers.js +65 -0
  558. package/dist/helpers/formatHelpers.js.map +1 -0
  559. package/dist/helpers/imageCompression.d.ts +5 -0
  560. package/dist/helpers/imageCompression.js +49 -0
  561. package/dist/helpers/imageCompression.js.map +1 -0
  562. package/dist/helpers/imageFile.d.ts +16 -0
  563. package/dist/helpers/imageFile.js +59 -0
  564. package/dist/helpers/imageFile.js.map +1 -0
  565. package/dist/helpers/layeredSurfaces.d.ts +10 -0
  566. package/dist/helpers/layeredSurfaces.js +14 -0
  567. package/dist/helpers/layeredSurfaces.js.map +1 -0
  568. package/dist/helpers/mathHelpers.d.ts +14 -0
  569. package/dist/helpers/mathHelpers.js +13 -0
  570. package/dist/helpers/mathHelpers.js.map +1 -0
  571. package/dist/helpers/mergeClasses.d.ts +6 -0
  572. package/dist/helpers/mergeClasses.js +12 -0
  573. package/dist/helpers/mergeClasses.js.map +1 -0
  574. package/dist/helpers/moduleLoadErrorHelpers.d.ts +1 -0
  575. package/dist/helpers/moduleLoadErrorHelpers.js +25 -0
  576. package/dist/helpers/moduleLoadErrorHelpers.js.map +1 -0
  577. package/dist/helpers/objectHelpers.d.ts +13 -0
  578. package/dist/helpers/objectHelpers.js +60 -0
  579. package/dist/helpers/objectHelpers.js.map +1 -0
  580. package/dist/helpers/richText.d.ts +37 -0
  581. package/dist/helpers/richText.js +171 -0
  582. package/dist/helpers/richText.js.map +1 -0
  583. package/dist/helpers/stringHelpers.d.ts +45 -0
  584. package/dist/helpers/stringHelpers.js +57 -0
  585. package/dist/helpers/stringHelpers.js.map +1 -0
  586. package/dist/helpers/themeTokens.d.ts +28 -0
  587. package/dist/helpers/themeTokens.js +33 -0
  588. package/dist/helpers/themeTokens.js.map +1 -0
  589. package/dist/helpers/uiErrorPresenter.d.ts +21 -0
  590. package/dist/helpers/uiErrorPresenter.js +10 -0
  591. package/dist/helpers/uiErrorPresenter.js.map +1 -0
  592. package/dist/helpers/uiLogger.d.ts +8 -0
  593. package/dist/helpers/uiLogger.js +16 -0
  594. package/dist/helpers/uiLogger.js.map +1 -0
  595. package/dist/helpers/uiPreferences.d.ts +13 -0
  596. package/dist/helpers/uiPreferences.js +35 -0
  597. package/dist/helpers/uiPreferences.js.map +1 -0
  598. package/dist/helpers/urlParamSync.d.ts +19 -0
  599. package/dist/helpers/urlParamSync.js +54 -0
  600. package/dist/helpers/urlParamSync.js.map +1 -0
  601. package/dist/helpers/utilityHelpers.d.ts +81 -0
  602. package/dist/helpers/utilityHelpers.js +133 -0
  603. package/dist/helpers/utilityHelpers.js.map +1 -0
  604. package/dist/helpers/validationHelpers.d.ts +36 -0
  605. package/dist/helpers/validationHelpers.js +44 -0
  606. package/dist/helpers/validationHelpers.js.map +1 -0
  607. package/dist/hooks/useAnchoredFloating.d.ts +22 -0
  608. package/dist/hooks/useAnchoredFloating.js +59 -0
  609. package/dist/hooks/useAnchoredFloating.js.map +1 -0
  610. package/dist/hooks/useBreakpoint.d.ts +16 -0
  611. package/dist/hooks/useBreakpoint.js +47 -0
  612. package/dist/hooks/useBreakpoint.js.map +1 -0
  613. package/dist/hooks/useDebounce.d.ts +8 -0
  614. package/dist/hooks/useDebounce.js +36 -0
  615. package/dist/hooks/useDebounce.js.map +1 -0
  616. package/dist/hooks/useFileAttachments.d.ts +43 -0
  617. package/dist/hooks/useFileAttachments.js +158 -0
  618. package/dist/hooks/useFileAttachments.js.map +1 -0
  619. package/dist/hooks/useHoverCapable.d.ts +6 -0
  620. package/dist/hooks/useHoverCapable.js +28 -0
  621. package/dist/hooks/useHoverCapable.js.map +1 -0
  622. package/dist/hooks/useInlineEditor.d.ts +5 -0
  623. package/dist/hooks/useInlineEditor.js +41 -0
  624. package/dist/hooks/useInlineEditor.js.map +1 -0
  625. package/dist/hooks/useMobile.d.ts +7 -0
  626. package/dist/hooks/useMobile.js +8 -0
  627. package/dist/hooks/useMobile.js.map +1 -0
  628. package/dist/hooks/useNotification.d.ts +38 -0
  629. package/dist/hooks/useNotification.js +39 -0
  630. package/dist/hooks/useNotification.js.map +1 -0
  631. package/dist/hooks/useResolvedTheme.d.ts +7 -0
  632. package/dist/hooks/useResolvedTheme.js +15 -0
  633. package/dist/hooks/useResolvedTheme.js.map +1 -0
  634. package/dist/hooks/useVoiceTranscription.d.ts +25 -0
  635. package/dist/hooks/useVoiceTranscription.js +106 -0
  636. package/dist/hooks/useVoiceTranscription.js.map +1 -0
  637. package/dist/index.d.ts +50 -0
  638. package/dist/index.js +125 -0
  639. package/dist/index.js.map +1 -0
  640. package/dist/interfaces/IFileAttachment.d.ts +18 -0
  641. package/dist/interfaces/IFileAttachment.js +2 -0
  642. package/dist/interfaces/IFileAttachment.js.map +1 -0
  643. package/dist/interfaces/IFilterOption.d.ts +10 -0
  644. package/dist/interfaces/IFilterOption.js +2 -0
  645. package/dist/interfaces/IFilterOption.js.map +1 -0
  646. package/dist/locales/en/ui.json.d.ts +470 -0
  647. package/dist/locales/en/ui.json.js +99 -0
  648. package/dist/locales/en/ui.json.js.map +1 -0
  649. package/dist/locales/index.d.ts +938 -0
  650. package/dist/locales/index.js +7 -0
  651. package/dist/locales/index.js.map +1 -0
  652. package/dist/locales/pt/ui.json.d.ts +470 -0
  653. package/dist/locales/pt/ui.json.js +99 -0
  654. package/dist/locales/pt/ui.json.js.map +1 -0
  655. package/dist/motion/index.d.ts +2 -0
  656. package/dist/motion/index.js +17 -0
  657. package/dist/motion/index.js.map +1 -0
  658. package/dist/motion/motionPresets.d.ts +44 -0
  659. package/dist/motion/motionPresets.js +67 -0
  660. package/dist/motion/motionPresets.js.map +1 -0
  661. package/dist/motion/motionTokens.d.ts +40 -0
  662. package/dist/motion/motionTokens.js +29 -0
  663. package/dist/motion/motionTokens.js.map +1 -0
  664. package/package.json +174 -0
  665. package/src/assets/styles/theme.css +381 -0
  666. package/tailwind-plugins/glass.js +167 -0
  667. package/tailwind.preset.js +367 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OutlinedChip.js","sources":["../../../../src/components/UI/Chips/OutlinedChip.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport classNames from 'classnames';\nimport { useTranslation } from 'react-i18next';\nimport { twMerge } from 'tailwind-merge';\n\nimport ControlledButton from '@/components/Form/ControlledButton';\nimport {\n ControlledMenuHandler,\n ControlledMenuItem,\n ControlledMenuList,\n ControlledMenuRoot,\n} from '@/components/UI/ControlledMenu';\nimport ControlledTooltip from '@/components/UI/ControlledTooltip';\nimport LoadingSpinner from '@/components/UI/LoadingSpinner';\nimport { capitalizeAllLetters } from '@/helpers/stringHelpers';\n\nimport { IFilterOption } from '../../../interfaces/IFilterOption';\nimport { MaterialSymbol, SymbolCodepoints } from '../../UI/MaterialSymbol';\n\nimport { resolveChipDotClass, resolveChipToneClass, TChipSize, TChipTone, TChipVariant } from './chipTones';\n\nconst CHIP_PADDING_CLASS: Record<TChipSize, string> = {\n xs: 'px-2.5 py-0.5',\n sm: 'px-2.5 py-0.5',\n md: 'px-3 py-1',\n};\n\nconst CHIP_LABEL_SIZE_CLASS: Record<TChipSize, string> = {\n xs: 'text-xxs',\n sm: 'text-xs',\n md: 'text-sm',\n};\n\nexport interface IOutlinedChipDropdownOption extends IFilterOption {\n /** Cabeçalho de grupo não selecionável, renderizado acima dos filhos recuados. */\n isGroupHeading?: boolean;\n /** Recuo de filho sob o cabeçalho do grupo. */\n isGroupChild?: boolean;\n}\n\ninterface IOutlinedChipProps {\n label?: string;\n count?: number;\n tone?: TChipTone;\n variant?: TChipVariant;\n size?: TChipSize;\n dot?: boolean;\n dotColor?: string;\n className?: string;\n wrapperClassName?: string;\n labelClassName?: string;\n // Por padrão a label passa por capitalizeAllLetters. Use true quando o texto for um\n // identificador literal (nome de tabela, coluna, chave) cujo caixa não pode ser alterado.\n preserveLabelCase?: boolean;\n truncate?: boolean;\n backgroundColor?: string;\n chipIcon?: SymbolCodepoints;\n chipIconSize?: number;\n trailingIcon?: SymbolCodepoints;\n loading?: boolean;\n tooltip?: string;\n dotClassName?: string;\n onClick?: (event: React.MouseEvent) => void;\n disabled?: boolean;\n useAsDropdown?: boolean;\n dropdownOptions?: Array<IOutlinedChipDropdownOption>;\n dropdownCallback?: (option: IFilterOption) => void;\n dropdownSelectedValue?: string;\n dropdownMenuClassName?: string;\n canClose?: boolean;\n onClose?: (event: React.MouseEvent) => void;\n}\n\nconst OutlinedChip: React.FC<IOutlinedChipProps> = ({\n label,\n count,\n tone,\n variant = 'soft',\n size = 'xs',\n dot = false,\n dotColor,\n className,\n wrapperClassName,\n labelClassName,\n preserveLabelCase = false,\n truncate = false,\n backgroundColor,\n chipIcon,\n chipIconSize = 16,\n trailingIcon,\n loading = false,\n tooltip,\n dotClassName,\n onClick,\n disabled = false,\n useAsDropdown = false,\n dropdownOptions = [],\n dropdownCallback,\n dropdownSelectedValue,\n dropdownMenuClassName,\n canClose = false,\n onClose,\n}) => {\n const { t } = useTranslation('ui');\n const [open, setOpen] = useState(false);\n\n const hasCount = count !== undefined && count !== null;\n if (!label && !hasCount) return null;\n\n const isCountOnly = hasCount && !label;\n const displayLabel = isCountOnly ? String(count) : preserveLabelCase ? label : capitalizeAllLetters(label ?? '');\n\n const toneClass = tone ? resolveChipToneClass(tone, variant) : undefined;\n const resolvedDotClass = dotClassName ?? (dot && tone ? resolveChipDotClass(tone) : undefined);\n const inlineStyle = backgroundColor ? { backgroundColor } : undefined;\n\n const leadingDot =\n resolvedDotClass || dotColor ? (\n <span\n className={classNames('size-1.5 shrink-0 rounded-full', resolvedDotClass)}\n style={dotColor ? { backgroundColor: dotColor } : undefined}\n />\n ) : null;\n\n const leadingIcon = loading ? (\n <LoadingSpinner size={4} className=\"shrink-0\" />\n ) : chipIcon ? (\n <MaterialSymbol icon={chipIcon} size={chipIconSize} />\n ) : null;\n\n if (useAsDropdown && !disabled) {\n const handler = (\n <ControlledMenuHandler>\n <div\n onClick={(event: React.MouseEvent) => event.stopPropagation()}\n className={twMerge(\n classNames(\n 'flex cursor-pointer items-center justify-center gap-x-1 truncate rounded-full font-semibold transition-opacity hover:opacity-80',\n CHIP_PADDING_CLASS[size],\n CHIP_LABEL_SIZE_CLASS[size],\n toneClass,\n ),\n className,\n )}\n style={inlineStyle}\n >\n {leadingDot}\n {leadingIcon}\n {displayLabel}\n <MaterialSymbol icon=\"arrow_drop_down\" size={16} />\n </div>\n </ControlledMenuHandler>\n );\n\n return (\n <ControlledMenuRoot open={open} handler={setOpen} placement=\"bottom-start\">\n {tooltip ? <ControlledTooltip content={tooltip}>{handler}</ControlledTooltip> : handler}\n\n <ControlledMenuList\n className={twMerge('zIndexMax max-h-72 min-w-[12rem] overflow-y-auto', dropdownMenuClassName)}\n onClick={(event: React.MouseEvent<HTMLDivElement>) => {\n event.stopPropagation();\n }}\n >\n {(dropdownOptions ?? []).map((option) => {\n if (option.isGroupHeading) {\n return (\n <div\n key={option.value}\n className=\"select-none px-3 pb-1 pt-2 text-xs font-semibold text-foreground-muted\"\n >\n {preserveLabelCase ? option.label : capitalizeAllLetters(option.label)}\n </div>\n );\n }\n\n const menuItem = (\n <ControlledMenuItem\n disabled={option.disabled}\n onClick={() => {\n dropdownCallback?.(option);\n setOpen(false);\n }}\n className={classNames('text-sm text-foreground', {\n 'bg-muted-active font-semibold hover:bg-muted-active focus:bg-muted-active':\n dropdownSelectedValue === option.value,\n 'pl-7': option.isGroupChild,\n })}\n >\n {preserveLabelCase ? option.label : capitalizeAllLetters(option.label)}\n </ControlledMenuItem>\n );\n\n // A tooltip explains WHY an option is disabled; the wrapper div exists because the\n // menu item does not forward its ref (the tooltip clones its child).\n return option.tooltip ? (\n <ControlledTooltip key={option.value} content={option.tooltip} className=\"z-[9999] max-w-64\">\n <div>{menuItem}</div>\n </ControlledTooltip>\n ) : (\n <React.Fragment key={option.value}>{menuItem}</React.Fragment>\n );\n })}\n </ControlledMenuList>\n </ControlledMenuRoot>\n );\n }\n\n const containerClass = twMerge(\n classNames(\n 'flex items-center gap-x-1 rounded-full text-center',\n CHIP_PADDING_CLASS[size],\n isCountOnly ? 'min-w-5 justify-center' : 'min-w-14',\n toneClass,\n {\n 'justify-between': canClose && onClose,\n 'justify-center': !canClose && !onClose && !isCountOnly,\n 'cursor-default opacity-70': disabled,\n 'transition-opacity hover:opacity-80': onClick && !disabled,\n },\n ),\n className,\n );\n\n const chipInner = (\n <>\n {leadingDot}\n {leadingIcon}\n <span className={twMerge(classNames('font-semibold', CHIP_LABEL_SIZE_CLASS[size], { truncate }), labelClassName)}>\n {displayLabel}\n </span>\n {trailingIcon && <MaterialSymbol icon={trailingIcon} size={chipIconSize} />}\n {canClose && onClose && (\n <ControlledTooltip content={t('actions.remove')}>\n <MaterialSymbol\n icon=\"close\"\n size={16}\n onClick={(event: React.MouseEvent) => {\n event.stopPropagation();\n onClose(event);\n }}\n />\n </ControlledTooltip>\n )}\n </>\n );\n\n const chip = onClick ? (\n <ControlledButton\n defaultHtmlButton\n className={containerClass}\n style={inlineStyle}\n onClick={onClick}\n disabled={disabled}\n >\n {chipInner}\n </ControlledButton>\n ) : (\n <div className={containerClass} style={inlineStyle}>\n {chipInner}\n </div>\n );\n\n if (!tooltip) return chip;\n\n return (\n <ControlledTooltip content={tooltip}>\n <div className={twMerge('inline-flex', wrapperClassName)}>{chip}</div>\n </ControlledTooltip>\n );\n};\n\nexport default OutlinedChip;\n"],"names":[],"mappings":";;;;;;;;;;;;AAqBA,MAAM,qBAAgD;AAAA,EACpD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,MAAM,wBAAmD;AAAA,EACvD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AA0CA,MAAM,eAA6C,CAAC;AAAA,EAClD;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,OAAO;AAAA,EACP,MAAM;AAAA,EACN;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,oBAAoB;AAAA,EACpB,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,kBAAkB,CAAA;AAAA,EAClB;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AACF,MAAM;AACJ,QAAM,EAAE,EAAA,IAAM,eAAe,IAAI;AACjC,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,KAAK;AAEtC,QAAM,WAAW,UAAU,UAAa,UAAU;AAClD,MAAI,CAAC,SAAS,CAAC,SAAU,QAAO;AAEhC,QAAM,cAAc,YAAY,CAAC;AACjC,QAAM,eAAe,cAAc,OAAO,KAAK,IAAI,oBAAoB,QAAQ,qBAAqB,SAAS,EAAE;AAE/G,QAAM,YAAY,OAAO,qBAAqB,MAAM,OAAO,IAAI;AAC/D,QAAM,mBAAmB,iBAAiB,OAAO,OAAO,oBAAoB,IAAI,IAAI;AACpF,QAAM,cAAc,kBAAkB,EAAE,gBAAA,IAAoB;AAE5D,QAAM,aACJ,oBAAoB,WAClB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW,WAAW,kCAAkC,gBAAgB;AAAA,MACxE,OAAO,WAAW,EAAE,iBAAiB,aAAa;AAAA,IAAA;AAAA,EAAA,IAElD;AAEN,QAAM,cAAc,UAClB,oBAAC,gBAAA,EAAe,MAAM,GAAG,WAAU,WAAA,CAAW,IAC5C,+BACD,gBAAA,EAAe,MAAM,UAAU,MAAM,cAAc,IAClD;AAEJ,MAAI,iBAAiB,CAAC,UAAU;AAC9B,UAAM,8BACH,uBAAA,EACC,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,SAAS,CAAC,UAA4B,MAAM,gBAAA;AAAA,QAC5C,WAAW;AAAA,UACT;AAAA,YACE;AAAA,YACA,mBAAmB,IAAI;AAAA,YACvB,sBAAsB,IAAI;AAAA,YAC1B;AAAA,UAAA;AAAA,UAEF;AAAA,QAAA;AAAA,QAEF,OAAO;AAAA,QAEN,UAAA;AAAA,UAAA;AAAA,UACA;AAAA,UACA;AAAA,UACD,oBAAC,gBAAA,EAAe,MAAK,mBAAkB,MAAM,GAAA,CAAI;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAErD;AAGF,gCACG,oBAAA,EAAmB,MAAY,SAAS,SAAS,WAAU,gBACzD,UAAA;AAAA,MAAA,UAAU,oBAAC,mBAAA,EAAkB,SAAS,SAAU,mBAAQ,IAAuB;AAAA,MAEhF;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAW,QAAQ,oDAAoD,qBAAqB;AAAA,UAC5F,SAAS,CAAC,UAA4C;AACpD,kBAAM,gBAAA;AAAA,UACR;AAAA,UAEE,WAAA,mBAAmB,CAAA,GAAI,IAAI,CAAC,WAAW;AACvC,gBAAI,OAAO,gBAAgB;AACzB,qBACE;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBAEC,WAAU;AAAA,kBAET,UAAA,oBAAoB,OAAO,QAAQ,qBAAqB,OAAO,KAAK;AAAA,gBAAA;AAAA,gBAHhE,OAAO;AAAA,cAAA;AAAA,YAMlB;AAEA,kBAAM,WACJ;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,UAAU,OAAO;AAAA,gBACjB,SAAS,MAAM;AACb,qCAAmB,MAAM;AACzB,0BAAQ,KAAK;AAAA,gBACf;AAAA,gBACA,WAAW,WAAW,2BAA2B;AAAA,kBAC/C,6EACE,0BAA0B,OAAO;AAAA,kBACnC,QAAQ,OAAO;AAAA,gBAAA,CAChB;AAAA,gBAEA,UAAA,oBAAoB,OAAO,QAAQ,qBAAqB,OAAO,KAAK;AAAA,cAAA;AAAA,YAAA;AAMzE,mBAAO,OAAO,UACZ,oBAAC,mBAAA,EAAqC,SAAS,OAAO,SAAS,WAAU,qBACvE,UAAA,oBAAC,OAAA,EAAK,oBAAS,EAAA,GADO,OAAO,KAE/B,IAEA,oBAAC,MAAM,UAAN,EAAmC,UAAA,SAAA,GAAf,OAAO,KAAiB;AAAA,UAEjD,CAAC;AAAA,QAAA;AAAA,MAAA;AAAA,IACH,GACF;AAAA,EAEJ;AAEA,QAAM,iBAAiB;AAAA,IACrB;AAAA,MACE;AAAA,MACA,mBAAmB,IAAI;AAAA,MACvB,cAAc,2BAA2B;AAAA,MACzC;AAAA,MACA;AAAA,QACE,mBAAmB,YAAY;AAAA,QAC/B,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC;AAAA,QAC5C,6BAA6B;AAAA,QAC7B,uCAAuC,WAAW,CAAC;AAAA,MAAA;AAAA,IACrD;AAAA,IAEF;AAAA,EAAA;AAGF,QAAM,YACJ,qBAAA,UAAA,EACG,UAAA;AAAA,IAAA;AAAA,IACA;AAAA,IACD,oBAAC,QAAA,EAAK,WAAW,QAAQ,WAAW,iBAAiB,sBAAsB,IAAI,GAAG,EAAE,SAAA,CAAU,GAAG,cAAc,GAC5G,UAAA,cACH;AAAA,IACC,gBAAgB,oBAAC,gBAAA,EAAe,MAAM,cAAc,MAAM,cAAc;AAAA,IACxE,YAAY,WACX,oBAAC,qBAAkB,SAAS,EAAE,gBAAgB,GAC5C,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,MAAM;AAAA,QACN,SAAS,CAAC,UAA4B;AACpC,gBAAM,gBAAA;AACN,kBAAQ,KAAK;AAAA,QACf;AAAA,MAAA;AAAA,IAAA,EACF,CACF;AAAA,EAAA,GAEJ;AAGF,QAAM,OAAO,UACX;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,mBAAiB;AAAA,MACjB,WAAW;AAAA,MACX,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MAEC,UAAA;AAAA,IAAA;AAAA,EAAA,IAGH,oBAAC,OAAA,EAAI,WAAW,gBAAgB,OAAO,aACpC,UAAA,WACH;AAGF,MAAI,CAAC,QAAS,QAAO;AAErB,SACE,oBAAC,mBAAA,EAAkB,SAAS,SAC1B,UAAA,oBAAC,OAAA,EAAI,WAAW,QAAQ,eAAe,gBAAgB,GAAI,UAAA,KAAA,CAAK,GAClE;AAEJ;"}
@@ -0,0 +1,8 @@
1
+ interface IStatusChipProps {
2
+ className?: string;
3
+ useIcon?: boolean;
4
+ statusId: number;
5
+ statusName?: string;
6
+ }
7
+ declare const StatusChip: React.FC<IStatusChipProps>;
8
+ export default StatusChip;
@@ -0,0 +1,33 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useTranslation } from "react-i18next";
3
+ import OutlinedChip from "./OutlinedChip.js";
4
+ const STATUS_CONFIG = {
5
+ 1: { tone: "neutral", icon: "schedule", labelKey: "states.notStarted" },
6
+ 2: { tone: "success", icon: "check", labelKey: "states.onTime" },
7
+ 3: { tone: "danger", icon: "alarm", labelKey: "states.overdue" },
8
+ 4: { tone: "success", icon: "check", labelKey: "states.completed" },
9
+ 5: { tone: "warning", icon: "running_with_errors", labelKey: "states.atRisk" }
10
+ };
11
+ const StatusChip = ({ statusId, className, useIcon = true, statusName = "" }) => {
12
+ const { t } = useTranslation("ui");
13
+ const config = STATUS_CONFIG[statusId];
14
+ const label = config ? t(config.labelKey) : "";
15
+ if (statusName) {
16
+ return /* @__PURE__ */ jsx(OutlinedChip, { label, tone: "success", size: "sm", className });
17
+ }
18
+ if (!config) return null;
19
+ return /* @__PURE__ */ jsx(
20
+ OutlinedChip,
21
+ {
22
+ label,
23
+ tone: config.tone,
24
+ size: "sm",
25
+ chipIcon: useIcon ? config.icon : void 0,
26
+ className
27
+ }
28
+ );
29
+ };
30
+ export {
31
+ StatusChip as default
32
+ };
33
+ //# sourceMappingURL=StatusChip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusChip.js","sources":["../../../../src/components/UI/Chips/StatusChip.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next';\n\nimport { SymbolCodepoints } from '@/components/UI/MaterialSymbol';\n\nimport { TChipTone } from './chipTones';\nimport OutlinedChip from './OutlinedChip';\n\ninterface IStatusChipProps {\n className?: string;\n useIcon?: boolean;\n statusId: number;\n statusName?: string;\n}\n\ninterface IStatusConfig {\n tone: TChipTone;\n icon: SymbolCodepoints;\n labelKey: string;\n}\n\nconst STATUS_CONFIG: Record<number, IStatusConfig> = {\n 1: { tone: 'neutral', icon: 'schedule', labelKey: 'states.notStarted' },\n 2: { tone: 'success', icon: 'check', labelKey: 'states.onTime' },\n 3: { tone: 'danger', icon: 'alarm', labelKey: 'states.overdue' },\n 4: { tone: 'success', icon: 'check', labelKey: 'states.completed' },\n 5: { tone: 'warning', icon: 'running_with_errors', labelKey: 'states.atRisk' },\n};\n\nconst StatusChip: React.FC<IStatusChipProps> = ({ statusId, className, useIcon = true, statusName = '' }) => {\n const { t } = useTranslation('ui');\n const config = STATUS_CONFIG[statusId];\n const label = config ? t(config.labelKey) : '';\n\n if (statusName) {\n return <OutlinedChip label={label} tone=\"success\" size=\"sm\" className={className} />;\n }\n\n if (!config) return null;\n\n return (\n <OutlinedChip\n label={label}\n tone={config.tone}\n size=\"sm\"\n chipIcon={useIcon ? config.icon : undefined}\n className={className}\n />\n );\n};\n\nexport default StatusChip;\n"],"names":[],"mappings":";;;AAoBA,MAAM,gBAA+C;AAAA,EACnD,GAAG,EAAE,MAAM,WAAW,MAAM,YAAY,UAAU,oBAAA;AAAA,EAClD,GAAG,EAAE,MAAM,WAAW,MAAM,SAAS,UAAU,gBAAA;AAAA,EAC/C,GAAG,EAAE,MAAM,UAAU,MAAM,SAAS,UAAU,iBAAA;AAAA,EAC9C,GAAG,EAAE,MAAM,WAAW,MAAM,SAAS,UAAU,mBAAA;AAAA,EAC/C,GAAG,EAAE,MAAM,WAAW,MAAM,uBAAuB,UAAU,gBAAA;AAC/D;AAEA,MAAM,aAAyC,CAAC,EAAE,UAAU,WAAW,UAAU,MAAM,aAAa,SAAS;AAC3G,QAAM,EAAE,EAAA,IAAM,eAAe,IAAI;AACjC,QAAM,SAAS,cAAc,QAAQ;AACrC,QAAM,QAAQ,SAAS,EAAE,OAAO,QAAQ,IAAI;AAE5C,MAAI,YAAY;AACd,+BAAQ,cAAA,EAAa,OAAc,MAAK,WAAU,MAAK,MAAK,WAAsB;AAAA,EACpF;AAEA,MAAI,CAAC,OAAQ,QAAO;AAEpB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,MAAM,OAAO;AAAA,MACb,MAAK;AAAA,MACL,UAAU,UAAU,OAAO,OAAO;AAAA,MAClC;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -0,0 +1,6 @@
1
+ export type TChipTone = 'neutral' | 'success' | 'warning' | 'danger' | 'info' | 'purple' | 'indigo';
2
+ export type TChipVariant = 'soft' | 'outlined' | 'solid';
3
+ export type TChipSize = 'xs' | 'sm' | 'md';
4
+ export declare const CHIP_TONE_VALUES: Array<TChipTone>;
5
+ export declare const resolveChipToneClass: (tone: TChipTone, variant?: TChipVariant) => string;
6
+ export declare const resolveChipDotClass: (tone: TChipTone) => string;
@@ -0,0 +1,53 @@
1
+ const CHIP_TONES = {
2
+ neutral: {
3
+ soft: "bg-muted-hover text-foreground-muted",
4
+ outlined: "border border-border-emphasis bg-muted text-foreground-muted",
5
+ solid: "bg-foreground-subtle text-surface",
6
+ dot: "bg-foreground-faint"
7
+ },
8
+ success: {
9
+ soft: "bg-success-soft text-success-emphasis",
10
+ outlined: "border border-success-border bg-success-soft text-success-emphasis",
11
+ solid: "bg-success text-success-fg",
12
+ dot: "bg-success"
13
+ },
14
+ warning: {
15
+ soft: "bg-warning-soft text-warning-emphasis",
16
+ outlined: "border border-warning-border bg-warning-soft text-warning-emphasis",
17
+ solid: "bg-warning text-warning-fg",
18
+ dot: "bg-warning"
19
+ },
20
+ danger: {
21
+ soft: "bg-danger-soft text-danger-emphasis",
22
+ outlined: "border border-danger-border bg-danger-soft text-danger-emphasis",
23
+ solid: "bg-danger text-danger-fg",
24
+ dot: "bg-danger"
25
+ },
26
+ info: {
27
+ soft: "bg-info-soft text-info-emphasis",
28
+ outlined: "border border-info-border bg-info-soft text-info-emphasis",
29
+ solid: "bg-info text-info-fg",
30
+ dot: "bg-info"
31
+ },
32
+ purple: {
33
+ soft: "bg-brand-soft text-brand-emphasis",
34
+ outlined: "border border-brand-border bg-brand-soft text-brand-emphasis",
35
+ solid: "bg-brand text-brand-fg",
36
+ dot: "bg-brand"
37
+ },
38
+ indigo: {
39
+ soft: "bg-brand-soft text-brand-emphasis",
40
+ outlined: "border border-brand-border bg-brand-soft text-brand-emphasis",
41
+ solid: "bg-brand text-brand-fg",
42
+ dot: "bg-brand"
43
+ }
44
+ };
45
+ const CHIP_TONE_VALUES = Object.keys(CHIP_TONES);
46
+ const resolveChipToneClass = (tone, variant = "soft") => CHIP_TONES[tone][variant];
47
+ const resolveChipDotClass = (tone) => CHIP_TONES[tone].dot;
48
+ export {
49
+ CHIP_TONE_VALUES,
50
+ resolveChipDotClass,
51
+ resolveChipToneClass
52
+ };
53
+ //# sourceMappingURL=chipTones.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chipTones.js","sources":["../../../../src/components/UI/Chips/chipTones.ts"],"sourcesContent":["export type TChipTone = 'neutral' | 'success' | 'warning' | 'danger' | 'info' | 'purple' | 'indigo';\nexport type TChipVariant = 'soft' | 'outlined' | 'solid';\nexport type TChipSize = 'xs' | 'sm' | 'md';\n\ninterface IChipToneClasses {\n soft: string;\n outlined: string;\n solid: string;\n dot: string;\n}\n\nconst CHIP_TONES: Record<TChipTone, IChipToneClasses> = {\n neutral: {\n soft: 'bg-muted-hover text-foreground-muted',\n outlined: 'border border-border-emphasis bg-muted text-foreground-muted',\n solid: 'bg-foreground-subtle text-surface',\n dot: 'bg-foreground-faint',\n },\n success: {\n soft: 'bg-success-soft text-success-emphasis',\n outlined: 'border border-success-border bg-success-soft text-success-emphasis',\n solid: 'bg-success text-success-fg',\n dot: 'bg-success',\n },\n warning: {\n soft: 'bg-warning-soft text-warning-emphasis',\n outlined: 'border border-warning-border bg-warning-soft text-warning-emphasis',\n solid: 'bg-warning text-warning-fg',\n dot: 'bg-warning',\n },\n danger: {\n soft: 'bg-danger-soft text-danger-emphasis',\n outlined: 'border border-danger-border bg-danger-soft text-danger-emphasis',\n solid: 'bg-danger text-danger-fg',\n dot: 'bg-danger',\n },\n info: {\n soft: 'bg-info-soft text-info-emphasis',\n outlined: 'border border-info-border bg-info-soft text-info-emphasis',\n solid: 'bg-info text-info-fg',\n dot: 'bg-info',\n },\n purple: {\n soft: 'bg-brand-soft text-brand-emphasis',\n outlined: 'border border-brand-border bg-brand-soft text-brand-emphasis',\n solid: 'bg-brand text-brand-fg',\n dot: 'bg-brand',\n },\n indigo: {\n soft: 'bg-brand-soft text-brand-emphasis',\n outlined: 'border border-brand-border bg-brand-soft text-brand-emphasis',\n solid: 'bg-brand text-brand-fg',\n dot: 'bg-brand',\n },\n};\n\nexport const CHIP_TONE_VALUES = Object.keys(CHIP_TONES) as Array<TChipTone>;\n\nexport const resolveChipToneClass = (tone: TChipTone, variant: TChipVariant = 'soft'): string =>\n CHIP_TONES[tone][variant];\n\nexport const resolveChipDotClass = (tone: TChipTone): string => CHIP_TONES[tone].dot;\n"],"names":[],"mappings":"AAWA,MAAM,aAAkD;AAAA,EACtD,SAAS;AAAA,IACP,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAAA,EAEP,SAAS;AAAA,IACP,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAAA,EAEP,SAAS;AAAA,IACP,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAAA,EAEP,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAAA,EAEP,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAAA,EAEP,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAAA,EAEP,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,KAAK;AAAA,EAAA;AAET;AAEO,MAAM,mBAAmB,OAAO,KAAK,UAAU;AAE/C,MAAM,uBAAuB,CAAC,MAAiB,UAAwB,WAC5E,WAAW,IAAI,EAAE,OAAO;AAEnB,MAAM,sBAAsB,CAAC,SAA4B,WAAW,IAAI,EAAE;"}
@@ -0,0 +1,30 @@
1
+ export type TColorSwatchSize = 'xs' | 'sm' | 'md' | 'lg';
2
+ interface IColorSwatchProps {
3
+ /** Cor CSS já resolvida. Ausente é estado válido: a biblioteca aceita cor sem hex e sem RGB. */
4
+ cssColor?: string | null;
5
+ name?: string | null;
6
+ size?: TColorSwatchSize;
7
+ /** Substitui o tamanho do preset quando a medida é calculada (zoom do canvas, por exemplo). */
8
+ sizePx?: number;
9
+ /** Mostra o nome ao lado da bolinha, além do tooltip. */
10
+ showName?: boolean;
11
+ /** Área de hover invisível sobre uma bolinha já desenhada em outra camada. */
12
+ hitAreaOnly?: boolean;
13
+ /**
14
+ * Cada tooltip monta um floating-ui próprio. Numa lista longa (satélites do board, fileiras de
15
+ * cores), desligue e deixe UM tooltip no container: o custo cai de N instâncias para uma.
16
+ * Já vem desligado com `showName`, onde o nome está visível e o tooltip só repetiria.
17
+ */
18
+ tooltip?: boolean;
19
+ className?: string;
20
+ nameClassName?: string;
21
+ }
22
+ /**
23
+ * A ÚNICA bolinha de cor da plataforma.
24
+ *
25
+ * Cor sem código cadastrado não some nem vira um buraco na interface: vira cinza opaco e o nome
26
+ * carrega a identidade. Foi a divergência entre "esconde" e "pinta de cinza" que fez uma cor sem hex
27
+ * parecer bug de renderização.
28
+ */
29
+ declare const ColorSwatch: React.FC<IColorSwatchProps>;
30
+ export default ColorSwatch;
@@ -0,0 +1,53 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import classNames from "classnames";
3
+ import { useTranslation } from "react-i18next";
4
+ import { twMerge } from "tailwind-merge";
5
+ import ControlledTooltip from "./ControlledTooltip.js";
6
+ const SIZE_CLASS = {
7
+ xs: "size-2",
8
+ sm: "size-3",
9
+ md: "size-4",
10
+ lg: "size-5"
11
+ };
12
+ const ColorSwatch = ({
13
+ cssColor,
14
+ name,
15
+ size = "sm",
16
+ sizePx,
17
+ showName = false,
18
+ hitAreaOnly = false,
19
+ tooltip,
20
+ className,
21
+ nameClassName
22
+ }) => {
23
+ const { t } = useTranslation("ui");
24
+ const resolvedName = name?.trim();
25
+ const tooltipContent = [resolvedName, cssColor ? void 0 : t("colorSwatch.noCode")].filter(Boolean).join(" · ");
26
+ const dot = /* @__PURE__ */ jsx(
27
+ "span",
28
+ {
29
+ className: twMerge(
30
+ classNames(
31
+ "inline-block shrink-0 rounded-full border border-border",
32
+ sizePx === void 0 && SIZE_CLASS[size],
33
+ hitAreaOnly && "cursor-help border-transparent bg-transparent"
34
+ ),
35
+ className
36
+ ),
37
+ style: {
38
+ ...sizePx === void 0 ? void 0 : { width: sizePx, height: sizePx },
39
+ ...hitAreaOnly ? void 0 : { backgroundColor: cssColor ?? "rgb(var(--color-muted-active))" }
40
+ }
41
+ }
42
+ );
43
+ const content = showName ? /* @__PURE__ */ jsxs("span", { className: "flex min-w-0 items-center gap-1", children: [
44
+ dot,
45
+ /* @__PURE__ */ jsx("span", { className: classNames("truncate", nameClassName), children: resolvedName })
46
+ ] }) : dot;
47
+ if (!tooltipContent || !(tooltip ?? !showName)) return content;
48
+ return /* @__PURE__ */ jsx(ControlledTooltip, { content: tooltipContent, children: content });
49
+ };
50
+ export {
51
+ ColorSwatch as default
52
+ };
53
+ //# sourceMappingURL=ColorSwatch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorSwatch.js","sources":["../../../src/components/UI/ColorSwatch.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport { useTranslation } from 'react-i18next';\nimport { twMerge } from 'tailwind-merge';\n\nimport ControlledTooltip from '@/components/UI/ControlledTooltip';\n\nexport type TColorSwatchSize = 'xs' | 'sm' | 'md' | 'lg';\n\nconst SIZE_CLASS: Record<TColorSwatchSize, string> = {\n xs: 'size-2',\n sm: 'size-3',\n md: 'size-4',\n lg: 'size-5',\n};\n\ninterface IColorSwatchProps {\n /** Cor CSS já resolvida. Ausente é estado válido: a biblioteca aceita cor sem hex e sem RGB. */\n cssColor?: string | null;\n name?: string | null;\n size?: TColorSwatchSize;\n /** Substitui o tamanho do preset quando a medida é calculada (zoom do canvas, por exemplo). */\n sizePx?: number;\n /** Mostra o nome ao lado da bolinha, além do tooltip. */\n showName?: boolean;\n /** Área de hover invisível sobre uma bolinha já desenhada em outra camada. */\n hitAreaOnly?: boolean;\n /**\n * Cada tooltip monta um floating-ui próprio. Numa lista longa (satélites do board, fileiras de\n * cores), desligue e deixe UM tooltip no container: o custo cai de N instâncias para uma.\n * Já vem desligado com `showName`, onde o nome está visível e o tooltip só repetiria.\n */\n tooltip?: boolean;\n className?: string;\n nameClassName?: string;\n}\n\n/**\n * A ÚNICA bolinha de cor da plataforma.\n *\n * Cor sem código cadastrado não some nem vira um buraco na interface: vira cinza opaco e o nome\n * carrega a identidade. Foi a divergência entre \"esconde\" e \"pinta de cinza\" que fez uma cor sem hex\n * parecer bug de renderização.\n */\nconst ColorSwatch: React.FC<IColorSwatchProps> = ({\n cssColor,\n name,\n size = 'sm',\n sizePx,\n showName = false,\n hitAreaOnly = false,\n tooltip,\n className,\n nameClassName,\n}) => {\n const { t } = useTranslation('ui');\n\n const resolvedName = name?.trim();\n const tooltipContent = [resolvedName, cssColor ? undefined : t('colorSwatch.noCode')].filter(Boolean).join(' · ');\n\n const dot = (\n <span\n className={twMerge(\n classNames(\n 'inline-block shrink-0 rounded-full border border-border',\n sizePx === undefined && SIZE_CLASS[size],\n hitAreaOnly && 'cursor-help border-transparent bg-transparent',\n ),\n className,\n )}\n style={{\n ...(sizePx === undefined ? undefined : { width: sizePx, height: sizePx }),\n ...(hitAreaOnly ? undefined : { backgroundColor: cssColor ?? 'rgb(var(--color-muted-active))' }),\n }}\n />\n );\n\n const content = showName ? (\n <span className=\"flex min-w-0 items-center gap-1\">\n {dot}\n <span className={classNames('truncate', nameClassName)}>{resolvedName}</span>\n </span>\n ) : (\n dot\n );\n\n if (!tooltipContent || !(tooltip ?? !showName)) return content;\n\n return <ControlledTooltip content={tooltipContent}>{content}</ControlledTooltip>;\n};\n\nexport default ColorSwatch;\n"],"names":[],"mappings":";;;;;AAQA,MAAM,aAA+C;AAAA,EACnD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AA8BA,MAAM,cAA2C,CAAC;AAAA,EAChD;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,WAAW;AAAA,EACX,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,EAAE,EAAA,IAAM,eAAe,IAAI;AAEjC,QAAM,eAAe,MAAM,KAAA;AAC3B,QAAM,iBAAiB,CAAC,cAAc,WAAW,SAAY,EAAE,oBAAoB,CAAC,EAAE,OAAO,OAAO,EAAE,KAAK,KAAK;AAEhH,QAAM,MACJ;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,UACE;AAAA,UACA,WAAW,UAAa,WAAW,IAAI;AAAA,UACvC,eAAe;AAAA,QAAA;AAAA,QAEjB;AAAA,MAAA;AAAA,MAEF,OAAO;AAAA,QACL,GAAI,WAAW,SAAY,SAAY,EAAE,OAAO,QAAQ,QAAQ,OAAA;AAAA,QAChE,GAAI,cAAc,SAAY,EAAE,iBAAiB,YAAY,iCAAA;AAAA,MAAiC;AAAA,IAChG;AAAA,EAAA;AAIJ,QAAM,UAAU,WACd,qBAAC,QAAA,EAAK,WAAU,mCACb,UAAA;AAAA,IAAA;AAAA,wBACA,QAAA,EAAK,WAAW,WAAW,YAAY,aAAa,GAAI,UAAA,aAAA,CAAa;AAAA,EAAA,EAAA,CACxE,IAEA;AAGF,MAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,UAAW,QAAO;AAEvD,SAAO,oBAAC,mBAAA,EAAkB,SAAS,gBAAiB,UAAA,SAAQ;AAC9D;"}
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ interface IColorsProps {
3
+ colors: Array<string> | undefined;
4
+ isSquare?: boolean;
5
+ className?: string;
6
+ label?: string;
7
+ }
8
+ /** Amostra de uma cor da biblioteca, com bandas quando a cor tem mais de um valor. */
9
+ declare const Colors: React.FC<IColorsProps>;
10
+ export default Colors;
@@ -0,0 +1,41 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import classNames from "classnames";
3
+ import ColorSwatch from "./ColorSwatch.js";
4
+ import ControlledTooltip from "./ControlledTooltip.js";
5
+ const Colors = ({ colors = [], isSquare = true, className = "", label }) => {
6
+ if (!colors || colors.length === 0) {
7
+ return /* @__PURE__ */ jsx(ColorSwatch, { name: label, className: classNames(isSquare && "rounded-md", className) });
8
+ }
9
+ const getColorLayout = () => {
10
+ const count = colors.length;
11
+ const widthPercentage = 100 / count;
12
+ return colors.map((colorItem, index) => /* @__PURE__ */ jsx(ControlledTooltip, { content: label ?? colorItem, children: /* @__PURE__ */ jsx(
13
+ "div",
14
+ {
15
+ style: {
16
+ backgroundColor: colorItem,
17
+ width: `${widthPercentage}%`,
18
+ height: "100%"
19
+ }
20
+ }
21
+ ) }, colorItem + index));
22
+ };
23
+ return /* @__PURE__ */ jsx(
24
+ "div",
25
+ {
26
+ className: classNames(
27
+ "flex overflow-hidden border border-border",
28
+ {
29
+ "rounded-md": isSquare,
30
+ "rounded-full": !isSquare
31
+ },
32
+ className
33
+ ),
34
+ children: getColorLayout()
35
+ }
36
+ );
37
+ };
38
+ export {
39
+ Colors as default
40
+ };
41
+ //# sourceMappingURL=Colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Colors.js","sources":["../../../src/components/UI/Colors.tsx"],"sourcesContent":["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport ColorSwatch from '@/components/UI/ColorSwatch';\nimport ControlledTooltip from '@/components/UI/ControlledTooltip';\n\ninterface IColorsProps {\n colors: Array<string> | undefined;\n isSquare?: boolean;\n className?: string;\n label?: string;\n}\n\n/** Amostra de uma cor da biblioteca, com bandas quando a cor tem mais de um valor. */\nconst Colors: React.FC<IColorsProps> = ({ colors = [], isSquare = true, className = '', label }) => {\n // Cor sem valor não some da tela: cai no cinza padrão da plataforma, com o nome no tooltip.\n if (!colors || colors.length === 0) {\n return <ColorSwatch name={label} className={classNames(isSquare && 'rounded-md', className)} />;\n }\n\n const getColorLayout = () => {\n const count = colors.length;\n const widthPercentage = 100 / count;\n\n return colors.map((colorItem, index) => (\n <ControlledTooltip key={colorItem + index} content={label ?? colorItem}>\n <div\n style={{\n backgroundColor: colorItem,\n width: `${widthPercentage}%`,\n height: '100%',\n }}\n />\n </ControlledTooltip>\n ));\n };\n\n return (\n <div\n className={classNames(\n 'flex overflow-hidden border border-border',\n {\n 'rounded-md': isSquare,\n 'rounded-full': !isSquare,\n },\n className,\n )}\n >\n {getColorLayout()}\n </div>\n );\n};\n\nexport default Colors;\n"],"names":[],"mappings":";;;;AAcA,MAAM,SAAiC,CAAC,EAAE,SAAS,IAAI,WAAW,MAAM,YAAY,IAAI,YAAY;AAElG,MAAI,CAAC,UAAU,OAAO,WAAW,GAAG;AAClC,WAAO,oBAAC,eAAY,MAAM,OAAO,WAAW,WAAW,YAAY,cAAc,SAAS,EAAA,CAAG;AAAA,EAC/F;AAEA,QAAM,iBAAiB,MAAM;AAC3B,UAAM,QAAQ,OAAO;AACrB,UAAM,kBAAkB,MAAM;AAE9B,WAAO,OAAO,IAAI,CAAC,WAAW,UAC5B,oBAAC,mBAAA,EAA0C,SAAS,SAAS,WAC3D,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,OAAO;AAAA,UACL,iBAAiB;AAAA,UACjB,OAAO,GAAG,eAAe;AAAA,UACzB,QAAQ;AAAA,QAAA;AAAA,MACV;AAAA,IAAA,KANoB,YAAY,KAQpC,CACD;AAAA,EACH;AAEA,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,cAAc;AAAA,UACd,gBAAgB,CAAC;AAAA,QAAA;AAAA,QAEnB;AAAA,MAAA;AAAA,MAGD,UAAA,eAAA;AAAA,IAAe;AAAA,EAAA;AAGtB;"}
@@ -0,0 +1,38 @@
1
+ import { default as React } from 'react';
2
+ interface IControlledAccordionRootProps {
3
+ open: boolean;
4
+ children: React.ReactNode;
5
+ icon?: React.ReactNode;
6
+ disabled?: boolean;
7
+ className?: string;
8
+ }
9
+ export declare const ControlledAccordionRoot: React.FC<IControlledAccordionRootProps>;
10
+ interface IControlledAccordionHeaderProps {
11
+ onClick?: () => void;
12
+ children: React.ReactNode;
13
+ className?: string;
14
+ tabIndex?: number;
15
+ }
16
+ /**
17
+ * Rendered as a div with role="button", not a native button: several headers in this repo
18
+ * carry their own buttons (rename, visibility, drag handle), and a button inside a button
19
+ * is invalid HTML that silently breaks the inner controls.
20
+ */
21
+ export declare const ControlledAccordionHeader: React.FC<IControlledAccordionHeaderProps>;
22
+ interface IControlledAccordionBodyProps {
23
+ children: React.ReactNode;
24
+ className?: string;
25
+ }
26
+ export declare const ControlledAccordionBody: React.FC<IControlledAccordionBodyProps>;
27
+ interface IControlledAccordionProps {
28
+ open: boolean;
29
+ onToggle: () => void;
30
+ header: React.ReactNode;
31
+ children: React.ReactNode;
32
+ icon?: React.ReactNode;
33
+ className?: string;
34
+ headerClassName?: string;
35
+ bodyClassName?: string;
36
+ }
37
+ declare const ControlledAccordion: React.FC<IControlledAccordionProps>;
38
+ export default ControlledAccordion;
@@ -0,0 +1,89 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { createContext, useContext } from "react";
3
+ import classNames from "classnames";
4
+ import { twMerge } from "tailwind-merge";
5
+ import ControlledCollapse from "./ControlledCollapse.js";
6
+ import { MaterialSymbol } from "./MaterialSymbol/index.js";
7
+ const AccordionContext = createContext({ open: false });
8
+ const ControlledAccordionRoot = ({
9
+ open,
10
+ children,
11
+ icon,
12
+ disabled = false,
13
+ className
14
+ }) => /* @__PURE__ */ jsx(AccordionContext.Provider, { value: { open, icon, disabled }, children: /* @__PURE__ */ jsx(
15
+ "div",
16
+ {
17
+ className: twMerge(
18
+ classNames("relative block w-full", { "pointer-events-none opacity-50": disabled }),
19
+ className
20
+ ),
21
+ children
22
+ }
23
+ ) });
24
+ const ControlledAccordionHeader = ({
25
+ onClick,
26
+ children,
27
+ className,
28
+ tabIndex
29
+ }) => {
30
+ const { open, icon } = useContext(AccordionContext);
31
+ const isInteractive = Boolean(onClick);
32
+ const handleKeyDown = (event) => {
33
+ if (event.key !== "Enter" && event.key !== " ") return;
34
+ if (event.target !== event.currentTarget) return;
35
+ event.preventDefault();
36
+ onClick?.();
37
+ };
38
+ return /* @__PURE__ */ jsxs(
39
+ "div",
40
+ {
41
+ role: isInteractive ? "button" : void 0,
42
+ tabIndex: tabIndex ?? (isInteractive ? 0 : void 0),
43
+ "aria-expanded": isInteractive ? open : void 0,
44
+ onClick,
45
+ onKeyDown: handleKeyDown,
46
+ className: twMerge(
47
+ "flex w-full select-none items-center justify-between border-b border-border-subtle py-4 text-left",
48
+ "text-xl font-semibold leading-snug text-foreground-muted transition-colors hover:text-foreground",
49
+ classNames({ "text-foreground": open }),
50
+ className
51
+ ),
52
+ children: [
53
+ children,
54
+ icon ?? /* @__PURE__ */ jsx(
55
+ MaterialSymbol,
56
+ {
57
+ icon: "expand_more",
58
+ size: 20,
59
+ className: classNames("ml-4 shrink-0 transition-transform duration-base", { "rotate-180": open })
60
+ }
61
+ )
62
+ ]
63
+ }
64
+ );
65
+ };
66
+ const ControlledAccordionBody = ({ children, className }) => {
67
+ const { open } = useContext(AccordionContext);
68
+ return /* @__PURE__ */ jsx(ControlledCollapse, { open, children: /* @__PURE__ */ jsx("div", { className: twMerge("block w-full py-4 text-sm font-light leading-normal text-foreground-muted", className), children }) });
69
+ };
70
+ const ControlledAccordion = ({
71
+ open,
72
+ onToggle,
73
+ header,
74
+ children,
75
+ icon,
76
+ className,
77
+ headerClassName,
78
+ bodyClassName
79
+ }) => /* @__PURE__ */ jsxs(ControlledAccordionRoot, { open, icon, className, children: [
80
+ /* @__PURE__ */ jsx(ControlledAccordionHeader, { onClick: onToggle, className: headerClassName, children: header }),
81
+ /* @__PURE__ */ jsx(ControlledAccordionBody, { className: bodyClassName, children })
82
+ ] });
83
+ export {
84
+ ControlledAccordionBody,
85
+ ControlledAccordionHeader,
86
+ ControlledAccordionRoot,
87
+ ControlledAccordion as default
88
+ };
89
+ //# sourceMappingURL=ControlledAccordion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ControlledAccordion.js","sources":["../../../src/components/UI/ControlledAccordion.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react';\nimport classNames from 'classnames';\nimport { twMerge } from 'tailwind-merge';\n\nimport ControlledCollapse from './ControlledCollapse';\nimport { MaterialSymbol } from './MaterialSymbol';\n\ninterface IAccordionContext {\n open: boolean;\n icon?: React.ReactNode;\n disabled?: boolean;\n}\n\nconst AccordionContext = createContext<IAccordionContext>({ open: false });\n\ninterface IControlledAccordionRootProps {\n open: boolean;\n children: React.ReactNode;\n icon?: React.ReactNode;\n disabled?: boolean;\n className?: string;\n}\n\nexport const ControlledAccordionRoot: React.FC<IControlledAccordionRootProps> = ({\n open,\n children,\n icon,\n disabled = false,\n className,\n}) => (\n <AccordionContext.Provider value={{ open, icon, disabled }}>\n <div\n className={twMerge(\n classNames('relative block w-full', { 'pointer-events-none opacity-50': disabled }),\n className,\n )}\n >\n {children}\n </div>\n </AccordionContext.Provider>\n);\n\ninterface IControlledAccordionHeaderProps {\n onClick?: () => void;\n children: React.ReactNode;\n className?: string;\n tabIndex?: number;\n}\n\n/**\n * Rendered as a div with role=\"button\", not a native button: several headers in this repo\n * carry their own buttons (rename, visibility, drag handle), and a button inside a button\n * is invalid HTML that silently breaks the inner controls.\n */\nexport const ControlledAccordionHeader: React.FC<IControlledAccordionHeaderProps> = ({\n onClick,\n children,\n className,\n tabIndex,\n}) => {\n const { open, icon } = useContext(AccordionContext);\n const isInteractive = Boolean(onClick);\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key !== 'Enter' && event.key !== ' ') return;\n if (event.target !== event.currentTarget) return;\n event.preventDefault();\n onClick?.();\n };\n\n return (\n <div\n role={isInteractive ? 'button' : undefined}\n tabIndex={tabIndex ?? (isInteractive ? 0 : undefined)}\n aria-expanded={isInteractive ? open : undefined}\n onClick={onClick}\n onKeyDown={handleKeyDown}\n className={twMerge(\n 'flex w-full select-none items-center justify-between border-b border-border-subtle py-4 text-left',\n 'text-xl font-semibold leading-snug text-foreground-muted transition-colors hover:text-foreground',\n classNames({ 'text-foreground': open }),\n className,\n )}\n >\n {children}\n\n {icon ?? (\n <MaterialSymbol\n icon=\"expand_more\"\n size={20}\n className={classNames('ml-4 shrink-0 transition-transform duration-base', { 'rotate-180': open })}\n />\n )}\n </div>\n );\n};\n\ninterface IControlledAccordionBodyProps {\n children: React.ReactNode;\n className?: string;\n}\n\nexport const ControlledAccordionBody: React.FC<IControlledAccordionBodyProps> = ({ children, className }) => {\n const { open } = useContext(AccordionContext);\n\n return (\n <ControlledCollapse open={open}>\n <div className={twMerge('block w-full py-4 text-sm font-light leading-normal text-foreground-muted', className)}>\n {children}\n </div>\n </ControlledCollapse>\n );\n};\n\ninterface IControlledAccordionProps {\n open: boolean;\n onToggle: () => void;\n header: React.ReactNode;\n children: React.ReactNode;\n icon?: React.ReactNode;\n className?: string;\n headerClassName?: string;\n bodyClassName?: string;\n}\n\nconst ControlledAccordion: React.FC<IControlledAccordionProps> = ({\n open,\n onToggle,\n header,\n children,\n icon,\n className,\n headerClassName,\n bodyClassName,\n}) => (\n <ControlledAccordionRoot open={open} icon={icon} className={className}>\n <ControlledAccordionHeader onClick={onToggle} className={headerClassName}>\n {header}\n </ControlledAccordionHeader>\n <ControlledAccordionBody className={bodyClassName}>{children}</ControlledAccordionBody>\n </ControlledAccordionRoot>\n);\n\nexport default ControlledAccordion;\n"],"names":[],"mappings":";;;;;;AAaA,MAAM,mBAAmB,cAAiC,EAAE,MAAM,OAAO;AAUlE,MAAM,0BAAmE,CAAC;AAAA,EAC/E;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AACF,MACE,oBAAC,iBAAiB,UAAjB,EAA0B,OAAO,EAAE,MAAM,MAAM,YAC9C,UAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAW;AAAA,MACT,WAAW,yBAAyB,EAAE,kCAAkC,UAAU;AAAA,MAClF;AAAA,IAAA;AAAA,IAGD;AAAA,EAAA;AACH,EAAA,CACF;AAeK,MAAM,4BAAuE,CAAC;AAAA,EACnF;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,EAAE,MAAM,SAAS,WAAW,gBAAgB;AAClD,QAAM,gBAAgB,QAAQ,OAAO;AAErC,QAAM,gBAAgB,CAAC,UAA+C;AACpE,QAAI,MAAM,QAAQ,WAAW,MAAM,QAAQ,IAAK;AAChD,QAAI,MAAM,WAAW,MAAM,cAAe;AAC1C,UAAM,eAAA;AACN,cAAA;AAAA,EACF;AAEA,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAM,gBAAgB,WAAW;AAAA,MACjC,UAAU,aAAa,gBAAgB,IAAI;AAAA,MAC3C,iBAAe,gBAAgB,OAAO;AAAA,MACtC;AAAA,MACA,WAAW;AAAA,MACX,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA,WAAW,EAAE,mBAAmB,MAAM;AAAA,QACtC;AAAA,MAAA;AAAA,MAGD,UAAA;AAAA,QAAA;AAAA,QAEA,QACC;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,MAAK;AAAA,YACL,MAAM;AAAA,YACN,WAAW,WAAW,oDAAoD,EAAE,cAAc,MAAM;AAAA,UAAA;AAAA,QAAA;AAAA,MAClG;AAAA,IAAA;AAAA,EAAA;AAIR;AAOO,MAAM,0BAAmE,CAAC,EAAE,UAAU,gBAAgB;AAC3G,QAAM,EAAE,KAAA,IAAS,WAAW,gBAAgB;AAE5C,SACE,oBAAC,oBAAA,EAAmB,MAClB,UAAA,oBAAC,OAAA,EAAI,WAAW,QAAQ,6EAA6E,SAAS,GAC3G,SAAA,CACH,EAAA,CACF;AAEJ;AAaA,MAAM,sBAA2D,CAAC;AAAA,EAChE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MACE,qBAAC,yBAAA,EAAwB,MAAY,MAAY,WAC/C,UAAA;AAAA,EAAA,oBAAC,2BAAA,EAA0B,SAAS,UAAU,WAAW,iBACtD,UAAA,QACH;AAAA,EACA,oBAAC,yBAAA,EAAwB,WAAW,eAAgB,SAAA,CAAS;AAAA,EAAA,CAC/D;"}
@@ -0,0 +1,13 @@
1
+ import { default as React } from 'react';
2
+ interface IControlledCollapseProps {
3
+ open: boolean;
4
+ children: React.ReactNode;
5
+ className?: string;
6
+ }
7
+ /**
8
+ * Height is measured from the content node and written to the wrapper, so the transition
9
+ * always has a numeric start and end. The observer watches the CONTENT, whose height is
10
+ * unconstrained, so updating the wrapper cannot feed back into it.
11
+ */
12
+ declare const ControlledCollapse: React.FC<IControlledCollapseProps>;
13
+ export default ControlledCollapse;
@@ -0,0 +1,32 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useRef, useState, useEffect } from "react";
3
+ import { twMerge } from "tailwind-merge";
4
+ const ControlledCollapse = ({ open, children, className }) => {
5
+ const contentRef = useRef(null);
6
+ const [height, setHeight] = useState(0);
7
+ useEffect(() => {
8
+ const content = contentRef.current;
9
+ if (!content) return void 0;
10
+ if (!open) {
11
+ setHeight(0);
12
+ return void 0;
13
+ }
14
+ setHeight(content.scrollHeight);
15
+ const observer = new ResizeObserver(() => setHeight(content.scrollHeight));
16
+ observer.observe(content);
17
+ return () => observer.disconnect();
18
+ }, [open]);
19
+ return /* @__PURE__ */ jsx(
20
+ "div",
21
+ {
22
+ style: { height },
23
+ "aria-hidden": !open,
24
+ className: twMerge("overflow-hidden transition-[height] duration-slow ease-enter", className),
25
+ children: /* @__PURE__ */ jsx("div", { ref: contentRef, children })
26
+ }
27
+ );
28
+ };
29
+ export {
30
+ ControlledCollapse as default
31
+ };
32
+ //# sourceMappingURL=ControlledCollapse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ControlledCollapse.js","sources":["../../../src/components/UI/ControlledCollapse.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { twMerge } from 'tailwind-merge';\n\ninterface IControlledCollapseProps {\n open: boolean;\n children: React.ReactNode;\n className?: string;\n}\n\n/**\n * Height is measured from the content node and written to the wrapper, so the transition\n * always has a numeric start and end. The observer watches the CONTENT, whose height is\n * unconstrained, so updating the wrapper cannot feed back into it.\n */\nconst ControlledCollapse: React.FC<IControlledCollapseProps> = ({ open, children, className }) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const [height, setHeight] = useState(0);\n\n useEffect(() => {\n const content = contentRef.current;\n if (!content) return undefined;\n\n if (!open) {\n setHeight(0);\n return undefined;\n }\n\n setHeight(content.scrollHeight);\n\n const observer = new ResizeObserver(() => setHeight(content.scrollHeight));\n observer.observe(content);\n\n return () => observer.disconnect();\n }, [open]);\n\n return (\n <div\n style={{ height }}\n aria-hidden={!open}\n className={twMerge('overflow-hidden transition-[height] duration-slow ease-enter', className)}\n >\n <div ref={contentRef}>{children}</div>\n </div>\n );\n};\n\nexport default ControlledCollapse;\n"],"names":[],"mappings":";;;AAcA,MAAM,qBAAyD,CAAC,EAAE,MAAM,UAAU,gBAAgB;AAChG,QAAM,aAAa,OAAuB,IAAI;AAC9C,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,CAAC;AAEtC,YAAU,MAAM;AACd,UAAM,UAAU,WAAW;AAC3B,QAAI,CAAC,QAAS,QAAO;AAErB,QAAI,CAAC,MAAM;AACT,gBAAU,CAAC;AACX,aAAO;AAAA,IACT;AAEA,cAAU,QAAQ,YAAY;AAE9B,UAAM,WAAW,IAAI,eAAe,MAAM,UAAU,QAAQ,YAAY,CAAC;AACzE,aAAS,QAAQ,OAAO;AAExB,WAAO,MAAM,SAAS,WAAA;AAAA,EACxB,GAAG,CAAC,IAAI,CAAC;AAET,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAO,EAAE,OAAA;AAAA,MACT,eAAa,CAAC;AAAA,MACd,WAAW,QAAQ,gEAAgE,SAAS;AAAA,MAE5F,UAAA,oBAAC,OAAA,EAAI,KAAK,YAAa,SAAA,CAAS;AAAA,IAAA;AAAA,EAAA;AAGtC;"}
@@ -0,0 +1,73 @@
1
+ import { default as React } from 'react';
2
+ import { SymbolCodepoints } from './MaterialSymbol';
3
+ import { TFloatingPlacement } from '../../hooks/useAnchoredFloating';
4
+ export type TMenuPlacement = TFloatingPlacement;
5
+ export type TMenuItemTone = 'default' | 'danger';
6
+ export interface IMenuDismissConfig {
7
+ /** Closes the menu when an item is pressed. Multi-select surfaces pass false. */
8
+ itemPress?: boolean;
9
+ escapeKey?: boolean;
10
+ outsidePress?: boolean;
11
+ }
12
+ export interface IControlledMenuItem {
13
+ key: string;
14
+ label: string;
15
+ icon?: SymbolCodepoints;
16
+ hint?: string;
17
+ onClick?: () => void;
18
+ disabled?: boolean;
19
+ tone?: TMenuItemTone;
20
+ }
21
+ interface IControlledMenuRootProps {
22
+ children: React.ReactNode;
23
+ open?: boolean;
24
+ handler?: (open: boolean) => void;
25
+ placement?: TMenuPlacement;
26
+ offsetPx?: number;
27
+ dismiss?: IMenuDismissConfig;
28
+ matchTriggerWidth?: boolean;
29
+ }
30
+ export declare const ControlledMenuRoot: React.FC<IControlledMenuRootProps>;
31
+ /**
32
+ * Repassa ao filho o que ele recebe de fora, além do que injeta.
33
+ *
34
+ * O gatilho é o alvo natural de um `ControlledTooltip`, e o tooltip se prende clonando o filho e
35
+ * injetando `onPointerEnter`. Aceitando só `children`, este componente engolia essa injeção e o
36
+ * tooltip simplesmente nunca abria, mesmo com a ordem que a documentação manda usar
37
+ * (tooltip POR FORA do handler). Os `onClick` são encadeados: o de fora roda antes de abrir.
38
+ */
39
+ export declare const ControlledMenuHandler: React.ForwardRefExoticComponent<{
40
+ children: React.ReactNode;
41
+ } & React.HTMLAttributes<HTMLElement> & React.RefAttributes<HTMLElement>>;
42
+ interface IControlledMenuListProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'className' | 'onDrag' | 'onDragStart' | 'onDragEnd' | 'onAnimationStart' | 'onAnimationEnd' | 'onAnimationIteration'> {
43
+ children: React.ReactNode;
44
+ className?: string;
45
+ }
46
+ export declare const ControlledMenuList: React.ForwardRefExoticComponent<IControlledMenuListProps & React.RefAttributes<HTMLDivElement>>;
47
+ interface IControlledMenuItemProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'className'> {
48
+ children: React.ReactNode;
49
+ className?: string;
50
+ disabled?: boolean;
51
+ }
52
+ export declare const ControlledMenuItem: React.FC<IControlledMenuItemProps>;
53
+ interface IControlledMenuProps {
54
+ trigger: React.ReactNode;
55
+ items?: Array<IControlledMenuItem>;
56
+ children?: React.ReactNode;
57
+ triggerTooltip?: string;
58
+ placement?: TMenuPlacement;
59
+ open?: boolean;
60
+ onOpenChange?: (open: boolean) => void;
61
+ disabled?: boolean;
62
+ dismissOnItemClick?: boolean;
63
+ listClassName?: string;
64
+ tooltipClassName?: string;
65
+ listRef?: React.Ref<HTMLDivElement>;
66
+ }
67
+ /**
68
+ * A tooltip on the trigger must sit OUTSIDE the handler: the handler clones its child to
69
+ * inject the click handler and the reference ref, and a tooltip in that position swallows
70
+ * both, so the menu stops opening.
71
+ */
72
+ declare const ControlledMenu: React.FC<IControlledMenuProps>;
73
+ export default ControlledMenu;