@umodeapporg/ui 0.0.0-canary.ca10e69

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 (845) hide show
  1. package/README.md +78 -0
  2. package/dist/assets/images/common-pngs/sparkles.png.js +5 -0
  3. package/dist/assets/images/common-pngs/sparkles.png.js.map +1 -0
  4. package/dist/assets/umode-ui.css +467 -0
  5. package/dist/components/DateTime/DatePicker.d.ts +21 -0
  6. package/dist/components/DateTime/DatePicker.js +124 -0
  7. package/dist/components/DateTime/DatePicker.js.map +1 -0
  8. package/dist/components/DateTime/DateRangePicker.d.ts +21 -0
  9. package/dist/components/DateTime/DateRangePicker.js +208 -0
  10. package/dist/components/DateTime/DateRangePicker.js.map +1 -0
  11. package/dist/components/Form/ControlledButton.d.ts +25 -0
  12. package/dist/components/Form/ControlledButton.js +73 -0
  13. package/dist/components/Form/ControlledButton.js.map +1 -0
  14. package/dist/components/Form/ControlledCheckbox.d.ts +16 -0
  15. package/dist/components/Form/ControlledCheckbox.js +115 -0
  16. package/dist/components/Form/ControlledCheckbox.js.map +1 -0
  17. package/dist/components/Form/ControlledDialog.d.ts +51 -0
  18. package/dist/components/Form/ControlledDialog.js +191 -0
  19. package/dist/components/Form/ControlledDialog.js.map +1 -0
  20. package/dist/components/Form/ControlledDialogPrimitives.d.ts +53 -0
  21. package/dist/components/Form/ControlledDialogPrimitives.js +245 -0
  22. package/dist/components/Form/ControlledDialogPrimitives.js.map +1 -0
  23. package/dist/components/Form/ControlledDrawer.d.ts +37 -0
  24. package/dist/components/Form/ControlledDrawer.js +241 -0
  25. package/dist/components/Form/ControlledDrawer.js.map +1 -0
  26. package/dist/components/Form/ControlledForm/InputField.d.ts +11 -0
  27. package/dist/components/Form/ControlledForm/InputField.js +75 -0
  28. package/dist/components/Form/ControlledForm/InputField.js.map +1 -0
  29. package/dist/components/Form/ControlledForm/index.d.ts +27 -0
  30. package/dist/components/Form/ControlledForm/index.js +113 -0
  31. package/dist/components/Form/ControlledForm/index.js.map +1 -0
  32. package/dist/components/Form/ControlledImage/Img.d.ts +11 -0
  33. package/dist/components/Form/ControlledImage/Img.js +29 -0
  34. package/dist/components/Form/ControlledImage/Img.js.map +1 -0
  35. package/dist/components/Form/ControlledImage/index.d.ts +33 -0
  36. package/dist/components/Form/ControlledImage/index.js +110 -0
  37. package/dist/components/Form/ControlledImage/index.js.map +1 -0
  38. package/dist/components/Form/ControlledImage/useImage.d.ts +9 -0
  39. package/dist/components/Form/ControlledImage/useImage.js +110 -0
  40. package/dist/components/Form/ControlledImage/useImage.js.map +1 -0
  41. package/dist/components/Form/ControlledInput.d.ts +23 -0
  42. package/dist/components/Form/ControlledInput.js +52 -0
  43. package/dist/components/Form/ControlledInput.js.map +1 -0
  44. package/dist/components/Form/ControlledRadio.d.ts +15 -0
  45. package/dist/components/Form/ControlledRadio.js +91 -0
  46. package/dist/components/Form/ControlledRadio.js.map +1 -0
  47. package/dist/components/Form/ControlledSelect.d.ts +53 -0
  48. package/dist/components/Form/ControlledSelect.js +797 -0
  49. package/dist/components/Form/ControlledSelect.js.map +1 -0
  50. package/dist/components/Form/ControlledSwitch.d.ts +21 -0
  51. package/dist/components/Form/ControlledSwitch.js +107 -0
  52. package/dist/components/Form/ControlledSwitch.js.map +1 -0
  53. package/dist/components/Form/ControlledTabs.d.ts +75 -0
  54. package/dist/components/Form/ControlledTabs.js +515 -0
  55. package/dist/components/Form/ControlledTabs.js.map +1 -0
  56. package/dist/components/Form/ControlledTabsPrimitives.d.ts +43 -0
  57. package/dist/components/Form/ControlledTabsPrimitives.js +48 -0
  58. package/dist/components/Form/ControlledTabsPrimitives.js.map +1 -0
  59. package/dist/components/Form/ControlledTextarea.d.ts +22 -0
  60. package/dist/components/Form/ControlledTextarea.js +46 -0
  61. package/dist/components/Form/ControlledTextarea.js.map +1 -0
  62. package/dist/components/Form/ControlledTimeline.d.ts +26 -0
  63. package/dist/components/Form/ControlledTimeline.js +60 -0
  64. package/dist/components/Form/ControlledTimeline.js.map +1 -0
  65. package/dist/components/Form/ControlledViewToggle.d.ts +74 -0
  66. package/dist/components/Form/ControlledViewToggle.js +157 -0
  67. package/dist/components/Form/ControlledViewToggle.js.map +1 -0
  68. package/dist/components/Form/ControlledVoiceTextarea.d.ts +13 -0
  69. package/dist/components/Form/ControlledVoiceTextarea.js +99 -0
  70. package/dist/components/Form/ControlledVoiceTextarea.js.map +1 -0
  71. package/dist/components/Form/CurrencyInput.d.ts +8 -0
  72. package/dist/components/Form/CurrencyInput.js +17 -0
  73. package/dist/components/Form/CurrencyInput.js.map +1 -0
  74. package/dist/components/Form/FieldLabel.d.ts +16 -0
  75. package/dist/components/Form/FieldLabel.js +7 -0
  76. package/dist/components/Form/FieldLabel.js.map +1 -0
  77. package/dist/components/Form/RichTextEditor.d.ts +86 -0
  78. package/dist/components/Form/RichTextEditor.js +581 -0
  79. package/dist/components/Form/RichTextEditor.js.map +1 -0
  80. package/dist/components/Form/attachments/AttachmentPreviewList.d.ts +22 -0
  81. package/dist/components/Form/attachments/AttachmentPreviewList.js +95 -0
  82. package/dist/components/Form/attachments/AttachmentPreviewList.js.map +1 -0
  83. package/dist/components/Form/attachments/FileDropzone.d.ts +12 -0
  84. package/dist/components/Form/attachments/FileDropzone.js +84 -0
  85. package/dist/components/Form/attachments/FileDropzone.js.map +1 -0
  86. package/dist/components/Navigation/ControlledBreadcrumb.d.ts +13 -0
  87. package/dist/components/Navigation/ControlledBreadcrumb.js +24 -0
  88. package/dist/components/Navigation/ControlledBreadcrumb.js.map +1 -0
  89. package/dist/components/Navigation/ErrorPage.d.ts +2 -0
  90. package/dist/components/Navigation/ErrorPage.js +27 -0
  91. package/dist/components/Navigation/ErrorPage.js.map +1 -0
  92. package/dist/components/Navigation/LinkButton.d.ts +26 -0
  93. package/dist/components/Navigation/LinkButton.js +82 -0
  94. package/dist/components/Navigation/LinkButton.js.map +1 -0
  95. package/dist/components/Navigation/PageTitle.d.ts +95 -0
  96. package/dist/components/Navigation/PageTitle.js +241 -0
  97. package/dist/components/Navigation/PageTitle.js.map +1 -0
  98. package/dist/components/Navigation/PageTitleCollapseContext.d.ts +13 -0
  99. package/dist/components/Navigation/PageTitleCollapseContext.js +9 -0
  100. package/dist/components/Navigation/PageTitleCollapseContext.js.map +1 -0
  101. package/dist/components/Navigation/PageTitleNavigationContext.d.ts +21 -0
  102. package/dist/components/Navigation/PageTitleNavigationContext.js +17 -0
  103. package/dist/components/Navigation/PageTitleNavigationContext.js.map +1 -0
  104. package/dist/components/Navigation/ReactRouterNavigationAdapter.d.ts +7 -0
  105. package/dist/components/Navigation/ReactRouterNavigationAdapter.js +27 -0
  106. package/dist/components/Navigation/ReactRouterNavigationAdapter.js.map +1 -0
  107. package/dist/components/Navigation/UiNavigationContext.d.ts +38 -0
  108. package/dist/components/Navigation/UiNavigationContext.js +44 -0
  109. package/dist/components/Navigation/UiNavigationContext.js.map +1 -0
  110. package/dist/components/Search/UnifiedSearchBar.d.ts +31 -0
  111. package/dist/components/Search/UnifiedSearchBar.js +167 -0
  112. package/dist/components/Search/UnifiedSearchBar.js.map +1 -0
  113. package/dist/components/Search/filters/ActiveFiltersBar.d.ts +15 -0
  114. package/dist/components/Search/filters/ActiveFiltersBar.js +48 -0
  115. package/dist/components/Search/filters/ActiveFiltersBar.js.map +1 -0
  116. package/dist/components/Search/filters/FilterChipsRow.d.ts +17 -0
  117. package/dist/components/Search/filters/FilterChipsRow.js +113 -0
  118. package/dist/components/Search/filters/FilterChipsRow.js.map +1 -0
  119. package/dist/components/Search/filters/FilterFieldControl.d.ts +19 -0
  120. package/dist/components/Search/filters/FilterFieldControl.js +390 -0
  121. package/dist/components/Search/filters/FilterFieldControl.js.map +1 -0
  122. package/dist/components/Search/filters/FiltersButton.d.ts +24 -0
  123. package/dist/components/Search/filters/FiltersButton.js +52 -0
  124. package/dist/components/Search/filters/FiltersButton.js.map +1 -0
  125. package/dist/components/Search/filters/FiltersForm.d.ts +18 -0
  126. package/dist/components/Search/filters/FiltersForm.js +112 -0
  127. package/dist/components/Search/filters/FiltersForm.js.map +1 -0
  128. package/dist/components/Search/filters/FiltersPanel.d.ts +32 -0
  129. package/dist/components/Search/filters/FiltersPanel.js +266 -0
  130. package/dist/components/Search/filters/FiltersPanel.js.map +1 -0
  131. package/dist/components/Search/filters/FiltersSummaryTooltip.d.ts +20 -0
  132. package/dist/components/Search/filters/FiltersSummaryTooltip.js +26 -0
  133. package/dist/components/Search/filters/FiltersSummaryTooltip.js.map +1 -0
  134. package/dist/components/Search/filters/filterTypes.d.ts +162 -0
  135. package/dist/components/Search/filters/filterTypes.js +2 -0
  136. package/dist/components/Search/filters/filterTypes.js.map +1 -0
  137. package/dist/components/Search/filters/filterValues.d.ts +22 -0
  138. package/dist/components/Search/filters/filterValues.js +91 -0
  139. package/dist/components/Search/filters/filterValues.js.map +1 -0
  140. package/dist/components/Search/filters/filtersLayout.d.ts +4 -0
  141. package/dist/components/Search/filters/filtersLayout.js +18 -0
  142. package/dist/components/Search/filters/filtersLayout.js.map +1 -0
  143. package/dist/components/Search/filters/index.d.ts +11 -0
  144. package/dist/components/Search/filters/index.js +32 -0
  145. package/dist/components/Search/filters/index.js.map +1 -0
  146. package/dist/components/Search/filters/useFilters.d.ts +33 -0
  147. package/dist/components/Search/filters/useFilters.js +162 -0
  148. package/dist/components/Search/filters/useFilters.js.map +1 -0
  149. package/dist/components/Search/index.d.ts +2 -0
  150. package/dist/components/Search/index.js +34 -0
  151. package/dist/components/Search/index.js.map +1 -0
  152. package/dist/components/Shell/AppHeader.d.ts +25 -0
  153. package/dist/components/Shell/AppHeader.js +69 -0
  154. package/dist/components/Shell/AppHeader.js.map +1 -0
  155. package/dist/components/Shell/AppShell.d.ts +22 -0
  156. package/dist/components/Shell/AppShell.js +146 -0
  157. package/dist/components/Shell/AppShell.js.map +1 -0
  158. package/dist/components/Shell/AppSidebar.d.ts +20 -0
  159. package/dist/components/Shell/AppSidebar.js +93 -0
  160. package/dist/components/Shell/AppSidebar.js.map +1 -0
  161. package/dist/components/Shell/LanguageToggle.d.ts +8 -0
  162. package/dist/components/Shell/LanguageToggle.js +59 -0
  163. package/dist/components/Shell/LanguageToggle.js.map +1 -0
  164. package/dist/components/Shell/PumpkinGlyph.d.ts +13 -0
  165. package/dist/components/Shell/PumpkinGlyph.js +29 -0
  166. package/dist/components/Shell/PumpkinGlyph.js.map +1 -0
  167. package/dist/components/Shell/SidebarMenu.d.ts +29 -0
  168. package/dist/components/Shell/SidebarMenu.js +254 -0
  169. package/dist/components/Shell/SidebarMenu.js.map +1 -0
  170. package/dist/components/Shell/ThemeToggle.d.ts +18 -0
  171. package/dist/components/Shell/ThemeToggle.js +68 -0
  172. package/dist/components/Shell/ThemeToggle.js.map +1 -0
  173. package/dist/components/Shell/headerControlStyles.d.ts +10 -0
  174. package/dist/components/Shell/headerControlStyles.js +11 -0
  175. package/dist/components/Shell/headerControlStyles.js.map +1 -0
  176. package/dist/components/Shell/sidebarFavorites.d.ts +21 -0
  177. package/dist/components/Shell/sidebarFavorites.js +69 -0
  178. package/dist/components/Shell/sidebarFavorites.js.map +1 -0
  179. package/dist/components/Shell/useSidebarState.d.ts +14 -0
  180. package/dist/components/Shell/useSidebarState.js +106 -0
  181. package/dist/components/Shell/useSidebarState.js.map +1 -0
  182. package/dist/components/UI/AccordionIcon.d.ts +10 -0
  183. package/dist/components/UI/AccordionIcon.js +22 -0
  184. package/dist/components/UI/AccordionIcon.js.map +1 -0
  185. package/dist/components/UI/AlertInfo/dismissedAlertsStore.d.ts +2 -0
  186. package/dist/components/UI/AlertInfo/dismissedAlertsStore.js +22 -0
  187. package/dist/components/UI/AlertInfo/dismissedAlertsStore.js.map +1 -0
  188. package/dist/components/UI/AlertInfo/index.d.ts +30 -0
  189. package/dist/components/UI/AlertInfo/index.js +78 -0
  190. package/dist/components/UI/AlertInfo/index.js.map +1 -0
  191. package/dist/components/UI/BaseDataCard.d.ts +27 -0
  192. package/dist/components/UI/BaseDataCard.js +170 -0
  193. package/dist/components/UI/BaseDataCard.js.map +1 -0
  194. package/dist/components/UI/BulkActionBar.d.ts +35 -0
  195. package/dist/components/UI/BulkActionBar.js +127 -0
  196. package/dist/components/UI/BulkActionBar.js.map +1 -0
  197. package/dist/components/UI/Chips/OutlinedChip.d.ts +42 -0
  198. package/dist/components/UI/Chips/OutlinedChip.js +190 -0
  199. package/dist/components/UI/Chips/OutlinedChip.js.map +1 -0
  200. package/dist/components/UI/Chips/StatusChip.d.ts +8 -0
  201. package/dist/components/UI/Chips/StatusChip.js +33 -0
  202. package/dist/components/UI/Chips/StatusChip.js.map +1 -0
  203. package/dist/components/UI/Chips/chipTones.d.ts +6 -0
  204. package/dist/components/UI/Chips/chipTones.js +53 -0
  205. package/dist/components/UI/Chips/chipTones.js.map +1 -0
  206. package/dist/components/UI/ColorSwatch.d.ts +30 -0
  207. package/dist/components/UI/ColorSwatch.js +53 -0
  208. package/dist/components/UI/ColorSwatch.js.map +1 -0
  209. package/dist/components/UI/Colors.d.ts +10 -0
  210. package/dist/components/UI/Colors.js +41 -0
  211. package/dist/components/UI/Colors.js.map +1 -0
  212. package/dist/components/UI/ControlledAccordion.d.ts +38 -0
  213. package/dist/components/UI/ControlledAccordion.js +95 -0
  214. package/dist/components/UI/ControlledAccordion.js.map +1 -0
  215. package/dist/components/UI/ControlledCollapse.d.ts +18 -0
  216. package/dist/components/UI/ControlledCollapse.js +40 -0
  217. package/dist/components/UI/ControlledCollapse.js.map +1 -0
  218. package/dist/components/UI/ControlledMenu.d.ts +79 -0
  219. package/dist/components/UI/ControlledMenu.js +234 -0
  220. package/dist/components/UI/ControlledMenu.js.map +1 -0
  221. package/dist/components/UI/ControlledPopover.d.ts +59 -0
  222. package/dist/components/UI/ControlledPopover.js +189 -0
  223. package/dist/components/UI/ControlledPopover.js.map +1 -0
  224. package/dist/components/UI/ControlledProgress.d.ts +13 -0
  225. package/dist/components/UI/ControlledProgress.js +46 -0
  226. package/dist/components/UI/ControlledProgress.js.map +1 -0
  227. package/dist/components/UI/ControlledSlider.d.ts +15 -0
  228. package/dist/components/UI/ControlledSlider.js +34 -0
  229. package/dist/components/UI/ControlledSlider.js.map +1 -0
  230. package/dist/components/UI/ControlledTooltip.d.ts +21 -0
  231. package/dist/components/UI/ControlledTooltip.js +146 -0
  232. package/dist/components/UI/ControlledTooltip.js.map +1 -0
  233. package/dist/components/UI/CustomBadge.d.ts +15 -0
  234. package/dist/components/UI/CustomBadge.js +34 -0
  235. package/dist/components/UI/CustomBadge.js.map +1 -0
  236. package/dist/components/UI/CustomCard.d.ts +13 -0
  237. package/dist/components/UI/CustomCard.js +36 -0
  238. package/dist/components/UI/CustomCard.js.map +1 -0
  239. package/dist/components/UI/CustomChart.d.ts +21 -0
  240. package/dist/components/UI/CustomChart.js +108 -0
  241. package/dist/components/UI/CustomChart.js.map +1 -0
  242. package/dist/components/UI/DataTable/DataTable.d.ts +108 -0
  243. package/dist/components/UI/DataTable/DataTable.js +606 -0
  244. package/dist/components/UI/DataTable/DataTable.js.map +1 -0
  245. package/dist/components/UI/DataTable/DataTableAutoCard.d.ts +20 -0
  246. package/dist/components/UI/DataTable/DataTableAutoCard.js +39 -0
  247. package/dist/components/UI/DataTable/DataTableAutoCard.js.map +1 -0
  248. package/dist/components/UI/DataTable/DataTableBody.d.ts +33 -0
  249. package/dist/components/UI/DataTable/DataTableBody.js +260 -0
  250. package/dist/components/UI/DataTable/DataTableBody.js.map +1 -0
  251. package/dist/components/UI/DataTable/DataTableBodyCell.d.ts +21 -0
  252. package/dist/components/UI/DataTable/DataTableBodyCell.js +88 -0
  253. package/dist/components/UI/DataTable/DataTableBodyCell.js.map +1 -0
  254. package/dist/components/UI/DataTable/DataTableBulkEditButton.d.ts +11 -0
  255. package/dist/components/UI/DataTable/DataTableBulkEditButton.js +24 -0
  256. package/dist/components/UI/DataTable/DataTableBulkEditButton.js.map +1 -0
  257. package/dist/components/UI/DataTable/DataTableBulkEditDialog.d.ts +25 -0
  258. package/dist/components/UI/DataTable/DataTableBulkEditDialog.js +282 -0
  259. package/dist/components/UI/DataTable/DataTableBulkEditDialog.js.map +1 -0
  260. package/dist/components/UI/DataTable/DataTableBulkEditRowsPicker.d.ts +13 -0
  261. package/dist/components/UI/DataTable/DataTableBulkEditRowsPicker.js +95 -0
  262. package/dist/components/UI/DataTable/DataTableBulkEditRowsPicker.js.map +1 -0
  263. package/dist/components/UI/DataTable/DataTableBulkEditValueEditor.d.ts +20 -0
  264. package/dist/components/UI/DataTable/DataTableBulkEditValueEditor.js +94 -0
  265. package/dist/components/UI/DataTable/DataTableBulkEditValueEditor.js.map +1 -0
  266. package/dist/components/UI/DataTable/DataTableColumnToggle.d.ts +34 -0
  267. package/dist/components/UI/DataTable/DataTableColumnToggle.js +170 -0
  268. package/dist/components/UI/DataTable/DataTableColumnToggle.js.map +1 -0
  269. package/dist/components/UI/DataTable/DataTableDetailModal.d.ts +17 -0
  270. package/dist/components/UI/DataTable/DataTableDetailModal.js +109 -0
  271. package/dist/components/UI/DataTable/DataTableDetailModal.js.map +1 -0
  272. package/dist/components/UI/DataTable/DataTableDetailPanel.d.ts +21 -0
  273. package/dist/components/UI/DataTable/DataTableDetailPanel.js +51 -0
  274. package/dist/components/UI/DataTable/DataTableDetailPanel.js.map +1 -0
  275. package/dist/components/UI/DataTable/DataTableDetailTable.d.ts +35 -0
  276. package/dist/components/UI/DataTable/DataTableDetailTable.js +129 -0
  277. package/dist/components/UI/DataTable/DataTableDetailTable.js.map +1 -0
  278. package/dist/components/UI/DataTable/DataTableEditModeButton.d.ts +12 -0
  279. package/dist/components/UI/DataTable/DataTableEditModeButton.js +29 -0
  280. package/dist/components/UI/DataTable/DataTableEditModeButton.js.map +1 -0
  281. package/dist/components/UI/DataTable/DataTableFilters.d.ts +20 -0
  282. package/dist/components/UI/DataTable/DataTableFilters.js +65 -0
  283. package/dist/components/UI/DataTable/DataTableFilters.js.map +1 -0
  284. package/dist/components/UI/DataTable/DataTableHead.d.ts +27 -0
  285. package/dist/components/UI/DataTable/DataTableHead.js +198 -0
  286. package/dist/components/UI/DataTable/DataTableHead.js.map +1 -0
  287. package/dist/components/UI/DataTable/DataTablePagination.d.ts +15 -0
  288. package/dist/components/UI/DataTable/DataTablePagination.js +149 -0
  289. package/dist/components/UI/DataTable/DataTablePagination.js.map +1 -0
  290. package/dist/components/UI/DataTable/DataTableSaveButton.d.ts +13 -0
  291. package/dist/components/UI/DataTable/DataTableSaveButton.js +21 -0
  292. package/dist/components/UI/DataTable/DataTableSaveButton.js.map +1 -0
  293. package/dist/components/UI/DataTable/DataTableSegmentedTabs.d.ts +8 -0
  294. package/dist/components/UI/DataTable/DataTableSegmentedTabs.js +35 -0
  295. package/dist/components/UI/DataTable/DataTableSegmentedTabs.js.map +1 -0
  296. package/dist/components/UI/DataTable/DataTableStates.d.ts +17 -0
  297. package/dist/components/UI/DataTable/DataTableStates.js +59 -0
  298. package/dist/components/UI/DataTable/DataTableStates.js.map +1 -0
  299. package/dist/components/UI/DataTable/DataTableToolbar.d.ts +28 -0
  300. package/dist/components/UI/DataTable/DataTableToolbar.js +110 -0
  301. package/dist/components/UI/DataTable/DataTableToolbar.js.map +1 -0
  302. package/dist/components/UI/DataTable/applyDataTableFilters.d.ts +16 -0
  303. package/dist/components/UI/DataTable/applyDataTableFilters.js +54 -0
  304. package/dist/components/UI/DataTable/applyDataTableFilters.js.map +1 -0
  305. package/dist/components/UI/DataTable/bulkEditValues.d.ts +8 -0
  306. package/dist/components/UI/DataTable/bulkEditValues.js +13 -0
  307. package/dist/components/UI/DataTable/bulkEditValues.js.map +1 -0
  308. package/dist/components/UI/DataTable/cells/DataTableActionsCell.d.ts +7 -0
  309. package/dist/components/UI/DataTable/cells/DataTableActionsCell.js +55 -0
  310. package/dist/components/UI/DataTable/cells/DataTableActionsCell.js.map +1 -0
  311. package/dist/components/UI/DataTable/cells/DataTableCell.d.ts +15 -0
  312. package/dist/components/UI/DataTable/cells/DataTableCell.js +63 -0
  313. package/dist/components/UI/DataTable/cells/DataTableCell.js.map +1 -0
  314. package/dist/components/UI/DataTable/cells/DataTableCodeCell.d.ts +6 -0
  315. package/dist/components/UI/DataTable/cells/DataTableCodeCell.js +7 -0
  316. package/dist/components/UI/DataTable/cells/DataTableCodeCell.js.map +1 -0
  317. package/dist/components/UI/DataTable/cells/DataTableColorCell.d.ts +7 -0
  318. package/dist/components/UI/DataTable/cells/DataTableColorCell.js +10 -0
  319. package/dist/components/UI/DataTable/cells/DataTableColorCell.js.map +1 -0
  320. package/dist/components/UI/DataTable/cells/DataTableCountCell.d.ts +5 -0
  321. package/dist/components/UI/DataTable/cells/DataTableCountCell.js +7 -0
  322. package/dist/components/UI/DataTable/cells/DataTableCountCell.js.map +1 -0
  323. package/dist/components/UI/DataTable/cells/DataTableDateCell.d.ts +5 -0
  324. package/dist/components/UI/DataTable/cells/DataTableDateCell.js +12 -0
  325. package/dist/components/UI/DataTable/cells/DataTableDateCell.js.map +1 -0
  326. package/dist/components/UI/DataTable/cells/DataTableEditableCell.d.ts +23 -0
  327. package/dist/components/UI/DataTable/cells/DataTableEditableCell.js +242 -0
  328. package/dist/components/UI/DataTable/cells/DataTableEditableCell.js.map +1 -0
  329. package/dist/components/UI/DataTable/cells/DataTableEmpenhoCell.d.ts +10 -0
  330. package/dist/components/UI/DataTable/cells/DataTableEmpenhoCell.js +7 -0
  331. package/dist/components/UI/DataTable/cells/DataTableEmpenhoCell.js.map +1 -0
  332. package/dist/components/UI/DataTable/cells/DataTableOriginCell.d.ts +6 -0
  333. package/dist/components/UI/DataTable/cells/DataTableOriginCell.js +25 -0
  334. package/dist/components/UI/DataTable/cells/DataTableOriginCell.js.map +1 -0
  335. package/dist/components/UI/DataTable/cells/DataTableStatusCell.d.ts +6 -0
  336. package/dist/components/UI/DataTable/cells/DataTableStatusCell.js +24 -0
  337. package/dist/components/UI/DataTable/cells/DataTableStatusCell.js.map +1 -0
  338. package/dist/components/UI/DataTable/cells/DataTableTagCell.d.ts +6 -0
  339. package/dist/components/UI/DataTable/cells/DataTableTagCell.js +25 -0
  340. package/dist/components/UI/DataTable/cells/DataTableTagCell.js.map +1 -0
  341. package/dist/components/UI/DataTable/cells/DataTableTextCell.d.ts +6 -0
  342. package/dist/components/UI/DataTable/cells/DataTableTextCell.js +7 -0
  343. package/dist/components/UI/DataTable/cells/DataTableTextCell.js.map +1 -0
  344. package/dist/components/UI/DataTable/cells/DataTableThumbnailCell.d.ts +6 -0
  345. package/dist/components/UI/DataTable/cells/DataTableThumbnailCell.js +10 -0
  346. package/dist/components/UI/DataTable/cells/DataTableThumbnailCell.js.map +1 -0
  347. package/dist/components/UI/DataTable/dataTableClasses.d.ts +12 -0
  348. package/dist/components/UI/DataTable/dataTableClasses.js +29 -0
  349. package/dist/components/UI/DataTable/dataTableClasses.js.map +1 -0
  350. package/dist/components/UI/DataTable/dataTableColumnWidths.d.ts +15 -0
  351. package/dist/components/UI/DataTable/dataTableColumnWidths.js +153 -0
  352. package/dist/components/UI/DataTable/dataTableColumnWidths.js.map +1 -0
  353. package/dist/components/UI/DataTable/dataTableColumnsStore.d.ts +12 -0
  354. package/dist/components/UI/DataTable/dataTableColumnsStore.js +68 -0
  355. package/dist/components/UI/DataTable/dataTableColumnsStore.js.map +1 -0
  356. package/dist/components/UI/DataTable/dataTableMotion.d.ts +6 -0
  357. package/dist/components/UI/DataTable/dataTableMotion.js +15 -0
  358. package/dist/components/UI/DataTable/dataTableMotion.js.map +1 -0
  359. package/dist/components/UI/DataTable/grid/GridFillHandle.d.ts +8 -0
  360. package/dist/components/UI/DataTable/grid/GridFillHandle.js +70 -0
  361. package/dist/components/UI/DataTable/grid/GridFillHandle.js.map +1 -0
  362. package/dist/components/UI/DataTable/grid/GridProvider.d.ts +36 -0
  363. package/dist/components/UI/DataTable/grid/GridProvider.js +128 -0
  364. package/dist/components/UI/DataTable/grid/GridProvider.js.map +1 -0
  365. package/dist/components/UI/DataTable/grid/fill/fillStrategies.d.ts +19 -0
  366. package/dist/components/UI/DataTable/grid/fill/fillStrategies.js +73 -0
  367. package/dist/components/UI/DataTable/grid/fill/fillStrategies.js.map +1 -0
  368. package/dist/components/UI/DataTable/grid/gridStore.d.ts +82 -0
  369. package/dist/components/UI/DataTable/grid/gridStore.js +259 -0
  370. package/dist/components/UI/DataTable/grid/gridStore.js.map +1 -0
  371. package/dist/components/UI/DataTable/grid/gridTypes.d.ts +59 -0
  372. package/dist/components/UI/DataTable/grid/gridTypes.js +27 -0
  373. package/dist/components/UI/DataTable/grid/gridTypes.js.map +1 -0
  374. package/dist/components/UI/DataTable/grid/useGridFillApply.d.ts +18 -0
  375. package/dist/components/UI/DataTable/grid/useGridFillApply.js +74 -0
  376. package/dist/components/UI/DataTable/grid/useGridFillApply.js.map +1 -0
  377. package/dist/components/UI/DataTable/grid/useGridInstance.d.ts +27 -0
  378. package/dist/components/UI/DataTable/grid/useGridInstance.js +41 -0
  379. package/dist/components/UI/DataTable/grid/useGridInstance.js.map +1 -0
  380. package/dist/components/UI/DataTable/grid/useGridKeyboard.d.ts +25 -0
  381. package/dist/components/UI/DataTable/grid/useGridKeyboard.js +135 -0
  382. package/dist/components/UI/DataTable/grid/useGridKeyboard.js.map +1 -0
  383. package/dist/components/UI/DataTable/index.d.ts +19 -0
  384. package/dist/components/UI/DataTable/index.js +34 -0
  385. package/dist/components/UI/DataTable/index.js.map +1 -0
  386. package/dist/components/UI/DataTable/types.d.ts +535 -0
  387. package/dist/components/UI/DataTable/types.js +13 -0
  388. package/dist/components/UI/DataTable/types.js.map +1 -0
  389. package/dist/components/UI/DataTable/useCellEditingState.d.ts +20 -0
  390. package/dist/components/UI/DataTable/useCellEditingState.js +33 -0
  391. package/dist/components/UI/DataTable/useCellEditingState.js.map +1 -0
  392. package/dist/components/UI/DataTable/useColumnOrder.d.ts +25 -0
  393. package/dist/components/UI/DataTable/useColumnOrder.js +94 -0
  394. package/dist/components/UI/DataTable/useColumnOrder.js.map +1 -0
  395. package/dist/components/UI/DataTable/useColumnSizing.d.ts +9 -0
  396. package/dist/components/UI/DataTable/useColumnSizing.js +21 -0
  397. package/dist/components/UI/DataTable/useColumnSizing.js.map +1 -0
  398. package/dist/components/UI/DataTable/useColumnVisibility.d.ts +19 -0
  399. package/dist/components/UI/DataTable/useColumnVisibility.js +47 -0
  400. package/dist/components/UI/DataTable/useColumnVisibility.js.map +1 -0
  401. package/dist/components/UI/DataTable/useDataTableCommitQueue.d.ts +69 -0
  402. package/dist/components/UI/DataTable/useDataTableCommitQueue.js +220 -0
  403. package/dist/components/UI/DataTable/useDataTableCommitQueue.js.map +1 -0
  404. package/dist/components/UI/DataTable/useDataTableEditBuffer.d.ts +36 -0
  405. package/dist/components/UI/DataTable/useDataTableEditBuffer.js +29 -0
  406. package/dist/components/UI/DataTable/useDataTableEditBuffer.js.map +1 -0
  407. package/dist/components/UI/DataTable/useDataTableInstance.d.ts +65 -0
  408. package/dist/components/UI/DataTable/useDataTableInstance.js +336 -0
  409. package/dist/components/UI/DataTable/useDataTableInstance.js.map +1 -0
  410. package/dist/components/UI/DataTable/useDataTableSource.d.ts +85 -0
  411. package/dist/components/UI/DataTable/useDataTableSource.js +199 -0
  412. package/dist/components/UI/DataTable/useDataTableSource.js.map +1 -0
  413. package/dist/components/UI/DataTable/useDataTableUndoHistory.d.ts +30 -0
  414. package/dist/components/UI/DataTable/useDataTableUndoHistory.js +130 -0
  415. package/dist/components/UI/DataTable/useDataTableUndoHistory.js.map +1 -0
  416. package/dist/components/UI/DataTable/useFlipRows.d.ts +22 -0
  417. package/dist/components/UI/DataTable/useFlipRows.js +90 -0
  418. package/dist/components/UI/DataTable/useFlipRows.js.map +1 -0
  419. package/dist/components/UI/ErrorBoundary.d.ts +20 -0
  420. package/dist/components/UI/ErrorBoundary.js +36 -0
  421. package/dist/components/UI/ErrorBoundary.js.map +1 -0
  422. package/dist/components/UI/Flow/FlowAnnotationDraftPreview.d.ts +6 -0
  423. package/dist/components/UI/Flow/FlowAnnotationDraftPreview.js +65 -0
  424. package/dist/components/UI/Flow/FlowAnnotationDraftPreview.js.map +1 -0
  425. package/dist/components/UI/Flow/FlowAnnotationNode.d.ts +34 -0
  426. package/dist/components/UI/Flow/FlowAnnotationNode.js +231 -0
  427. package/dist/components/UI/Flow/FlowAnnotationNode.js.map +1 -0
  428. package/dist/components/UI/Flow/FlowAnnotationToolbar.d.ts +32 -0
  429. package/dist/components/UI/Flow/FlowAnnotationToolbar.js +298 -0
  430. package/dist/components/UI/Flow/FlowAnnotationToolbar.js.map +1 -0
  431. package/dist/components/UI/Flow/FlowBlockNode.d.ts +35 -0
  432. package/dist/components/UI/Flow/FlowBlockNode.js +91 -0
  433. package/dist/components/UI/Flow/FlowBlockNode.js.map +1 -0
  434. package/dist/components/UI/Flow/FlowCanvas.d.ts +23 -0
  435. package/dist/components/UI/Flow/FlowCanvas.js +559 -0
  436. package/dist/components/UI/Flow/FlowCanvas.js.map +1 -0
  437. package/dist/components/UI/Flow/FlowConnectionEdge.d.ts +18 -0
  438. package/dist/components/UI/Flow/FlowConnectionEdge.js +116 -0
  439. package/dist/components/UI/Flow/FlowConnectionEdge.js.map +1 -0
  440. package/dist/components/UI/Flow/FlowEditorProvider.d.ts +17 -0
  441. package/dist/components/UI/Flow/FlowEditorProvider.js +27 -0
  442. package/dist/components/UI/Flow/FlowEditorProvider.js.map +1 -0
  443. package/dist/components/UI/Flow/FlowInspector.d.ts +11 -0
  444. package/dist/components/UI/Flow/FlowInspector.js +131 -0
  445. package/dist/components/UI/Flow/FlowInspector.js.map +1 -0
  446. package/dist/components/UI/Flow/FlowIssueList.d.ts +8 -0
  447. package/dist/components/UI/Flow/FlowIssueList.js +55 -0
  448. package/dist/components/UI/Flow/FlowIssueList.js.map +1 -0
  449. package/dist/components/UI/Flow/FlowLaneMap.d.ts +30 -0
  450. package/dist/components/UI/Flow/FlowLaneMap.js +206 -0
  451. package/dist/components/UI/Flow/FlowLaneMap.js.map +1 -0
  452. package/dist/components/UI/Flow/FlowNodeShell.d.ts +20 -0
  453. package/dist/components/UI/Flow/FlowNodeShell.js +81 -0
  454. package/dist/components/UI/Flow/FlowNodeShell.js.map +1 -0
  455. package/dist/components/UI/Flow/FlowResizablePanel.d.ts +20 -0
  456. package/dist/components/UI/Flow/FlowResizablePanel.js +118 -0
  457. package/dist/components/UI/Flow/FlowResizablePanel.js.map +1 -0
  458. package/dist/components/UI/Flow/FlowSelectionBar.d.ts +10 -0
  459. package/dist/components/UI/Flow/FlowSelectionBar.js +56 -0
  460. package/dist/components/UI/Flow/FlowSelectionBar.js.map +1 -0
  461. package/dist/components/UI/Flow/FlowZoomControls.d.ts +12 -0
  462. package/dist/components/UI/Flow/FlowZoomControls.js +54 -0
  463. package/dist/components/UI/Flow/FlowZoomControls.js.map +1 -0
  464. package/dist/components/UI/Flow/flowAnnotations.d.ts +38 -0
  465. package/dist/components/UI/Flow/flowAnnotations.js +123 -0
  466. package/dist/components/UI/Flow/flowAnnotations.js.map +1 -0
  467. package/dist/components/UI/Flow/flowBlockRegistry.d.ts +12 -0
  468. package/dist/components/UI/Flow/flowBlockRegistry.js +20 -0
  469. package/dist/components/UI/Flow/flowBlockRegistry.js.map +1 -0
  470. package/dist/components/UI/Flow/flowEditorStore.d.ts +73 -0
  471. package/dist/components/UI/Flow/flowEditorStore.js +402 -0
  472. package/dist/components/UI/Flow/flowEditorStore.js.map +1 -0
  473. package/dist/components/UI/Flow/flowGraph.d.ts +32 -0
  474. package/dist/components/UI/Flow/flowGraph.js +157 -0
  475. package/dist/components/UI/Flow/flowGraph.js.map +1 -0
  476. package/dist/components/UI/Flow/flowTypes.d.ts +104 -0
  477. package/dist/components/UI/Flow/flowTypes.js +2 -0
  478. package/dist/components/UI/Flow/flowTypes.js.map +1 -0
  479. package/dist/components/UI/Flow/flowViewport.d.ts +25 -0
  480. package/dist/components/UI/Flow/flowViewport.js +31 -0
  481. package/dist/components/UI/Flow/flowViewport.js.map +1 -0
  482. package/dist/components/UI/Flow/index.d.ts +13 -0
  483. package/dist/components/UI/Flow/index.js +44 -0
  484. package/dist/components/UI/Flow/index.js.map +1 -0
  485. package/dist/components/UI/Flow/useFlowAnnotationDrawing.d.ts +25 -0
  486. package/dist/components/UI/Flow/useFlowAnnotationDrawing.js +117 -0
  487. package/dist/components/UI/Flow/useFlowAnnotationDrawing.js.map +1 -0
  488. package/dist/components/UI/Flow/useFlowLabels.d.ts +10 -0
  489. package/dist/components/UI/Flow/useFlowLabels.js +51 -0
  490. package/dist/components/UI/Flow/useFlowLabels.js.map +1 -0
  491. package/dist/components/UI/GeneratedByAI.d.ts +2 -0
  492. package/dist/components/UI/GeneratedByAI.js +12 -0
  493. package/dist/components/UI/GeneratedByAI.js.map +1 -0
  494. package/dist/components/UI/HorizontalScrollArea.d.ts +22 -0
  495. package/dist/components/UI/HorizontalScrollArea.js +74 -0
  496. package/dist/components/UI/HorizontalScrollArea.js.map +1 -0
  497. package/dist/components/UI/ImageAiAdjust/ImageAiAdjustDialog.d.ts +21 -0
  498. package/dist/components/UI/ImageAiAdjust/ImageAiAdjustDialog.js +235 -0
  499. package/dist/components/UI/ImageAiAdjust/ImageAiAdjustDialog.js.map +1 -0
  500. package/dist/components/UI/ImageAiAdjust/ImageAiDiscardReasonDialog.d.ts +8 -0
  501. package/dist/components/UI/ImageAiAdjust/ImageAiDiscardReasonDialog.js +67 -0
  502. package/dist/components/UI/ImageAiAdjust/ImageAiDiscardReasonDialog.js.map +1 -0
  503. package/dist/components/UI/ImageAiAdjust/ImageAiVerificationNotice.d.ts +8 -0
  504. package/dist/components/UI/ImageAiAdjust/ImageAiVerificationNotice.js +39 -0
  505. package/dist/components/UI/ImageAiAdjust/ImageAiVerificationNotice.js.map +1 -0
  506. package/dist/components/UI/ImageAiAdjust/imageAiReview.d.ts +22 -0
  507. package/dist/components/UI/ImageAiAdjust/imageAiReview.js +37 -0
  508. package/dist/components/UI/ImageAiAdjust/imageAiReview.js.map +1 -0
  509. package/dist/components/UI/ImageAiAdjust/imageAiVerification.d.ts +19 -0
  510. package/dist/components/UI/ImageAiAdjust/imageAiVerification.js +25 -0
  511. package/dist/components/UI/ImageAiAdjust/imageAiVerification.js.map +1 -0
  512. package/dist/components/UI/ImageAiAdjust/useImageAiAdjust.d.ts +52 -0
  513. package/dist/components/UI/ImageAiAdjust/useImageAiAdjust.js +109 -0
  514. package/dist/components/UI/ImageAiAdjust/useImageAiAdjust.js.map +1 -0
  515. package/dist/components/UI/ImageAnnotator/AnnotationEditor.d.ts +13 -0
  516. package/dist/components/UI/ImageAnnotator/AnnotationEditor.js +362 -0
  517. package/dist/components/UI/ImageAnnotator/AnnotationEditor.js.map +1 -0
  518. package/dist/components/UI/ImageAnnotator/ImageAnnotationDialog.d.ts +15 -0
  519. package/dist/components/UI/ImageAnnotator/ImageAnnotationDialog.js +61 -0
  520. package/dist/components/UI/ImageAnnotator/ImageAnnotationDialog.js.map +1 -0
  521. package/dist/components/UI/ImageAnnotator/annotationStyle.d.ts +28 -0
  522. package/dist/components/UI/ImageAnnotator/annotationStyle.js +56 -0
  523. package/dist/components/UI/ImageAnnotator/annotationStyle.js.map +1 -0
  524. package/dist/components/UI/ImageAnnotator/canvas/AnnotationCropFrame.d.ts +16 -0
  525. package/dist/components/UI/ImageAnnotator/canvas/AnnotationCropFrame.js +156 -0
  526. package/dist/components/UI/ImageAnnotator/canvas/AnnotationCropFrame.js.map +1 -0
  527. package/dist/components/UI/ImageAnnotator/canvas/AnnotationElementNode.d.ts +17 -0
  528. package/dist/components/UI/ImageAnnotator/canvas/AnnotationElementNode.js +329 -0
  529. package/dist/components/UI/ImageAnnotator/canvas/AnnotationElementNode.js.map +1 -0
  530. package/dist/components/UI/ImageAnnotator/canvas/AnnotationSelection.d.ts +10 -0
  531. package/dist/components/UI/ImageAnnotator/canvas/AnnotationSelection.js +127 -0
  532. package/dist/components/UI/ImageAnnotator/canvas/AnnotationSelection.js.map +1 -0
  533. package/dist/components/UI/ImageAnnotator/canvas/AnnotationStage.d.ts +26 -0
  534. package/dist/components/UI/ImageAnnotator/canvas/AnnotationStage.js +241 -0
  535. package/dist/components/UI/ImageAnnotator/canvas/AnnotationStage.js.map +1 -0
  536. package/dist/components/UI/ImageAnnotator/components/AnnotationActionBar.d.ts +15 -0
  537. package/dist/components/UI/ImageAnnotator/components/AnnotationActionBar.js +77 -0
  538. package/dist/components/UI/ImageAnnotator/components/AnnotationActionBar.js.map +1 -0
  539. package/dist/components/UI/ImageAnnotator/components/AnnotationColorPopover.d.ts +11 -0
  540. package/dist/components/UI/ImageAnnotator/components/AnnotationColorPopover.js +70 -0
  541. package/dist/components/UI/ImageAnnotator/components/AnnotationColorPopover.js.map +1 -0
  542. package/dist/components/UI/ImageAnnotator/components/AnnotationCropBar.d.ts +12 -0
  543. package/dist/components/UI/ImageAnnotator/components/AnnotationCropBar.js +89 -0
  544. package/dist/components/UI/ImageAnnotator/components/AnnotationCropBar.js.map +1 -0
  545. package/dist/components/UI/ImageAnnotator/components/AnnotationElementActions.d.ts +8 -0
  546. package/dist/components/UI/ImageAnnotator/components/AnnotationElementActions.js +58 -0
  547. package/dist/components/UI/ImageAnnotator/components/AnnotationElementActions.js.map +1 -0
  548. package/dist/components/UI/ImageAnnotator/components/AnnotationStyleBar.d.ts +13 -0
  549. package/dist/components/UI/ImageAnnotator/components/AnnotationStyleBar.js +183 -0
  550. package/dist/components/UI/ImageAnnotator/components/AnnotationStyleBar.js.map +1 -0
  551. package/dist/components/UI/ImageAnnotator/components/AnnotationTextOverlay.d.ts +17 -0
  552. package/dist/components/UI/ImageAnnotator/components/AnnotationTextOverlay.js +79 -0
  553. package/dist/components/UI/ImageAnnotator/components/AnnotationTextOverlay.js.map +1 -0
  554. package/dist/components/UI/ImageAnnotator/components/AnnotationToolButton.d.ts +15 -0
  555. package/dist/components/UI/ImageAnnotator/components/AnnotationToolButton.js +46 -0
  556. package/dist/components/UI/ImageAnnotator/components/AnnotationToolButton.js.map +1 -0
  557. package/dist/components/UI/ImageAnnotator/components/AnnotationToolbar.d.ts +10 -0
  558. package/dist/components/UI/ImageAnnotator/components/AnnotationToolbar.js +91 -0
  559. package/dist/components/UI/ImageAnnotator/components/AnnotationToolbar.js.map +1 -0
  560. package/dist/components/UI/ImageAnnotator/helpers/annotationCanvas.d.ts +21 -0
  561. package/dist/components/UI/ImageAnnotator/helpers/annotationCanvas.js +45 -0
  562. package/dist/components/UI/ImageAnnotator/helpers/annotationCanvas.js.map +1 -0
  563. package/dist/components/UI/ImageAnnotator/helpers/annotationCrop.d.ts +12 -0
  564. package/dist/components/UI/ImageAnnotator/helpers/annotationCrop.js +64 -0
  565. package/dist/components/UI/ImageAnnotator/helpers/annotationCrop.js.map +1 -0
  566. package/dist/components/UI/ImageAnnotator/helpers/annotationElements.d.ts +15 -0
  567. package/dist/components/UI/ImageAnnotator/helpers/annotationElements.js +165 -0
  568. package/dist/components/UI/ImageAnnotator/helpers/annotationElements.js.map +1 -0
  569. package/dist/components/UI/ImageAnnotator/helpers/annotationExport.d.ts +15 -0
  570. package/dist/components/UI/ImageAnnotator/helpers/annotationExport.js +23 -0
  571. package/dist/components/UI/ImageAnnotator/helpers/annotationExport.js.map +1 -0
  572. package/dist/components/UI/ImageAnnotator/helpers/konvaFullBuild.d.ts +8 -0
  573. package/dist/components/UI/ImageAnnotator/helpers/konvaFullBuild.js +10 -0
  574. package/dist/components/UI/ImageAnnotator/helpers/konvaFullBuild.js.map +1 -0
  575. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationBaseImage.d.ts +9 -0
  576. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationBaseImage.js +56 -0
  577. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationBaseImage.js.map +1 -0
  578. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationDocument.d.ts +29 -0
  579. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationDocument.js +160 -0
  580. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationDocument.js.map +1 -0
  581. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationShortcuts.d.ts +14 -0
  582. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationShortcuts.js +80 -0
  583. package/dist/components/UI/ImageAnnotator/hooks/useAnnotationShortcuts.js.map +1 -0
  584. package/dist/components/UI/ImageAnnotator/hooks/useCoarsePointer.d.ts +5 -0
  585. package/dist/components/UI/ImageAnnotator/hooks/useCoarsePointer.js +23 -0
  586. package/dist/components/UI/ImageAnnotator/hooks/useCoarsePointer.js.map +1 -0
  587. package/dist/components/UI/ImageAnnotator/hooks/useHtmlImage.d.ts +2 -0
  588. package/dist/components/UI/ImageAnnotator/hooks/useHtmlImage.js +27 -0
  589. package/dist/components/UI/ImageAnnotator/hooks/useHtmlImage.js.map +1 -0
  590. package/dist/components/UI/ImageAnnotator/interfaces/annotationDocument.d.ts +98 -0
  591. package/dist/components/UI/ImageAnnotator/interfaces/annotationDocument.js +13 -0
  592. package/dist/components/UI/ImageAnnotator/interfaces/annotationDocument.js.map +1 -0
  593. package/dist/components/UI/ImageMaskPainter/index.d.ts +24 -0
  594. package/dist/components/UI/ImageMaskPainter/index.js +284 -0
  595. package/dist/components/UI/ImageMaskPainter/index.js.map +1 -0
  596. package/dist/components/UI/ImageMaskPainter/maskStrokes.d.ts +19 -0
  597. package/dist/components/UI/ImageMaskPainter/maskStrokes.js +71 -0
  598. package/dist/components/UI/ImageMaskPainter/maskStrokes.js.map +1 -0
  599. package/dist/components/UI/ImagePlaceholder.d.ts +24 -0
  600. package/dist/components/UI/ImagePlaceholder.js +29 -0
  601. package/dist/components/UI/ImagePlaceholder.js.map +1 -0
  602. package/dist/components/UI/ImageZoomOverlay.d.ts +7 -0
  603. package/dist/components/UI/ImageZoomOverlay.js +53 -0
  604. package/dist/components/UI/ImageZoomOverlay.js.map +1 -0
  605. package/dist/components/UI/InformationCard.d.ts +26 -0
  606. package/dist/components/UI/InformationCard.js +89 -0
  607. package/dist/components/UI/InformationCard.js.map +1 -0
  608. package/dist/components/UI/Kanban/KanbanBoard.d.ts +26 -0
  609. package/dist/components/UI/Kanban/KanbanBoard.js +91 -0
  610. package/dist/components/UI/Kanban/KanbanBoard.js.map +1 -0
  611. package/dist/components/UI/Kanban/KanbanCard.d.ts +22 -0
  612. package/dist/components/UI/Kanban/KanbanCard.js +47 -0
  613. package/dist/components/UI/Kanban/KanbanCard.js.map +1 -0
  614. package/dist/components/UI/Kanban/KanbanLane.d.ts +37 -0
  615. package/dist/components/UI/Kanban/KanbanLane.js +77 -0
  616. package/dist/components/UI/Kanban/KanbanLane.js.map +1 -0
  617. package/dist/components/UI/Kanban/index.d.ts +4 -0
  618. package/dist/components/UI/Kanban/index.js +11 -0
  619. package/dist/components/UI/Kanban/index.js.map +1 -0
  620. package/dist/components/UI/Kanban/kanbanBoardContext.d.ts +13 -0
  621. package/dist/components/UI/Kanban/kanbanBoardContext.js +13 -0
  622. package/dist/components/UI/Kanban/kanbanBoardContext.js.map +1 -0
  623. package/dist/components/UI/LazyMarkdown.d.ts +5 -0
  624. package/dist/components/UI/LazyMarkdown.js +8 -0
  625. package/dist/components/UI/LazyMarkdown.js.map +1 -0
  626. package/dist/components/UI/LoadingPage.d.ts +2 -0
  627. package/dist/components/UI/LoadingPage.js +13 -0
  628. package/dist/components/UI/LoadingPage.js.map +1 -0
  629. package/dist/components/UI/LoadingSpinner.d.ts +14 -0
  630. package/dist/components/UI/LoadingSpinner.js +32 -0
  631. package/dist/components/UI/LoadingSpinner.js.map +1 -0
  632. package/dist/components/UI/MaterialSymbol/consts.d.ts +2 -0
  633. package/dist/components/UI/MaterialSymbol/consts.js +3472 -0
  634. package/dist/components/UI/MaterialSymbol/consts.js.map +1 -0
  635. package/dist/components/UI/MaterialSymbol/index.d.ts +18 -0
  636. package/dist/components/UI/MaterialSymbol/index.js +51 -0
  637. package/dist/components/UI/MaterialSymbol/index.js.map +1 -0
  638. package/dist/components/UI/MaterialSymbol/types.d.ts +37 -0
  639. package/dist/components/UI/MaterialSymbol/types.js +2 -0
  640. package/dist/components/UI/MaterialSymbol/types.js.map +1 -0
  641. package/dist/components/UI/NoDataFound/index.d.ts +31 -0
  642. package/dist/components/UI/NoDataFound/index.js +215 -0
  643. package/dist/components/UI/NoDataFound/index.js.map +1 -0
  644. package/dist/components/UI/NoDataFound/noDataFoundPresets.d.ts +31 -0
  645. package/dist/components/UI/NoDataFound/noDataFoundPresets.js +99 -0
  646. package/dist/components/UI/NoDataFound/noDataFoundPresets.js.map +1 -0
  647. package/dist/components/UI/ReferenceCard.d.ts +16 -0
  648. package/dist/components/UI/ReferenceCard.js +59 -0
  649. package/dist/components/UI/ReferenceCard.js.map +1 -0
  650. package/dist/components/UI/RichTextContent.d.ts +14 -0
  651. package/dist/components/UI/RichTextContent.js +30 -0
  652. package/dist/components/UI/RichTextContent.js.map +1 -0
  653. package/dist/components/UI/SkeletonLoading.d.ts +9 -0
  654. package/dist/components/UI/SkeletonLoading.js +20 -0
  655. package/dist/components/UI/SkeletonLoading.js.map +1 -0
  656. package/dist/components/UI/ThreeDots.d.ts +11 -0
  657. package/dist/components/UI/ThreeDots.js +22 -0
  658. package/dist/components/UI/ThreeDots.js.map +1 -0
  659. package/dist/components/UI/Toast.d.ts +16 -0
  660. package/dist/components/UI/Toast.js +81 -0
  661. package/dist/components/UI/Toast.js.map +1 -0
  662. package/dist/components/UI/ToastHost.d.ts +2 -0
  663. package/dist/components/UI/ToastHost.js +25 -0
  664. package/dist/components/UI/ToastHost.js.map +1 -0
  665. package/dist/components/UI/TypingEffect.d.ts +10 -0
  666. package/dist/components/UI/TypingEffect.js +31 -0
  667. package/dist/components/UI/TypingEffect.js.map +1 -0
  668. package/dist/components/UI/UmodeLogo.d.ts +10 -0
  669. package/dist/components/UI/UmodeLogo.js +128 -0
  670. package/dist/components/UI/UmodeLogo.js.map +1 -0
  671. package/dist/components/UI/UserMenu.d.ts +50 -0
  672. package/dist/components/UI/UserMenu.js +212 -0
  673. package/dist/components/UI/UserMenu.js.map +1 -0
  674. package/dist/components/UI/UsersAvatar.d.ts +7 -0
  675. package/dist/components/UI/UsersAvatar.js +29 -0
  676. package/dist/components/UI/UsersAvatar.js.map +1 -0
  677. package/dist/components/UI/access/UiAccessContext.d.ts +21 -0
  678. package/dist/components/UI/access/UiAccessContext.js +14 -0
  679. package/dist/components/UI/access/UiAccessContext.js.map +1 -0
  680. package/dist/components/UI/cells/ArrayCell.d.ts +5 -0
  681. package/dist/components/UI/cells/ArrayCell.js +25 -0
  682. package/dist/components/UI/cells/ArrayCell.js.map +1 -0
  683. package/dist/components/UI/cells/BooleanCell.d.ts +5 -0
  684. package/dist/components/UI/cells/BooleanCell.js +22 -0
  685. package/dist/components/UI/cells/BooleanCell.js.map +1 -0
  686. package/dist/components/UI/cells/DetailsTableCell.d.ts +7 -0
  687. package/dist/components/UI/cells/DetailsTableCell.js +30 -0
  688. package/dist/components/UI/cells/DetailsTableCell.js.map +1 -0
  689. package/dist/components/UI/cells/ProductImageCell.d.ts +5 -0
  690. package/dist/components/UI/cells/ProductImageCell.js +21 -0
  691. package/dist/components/UI/cells/ProductImageCell.js.map +1 -0
  692. package/dist/components/UI/cells/UrlLinkCell.d.ts +6 -0
  693. package/dist/components/UI/cells/UrlLinkCell.js +19 -0
  694. package/dist/components/UI/cells/UrlLinkCell.js.map +1 -0
  695. package/dist/components/Upload/SimpleUploaderComponent.d.ts +9 -0
  696. package/dist/components/Upload/SimpleUploaderComponent.js +72 -0
  697. package/dist/components/Upload/SimpleUploaderComponent.js.map +1 -0
  698. package/dist/components/Upload/UploaderComponent.d.ts +29 -0
  699. package/dist/components/Upload/UploaderComponent.js +241 -0
  700. package/dist/components/Upload/UploaderComponent.js.map +1 -0
  701. package/dist/components/Upload/XlsExportButton.d.ts +13 -0
  702. package/dist/components/Upload/XlsExportButton.js +47 -0
  703. package/dist/components/Upload/XlsExportButton.js.map +1 -0
  704. package/dist/helpers/composeRefs.d.ts +7 -0
  705. package/dist/helpers/composeRefs.js +14 -0
  706. package/dist/helpers/composeRefs.js.map +1 -0
  707. package/dist/helpers/dateHelpers.d.ts +47 -0
  708. package/dist/helpers/dateHelpers.js +69 -0
  709. package/dist/helpers/dateHelpers.js.map +1 -0
  710. package/dist/helpers/fileAttachments.d.ts +3 -0
  711. package/dist/helpers/fileAttachments.js +17 -0
  712. package/dist/helpers/fileAttachments.js.map +1 -0
  713. package/dist/helpers/formatHelpers.d.ts +36 -0
  714. package/dist/helpers/formatHelpers.js +65 -0
  715. package/dist/helpers/formatHelpers.js.map +1 -0
  716. package/dist/helpers/iconFont.d.ts +9 -0
  717. package/dist/helpers/iconFont.js +37 -0
  718. package/dist/helpers/iconFont.js.map +1 -0
  719. package/dist/helpers/imageCompression.d.ts +5 -0
  720. package/dist/helpers/imageCompression.js +49 -0
  721. package/dist/helpers/imageCompression.js.map +1 -0
  722. package/dist/helpers/imageFile.d.ts +32 -0
  723. package/dist/helpers/imageFile.js +108 -0
  724. package/dist/helpers/imageFile.js.map +1 -0
  725. package/dist/helpers/layeredSurfaces.d.ts +28 -0
  726. package/dist/helpers/layeredSurfaces.js +19 -0
  727. package/dist/helpers/layeredSurfaces.js.map +1 -0
  728. package/dist/helpers/mathHelpers.d.ts +14 -0
  729. package/dist/helpers/mathHelpers.js +13 -0
  730. package/dist/helpers/mathHelpers.js.map +1 -0
  731. package/dist/helpers/mergeClasses.d.ts +10 -0
  732. package/dist/helpers/mergeClasses.js +34 -0
  733. package/dist/helpers/mergeClasses.js.map +1 -0
  734. package/dist/helpers/moduleLoadErrorHelpers.d.ts +1 -0
  735. package/dist/helpers/moduleLoadErrorHelpers.js +25 -0
  736. package/dist/helpers/moduleLoadErrorHelpers.js.map +1 -0
  737. package/dist/helpers/objectHelpers.d.ts +13 -0
  738. package/dist/helpers/objectHelpers.js +59 -0
  739. package/dist/helpers/objectHelpers.js.map +1 -0
  740. package/dist/helpers/portalHost.d.ts +10 -0
  741. package/dist/helpers/portalHost.js +7 -0
  742. package/dist/helpers/portalHost.js.map +1 -0
  743. package/dist/helpers/richText.d.ts +46 -0
  744. package/dist/helpers/richText.js +197 -0
  745. package/dist/helpers/richText.js.map +1 -0
  746. package/dist/helpers/stringHelpers.d.ts +45 -0
  747. package/dist/helpers/stringHelpers.js +57 -0
  748. package/dist/helpers/stringHelpers.js.map +1 -0
  749. package/dist/helpers/themeSkins.d.ts +12 -0
  750. package/dist/helpers/themeSkins.js +13 -0
  751. package/dist/helpers/themeSkins.js.map +1 -0
  752. package/dist/helpers/themeTokens.d.ts +28 -0
  753. package/dist/helpers/themeTokens.js +35 -0
  754. package/dist/helpers/themeTokens.js.map +1 -0
  755. package/dist/helpers/uiErrorPresenter.d.ts +21 -0
  756. package/dist/helpers/uiErrorPresenter.js +10 -0
  757. package/dist/helpers/uiErrorPresenter.js.map +1 -0
  758. package/dist/helpers/uiLogger.d.ts +8 -0
  759. package/dist/helpers/uiLogger.js +16 -0
  760. package/dist/helpers/uiLogger.js.map +1 -0
  761. package/dist/helpers/uiPreferences.d.ts +13 -0
  762. package/dist/helpers/uiPreferences.js +35 -0
  763. package/dist/helpers/uiPreferences.js.map +1 -0
  764. package/dist/helpers/urlParamSync.d.ts +19 -0
  765. package/dist/helpers/urlParamSync.js +54 -0
  766. package/dist/helpers/urlParamSync.js.map +1 -0
  767. package/dist/helpers/utilityHelpers.d.ts +81 -0
  768. package/dist/helpers/utilityHelpers.js +133 -0
  769. package/dist/helpers/utilityHelpers.js.map +1 -0
  770. package/dist/helpers/validationHelpers.d.ts +36 -0
  771. package/dist/helpers/validationHelpers.js +44 -0
  772. package/dist/helpers/validationHelpers.js.map +1 -0
  773. package/dist/hooks/useAnchoredFloating.d.ts +22 -0
  774. package/dist/hooks/useAnchoredFloating.js +59 -0
  775. package/dist/hooks/useAnchoredFloating.js.map +1 -0
  776. package/dist/hooks/useBreakpoint.d.ts +16 -0
  777. package/dist/hooks/useBreakpoint.js +47 -0
  778. package/dist/hooks/useBreakpoint.js.map +1 -0
  779. package/dist/hooks/useDebounce.d.ts +8 -0
  780. package/dist/hooks/useDebounce.js +36 -0
  781. package/dist/hooks/useDebounce.js.map +1 -0
  782. package/dist/hooks/useFileAttachments.d.ts +43 -0
  783. package/dist/hooks/useFileAttachments.js +158 -0
  784. package/dist/hooks/useFileAttachments.js.map +1 -0
  785. package/dist/hooks/useHoverCapable.d.ts +6 -0
  786. package/dist/hooks/useHoverCapable.js +28 -0
  787. package/dist/hooks/useHoverCapable.js.map +1 -0
  788. package/dist/hooks/useInlineEditor.d.ts +5 -0
  789. package/dist/hooks/useInlineEditor.js +42 -0
  790. package/dist/hooks/useInlineEditor.js.map +1 -0
  791. package/dist/hooks/useMobile.d.ts +7 -0
  792. package/dist/hooks/useMobile.js +8 -0
  793. package/dist/hooks/useMobile.js.map +1 -0
  794. package/dist/hooks/useNotification.d.ts +38 -0
  795. package/dist/hooks/useNotification.js +39 -0
  796. package/dist/hooks/useNotification.js.map +1 -0
  797. package/dist/hooks/useResolvedTheme.d.ts +7 -0
  798. package/dist/hooks/useResolvedTheme.js +15 -0
  799. package/dist/hooks/useResolvedTheme.js.map +1 -0
  800. package/dist/hooks/useThemeSkin.d.ts +7 -0
  801. package/dist/hooks/useThemeSkin.js +19 -0
  802. package/dist/hooks/useThemeSkin.js.map +1 -0
  803. package/dist/hooks/useVoiceTranscription.d.ts +29 -0
  804. package/dist/hooks/useVoiceTranscription.js +208 -0
  805. package/dist/hooks/useVoiceTranscription.js.map +1 -0
  806. package/dist/index.d.ts +63 -0
  807. package/dist/index.js +157 -0
  808. package/dist/index.js.map +1 -0
  809. package/dist/interfaces/IFileAttachment.d.ts +18 -0
  810. package/dist/interfaces/IFileAttachment.js +2 -0
  811. package/dist/interfaces/IFileAttachment.js.map +1 -0
  812. package/dist/interfaces/IFilterOption.d.ts +12 -0
  813. package/dist/interfaces/IFilterOption.js +2 -0
  814. package/dist/interfaces/IFilterOption.js.map +1 -0
  815. package/dist/locales/en/ui.json.d.ts +682 -0
  816. package/dist/locales/en/ui.json.js +120 -0
  817. package/dist/locales/en/ui.json.js.map +1 -0
  818. package/dist/locales/index.d.ts +1362 -0
  819. package/dist/locales/index.js +7 -0
  820. package/dist/locales/index.js.map +1 -0
  821. package/dist/locales/pt/ui.json.d.ts +682 -0
  822. package/dist/locales/pt/ui.json.js +120 -0
  823. package/dist/locales/pt/ui.json.js.map +1 -0
  824. package/dist/motion/index.d.ts +2 -0
  825. package/dist/motion/index.js +17 -0
  826. package/dist/motion/index.js.map +1 -0
  827. package/dist/motion/motionPresets.d.ts +44 -0
  828. package/dist/motion/motionPresets.js +67 -0
  829. package/dist/motion/motionPresets.js.map +1 -0
  830. package/dist/motion/motionTokens.d.ts +40 -0
  831. package/dist/motion/motionTokens.js +29 -0
  832. package/dist/motion/motionTokens.js.map +1 -0
  833. package/package.json +245 -0
  834. package/src/assets/fonts/LICENSE-Inter.txt +92 -0
  835. package/src/assets/fonts/LICENSE-MaterialSymbols.txt +202 -0
  836. package/src/assets/fonts/LICENSE-Virgil.txt +45 -0
  837. package/src/assets/fonts/inter-latin-ext.woff2 +0 -0
  838. package/src/assets/fonts/inter-latin.woff2 +0 -0
  839. package/src/assets/fonts/material-symbols-outlined.woff2 +0 -0
  840. package/src/assets/fonts/virgil.woff2 +0 -0
  841. package/src/assets/styles/base.css +585 -0
  842. package/src/assets/styles/index.css +1 -0
  843. package/src/assets/styles/theme.css +453 -0
  844. package/tailwind-plugins/glass.js +162 -0
  845. package/tailwind.preset.js +392 -0
@@ -0,0 +1,298 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { useTranslation } from "react-i18next";
4
+ import ControlledButton from "../../Form/ControlledButton.js";
5
+ import ControlledMenu from "../ControlledMenu.js";
6
+ import ControlledPopover from "../ControlledPopover.js";
7
+ import ControlledTooltip from "../ControlledTooltip.js";
8
+ import { MaterialSymbol } from "../MaterialSymbol/index.js";
9
+ import { mergeClasses } from "../../../helpers/mergeClasses.js";
10
+ import { FLOW_ANNOTATION_SWATCH_CLASS } from "./FlowAnnotationNode.js";
11
+ import { FLOW_ANNOTATION_TONES, FLOW_ANNOTATION_STROKES, FLOW_ANNOTATION_STROKE_WIDTH } from "./flowAnnotations.js";
12
+ const TEXT_TOOL = "text";
13
+ const FLOW_TOOL_ICON = {
14
+ select: "arrow_selector_tool",
15
+ drawing: "edit",
16
+ line: "pen_size_2",
17
+ arrow: "north_east",
18
+ rectangle: "check_box_outline_blank",
19
+ ellipse: "radio_button_unchecked",
20
+ step: "counter_1",
21
+ [TEXT_TOOL]: "title"
22
+ };
23
+ const FLOW_TOOL_SHORTCUT = {
24
+ select: "V",
25
+ drawing: "P",
26
+ line: "L",
27
+ arrow: "A",
28
+ rectangle: "R",
29
+ ellipse: "O",
30
+ [TEXT_TOOL]: "T"
31
+ };
32
+ const SHAPE_TOOLS = ["line", "arrow", "rectangle", "ellipse", "step"];
33
+ const ICON_BUTTON_CLASS = "interactive flex h-8 items-center justify-center gap-x-0.5 rounded-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-40";
34
+ const toolButtonClass = (active) => mergeClasses(
35
+ ICON_BUTTON_CLASS,
36
+ "min-w-8 px-1.5",
37
+ active ? "bg-brand-soft text-brand-emphasis" : "text-foreground-muted hover:bg-muted hover:text-foreground"
38
+ );
39
+ const Divider = () => /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "mx-0.5 h-5 w-px shrink-0 bg-border" });
40
+ const CHOICE_CLASS = "interactive flex w-full items-center gap-x-2.5 rounded-lg px-2.5 py-1.5 text-sm text-foreground-muted hover:bg-muted hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring";
41
+ const FlowAnnotationToolbar = ({
42
+ tool,
43
+ shapeTool,
44
+ onToolChange,
45
+ tone,
46
+ onToneChange,
47
+ stroke,
48
+ onStrokeChange,
49
+ canUndo,
50
+ canRedo,
51
+ onUndo,
52
+ onRedo,
53
+ canDelete,
54
+ onDelete,
55
+ onClose
56
+ }) => {
57
+ const { t } = useTranslation("ui");
58
+ const [colorOpen, setColorOpen] = useState(false);
59
+ const [strokeOpen, setStrokeOpen] = useState(false);
60
+ const toolLabels = {
61
+ select: t("flow.annotations.tools.select"),
62
+ drawing: t("flow.annotations.tools.drawing"),
63
+ line: t("flow.annotations.tools.line"),
64
+ arrow: t("flow.annotations.tools.arrow"),
65
+ rectangle: t("flow.annotations.tools.rectangle"),
66
+ ellipse: t("flow.annotations.tools.ellipse"),
67
+ step: t("flow.annotations.tools.step"),
68
+ [TEXT_TOOL]: t("flow.annotations.tools.text")
69
+ };
70
+ const toneLabels = {
71
+ danger: t("flow.annotations.tones.danger"),
72
+ warning: t("flow.annotations.tones.warning"),
73
+ success: t("flow.annotations.tones.success"),
74
+ info: t("flow.annotations.tones.info"),
75
+ brand: t("flow.annotations.tones.brand"),
76
+ neutral: t("flow.annotations.tones.neutral")
77
+ };
78
+ const strokeLabels = {
79
+ thin: t("flow.annotations.strokes.thin"),
80
+ medium: t("flow.annotations.strokes.medium"),
81
+ thick: t("flow.annotations.strokes.thick")
82
+ };
83
+ const tooltipOf = (target) => {
84
+ const shortcut = FLOW_TOOL_SHORTCUT[target];
85
+ return shortcut ? t("flow.annotations.tools.withShortcut", { label: toolLabels[target], shortcut }) : toolLabels[target];
86
+ };
87
+ const toolButton = (target) => /* @__PURE__ */ jsx(ControlledTooltip, { content: tooltipOf(target), placement: "top", children: /* @__PURE__ */ jsx(
88
+ ControlledButton,
89
+ {
90
+ "aria-label": toolLabels[target],
91
+ "aria-pressed": tool === target,
92
+ defaultHtmlButton: true,
93
+ onClick: () => onToolChange(target),
94
+ className: toolButtonClass(tool === target),
95
+ children: /* @__PURE__ */ jsx(MaterialSymbol, { icon: FLOW_TOOL_ICON[target], size: 18, "aria-hidden": true })
96
+ }
97
+ ) }, target);
98
+ const isShapeActive = SHAPE_TOOLS.includes(tool);
99
+ return /* @__PURE__ */ jsxs(
100
+ "div",
101
+ {
102
+ role: "toolbar",
103
+ "aria-label": t("flow.annotations.toolbar"),
104
+ className: "flex items-center gap-x-0.5 rounded-xl border border-border bg-surface p-1 shadow-md",
105
+ children: [
106
+ toolButton("select"),
107
+ toolButton("drawing"),
108
+ /* @__PURE__ */ jsx(
109
+ ControlledMenu,
110
+ {
111
+ placement: "top-start",
112
+ triggerTooltip: t("flow.annotations.tools.shapes"),
113
+ items: SHAPE_TOOLS.map((shape) => ({
114
+ key: shape,
115
+ label: toolLabels[shape],
116
+ icon: FLOW_TOOL_ICON[shape],
117
+ onClick: () => onToolChange(shape)
118
+ })),
119
+ trigger: /* @__PURE__ */ jsxs(
120
+ ControlledButton,
121
+ {
122
+ "aria-label": t("flow.annotations.tools.shapes"),
123
+ "aria-pressed": isShapeActive,
124
+ defaultHtmlButton: true,
125
+ className: toolButtonClass(isShapeActive),
126
+ children: [
127
+ /* @__PURE__ */ jsx(MaterialSymbol, { icon: FLOW_TOOL_ICON[shapeTool], size: 18, "aria-hidden": true }),
128
+ /* @__PURE__ */ jsx(MaterialSymbol, { icon: "expand_more", size: 14, "aria-hidden": true })
129
+ ]
130
+ }
131
+ )
132
+ }
133
+ ),
134
+ toolButton(TEXT_TOOL),
135
+ /* @__PURE__ */ jsx(Divider, {}),
136
+ /* @__PURE__ */ jsx(
137
+ ControlledPopover,
138
+ {
139
+ placement: "top",
140
+ open: colorOpen,
141
+ onOpenChange: setColorOpen,
142
+ triggerTooltip: t("flow.annotations.color"),
143
+ contentClassName: "flex items-center gap-x-1 p-1.5",
144
+ trigger: /* @__PURE__ */ jsxs(
145
+ ControlledButton,
146
+ {
147
+ "aria-label": t("flow.annotations.color"),
148
+ defaultHtmlButton: true,
149
+ className: mergeClasses(toolButtonClass(false), "px-1.5"),
150
+ children: [
151
+ /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: mergeClasses("size-4 rounded-full", FLOW_ANNOTATION_SWATCH_CLASS[tone]) }),
152
+ /* @__PURE__ */ jsx(MaterialSymbol, { icon: "expand_more", size: 14, "aria-hidden": true })
153
+ ]
154
+ }
155
+ ),
156
+ children: FLOW_ANNOTATION_TONES.map((option) => /* @__PURE__ */ jsx(ControlledTooltip, { content: toneLabels[option], placement: "top", children: /* @__PURE__ */ jsx(
157
+ ControlledButton,
158
+ {
159
+ "aria-label": toneLabels[option],
160
+ "aria-pressed": tone === option,
161
+ defaultHtmlButton: true,
162
+ onClick: () => {
163
+ onToneChange(option);
164
+ setColorOpen(false);
165
+ },
166
+ className: mergeClasses(
167
+ "interactive flex size-8 items-center justify-center rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
168
+ tone === option ? "bg-muted-active" : "hover:bg-muted"
169
+ ),
170
+ children: /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: mergeClasses("size-5 rounded-full", FLOW_ANNOTATION_SWATCH_CLASS[option]) })
171
+ }
172
+ ) }, option))
173
+ }
174
+ ),
175
+ /* @__PURE__ */ jsx(
176
+ ControlledPopover,
177
+ {
178
+ placement: "top",
179
+ open: strokeOpen,
180
+ onOpenChange: setStrokeOpen,
181
+ triggerTooltip: t("flow.annotations.stroke"),
182
+ contentClassName: "flex w-40 flex-col p-1",
183
+ trigger: /* @__PURE__ */ jsxs(
184
+ ControlledButton,
185
+ {
186
+ "aria-label": t("flow.annotations.stroke"),
187
+ defaultHtmlButton: true,
188
+ className: mergeClasses(toolButtonClass(false), "px-1.5"),
189
+ children: [
190
+ /* @__PURE__ */ jsx(
191
+ "span",
192
+ {
193
+ "aria-hidden": true,
194
+ className: "w-5 rounded-full bg-current",
195
+ style: { height: FLOW_ANNOTATION_STROKE_WIDTH[stroke] }
196
+ }
197
+ ),
198
+ /* @__PURE__ */ jsx(MaterialSymbol, { icon: "expand_more", size: 14, "aria-hidden": true })
199
+ ]
200
+ }
201
+ ),
202
+ children: FLOW_ANNOTATION_STROKES.map((option) => /* @__PURE__ */ jsxs(
203
+ ControlledButton,
204
+ {
205
+ "aria-pressed": stroke === option,
206
+ defaultHtmlButton: true,
207
+ onClick: () => {
208
+ onStrokeChange(option);
209
+ setStrokeOpen(false);
210
+ },
211
+ className: mergeClasses(CHOICE_CLASS, stroke === option && "bg-muted text-foreground"),
212
+ children: [
213
+ /* @__PURE__ */ jsx(
214
+ "span",
215
+ {
216
+ "aria-hidden": true,
217
+ className: "w-6 shrink-0 rounded-full bg-current",
218
+ style: { height: FLOW_ANNOTATION_STROKE_WIDTH[option] }
219
+ }
220
+ ),
221
+ /* @__PURE__ */ jsx("span", { children: strokeLabels[option] })
222
+ ]
223
+ },
224
+ option
225
+ ))
226
+ }
227
+ ),
228
+ /* @__PURE__ */ jsx(Divider, {}),
229
+ /* @__PURE__ */ jsx(ControlledTooltip, { content: t("flow.controls.undo"), placement: "top", children: /* @__PURE__ */ jsx(
230
+ ControlledButton,
231
+ {
232
+ "aria-label": t("flow.controls.undo"),
233
+ defaultHtmlButton: true,
234
+ disabled: !canUndo,
235
+ onClick: onUndo,
236
+ className: toolButtonClass(false),
237
+ children: /* @__PURE__ */ jsx(MaterialSymbol, { icon: "undo", size: 18, "aria-hidden": true })
238
+ }
239
+ ) }),
240
+ /* @__PURE__ */ jsx(ControlledTooltip, { content: t("flow.controls.redo"), placement: "top", children: /* @__PURE__ */ jsx(
241
+ ControlledButton,
242
+ {
243
+ "aria-label": t("flow.controls.redo"),
244
+ defaultHtmlButton: true,
245
+ disabled: !canRedo,
246
+ onClick: onRedo,
247
+ className: toolButtonClass(false),
248
+ children: /* @__PURE__ */ jsx(MaterialSymbol, { icon: "redo", size: 18, "aria-hidden": true })
249
+ }
250
+ ) }),
251
+ /* @__PURE__ */ jsx(ControlledTooltip, { content: t("flow.annotations.deleteSelection"), placement: "top", children: /* @__PURE__ */ jsx(
252
+ ControlledButton,
253
+ {
254
+ "aria-label": t("flow.annotations.deleteSelection"),
255
+ defaultHtmlButton: true,
256
+ disabled: !canDelete,
257
+ onClick: onDelete,
258
+ className: toolButtonClass(false),
259
+ children: /* @__PURE__ */ jsx(MaterialSymbol, { icon: "delete", size: 18, "aria-hidden": true })
260
+ }
261
+ ) }),
262
+ /* @__PURE__ */ jsx(Divider, {}),
263
+ /* @__PURE__ */ jsx(ControlledTooltip, { content: t("flow.annotations.close"), placement: "top", children: /* @__PURE__ */ jsx(
264
+ ControlledButton,
265
+ {
266
+ "aria-label": t("flow.annotations.close"),
267
+ defaultHtmlButton: true,
268
+ onClick: onClose,
269
+ className: toolButtonClass(false),
270
+ children: /* @__PURE__ */ jsx(MaterialSymbol, { icon: "close", size: 18, "aria-hidden": true })
271
+ }
272
+ ) })
273
+ ]
274
+ }
275
+ );
276
+ };
277
+ const FlowAnnotationLauncher = ({ onOpen }) => {
278
+ const { t } = useTranslation("ui");
279
+ return /* @__PURE__ */ jsxs(
280
+ ControlledButton,
281
+ {
282
+ defaultHtmlButton: true,
283
+ onClick: onOpen,
284
+ className: "interactive flex h-9 items-center gap-x-1.5 rounded-xl border border-border bg-surface px-3 text-sm font-medium text-foreground-muted shadow-md hover:bg-muted hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
285
+ children: [
286
+ /* @__PURE__ */ jsx(MaterialSymbol, { icon: "edit", size: 18, "aria-hidden": true }),
287
+ /* @__PURE__ */ jsx("span", { children: t("flow.annotations.open") })
288
+ ]
289
+ }
290
+ );
291
+ };
292
+ export {
293
+ FLOW_TOOL_ICON,
294
+ FLOW_TOOL_SHORTCUT,
295
+ FlowAnnotationLauncher,
296
+ FlowAnnotationToolbar as default
297
+ };
298
+ //# sourceMappingURL=FlowAnnotationToolbar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlowAnnotationToolbar.js","sources":["../../../../src/components/UI/Flow/FlowAnnotationToolbar.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport ControlledButton from '@/components/Form/ControlledButton';\nimport ControlledMenu from '@/components/UI/ControlledMenu';\nimport ControlledPopover from '@/components/UI/ControlledPopover';\nimport ControlledTooltip from '@/components/UI/ControlledTooltip';\nimport { MaterialSymbol, type SymbolCodepoints } from '@/components/UI/MaterialSymbol';\nimport { mergeClasses } from '@/helpers/mergeClasses';\n\nimport { FLOW_ANNOTATION_SWATCH_CLASS } from './FlowAnnotationNode';\nimport { FLOW_ANNOTATION_STROKE_WIDTH, FLOW_ANNOTATION_STROKES, FLOW_ANNOTATION_TONES } from './flowAnnotations';\nimport type { TFlowAnnotationStroke, TFlowAnnotationTone, TFlowCanvasTool, TFlowShapeTool } from './flowTypes';\n\ninterface IFlowAnnotationToolbarProps {\n tool: TFlowCanvasTool;\n /** The shape the shape button draws: the last one picked in its menu. */\n shapeTool: TFlowShapeTool;\n onToolChange: (tool: TFlowCanvasTool) => void;\n tone: TFlowAnnotationTone;\n onToneChange: (tone: TFlowAnnotationTone) => void;\n stroke: TFlowAnnotationStroke;\n onStrokeChange: (stroke: TFlowAnnotationStroke) => void;\n canUndo: boolean;\n canRedo: boolean;\n onUndo: () => void;\n onRedo: () => void;\n canDelete: boolean;\n onDelete: () => void;\n onClose: () => void;\n}\n\n// The text tool is keyed by a constant: a literal `text:` key reads as copy to the i18n lint.\nconst TEXT_TOOL: TFlowCanvasTool = 'text';\n\nexport const FLOW_TOOL_ICON: Record<TFlowCanvasTool, SymbolCodepoints> = {\n select: 'arrow_selector_tool',\n drawing: 'edit',\n line: 'pen_size_2',\n arrow: 'north_east',\n rectangle: 'check_box_outline_blank',\n ellipse: 'radio_button_unchecked',\n step: 'counter_1',\n [TEXT_TOOL]: 'title',\n};\n\n/** Single keys, as in Figma and Excalidraw. */\nexport const FLOW_TOOL_SHORTCUT: Partial<Record<TFlowCanvasTool, string>> = {\n select: 'V',\n drawing: 'P',\n line: 'L',\n arrow: 'A',\n rectangle: 'R',\n ellipse: 'O',\n [TEXT_TOOL]: 'T',\n};\n\nconst SHAPE_TOOLS: Array<TFlowShapeTool> = ['line', 'arrow', 'rectangle', 'ellipse', 'step'];\n\nconst ICON_BUTTON_CLASS =\n 'interactive flex h-8 items-center justify-center gap-x-0.5 rounded-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-40';\n\nconst toolButtonClass = (active: boolean): string =>\n mergeClasses(\n ICON_BUTTON_CLASS,\n 'min-w-8 px-1.5',\n active ? 'bg-brand-soft text-brand-emphasis' : 'text-foreground-muted hover:bg-muted hover:text-foreground',\n );\n\nconst Divider: React.FC = () => <span aria-hidden className=\"mx-0.5 h-5 w-px shrink-0 bg-border\" />;\n\nconst CHOICE_CLASS =\n 'interactive flex w-full items-center gap-x-2.5 rounded-lg px-2.5 py-1.5 text-sm text-foreground-muted hover:bg-muted hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring';\n\n/**\n * The annotation toolbar, laid out like the annotation bar of a screenshot tool: what to draw, its\n * colour and weight, history, delete, and close.\n */\nconst FlowAnnotationToolbar: React.FC<IFlowAnnotationToolbarProps> = ({\n tool,\n shapeTool,\n onToolChange,\n tone,\n onToneChange,\n stroke,\n onStrokeChange,\n canUndo,\n canRedo,\n onUndo,\n onRedo,\n canDelete,\n onDelete,\n onClose,\n}) => {\n const { t } = useTranslation('ui');\n const [colorOpen, setColorOpen] = useState(false);\n const [strokeOpen, setStrokeOpen] = useState(false);\n\n const toolLabels: Record<TFlowCanvasTool, string> = {\n select: t('flow.annotations.tools.select'),\n drawing: t('flow.annotations.tools.drawing'),\n line: t('flow.annotations.tools.line'),\n arrow: t('flow.annotations.tools.arrow'),\n rectangle: t('flow.annotations.tools.rectangle'),\n ellipse: t('flow.annotations.tools.ellipse'),\n step: t('flow.annotations.tools.step'),\n [TEXT_TOOL]: t('flow.annotations.tools.text'),\n };\n const toneLabels: Record<TFlowAnnotationTone, string> = {\n danger: t('flow.annotations.tones.danger'),\n warning: t('flow.annotations.tones.warning'),\n success: t('flow.annotations.tones.success'),\n info: t('flow.annotations.tones.info'),\n brand: t('flow.annotations.tones.brand'),\n neutral: t('flow.annotations.tones.neutral'),\n };\n const strokeLabels: Record<TFlowAnnotationStroke, string> = {\n thin: t('flow.annotations.strokes.thin'),\n medium: t('flow.annotations.strokes.medium'),\n thick: t('flow.annotations.strokes.thick'),\n };\n const tooltipOf = (target: TFlowCanvasTool): string => {\n const shortcut = FLOW_TOOL_SHORTCUT[target];\n return shortcut\n ? t('flow.annotations.tools.withShortcut', { label: toolLabels[target], shortcut })\n : toolLabels[target];\n };\n\n const toolButton = (target: TFlowCanvasTool) => (\n <ControlledTooltip key={target} content={tooltipOf(target)} placement=\"top\">\n <ControlledButton\n aria-label={toolLabels[target]}\n aria-pressed={tool === target}\n defaultHtmlButton\n onClick={() => onToolChange(target)}\n className={toolButtonClass(tool === target)}\n >\n <MaterialSymbol icon={FLOW_TOOL_ICON[target]} size={18} aria-hidden />\n </ControlledButton>\n </ControlledTooltip>\n );\n\n const isShapeActive = SHAPE_TOOLS.includes(tool as TFlowShapeTool);\n\n return (\n <div\n role=\"toolbar\"\n aria-label={t('flow.annotations.toolbar')}\n className=\"flex items-center gap-x-0.5 rounded-xl border border-border bg-surface p-1 shadow-md\"\n >\n {toolButton('select')}\n {toolButton('drawing')}\n <ControlledMenu\n placement=\"top-start\"\n triggerTooltip={t('flow.annotations.tools.shapes')}\n items={SHAPE_TOOLS.map((shape) => ({\n key: shape,\n label: toolLabels[shape],\n icon: FLOW_TOOL_ICON[shape],\n onClick: () => onToolChange(shape),\n }))}\n trigger={\n <ControlledButton\n aria-label={t('flow.annotations.tools.shapes')}\n aria-pressed={isShapeActive}\n defaultHtmlButton\n className={toolButtonClass(isShapeActive)}\n >\n <MaterialSymbol icon={FLOW_TOOL_ICON[shapeTool]} size={18} aria-hidden />\n <MaterialSymbol icon=\"expand_more\" size={14} aria-hidden />\n </ControlledButton>\n }\n />\n {toolButton(TEXT_TOOL)}\n\n <Divider />\n\n <ControlledPopover\n placement=\"top\"\n open={colorOpen}\n onOpenChange={setColorOpen}\n triggerTooltip={t('flow.annotations.color')}\n contentClassName=\"flex items-center gap-x-1 p-1.5\"\n trigger={\n <ControlledButton\n aria-label={t('flow.annotations.color')}\n defaultHtmlButton\n className={mergeClasses(toolButtonClass(false), 'px-1.5')}\n >\n <span aria-hidden className={mergeClasses('size-4 rounded-full', FLOW_ANNOTATION_SWATCH_CLASS[tone])} />\n <MaterialSymbol icon=\"expand_more\" size={14} aria-hidden />\n </ControlledButton>\n }\n >\n {FLOW_ANNOTATION_TONES.map((option) => (\n <ControlledTooltip key={option} content={toneLabels[option]} placement=\"top\">\n <ControlledButton\n aria-label={toneLabels[option]}\n aria-pressed={tone === option}\n defaultHtmlButton\n onClick={() => {\n onToneChange(option);\n setColorOpen(false);\n }}\n className={mergeClasses(\n 'interactive flex size-8 items-center justify-center rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring',\n tone === option ? 'bg-muted-active' : 'hover:bg-muted',\n )}\n >\n <span aria-hidden className={mergeClasses('size-5 rounded-full', FLOW_ANNOTATION_SWATCH_CLASS[option])} />\n </ControlledButton>\n </ControlledTooltip>\n ))}\n </ControlledPopover>\n\n <ControlledPopover\n placement=\"top\"\n open={strokeOpen}\n onOpenChange={setStrokeOpen}\n triggerTooltip={t('flow.annotations.stroke')}\n contentClassName=\"flex w-40 flex-col p-1\"\n trigger={\n <ControlledButton\n aria-label={t('flow.annotations.stroke')}\n defaultHtmlButton\n className={mergeClasses(toolButtonClass(false), 'px-1.5')}\n >\n <span\n aria-hidden\n className=\"w-5 rounded-full bg-current\"\n style={{ height: FLOW_ANNOTATION_STROKE_WIDTH[stroke] }}\n />\n <MaterialSymbol icon=\"expand_more\" size={14} aria-hidden />\n </ControlledButton>\n }\n >\n {FLOW_ANNOTATION_STROKES.map((option) => (\n <ControlledButton\n key={option}\n aria-pressed={stroke === option}\n defaultHtmlButton\n onClick={() => {\n onStrokeChange(option);\n setStrokeOpen(false);\n }}\n className={mergeClasses(CHOICE_CLASS, stroke === option && 'bg-muted text-foreground')}\n >\n <span\n aria-hidden\n className=\"w-6 shrink-0 rounded-full bg-current\"\n style={{ height: FLOW_ANNOTATION_STROKE_WIDTH[option] }}\n />\n <span>{strokeLabels[option]}</span>\n </ControlledButton>\n ))}\n </ControlledPopover>\n\n <Divider />\n\n <ControlledTooltip content={t('flow.controls.undo')} placement=\"top\">\n <ControlledButton\n aria-label={t('flow.controls.undo')}\n defaultHtmlButton\n disabled={!canUndo}\n onClick={onUndo}\n className={toolButtonClass(false)}\n >\n <MaterialSymbol icon=\"undo\" size={18} aria-hidden />\n </ControlledButton>\n </ControlledTooltip>\n <ControlledTooltip content={t('flow.controls.redo')} placement=\"top\">\n <ControlledButton\n aria-label={t('flow.controls.redo')}\n defaultHtmlButton\n disabled={!canRedo}\n onClick={onRedo}\n className={toolButtonClass(false)}\n >\n <MaterialSymbol icon=\"redo\" size={18} aria-hidden />\n </ControlledButton>\n </ControlledTooltip>\n <ControlledTooltip content={t('flow.annotations.deleteSelection')} placement=\"top\">\n <ControlledButton\n aria-label={t('flow.annotations.deleteSelection')}\n defaultHtmlButton\n disabled={!canDelete}\n onClick={onDelete}\n className={toolButtonClass(false)}\n >\n <MaterialSymbol icon=\"delete\" size={18} aria-hidden />\n </ControlledButton>\n </ControlledTooltip>\n\n <Divider />\n\n <ControlledTooltip content={t('flow.annotations.close')} placement=\"top\">\n <ControlledButton\n aria-label={t('flow.annotations.close')}\n defaultHtmlButton\n onClick={onClose}\n className={toolButtonClass(false)}\n >\n <MaterialSymbol icon=\"close\" size={18} aria-hidden />\n </ControlledButton>\n </ControlledTooltip>\n </div>\n );\n};\n\n/** What the closed toolbar leaves on the canvas: one button that opens it again. */\nexport const FlowAnnotationLauncher: React.FC<{ onOpen: () => void }> = ({ onOpen }) => {\n const { t } = useTranslation('ui');\n return (\n <ControlledButton\n defaultHtmlButton\n onClick={onOpen}\n className=\"interactive flex h-9 items-center gap-x-1.5 rounded-xl border border-border bg-surface px-3 text-sm font-medium text-foreground-muted shadow-md hover:bg-muted hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n >\n <MaterialSymbol icon=\"edit\" size={18} aria-hidden />\n <span>{t('flow.annotations.open')}</span>\n </ControlledButton>\n );\n};\n\nexport default FlowAnnotationToolbar;\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { ReactNode } from 'react';
2
+ import { SymbolCodepoints } from '../MaterialSymbol';
3
+ import { Node, NodeProps } from '@xyflow/react';
4
+ import { TFlowIssueSeverity, TFlowPortId, TFlowRunStepStatus } from './flowTypes';
5
+ export declare const FLOW_INPUT_HANDLE_ID = "in";
6
+ export interface IFlowAddableBlock {
7
+ type: string;
8
+ label: string;
9
+ icon: SymbolCodepoints;
10
+ }
11
+ export interface IFlowBlockNodeData extends Record<string, unknown> {
12
+ icon: SymbolCodepoints;
13
+ title: string;
14
+ categoryLabel: string;
15
+ summary?: ReactNode;
16
+ hasInput: boolean;
17
+ outputs: Array<TFlowPortId>;
18
+ /** Ports already wired: their edge carries the label, so the port does not repeat it. */
19
+ connectedPorts: Array<TFlowPortId>;
20
+ portLabels: Record<TFlowPortId, string>;
21
+ /** What a free port can grow into; empty in a read-only canvas. */
22
+ addableBlocks: Array<IFlowAddableBlock>;
23
+ onAddFromPort?: (port: TFlowPortId, type: string) => void;
24
+ disabled?: boolean;
25
+ issueSeverity?: TFlowIssueSeverity;
26
+ issueCount: number;
27
+ runStatus?: TFlowRunStepStatus;
28
+ }
29
+ export type TFlowBlockNode = Node<IFlowBlockNodeData, 'flowBlock'>;
30
+ /**
31
+ * Input on the left edge, output ports spread along the right edge; a lone `next` port needs no
32
+ * label. A free port shows a "+" that adds the next block already wired to it.
33
+ */
34
+ declare const FlowBlockNode: React.FC<NodeProps<TFlowBlockNode>>;
35
+ export default FlowBlockNode;
@@ -0,0 +1,91 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { useEffect } from "react";
3
+ import { useTranslation } from "react-i18next";
4
+ import ControlledButton from "../../Form/ControlledButton.js";
5
+ import ControlledMenu from "../ControlledMenu.js";
6
+ import { MaterialSymbol } from "../MaterialSymbol/index.js";
7
+ import { useUpdateNodeInternals, Handle, Position } from "@xyflow/react";
8
+ import FlowNodeShell from "./FlowNodeShell.js";
9
+ const FLOW_INPUT_HANDLE_ID = "in";
10
+ const portTop = (index, count) => `${(index + 1) / (count + 1) * 100}%`;
11
+ const FlowBlockNode = ({ id, data, selected }) => {
12
+ const { t } = useTranslation("ui");
13
+ const updateNodeInternals = useUpdateNodeInternals();
14
+ const outputs = Array.isArray(data.outputs) ? data.outputs : [];
15
+ const handleSignature = `${data.hasInput ? FLOW_INPUT_HANDLE_ID : ""}|${outputs.join(",")}`;
16
+ useEffect(() => {
17
+ updateNodeInternals(id);
18
+ }, [id, handleSignature, updateNodeInternals]);
19
+ const connectedPorts = Array.isArray(data.connectedPorts) ? data.connectedPorts : [];
20
+ const addableBlocks = Array.isArray(data.addableBlocks) ? data.addableBlocks : [];
21
+ const showPortLabels = !(outputs.length === 1 && outputs[0] === "next");
22
+ const canAdd = Boolean(data.onAddFromPort) && addableBlocks.length > 0;
23
+ return /* @__PURE__ */ jsxs(
24
+ FlowNodeShell,
25
+ {
26
+ icon: data.icon,
27
+ title: data.title,
28
+ categoryLabel: data.categoryLabel,
29
+ summary: data.summary,
30
+ selected,
31
+ disabled: data.disabled,
32
+ issueSeverity: data.issueSeverity,
33
+ issueCount: data.issueCount,
34
+ runStatus: data.runStatus,
35
+ className: showPortLabels ? "pr-12" : void 0,
36
+ children: [
37
+ data.hasInput && /* @__PURE__ */ jsx(Handle, { id: FLOW_INPUT_HANDLE_ID, type: "target", position: Position.Left, className: "umode-flow-handle" }),
38
+ outputs.map((port, index) => /* @__PURE__ */ jsx(
39
+ Handle,
40
+ {
41
+ id: port,
42
+ type: "source",
43
+ position: Position.Right,
44
+ className: "umode-flow-handle",
45
+ "data-port": port,
46
+ style: { top: portTop(index, outputs.length) },
47
+ children: showPortLabels && !connectedPorts.includes(port) && /* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 whitespace-nowrap text-xxs font-semibold text-foreground-subtle", children: data.portLabels[port] })
48
+ },
49
+ port
50
+ )),
51
+ canAdd && outputs.map(
52
+ (port, index) => connectedPorts.includes(port) ? null : /* @__PURE__ */ jsx(
53
+ "div",
54
+ {
55
+ className: "nodrag nopan absolute -right-10 -translate-y-1/2",
56
+ style: { top: portTop(index, outputs.length) },
57
+ children: /* @__PURE__ */ jsx(
58
+ ControlledMenu,
59
+ {
60
+ placement: "right-start",
61
+ triggerTooltip: t("flow.node.addBlock"),
62
+ items: addableBlocks.map((block) => ({
63
+ key: block.type,
64
+ label: block.label,
65
+ icon: block.icon,
66
+ onClick: () => data.onAddFromPort?.(port, block.type)
67
+ })),
68
+ trigger: /* @__PURE__ */ jsx(
69
+ ControlledButton,
70
+ {
71
+ "aria-label": t("flow.node.addBlock"),
72
+ defaultHtmlButton: true,
73
+ className: "interactive flex size-6 items-center justify-center rounded-full border border-border-emphasis bg-surface text-foreground-muted shadow-sm hover:border-brand-border hover:bg-brand-soft hover:text-brand-emphasis focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
74
+ children: /* @__PURE__ */ jsx(MaterialSymbol, { icon: "add", size: 16, "aria-hidden": true })
75
+ }
76
+ )
77
+ }
78
+ )
79
+ },
80
+ `add|${port}`
81
+ )
82
+ )
83
+ ]
84
+ }
85
+ );
86
+ };
87
+ export {
88
+ FLOW_INPUT_HANDLE_ID,
89
+ FlowBlockNode as default
90
+ };
91
+ //# sourceMappingURL=FlowBlockNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlowBlockNode.js","sources":["../../../../src/components/UI/Flow/FlowBlockNode.tsx"],"sourcesContent":["import { ReactNode, useEffect } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport ControlledButton from '@/components/Form/ControlledButton';\nimport ControlledMenu from '@/components/UI/ControlledMenu';\nimport { MaterialSymbol, type SymbolCodepoints } from '@/components/UI/MaterialSymbol';\nimport { Handle, type Node, type NodeProps, Position, useUpdateNodeInternals } from '@xyflow/react';\n\nimport FlowNodeShell from './FlowNodeShell';\nimport type { TFlowIssueSeverity, TFlowPortId, TFlowRunStepStatus } from './flowTypes';\n\nexport const FLOW_INPUT_HANDLE_ID = 'in';\n\nexport interface IFlowAddableBlock {\n type: string;\n label: string;\n icon: SymbolCodepoints;\n}\n\nexport interface IFlowBlockNodeData extends Record<string, unknown> {\n icon: SymbolCodepoints;\n title: string;\n categoryLabel: string;\n summary?: ReactNode;\n hasInput: boolean;\n outputs: Array<TFlowPortId>;\n /** Ports already wired: their edge carries the label, so the port does not repeat it. */\n connectedPorts: Array<TFlowPortId>;\n portLabels: Record<TFlowPortId, string>;\n /** What a free port can grow into; empty in a read-only canvas. */\n addableBlocks: Array<IFlowAddableBlock>;\n onAddFromPort?: (port: TFlowPortId, type: string) => void;\n disabled?: boolean;\n issueSeverity?: TFlowIssueSeverity;\n issueCount: number;\n runStatus?: TFlowRunStepStatus;\n}\n\nexport type TFlowBlockNode = Node<IFlowBlockNodeData, 'flowBlock'>;\n\nconst portTop = (index: number, count: number): string => `${((index + 1) / (count + 1)) * 100}%`;\n\n/**\n * Input on the left edge, output ports spread along the right edge; a lone `next` port needs no\n * label. A free port shows a \"+\" that adds the next block already wired to it.\n */\nconst FlowBlockNode: React.FC<NodeProps<TFlowBlockNode>> = ({ id, data, selected }) => {\n const { t } = useTranslation('ui');\n const updateNodeInternals = useUpdateNodeInternals();\n const outputs = Array.isArray(data.outputs) ? data.outputs : [];\n const handleSignature = `${data.hasInput ? FLOW_INPUT_HANDLE_ID : ''}|${outputs.join(',')}`;\n\n // React Flow measures handle positions only when the node is resized. An edge whose handle was\n // not in that measurement is never drawn, so remeasure after mount and whenever the ports change.\n useEffect(() => {\n updateNodeInternals(id);\n }, [id, handleSignature, updateNodeInternals]);\n const connectedPorts = Array.isArray(data.connectedPorts) ? data.connectedPorts : [];\n const addableBlocks = Array.isArray(data.addableBlocks) ? data.addableBlocks : [];\n const showPortLabels = !(outputs.length === 1 && outputs[0] === 'next');\n const canAdd = Boolean(data.onAddFromPort) && addableBlocks.length > 0;\n\n return (\n <FlowNodeShell\n icon={data.icon}\n title={data.title}\n categoryLabel={data.categoryLabel}\n summary={data.summary}\n selected={selected}\n disabled={data.disabled}\n issueSeverity={data.issueSeverity}\n issueCount={data.issueCount}\n runStatus={data.runStatus}\n className={showPortLabels ? 'pr-12' : undefined}\n >\n {data.hasInput && (\n <Handle id={FLOW_INPUT_HANDLE_ID} type=\"target\" position={Position.Left} className=\"umode-flow-handle\" />\n )}\n {outputs.map((port, index) => (\n <Handle\n key={port}\n id={port}\n type=\"source\"\n position={Position.Right}\n className=\"umode-flow-handle\"\n data-port={port}\n style={{ top: portTop(index, outputs.length) }}\n >\n {showPortLabels && !connectedPorts.includes(port) && (\n <span className=\"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 whitespace-nowrap text-xxs font-semibold text-foreground-subtle\">\n {data.portLabels[port]}\n </span>\n )}\n </Handle>\n ))}\n {canAdd &&\n outputs.map((port, index) =>\n connectedPorts.includes(port) ? null : (\n <div\n key={`add|${port}`}\n className=\"nodrag nopan absolute -right-10 -translate-y-1/2\"\n style={{ top: portTop(index, outputs.length) }}\n >\n <ControlledMenu\n placement=\"right-start\"\n triggerTooltip={t('flow.node.addBlock')}\n items={addableBlocks.map((block) => ({\n key: block.type,\n label: block.label,\n icon: block.icon,\n onClick: () => data.onAddFromPort?.(port, block.type),\n }))}\n trigger={\n <ControlledButton\n aria-label={t('flow.node.addBlock')}\n defaultHtmlButton\n className=\"interactive flex size-6 items-center justify-center rounded-full border border-border-emphasis bg-surface text-foreground-muted shadow-sm hover:border-brand-border hover:bg-brand-soft hover:text-brand-emphasis focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n >\n <MaterialSymbol icon=\"add\" size={16} aria-hidden />\n </ControlledButton>\n }\n />\n </div>\n ),\n )}\n </FlowNodeShell>\n );\n};\n\nexport default FlowBlockNode;\n"],"names":[],"mappings":";;;;;;;;AAWO,MAAM,uBAAuB;AA6BpC,MAAM,UAAU,CAAC,OAAe,UAA0B,IAAK,QAAQ,MAAM,QAAQ,KAAM,GAAG;AAM9F,MAAM,gBAAqD,CAAC,EAAE,IAAI,MAAM,eAAe;AACrF,QAAM,EAAE,EAAA,IAAM,eAAe,IAAI;AACjC,QAAM,sBAAsB,uBAAA;AAC5B,QAAM,UAAU,MAAM,QAAQ,KAAK,OAAO,IAAI,KAAK,UAAU,CAAA;AAC7D,QAAM,kBAAkB,GAAG,KAAK,WAAW,uBAAuB,EAAE,IAAI,QAAQ,KAAK,GAAG,CAAC;AAIzF,YAAU,MAAM;AACd,wBAAoB,EAAE;AAAA,EACxB,GAAG,CAAC,IAAI,iBAAiB,mBAAmB,CAAC;AAC7C,QAAM,iBAAiB,MAAM,QAAQ,KAAK,cAAc,IAAI,KAAK,iBAAiB,CAAA;AAClF,QAAM,gBAAgB,MAAM,QAAQ,KAAK,aAAa,IAAI,KAAK,gBAAgB,CAAA;AAC/E,QAAM,iBAAiB,EAAE,QAAQ,WAAW,KAAK,QAAQ,CAAC,MAAM;AAChE,QAAM,SAAS,QAAQ,KAAK,aAAa,KAAK,cAAc,SAAS;AAErE,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAM,KAAK;AAAA,MACX,OAAO,KAAK;AAAA,MACZ,eAAe,KAAK;AAAA,MACpB,SAAS,KAAK;AAAA,MACd;AAAA,MACA,UAAU,KAAK;AAAA,MACf,eAAe,KAAK;AAAA,MACpB,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,WAAW,iBAAiB,UAAU;AAAA,MAErC,UAAA;AAAA,QAAA,KAAK,YACJ,oBAAC,QAAA,EAAO,IAAI,sBAAsB,MAAK,UAAS,UAAU,SAAS,MAAM,WAAU,oBAAA,CAAoB;AAAA,QAExG,QAAQ,IAAI,CAAC,MAAM,UAClB;AAAA,UAAC;AAAA,UAAA;AAAA,YAEC,IAAI;AAAA,YACJ,MAAK;AAAA,YACL,UAAU,SAAS;AAAA,YACnB,WAAU;AAAA,YACV,aAAW;AAAA,YACX,OAAO,EAAE,KAAK,QAAQ,OAAO,QAAQ,MAAM,EAAA;AAAA,YAE1C,UAAA,kBAAkB,CAAC,eAAe,SAAS,IAAI,KAC9C,oBAAC,QAAA,EAAK,WAAU,iIACb,UAAA,KAAK,WAAW,IAAI,EAAA,CACvB;AAAA,UAAA;AAAA,UAXG;AAAA,QAAA,CAcR;AAAA,QACA,UACC,QAAQ;AAAA,UAAI,CAAC,MAAM,UACjB,eAAe,SAAS,IAAI,IAAI,OAC9B;AAAA,YAAC;AAAA,YAAA;AAAA,cAEC,WAAU;AAAA,cACV,OAAO,EAAE,KAAK,QAAQ,OAAO,QAAQ,MAAM,EAAA;AAAA,cAE3C,UAAA;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,WAAU;AAAA,kBACV,gBAAgB,EAAE,oBAAoB;AAAA,kBACtC,OAAO,cAAc,IAAI,CAAC,WAAW;AAAA,oBACnC,KAAK,MAAM;AAAA,oBACX,OAAO,MAAM;AAAA,oBACb,MAAM,MAAM;AAAA,oBACZ,SAAS,MAAM,KAAK,gBAAgB,MAAM,MAAM,IAAI;AAAA,kBAAA,EACpD;AAAA,kBACF,SACE;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,cAAY,EAAE,oBAAoB;AAAA,sBAClC,mBAAiB;AAAA,sBACjB,WAAU;AAAA,sBAEV,8BAAC,gBAAA,EAAe,MAAK,OAAM,MAAM,IAAI,eAAW,KAAA,CAAC;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACnD;AAAA,cAAA;AAAA,YAEJ;AAAA,YAtBK,OAAO,IAAI;AAAA,UAAA;AAAA,QAuBlB;AAAA,MAEJ;AAAA,IAAA;AAAA,EAAA;AAGR;"}
@@ -0,0 +1,23 @@
1
+ import { PanelPosition } from '@xyflow/react';
2
+ import { IFlowIssue, IFlowRunOverlay } from './flowTypes';
3
+ export interface IFlowCanvasProps {
4
+ issues?: Array<IFlowIssue>;
5
+ runOverlay?: IFlowRunOverlay | null;
6
+ readOnly?: boolean;
7
+ /** Accessible name of the canvas region, from `t()`. Defaults to the library label. */
8
+ ariaLabel?: string;
9
+ className?: string;
10
+ /** Where the zoom and history controls sit. */
11
+ controlsPosition?: PanelPosition;
12
+ /** The dot grid behind the blocks. Blocks still snap to the grid when it is hidden. */
13
+ background?: 'dots' | 'none';
14
+ /** Shows the drawing toolbar (pen, shapes, text). Annotations already in the graph render either way. */
15
+ annotationTools?: boolean;
16
+ }
17
+ /**
18
+ * The editing surface. Renders the graph held by `FlowEditorProvider` and turns every
19
+ * gesture (drag, connect, select, delete, shortcuts) into a store action, so undo
20
+ * and the dirty flag see all of them.
21
+ */
22
+ declare const FlowCanvas: React.FC<IFlowCanvasProps>;
23
+ export default FlowCanvas;