@cratis/scene.primereact 1.1.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (835) hide show
  1. package/.storybook/preview.tsx +44 -0
  2. package/MenuItem.ts +57 -0
  3. package/PrimeSeverity.ts +17 -0
  4. package/README.md +79 -92
  5. package/TreeNode.ts +68 -0
  6. package/button/ButtonGallery.stories.tsx +1 -1
  7. package/button/PrimeButton.tsx +26 -8
  8. package/button/PrimeButtonGroup.tsx +4 -1
  9. package/button/PrimeSpeedDial.tsx +23 -5
  10. package/button/PrimeSplitButton.tsx +11 -5
  11. package/button/SplitButton.tsx +135 -0
  12. package/button/index.ts +1 -0
  13. package/data/Column.tsx +62 -0
  14. package/data/ColumnDefinition.ts +10 -1
  15. package/data/DataGallery.stories.tsx +0 -5
  16. package/data/Pagination.tsx +82 -0
  17. package/data/PrimeColumn.tsx +17 -7
  18. package/data/PrimeDataTable.tsx +111 -16
  19. package/data/PrimeDataView.tsx +30 -15
  20. package/data/PrimeOrderList.tsx +54 -13
  21. package/data/PrimeOrganizationChart.tsx +28 -8
  22. package/data/PrimePaginator.tsx +16 -14
  23. package/data/PrimePickList.tsx +56 -19
  24. package/data/PrimeTimeline.tsx +49 -14
  25. package/data/PrimeTree.tsx +29 -6
  26. package/data/columnDefinitions.ts +5 -3
  27. package/data/index.ts +1 -2
  28. package/data/primeTreeNodes.ts +68 -0
  29. package/data/selectOptions.ts +29 -0
  30. package/dist/cjs/button/PrimeButton.js +33 -9
  31. package/dist/cjs/button/PrimeButton.js.map +1 -1
  32. package/dist/cjs/button/PrimeButtonGroup.js +4 -1
  33. package/dist/cjs/button/PrimeButtonGroup.js.map +1 -1
  34. package/dist/cjs/button/PrimeSpeedDial.js +33 -4
  35. package/dist/cjs/button/PrimeSpeedDial.js.map +1 -1
  36. package/dist/cjs/button/PrimeSplitButton.js +14 -6
  37. package/dist/cjs/button/PrimeSplitButton.js.map +1 -1
  38. package/dist/cjs/button/SplitButton.js +126 -0
  39. package/dist/cjs/button/SplitButton.js.map +1 -0
  40. package/dist/cjs/data/Column.js +21 -0
  41. package/dist/cjs/data/Column.js.map +1 -0
  42. package/dist/cjs/data/Pagination.js +55 -0
  43. package/dist/cjs/data/Pagination.js.map +1 -0
  44. package/dist/cjs/data/PrimeColumn.js +14 -8
  45. package/dist/cjs/data/PrimeColumn.js.map +1 -1
  46. package/dist/cjs/data/PrimeDataTable.js +121 -16
  47. package/dist/cjs/data/PrimeDataTable.js.map +1 -1
  48. package/dist/cjs/data/PrimeDataView.js +42 -20
  49. package/dist/cjs/data/PrimeDataView.js.map +1 -1
  50. package/dist/cjs/data/PrimeOrderList.js +75 -12
  51. package/dist/cjs/data/PrimeOrderList.js.map +1 -1
  52. package/dist/cjs/data/PrimeOrganizationChart.js +34 -10
  53. package/dist/cjs/data/PrimeOrganizationChart.js.map +1 -1
  54. package/dist/cjs/data/PrimePaginator.js +16 -18
  55. package/dist/cjs/data/PrimePaginator.js.map +1 -1
  56. package/dist/cjs/data/PrimePickList.js +79 -19
  57. package/dist/cjs/data/PrimePickList.js.map +1 -1
  58. package/dist/cjs/data/PrimeTimeline.js +55 -19
  59. package/dist/cjs/data/PrimeTimeline.js.map +1 -1
  60. package/dist/cjs/data/PrimeTree.js +43 -4
  61. package/dist/cjs/data/PrimeTree.js.map +1 -1
  62. package/dist/cjs/data/columnDefinitions.js +5 -3
  63. package/dist/cjs/data/columnDefinitions.js.map +1 -1
  64. package/dist/cjs/data/primeTreeNodes.js +33 -0
  65. package/dist/cjs/data/primeTreeNodes.js.map +1 -0
  66. package/dist/cjs/data/selectOptions.js +22 -0
  67. package/dist/cjs/data/selectOptions.js.map +1 -0
  68. package/dist/cjs/form/PrimeAutoComplete.js +36 -15
  69. package/dist/cjs/form/PrimeAutoComplete.js.map +1 -1
  70. package/dist/cjs/form/PrimeCalendar.js +80 -10
  71. package/dist/cjs/form/PrimeCalendar.js.map +1 -1
  72. package/dist/cjs/form/PrimeCheckbox.js +11 -3
  73. package/dist/cjs/form/PrimeCheckbox.js.map +1 -1
  74. package/dist/cjs/form/PrimeChips.js +41 -7
  75. package/dist/cjs/form/PrimeChips.js.map +1 -1
  76. package/dist/cjs/form/PrimeColorPicker.js +57 -10
  77. package/dist/cjs/form/PrimeColorPicker.js.map +1 -1
  78. package/dist/cjs/form/PrimeDropdown.js +37 -9
  79. package/dist/cjs/form/PrimeDropdown.js.map +1 -1
  80. package/dist/cjs/form/PrimeIconField.js +15 -9
  81. package/dist/cjs/form/PrimeIconField.js.map +1 -1
  82. package/dist/cjs/form/PrimeInputNumber.js +26 -4
  83. package/dist/cjs/form/PrimeInputNumber.js.map +1 -1
  84. package/dist/cjs/form/PrimeInputTextarea.js +6 -4
  85. package/dist/cjs/form/PrimeInputTextarea.js.map +1 -1
  86. package/dist/cjs/form/PrimeKnob.js +13 -3
  87. package/dist/cjs/form/PrimeKnob.js.map +1 -1
  88. package/dist/cjs/form/PrimeListBox.js +11 -5
  89. package/dist/cjs/form/PrimeListBox.js.map +1 -1
  90. package/dist/cjs/form/PrimeMultiSelect.js +43 -8
  91. package/dist/cjs/form/PrimeMultiSelect.js.map +1 -1
  92. package/dist/cjs/form/PrimePassword.js +12 -6
  93. package/dist/cjs/form/PrimePassword.js.map +1 -1
  94. package/dist/cjs/form/PrimeRadioButton.js +13 -3
  95. package/dist/cjs/form/PrimeRadioButton.js.map +1 -1
  96. package/dist/cjs/form/PrimeRating.js +30 -5
  97. package/dist/cjs/form/PrimeRating.js.map +1 -1
  98. package/dist/cjs/form/PrimeSelectButton.js +15 -8
  99. package/dist/cjs/form/PrimeSelectButton.js.map +1 -1
  100. package/dist/cjs/form/PrimeSlider.js +14 -3
  101. package/dist/cjs/form/PrimeSlider.js.map +1 -1
  102. package/dist/cjs/form/PrimeToggleSwitch.js +15 -8
  103. package/dist/cjs/form/PrimeToggleSwitch.js.map +1 -1
  104. package/dist/cjs/form/PrimeTreeSelect.js +17 -8
  105. package/dist/cjs/form/PrimeTreeSelect.js.map +1 -1
  106. package/dist/cjs/form/TreeSelect.js +132 -0
  107. package/dist/cjs/form/TreeSelect.js.map +1 -0
  108. package/dist/cjs/index.js +41 -13
  109. package/dist/cjs/index.js.map +1 -1
  110. package/dist/cjs/media/Image.js +99 -0
  111. package/dist/cjs/media/Image.js.map +1 -0
  112. package/dist/cjs/media/PrimeCarousel.js +50 -16
  113. package/dist/cjs/media/PrimeCarousel.js.map +1 -1
  114. package/dist/cjs/media/PrimeGalleria.js +58 -18
  115. package/dist/cjs/media/PrimeGalleria.js.map +1 -1
  116. package/dist/cjs/media/PrimeImage.js +9 -3
  117. package/dist/cjs/media/PrimeImage.js.map +1 -1
  118. package/dist/cjs/menu/Dock.js +111 -0
  119. package/dist/cjs/menu/Dock.js.map +1 -0
  120. package/dist/cjs/menu/DockPosition.js +29 -0
  121. package/dist/cjs/menu/DockPosition.js.map +1 -0
  122. package/dist/cjs/menu/MegaMenu.js +138 -0
  123. package/dist/cjs/menu/MegaMenu.js.map +1 -0
  124. package/dist/cjs/menu/MenuItemAction.js +54 -0
  125. package/dist/cjs/menu/MenuItemAction.js.map +1 -0
  126. package/dist/cjs/menu/MenuItemContent.js +34 -0
  127. package/dist/cjs/menu/MenuItemContent.js.map +1 -0
  128. package/dist/cjs/menu/Menubar.js +139 -0
  129. package/dist/cjs/menu/Menubar.js.map +1 -0
  130. package/dist/cjs/menu/PanelMenu.js +112 -0
  131. package/dist/cjs/menu/PanelMenu.js.map +1 -0
  132. package/dist/cjs/menu/PrimeBreadcrumb.js +69 -7
  133. package/dist/cjs/menu/PrimeBreadcrumb.js.map +1 -1
  134. package/dist/cjs/menu/PrimeContextMenu.js +36 -12
  135. package/dist/cjs/menu/PrimeContextMenu.js.map +1 -1
  136. package/dist/cjs/menu/PrimeDock.js +35 -8
  137. package/dist/cjs/menu/PrimeDock.js.map +1 -1
  138. package/dist/cjs/menu/PrimeMegaMenu.js +12 -8
  139. package/dist/cjs/menu/PrimeMegaMenu.js.map +1 -1
  140. package/dist/cjs/menu/PrimeMenu.js +58 -2
  141. package/dist/cjs/menu/PrimeMenu.js.map +1 -1
  142. package/dist/cjs/menu/PrimeMenubar.js +10 -3
  143. package/dist/cjs/menu/PrimeMenubar.js.map +1 -1
  144. package/dist/cjs/menu/PrimePanelMenu.js +9 -4
  145. package/dist/cjs/menu/PrimePanelMenu.js.map +1 -1
  146. package/dist/cjs/menu/PrimeSteps.js +16 -10
  147. package/dist/cjs/menu/PrimeSteps.js.map +1 -1
  148. package/dist/cjs/menu/PrimeTabMenu.js +12 -9
  149. package/dist/cjs/menu/PrimeTabMenu.js.map +1 -1
  150. package/dist/cjs/menu/PrimeTieredMenu.js +9 -3
  151. package/dist/cjs/menu/PrimeTieredMenu.js.map +1 -1
  152. package/dist/cjs/menu/Steps.js +74 -0
  153. package/dist/cjs/menu/Steps.js.map +1 -0
  154. package/dist/cjs/menu/TabMenu.js +59 -0
  155. package/dist/cjs/menu/TabMenu.js.map +1 -0
  156. package/dist/cjs/menu/TieredMenu.js +131 -0
  157. package/dist/cjs/menu/TieredMenu.js.map +1 -0
  158. package/dist/cjs/menuItems.js.map +1 -1
  159. package/dist/cjs/messages/PrimeInlineMessage.js +40 -4
  160. package/dist/cjs/messages/PrimeInlineMessage.js.map +1 -1
  161. package/dist/cjs/messages/PrimeMessage.js +39 -4
  162. package/dist/cjs/messages/PrimeMessage.js.map +1 -1
  163. package/dist/cjs/messages/PrimeToast.js +96 -12
  164. package/dist/cjs/messages/PrimeToast.js.map +1 -1
  165. package/dist/cjs/misc/BlockUI.js +47 -0
  166. package/dist/cjs/misc/BlockUI.js.map +1 -0
  167. package/dist/cjs/misc/PrimeAvatar.js +26 -5
  168. package/dist/cjs/misc/PrimeAvatar.js.map +1 -1
  169. package/dist/cjs/misc/PrimeBadge.js +15 -3
  170. package/dist/cjs/misc/PrimeBadge.js.map +1 -1
  171. package/dist/cjs/misc/PrimeBlockUI.js +13 -3
  172. package/dist/cjs/misc/PrimeBlockUI.js.map +1 -1
  173. package/dist/cjs/misc/PrimeChip.js +41 -5
  174. package/dist/cjs/misc/PrimeChip.js.map +1 -1
  175. package/dist/cjs/misc/PrimeInplace.js +18 -5
  176. package/dist/cjs/misc/PrimeInplace.js.map +1 -1
  177. package/dist/cjs/misc/PrimeProgressBar.js +16 -6
  178. package/dist/cjs/misc/PrimeProgressBar.js.map +1 -1
  179. package/dist/cjs/misc/PrimeProgressSpinner.js +14 -3
  180. package/dist/cjs/misc/PrimeProgressSpinner.js.map +1 -1
  181. package/dist/cjs/misc/PrimeScrollTop.js +22 -12
  182. package/dist/cjs/misc/PrimeScrollTop.js.map +1 -1
  183. package/dist/cjs/misc/PrimeSkeleton.js +4 -0
  184. package/dist/cjs/misc/PrimeSkeleton.js.map +1 -1
  185. package/dist/cjs/misc/PrimeTag.js +21 -5
  186. package/dist/cjs/misc/PrimeTag.js.map +1 -1
  187. package/dist/cjs/misc/PrimeTerminal.js +22 -7
  188. package/dist/cjs/misc/PrimeTerminal.js.map +1 -1
  189. package/dist/cjs/misc/ScrollTop.js +70 -0
  190. package/dist/cjs/misc/ScrollTop.js.map +1 -0
  191. package/dist/cjs/overlay/ConfirmDialog.js +107 -0
  192. package/dist/cjs/overlay/ConfirmDialog.js.map +1 -0
  193. package/dist/cjs/overlay/PrimeConfirmDialog.js +15 -8
  194. package/dist/cjs/overlay/PrimeConfirmDialog.js.map +1 -1
  195. package/dist/cjs/overlay/PrimeDialog.js +50 -9
  196. package/dist/cjs/overlay/PrimeDialog.js.map +1 -1
  197. package/dist/cjs/overlay/PrimeOverlayPanel.js +29 -17
  198. package/dist/cjs/overlay/PrimeOverlayPanel.js.map +1 -1
  199. package/dist/cjs/overlay/PrimeSidebar.js +51 -12
  200. package/dist/cjs/overlay/PrimeSidebar.js.map +1 -1
  201. package/dist/cjs/overlay/PrimeTooltip.js +26 -13
  202. package/dist/cjs/overlay/PrimeTooltip.js.map +1 -1
  203. package/dist/cjs/panel/PrimeAccordion.js +39 -9
  204. package/dist/cjs/panel/PrimeAccordion.js.map +1 -1
  205. package/dist/cjs/panel/PrimeCard.js +25 -4
  206. package/dist/cjs/panel/PrimeCard.js.map +1 -1
  207. package/dist/cjs/panel/PrimeDivider.js +6 -1
  208. package/dist/cjs/panel/PrimeDivider.js.map +1 -1
  209. package/dist/cjs/panel/PrimeFieldset.js +37 -4
  210. package/dist/cjs/panel/PrimeFieldset.js.map +1 -1
  211. package/dist/cjs/panel/PrimePanel.js +41 -5
  212. package/dist/cjs/panel/PrimePanel.js.map +1 -1
  213. package/dist/cjs/panel/PrimeScrollPanel.js +20 -5
  214. package/dist/cjs/panel/PrimeScrollPanel.js.map +1 -1
  215. package/dist/cjs/panel/PrimeSplitter.js +26 -6
  216. package/dist/cjs/panel/PrimeSplitter.js.map +1 -1
  217. package/dist/cjs/panel/PrimeStepper.js +71 -29
  218. package/dist/cjs/panel/PrimeStepper.js.map +1 -1
  219. package/dist/cjs/panel/PrimeTabView.js +35 -10
  220. package/dist/cjs/panel/PrimeTabView.js.map +1 -1
  221. package/dist/cjs/panel/PrimeToolbar.js +18 -4
  222. package/dist/cjs/panel/PrimeToolbar.js.map +1 -1
  223. package/dist/cjs/primeReactComponents.js +12 -8
  224. package/dist/cjs/primeReactComponents.js.map +1 -1
  225. package/dist/cjs/primeReactPackage.js +7 -8
  226. package/dist/cjs/primeReactPackage.js.map +1 -1
  227. package/dist/cjs/properties.js +15 -0
  228. package/dist/cjs/properties.js.map +1 -1
  229. package/dist/cjs/screen/PrimeAction.js +24 -6
  230. package/dist/cjs/screen/PrimeAction.js.map +1 -1
  231. package/dist/cjs/screen/PrimeSummary.js +50 -26
  232. package/dist/cjs/screen/PrimeSummary.js.map +1 -1
  233. package/dist/cjs/theme/PrimeReactThemeFamily.js +34 -0
  234. package/dist/cjs/theme/PrimeReactThemeFamily.js.map +1 -0
  235. package/dist/cjs/theme/primeReactThemePreset.js +73 -0
  236. package/dist/cjs/theme/primeReactThemePreset.js.map +1 -0
  237. package/dist/cjs/theme/primeReactThemes.js +36 -18
  238. package/dist/cjs/theme/primeReactThemes.js.map +1 -1
  239. package/dist/cjs/theme/themePresets.js +364 -331
  240. package/dist/cjs/theme/themePresets.js.map +1 -1
  241. package/dist/cjs/theme/usePrimeReactTheme.js +46 -25
  242. package/dist/cjs/theme/usePrimeReactTheme.js.map +1 -1
  243. package/dist/cjs/treeNodes.js.map +1 -1
  244. package/dist/esm/MenuItem.d.ts +10 -0
  245. package/dist/esm/MenuItem.d.ts.map +1 -0
  246. package/dist/esm/MenuItem.js +2 -0
  247. package/dist/esm/MenuItem.js.map +1 -0
  248. package/dist/esm/PrimeSeverity.d.ts +2 -0
  249. package/dist/esm/PrimeSeverity.d.ts.map +1 -0
  250. package/dist/esm/PrimeSeverity.js +2 -0
  251. package/dist/esm/PrimeSeverity.js.map +1 -0
  252. package/dist/esm/TreeNode.d.ts +12 -0
  253. package/dist/esm/TreeNode.d.ts.map +1 -0
  254. package/dist/esm/TreeNode.js +2 -0
  255. package/dist/esm/TreeNode.js.map +1 -0
  256. package/dist/esm/button/ButtonGallery.stories.js +1 -1
  257. package/dist/esm/button/ButtonGallery.stories.js.map +1 -1
  258. package/dist/esm/button/PrimeButton.d.ts.map +1 -1
  259. package/dist/esm/button/PrimeButton.js +35 -11
  260. package/dist/esm/button/PrimeButton.js.map +1 -1
  261. package/dist/esm/button/PrimeButtonGroup.d.ts.map +1 -1
  262. package/dist/esm/button/PrimeButtonGroup.js +4 -1
  263. package/dist/esm/button/PrimeButtonGroup.js.map +1 -1
  264. package/dist/esm/button/PrimeSpeedDial.d.ts.map +1 -1
  265. package/dist/esm/button/PrimeSpeedDial.js +34 -5
  266. package/dist/esm/button/PrimeSpeedDial.js.map +1 -1
  267. package/dist/esm/button/PrimeSplitButton.d.ts.map +1 -1
  268. package/dist/esm/button/PrimeSplitButton.js +13 -5
  269. package/dist/esm/button/PrimeSplitButton.js.map +1 -1
  270. package/dist/esm/button/SplitButton.d.ts +12 -0
  271. package/dist/esm/button/SplitButton.d.ts.map +1 -0
  272. package/dist/esm/button/SplitButton.js +124 -0
  273. package/dist/esm/button/SplitButton.js.map +1 -0
  274. package/dist/esm/button/index.d.ts +1 -0
  275. package/dist/esm/button/index.d.ts.map +1 -1
  276. package/dist/esm/button/index.js +1 -0
  277. package/dist/esm/button/index.js.map +1 -1
  278. package/dist/esm/data/Column.d.ts +10 -0
  279. package/dist/esm/data/Column.d.ts.map +1 -0
  280. package/dist/esm/data/Column.js +19 -0
  281. package/dist/esm/data/Column.js.map +1 -0
  282. package/dist/esm/data/ColumnDefinition.d.ts.map +1 -1
  283. package/dist/esm/data/DataGallery.stories.d.ts.map +1 -1
  284. package/dist/esm/data/DataGallery.stories.js +0 -5
  285. package/dist/esm/data/DataGallery.stories.js.map +1 -1
  286. package/dist/esm/data/Pagination.d.ts +9 -0
  287. package/dist/esm/data/Pagination.d.ts.map +1 -0
  288. package/dist/esm/data/Pagination.js +53 -0
  289. package/dist/esm/data/Pagination.js.map +1 -0
  290. package/dist/esm/data/PrimeColumn.d.ts.map +1 -1
  291. package/dist/esm/data/PrimeColumn.js +13 -7
  292. package/dist/esm/data/PrimeColumn.js.map +1 -1
  293. package/dist/esm/data/PrimeDataTable.d.ts +1 -1
  294. package/dist/esm/data/PrimeDataTable.d.ts.map +1 -1
  295. package/dist/esm/data/PrimeDataTable.js +122 -17
  296. package/dist/esm/data/PrimeDataTable.js.map +1 -1
  297. package/dist/esm/data/PrimeDataView.d.ts.map +1 -1
  298. package/dist/esm/data/PrimeDataView.js +44 -22
  299. package/dist/esm/data/PrimeDataView.js.map +1 -1
  300. package/dist/esm/data/PrimeOrderList.d.ts.map +1 -1
  301. package/dist/esm/data/PrimeOrderList.js +76 -13
  302. package/dist/esm/data/PrimeOrderList.js.map +1 -1
  303. package/dist/esm/data/PrimeOrganizationChart.d.ts.map +1 -1
  304. package/dist/esm/data/PrimeOrganizationChart.js +35 -11
  305. package/dist/esm/data/PrimeOrganizationChart.js.map +1 -1
  306. package/dist/esm/data/PrimePaginator.d.ts.map +1 -1
  307. package/dist/esm/data/PrimePaginator.js +16 -18
  308. package/dist/esm/data/PrimePaginator.js.map +1 -1
  309. package/dist/esm/data/PrimePickList.d.ts.map +1 -1
  310. package/dist/esm/data/PrimePickList.js +80 -20
  311. package/dist/esm/data/PrimePickList.js.map +1 -1
  312. package/dist/esm/data/PrimeTimeline.d.ts.map +1 -1
  313. package/dist/esm/data/PrimeTimeline.js +55 -19
  314. package/dist/esm/data/PrimeTimeline.js.map +1 -1
  315. package/dist/esm/data/PrimeTree.d.ts.map +1 -1
  316. package/dist/esm/data/PrimeTree.js +44 -5
  317. package/dist/esm/data/PrimeTree.js.map +1 -1
  318. package/dist/esm/data/columnDefinitions.d.ts.map +1 -1
  319. package/dist/esm/data/columnDefinitions.js +5 -3
  320. package/dist/esm/data/columnDefinitions.js.map +1 -1
  321. package/dist/esm/data/index.d.ts +1 -2
  322. package/dist/esm/data/index.d.ts.map +1 -1
  323. package/dist/esm/data/index.js +1 -2
  324. package/dist/esm/data/index.js.map +1 -1
  325. package/dist/esm/data/primeTreeNodes.d.ts +10 -0
  326. package/dist/esm/data/primeTreeNodes.d.ts.map +1 -0
  327. package/dist/esm/data/primeTreeNodes.js +31 -0
  328. package/dist/esm/data/primeTreeNodes.js.map +1 -0
  329. package/dist/esm/data/selectOptions.d.ts +3 -0
  330. package/dist/esm/data/selectOptions.d.ts.map +1 -0
  331. package/dist/esm/data/selectOptions.js +20 -0
  332. package/dist/esm/data/selectOptions.js.map +1 -0
  333. package/dist/esm/for_primeReactPackage/when_rendering_every_declared_component.js +21 -1
  334. package/dist/esm/for_primeReactPackage/when_rendering_every_declared_component.js.map +1 -1
  335. package/dist/esm/for_primeReactThemePreset/when_resolving_a_preset.d.ts +2 -0
  336. package/dist/esm/for_primeReactThemePreset/when_resolving_a_preset.d.ts.map +1 -0
  337. package/dist/esm/for_primeReactThemePreset/when_resolving_a_preset.js +30 -0
  338. package/dist/esm/for_primeReactThemePreset/when_resolving_a_preset.js.map +1 -0
  339. package/dist/esm/for_primeReactThemes/when_checking_attribution.js +3 -3
  340. package/dist/esm/for_primeReactThemes/when_checking_attribution.js.map +1 -1
  341. package/dist/esm/for_primeReactThemes/when_checking_the_token_vocabulary.js +9 -3
  342. package/dist/esm/for_primeReactThemes/when_checking_the_token_vocabulary.js.map +1 -1
  343. package/dist/esm/form/FormGallery.stories.d.ts.map +1 -1
  344. package/dist/esm/form/FormGallery.stories.js +1 -5
  345. package/dist/esm/form/FormGallery.stories.js.map +1 -1
  346. package/dist/esm/form/PrimeAutoComplete.d.ts.map +1 -1
  347. package/dist/esm/form/PrimeAutoComplete.js +37 -16
  348. package/dist/esm/form/PrimeAutoComplete.js.map +1 -1
  349. package/dist/esm/form/PrimeCalendar.d.ts.map +1 -1
  350. package/dist/esm/form/PrimeCalendar.js +81 -11
  351. package/dist/esm/form/PrimeCalendar.js.map +1 -1
  352. package/dist/esm/form/PrimeCheckbox.d.ts.map +1 -1
  353. package/dist/esm/form/PrimeCheckbox.js +11 -3
  354. package/dist/esm/form/PrimeCheckbox.js.map +1 -1
  355. package/dist/esm/form/PrimeChips.d.ts.map +1 -1
  356. package/dist/esm/form/PrimeChips.js +44 -10
  357. package/dist/esm/form/PrimeChips.js.map +1 -1
  358. package/dist/esm/form/PrimeColorPicker.d.ts.map +1 -1
  359. package/dist/esm/form/PrimeColorPicker.js +58 -11
  360. package/dist/esm/form/PrimeColorPicker.js.map +1 -1
  361. package/dist/esm/form/PrimeDropdown.d.ts.map +1 -1
  362. package/dist/esm/form/PrimeDropdown.js +38 -10
  363. package/dist/esm/form/PrimeDropdown.js.map +1 -1
  364. package/dist/esm/form/PrimeIconField.d.ts.map +1 -1
  365. package/dist/esm/form/PrimeIconField.js +16 -10
  366. package/dist/esm/form/PrimeIconField.js.map +1 -1
  367. package/dist/esm/form/PrimeInputNumber.d.ts.map +1 -1
  368. package/dist/esm/form/PrimeInputNumber.js +27 -5
  369. package/dist/esm/form/PrimeInputNumber.js.map +1 -1
  370. package/dist/esm/form/PrimeInputTextarea.d.ts.map +1 -1
  371. package/dist/esm/form/PrimeInputTextarea.js +6 -4
  372. package/dist/esm/form/PrimeInputTextarea.js.map +1 -1
  373. package/dist/esm/form/PrimeKnob.d.ts.map +1 -1
  374. package/dist/esm/form/PrimeKnob.js +14 -4
  375. package/dist/esm/form/PrimeKnob.js.map +1 -1
  376. package/dist/esm/form/PrimeListBox.d.ts.map +1 -1
  377. package/dist/esm/form/PrimeListBox.js +12 -6
  378. package/dist/esm/form/PrimeListBox.js.map +1 -1
  379. package/dist/esm/form/PrimeMultiSelect.d.ts.map +1 -1
  380. package/dist/esm/form/PrimeMultiSelect.js +45 -10
  381. package/dist/esm/form/PrimeMultiSelect.js.map +1 -1
  382. package/dist/esm/form/PrimePassword.d.ts.map +1 -1
  383. package/dist/esm/form/PrimePassword.js +12 -6
  384. package/dist/esm/form/PrimePassword.js.map +1 -1
  385. package/dist/esm/form/PrimeRadioButton.d.ts.map +1 -1
  386. package/dist/esm/form/PrimeRadioButton.js +13 -3
  387. package/dist/esm/form/PrimeRadioButton.js.map +1 -1
  388. package/dist/esm/form/PrimeRating.d.ts.map +1 -1
  389. package/dist/esm/form/PrimeRating.js +31 -6
  390. package/dist/esm/form/PrimeRating.js.map +1 -1
  391. package/dist/esm/form/PrimeSelectButton.d.ts.map +1 -1
  392. package/dist/esm/form/PrimeSelectButton.js +16 -9
  393. package/dist/esm/form/PrimeSelectButton.js.map +1 -1
  394. package/dist/esm/form/PrimeSlider.d.ts.map +1 -1
  395. package/dist/esm/form/PrimeSlider.js +15 -4
  396. package/dist/esm/form/PrimeSlider.js.map +1 -1
  397. package/dist/esm/form/PrimeToggleSwitch.d.ts.map +1 -1
  398. package/dist/esm/form/PrimeToggleSwitch.js +15 -8
  399. package/dist/esm/form/PrimeToggleSwitch.js.map +1 -1
  400. package/dist/esm/form/PrimeTreeSelect.d.ts.map +1 -1
  401. package/dist/esm/form/PrimeTreeSelect.js +17 -8
  402. package/dist/esm/form/PrimeTreeSelect.js.map +1 -1
  403. package/dist/esm/form/TreeSelect.d.ts +10 -0
  404. package/dist/esm/form/TreeSelect.d.ts.map +1 -0
  405. package/dist/esm/form/TreeSelect.js +130 -0
  406. package/dist/esm/form/TreeSelect.js.map +1 -0
  407. package/dist/esm/form/index.d.ts +1 -2
  408. package/dist/esm/form/index.d.ts.map +1 -1
  409. package/dist/esm/form/index.js +1 -2
  410. package/dist/esm/form/index.js.map +1 -1
  411. package/dist/esm/index.d.ts +3 -0
  412. package/dist/esm/index.d.ts.map +1 -1
  413. package/dist/esm/index.js +22 -9
  414. package/dist/esm/index.js.map +1 -1
  415. package/dist/esm/media/Image.d.ts +10 -0
  416. package/dist/esm/media/Image.d.ts.map +1 -0
  417. package/dist/esm/media/Image.js +97 -0
  418. package/dist/esm/media/Image.js.map +1 -0
  419. package/dist/esm/media/MediaGallery.stories.js +1 -1
  420. package/dist/esm/media/MediaGallery.stories.js.map +1 -1
  421. package/dist/esm/media/PrimeCarousel.d.ts.map +1 -1
  422. package/dist/esm/media/PrimeCarousel.js +52 -18
  423. package/dist/esm/media/PrimeCarousel.js.map +1 -1
  424. package/dist/esm/media/PrimeGalleria.d.ts.map +1 -1
  425. package/dist/esm/media/PrimeGalleria.js +60 -20
  426. package/dist/esm/media/PrimeGalleria.js.map +1 -1
  427. package/dist/esm/media/PrimeImage.d.ts.map +1 -1
  428. package/dist/esm/media/PrimeImage.js +8 -2
  429. package/dist/esm/media/PrimeImage.js.map +1 -1
  430. package/dist/esm/media/index.d.ts +1 -0
  431. package/dist/esm/media/index.d.ts.map +1 -1
  432. package/dist/esm/media/index.js +1 -0
  433. package/dist/esm/media/index.js.map +1 -1
  434. package/dist/esm/menu/Dock.d.ts +9 -0
  435. package/dist/esm/menu/Dock.d.ts.map +1 -0
  436. package/dist/esm/menu/Dock.js +109 -0
  437. package/dist/esm/menu/Dock.js.map +1 -0
  438. package/dist/esm/menu/DockPosition.d.ts +7 -0
  439. package/dist/esm/menu/DockPosition.d.ts.map +1 -0
  440. package/dist/esm/menu/DockPosition.js +27 -0
  441. package/dist/esm/menu/DockPosition.js.map +1 -0
  442. package/dist/esm/menu/MegaMenu.d.ts +7 -0
  443. package/dist/esm/menu/MegaMenu.d.ts.map +1 -0
  444. package/dist/esm/menu/MegaMenu.js +136 -0
  445. package/dist/esm/menu/MegaMenu.js.map +1 -0
  446. package/dist/esm/menu/MenuGallery.stories.d.ts +1 -0
  447. package/dist/esm/menu/MenuGallery.stories.d.ts.map +1 -1
  448. package/dist/esm/menu/MenuGallery.stories.js +25 -3
  449. package/dist/esm/menu/MenuGallery.stories.js.map +1 -1
  450. package/dist/esm/menu/MenuItemAction.d.ts +12 -0
  451. package/dist/esm/menu/MenuItemAction.d.ts.map +1 -0
  452. package/dist/esm/menu/MenuItemAction.js +52 -0
  453. package/dist/esm/menu/MenuItemAction.js.map +1 -0
  454. package/dist/esm/menu/MenuItemContent.d.ts +6 -0
  455. package/dist/esm/menu/MenuItemContent.d.ts.map +1 -0
  456. package/dist/esm/menu/MenuItemContent.js +32 -0
  457. package/dist/esm/menu/MenuItemContent.js.map +1 -0
  458. package/dist/esm/menu/Menubar.d.ts +9 -0
  459. package/dist/esm/menu/Menubar.d.ts.map +1 -0
  460. package/dist/esm/menu/Menubar.js +137 -0
  461. package/dist/esm/menu/Menubar.js.map +1 -0
  462. package/dist/esm/menu/PanelMenu.d.ts +8 -0
  463. package/dist/esm/menu/PanelMenu.d.ts.map +1 -0
  464. package/dist/esm/menu/PanelMenu.js +110 -0
  465. package/dist/esm/menu/PanelMenu.js.map +1 -0
  466. package/dist/esm/menu/PrimeBreadcrumb.d.ts.map +1 -1
  467. package/dist/esm/menu/PrimeBreadcrumb.js +71 -9
  468. package/dist/esm/menu/PrimeBreadcrumb.js.map +1 -1
  469. package/dist/esm/menu/PrimeContextMenu.d.ts.map +1 -1
  470. package/dist/esm/menu/PrimeContextMenu.js +36 -12
  471. package/dist/esm/menu/PrimeContextMenu.js.map +1 -1
  472. package/dist/esm/menu/PrimeDock.d.ts.map +1 -1
  473. package/dist/esm/menu/PrimeDock.js +34 -7
  474. package/dist/esm/menu/PrimeDock.js.map +1 -1
  475. package/dist/esm/menu/PrimeMegaMenu.d.ts.map +1 -1
  476. package/dist/esm/menu/PrimeMegaMenu.js +11 -7
  477. package/dist/esm/menu/PrimeMegaMenu.js.map +1 -1
  478. package/dist/esm/menu/PrimeMenu.d.ts.map +1 -1
  479. package/dist/esm/menu/PrimeMenu.js +59 -3
  480. package/dist/esm/menu/PrimeMenu.js.map +1 -1
  481. package/dist/esm/menu/PrimeMenubar.d.ts.map +1 -1
  482. package/dist/esm/menu/PrimeMenubar.js +9 -2
  483. package/dist/esm/menu/PrimeMenubar.js.map +1 -1
  484. package/dist/esm/menu/PrimePanelMenu.d.ts.map +1 -1
  485. package/dist/esm/menu/PrimePanelMenu.js +8 -3
  486. package/dist/esm/menu/PrimePanelMenu.js.map +1 -1
  487. package/dist/esm/menu/PrimeSteps.d.ts.map +1 -1
  488. package/dist/esm/menu/PrimeSteps.js +16 -10
  489. package/dist/esm/menu/PrimeSteps.js.map +1 -1
  490. package/dist/esm/menu/PrimeTabMenu.d.ts.map +1 -1
  491. package/dist/esm/menu/PrimeTabMenu.js +11 -8
  492. package/dist/esm/menu/PrimeTabMenu.js.map +1 -1
  493. package/dist/esm/menu/PrimeTieredMenu.d.ts.map +1 -1
  494. package/dist/esm/menu/PrimeTieredMenu.js +8 -2
  495. package/dist/esm/menu/PrimeTieredMenu.js.map +1 -1
  496. package/dist/esm/menu/Steps.d.ts +8 -0
  497. package/dist/esm/menu/Steps.d.ts.map +1 -0
  498. package/dist/esm/menu/Steps.js +72 -0
  499. package/dist/esm/menu/Steps.js.map +1 -0
  500. package/dist/esm/menu/TabMenu.d.ts +8 -0
  501. package/dist/esm/menu/TabMenu.d.ts.map +1 -0
  502. package/dist/esm/menu/TabMenu.js +57 -0
  503. package/dist/esm/menu/TabMenu.js.map +1 -0
  504. package/dist/esm/menu/TieredMenu.d.ts +7 -0
  505. package/dist/esm/menu/TieredMenu.d.ts.map +1 -0
  506. package/dist/esm/menu/TieredMenu.js +129 -0
  507. package/dist/esm/menu/TieredMenu.js.map +1 -0
  508. package/dist/esm/menu/index.d.ts +10 -0
  509. package/dist/esm/menu/index.d.ts.map +1 -1
  510. package/dist/esm/menu/index.js +10 -0
  511. package/dist/esm/menu/index.js.map +1 -1
  512. package/dist/esm/menuItems.d.ts +1 -1
  513. package/dist/esm/menuItems.d.ts.map +1 -1
  514. package/dist/esm/menuItems.js.map +1 -1
  515. package/dist/esm/messages/MessageGallery.stories.js +1 -1
  516. package/dist/esm/messages/MessageGallery.stories.js.map +1 -1
  517. package/dist/esm/messages/PrimeInlineMessage.d.ts.map +1 -1
  518. package/dist/esm/messages/PrimeInlineMessage.js +42 -6
  519. package/dist/esm/messages/PrimeInlineMessage.js.map +1 -1
  520. package/dist/esm/messages/PrimeMessage.d.ts.map +1 -1
  521. package/dist/esm/messages/PrimeMessage.js +41 -6
  522. package/dist/esm/messages/PrimeMessage.js.map +1 -1
  523. package/dist/esm/messages/PrimeToast.d.ts.map +1 -1
  524. package/dist/esm/messages/PrimeToast.js +99 -15
  525. package/dist/esm/messages/PrimeToast.js.map +1 -1
  526. package/dist/esm/misc/BlockUI.d.ts +7 -0
  527. package/dist/esm/misc/BlockUI.d.ts.map +1 -0
  528. package/dist/esm/misc/BlockUI.js +45 -0
  529. package/dist/esm/misc/BlockUI.js.map +1 -0
  530. package/dist/esm/misc/MiscGallery.stories.js +1 -1
  531. package/dist/esm/misc/MiscGallery.stories.js.map +1 -1
  532. package/dist/esm/misc/PrimeAvatar.d.ts.map +1 -1
  533. package/dist/esm/misc/PrimeAvatar.js +27 -6
  534. package/dist/esm/misc/PrimeAvatar.js.map +1 -1
  535. package/dist/esm/misc/PrimeBadge.d.ts.map +1 -1
  536. package/dist/esm/misc/PrimeBadge.js +16 -4
  537. package/dist/esm/misc/PrimeBadge.js.map +1 -1
  538. package/dist/esm/misc/PrimeBlockUI.d.ts.map +1 -1
  539. package/dist/esm/misc/PrimeBlockUI.js +12 -2
  540. package/dist/esm/misc/PrimeBlockUI.js.map +1 -1
  541. package/dist/esm/misc/PrimeChip.d.ts.map +1 -1
  542. package/dist/esm/misc/PrimeChip.js +43 -7
  543. package/dist/esm/misc/PrimeChip.js.map +1 -1
  544. package/dist/esm/misc/PrimeInplace.d.ts.map +1 -1
  545. package/dist/esm/misc/PrimeInplace.js +19 -6
  546. package/dist/esm/misc/PrimeInplace.js.map +1 -1
  547. package/dist/esm/misc/PrimeProgressBar.d.ts.map +1 -1
  548. package/dist/esm/misc/PrimeProgressBar.js +16 -6
  549. package/dist/esm/misc/PrimeProgressBar.js.map +1 -1
  550. package/dist/esm/misc/PrimeProgressSpinner.d.ts.map +1 -1
  551. package/dist/esm/misc/PrimeProgressSpinner.js +15 -4
  552. package/dist/esm/misc/PrimeProgressSpinner.js.map +1 -1
  553. package/dist/esm/misc/PrimeScrollTop.d.ts.map +1 -1
  554. package/dist/esm/misc/PrimeScrollTop.js +21 -11
  555. package/dist/esm/misc/PrimeScrollTop.js.map +1 -1
  556. package/dist/esm/misc/PrimeSkeleton.d.ts.map +1 -1
  557. package/dist/esm/misc/PrimeSkeleton.js +4 -0
  558. package/dist/esm/misc/PrimeSkeleton.js.map +1 -1
  559. package/dist/esm/misc/PrimeTag.d.ts.map +1 -1
  560. package/dist/esm/misc/PrimeTag.js +23 -7
  561. package/dist/esm/misc/PrimeTag.js.map +1 -1
  562. package/dist/esm/misc/PrimeTerminal.d.ts.map +1 -1
  563. package/dist/esm/misc/PrimeTerminal.js +23 -8
  564. package/dist/esm/misc/PrimeTerminal.js.map +1 -1
  565. package/dist/esm/misc/ScrollTop.d.ts +8 -0
  566. package/dist/esm/misc/ScrollTop.d.ts.map +1 -0
  567. package/dist/esm/misc/ScrollTop.js +68 -0
  568. package/dist/esm/misc/ScrollTop.js.map +1 -0
  569. package/dist/esm/misc/index.d.ts +2 -0
  570. package/dist/esm/misc/index.d.ts.map +1 -1
  571. package/dist/esm/misc/index.js +2 -0
  572. package/dist/esm/misc/index.js.map +1 -1
  573. package/dist/esm/overlay/ConfirmDialog.d.ts +14 -0
  574. package/dist/esm/overlay/ConfirmDialog.d.ts.map +1 -0
  575. package/dist/esm/overlay/ConfirmDialog.js +105 -0
  576. package/dist/esm/overlay/ConfirmDialog.js.map +1 -0
  577. package/dist/esm/overlay/OverlayGallery.stories.js +1 -1
  578. package/dist/esm/overlay/OverlayGallery.stories.js.map +1 -1
  579. package/dist/esm/overlay/PrimeConfirmDialog.d.ts.map +1 -1
  580. package/dist/esm/overlay/PrimeConfirmDialog.js +14 -7
  581. package/dist/esm/overlay/PrimeConfirmDialog.js.map +1 -1
  582. package/dist/esm/overlay/PrimeDialog.d.ts.map +1 -1
  583. package/dist/esm/overlay/PrimeDialog.js +50 -9
  584. package/dist/esm/overlay/PrimeDialog.js.map +1 -1
  585. package/dist/esm/overlay/PrimeOverlayPanel.d.ts.map +1 -1
  586. package/dist/esm/overlay/PrimeOverlayPanel.js +30 -18
  587. package/dist/esm/overlay/PrimeOverlayPanel.js.map +1 -1
  588. package/dist/esm/overlay/PrimeSidebar.d.ts.map +1 -1
  589. package/dist/esm/overlay/PrimeSidebar.js +51 -12
  590. package/dist/esm/overlay/PrimeSidebar.js.map +1 -1
  591. package/dist/esm/overlay/PrimeTooltip.d.ts.map +1 -1
  592. package/dist/esm/overlay/PrimeTooltip.js +27 -14
  593. package/dist/esm/overlay/PrimeTooltip.js.map +1 -1
  594. package/dist/esm/overlay/index.d.ts +1 -0
  595. package/dist/esm/overlay/index.d.ts.map +1 -1
  596. package/dist/esm/overlay/index.js +1 -0
  597. package/dist/esm/overlay/index.js.map +1 -1
  598. package/dist/esm/panel/PanelGallery.stories.js +1 -1
  599. package/dist/esm/panel/PanelGallery.stories.js.map +1 -1
  600. package/dist/esm/panel/PrimeAccordion.d.ts.map +1 -1
  601. package/dist/esm/panel/PrimeAccordion.js +41 -11
  602. package/dist/esm/panel/PrimeAccordion.js.map +1 -1
  603. package/dist/esm/panel/PrimeCard.d.ts.map +1 -1
  604. package/dist/esm/panel/PrimeCard.js +26 -5
  605. package/dist/esm/panel/PrimeCard.js.map +1 -1
  606. package/dist/esm/panel/PrimeDivider.d.ts.map +1 -1
  607. package/dist/esm/panel/PrimeDivider.js +6 -1
  608. package/dist/esm/panel/PrimeDivider.js.map +1 -1
  609. package/dist/esm/panel/PrimeFieldset.d.ts.map +1 -1
  610. package/dist/esm/panel/PrimeFieldset.js +39 -6
  611. package/dist/esm/panel/PrimeFieldset.js.map +1 -1
  612. package/dist/esm/panel/PrimePanel.d.ts.map +1 -1
  613. package/dist/esm/panel/PrimePanel.js +42 -6
  614. package/dist/esm/panel/PrimePanel.js.map +1 -1
  615. package/dist/esm/panel/PrimeScrollPanel.d.ts.map +1 -1
  616. package/dist/esm/panel/PrimeScrollPanel.js +21 -6
  617. package/dist/esm/panel/PrimeScrollPanel.js.map +1 -1
  618. package/dist/esm/panel/PrimeSplitter.d.ts.map +1 -1
  619. package/dist/esm/panel/PrimeSplitter.js +28 -8
  620. package/dist/esm/panel/PrimeSplitter.js.map +1 -1
  621. package/dist/esm/panel/PrimeStepper.d.ts.map +1 -1
  622. package/dist/esm/panel/PrimeStepper.js +74 -32
  623. package/dist/esm/panel/PrimeStepper.js.map +1 -1
  624. package/dist/esm/panel/PrimeTabView.d.ts.map +1 -1
  625. package/dist/esm/panel/PrimeTabView.js +36 -11
  626. package/dist/esm/panel/PrimeTabView.js.map +1 -1
  627. package/dist/esm/panel/PrimeToolbar.d.ts.map +1 -1
  628. package/dist/esm/panel/PrimeToolbar.js +19 -5
  629. package/dist/esm/panel/PrimeToolbar.js.map +1 -1
  630. package/dist/esm/primeReactComponents.d.ts.map +1 -1
  631. package/dist/esm/primeReactComponents.js +12 -8
  632. package/dist/esm/primeReactComponents.js.map +1 -1
  633. package/dist/esm/primeReactPackage.d.ts.map +1 -1
  634. package/dist/esm/primeReactPackage.js +7 -8
  635. package/dist/esm/primeReactPackage.js.map +1 -1
  636. package/dist/esm/properties.d.ts +3 -0
  637. package/dist/esm/properties.d.ts.map +1 -1
  638. package/dist/esm/properties.js +15 -1
  639. package/dist/esm/properties.js.map +1 -1
  640. package/dist/esm/screen/PrimeAction.d.ts.map +1 -1
  641. package/dist/esm/screen/PrimeAction.js +25 -7
  642. package/dist/esm/screen/PrimeAction.js.map +1 -1
  643. package/dist/esm/screen/PrimeSummary.d.ts.map +1 -1
  644. package/dist/esm/screen/PrimeSummary.js +51 -27
  645. package/dist/esm/screen/PrimeSummary.js.map +1 -1
  646. package/dist/esm/theme/PrimeReactThemeFamily.d.ts +7 -0
  647. package/dist/esm/theme/PrimeReactThemeFamily.d.ts.map +1 -0
  648. package/dist/esm/theme/PrimeReactThemeFamily.js +32 -0
  649. package/dist/esm/theme/PrimeReactThemeFamily.js.map +1 -0
  650. package/dist/esm/theme/index.d.ts +2 -2
  651. package/dist/esm/theme/index.d.ts.map +1 -1
  652. package/dist/esm/theme/index.js +2 -2
  653. package/dist/esm/theme/index.js.map +1 -1
  654. package/dist/esm/theme/primeReactThemePreset.d.ts +7 -0
  655. package/dist/esm/theme/primeReactThemePreset.d.ts.map +1 -0
  656. package/dist/esm/theme/primeReactThemePreset.js +71 -0
  657. package/dist/esm/theme/primeReactThemePreset.js.map +1 -0
  658. package/dist/esm/theme/primeReactThemes.d.ts +1 -0
  659. package/dist/esm/theme/primeReactThemes.d.ts.map +1 -1
  660. package/dist/esm/theme/primeReactThemes.js +36 -19
  661. package/dist/esm/theme/primeReactThemes.js.map +1 -1
  662. package/dist/esm/theme/themePresets.d.ts +5 -1
  663. package/dist/esm/theme/themePresets.d.ts.map +1 -1
  664. package/dist/esm/theme/themePresets.js +364 -331
  665. package/dist/esm/theme/themePresets.js.map +1 -1
  666. package/dist/esm/theme/usePrimeReactTheme.d.ts +11 -1
  667. package/dist/esm/theme/usePrimeReactTheme.d.ts.map +1 -1
  668. package/dist/esm/theme/usePrimeReactTheme.js +47 -27
  669. package/dist/esm/theme/usePrimeReactTheme.js.map +1 -1
  670. package/dist/esm/treeNodes.d.ts +1 -1
  671. package/dist/esm/treeNodes.d.ts.map +1 -1
  672. package/dist/esm/treeNodes.js.map +1 -1
  673. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  674. package/for_menuItems/when_converting_entries.ts +1 -1
  675. package/for_primeReactPackage/when_rendering_every_declared_component.tsx +43 -1
  676. package/for_primeReactThemePreset/when_resolving_a_preset.ts +49 -0
  677. package/for_primeReactThemes/when_checking_attribution.ts +9 -3
  678. package/for_primeReactThemes/when_checking_the_token_vocabulary.ts +22 -3
  679. package/form/FormGallery.stories.tsx +1 -5
  680. package/form/PrimeAutoComplete.tsx +34 -18
  681. package/form/PrimeCalendar.tsx +60 -11
  682. package/form/PrimeCheckbox.tsx +12 -4
  683. package/form/PrimeChips.tsx +29 -9
  684. package/form/PrimeColorPicker.tsx +56 -12
  685. package/form/PrimeDropdown.tsx +29 -11
  686. package/form/PrimeIconField.tsx +12 -5
  687. package/form/PrimeInputNumber.tsx +19 -5
  688. package/form/PrimeInputTextarea.tsx +8 -6
  689. package/form/PrimeKnob.tsx +12 -4
  690. package/form/PrimeListBox.tsx +13 -7
  691. package/form/PrimeMultiSelect.tsx +35 -10
  692. package/form/PrimePassword.tsx +12 -6
  693. package/form/PrimeRadioButton.tsx +14 -4
  694. package/form/PrimeRating.tsx +23 -6
  695. package/form/PrimeSelectButton.tsx +17 -9
  696. package/form/PrimeSlider.tsx +13 -4
  697. package/form/PrimeToggleSwitch.tsx +16 -9
  698. package/form/PrimeTreeSelect.tsx +18 -10
  699. package/form/TreeSelect.tsx +158 -0
  700. package/form/index.ts +1 -2
  701. package/index.ts +3 -0
  702. package/media/Image.tsx +104 -0
  703. package/media/MediaGallery.stories.tsx +1 -1
  704. package/media/PrimeCarousel.tsx +35 -14
  705. package/media/PrimeGalleria.tsx +43 -18
  706. package/media/PrimeImage.tsx +6 -2
  707. package/media/index.ts +1 -0
  708. package/menu/Dock.tsx +109 -0
  709. package/menu/DockPosition.ts +32 -0
  710. package/menu/MegaMenu.tsx +138 -0
  711. package/menu/MenuGallery.stories.tsx +31 -3
  712. package/menu/MenuItemAction.tsx +92 -0
  713. package/menu/MenuItemContent.tsx +36 -0
  714. package/menu/Menubar.tsx +149 -0
  715. package/menu/PanelMenu.tsx +107 -0
  716. package/menu/PrimeBreadcrumb.tsx +62 -7
  717. package/menu/PrimeContextMenu.tsx +43 -9
  718. package/menu/PrimeDock.tsx +33 -6
  719. package/menu/PrimeMegaMenu.tsx +9 -12
  720. package/menu/PrimeMenu.tsx +64 -1
  721. package/menu/PrimeMenubar.tsx +7 -2
  722. package/menu/PrimePanelMenu.tsx +6 -5
  723. package/menu/PrimeSteps.tsx +13 -15
  724. package/menu/PrimeTabMenu.tsx +8 -13
  725. package/menu/PrimeTieredMenu.tsx +6 -2
  726. package/menu/Steps.tsx +79 -0
  727. package/menu/TabMenu.tsx +72 -0
  728. package/menu/TieredMenu.tsx +136 -0
  729. package/menu/index.ts +10 -0
  730. package/menuItems.ts +1 -1
  731. package/messages/MessageGallery.stories.tsx +1 -1
  732. package/messages/PrimeInlineMessage.tsx +37 -6
  733. package/messages/PrimeMessage.tsx +35 -8
  734. package/messages/PrimeToast.tsx +84 -9
  735. package/misc/BlockUI.tsx +51 -0
  736. package/misc/MiscGallery.stories.tsx +1 -1
  737. package/misc/PrimeAvatar.tsx +17 -6
  738. package/misc/PrimeBadge.tsx +17 -5
  739. package/misc/PrimeBlockUI.tsx +13 -3
  740. package/misc/PrimeChip.tsx +27 -7
  741. package/misc/PrimeInplace.tsx +17 -5
  742. package/misc/PrimeProgressBar.tsx +11 -7
  743. package/misc/PrimeProgressSpinner.tsx +14 -1
  744. package/misc/PrimeScrollTop.tsx +16 -8
  745. package/misc/PrimeSkeleton.tsx +4 -0
  746. package/misc/PrimeTag.tsx +17 -6
  747. package/misc/PrimeTerminal.tsx +18 -9
  748. package/misc/ScrollTop.tsx +81 -0
  749. package/misc/index.ts +2 -0
  750. package/overlay/ConfirmDialog.tsx +135 -0
  751. package/overlay/OverlayGallery.stories.tsx +1 -1
  752. package/overlay/PrimeConfirmDialog.tsx +15 -10
  753. package/overlay/PrimeDialog.tsx +35 -8
  754. package/overlay/PrimeOverlayPanel.tsx +20 -8
  755. package/overlay/PrimeSidebar.tsx +38 -12
  756. package/overlay/PrimeTooltip.tsx +24 -10
  757. package/overlay/index.ts +1 -0
  758. package/package.json +29 -13
  759. package/panel/PanelGallery.stories.tsx +1 -1
  760. package/panel/PrimeAccordion.tsx +28 -10
  761. package/panel/PrimeCard.tsx +18 -3
  762. package/panel/PrimeDivider.tsx +6 -1
  763. package/panel/PrimeFieldset.tsx +25 -3
  764. package/panel/PrimePanel.tsx +26 -7
  765. package/panel/PrimeScrollPanel.tsx +16 -8
  766. package/panel/PrimeSplitter.tsx +24 -7
  767. package/panel/PrimeStepper.tsx +57 -20
  768. package/panel/PrimeTabView.tsx +29 -9
  769. package/panel/PrimeToolbar.tsx +13 -1
  770. package/primeReactComponents.ts +0 -8
  771. package/primeReactPackage.ts +8 -7
  772. package/primeReactTheme.css +56 -33
  773. package/properties.ts +30 -0
  774. package/screen/PrimeAction.tsx +20 -6
  775. package/screen/PrimeSummary.tsx +36 -13
  776. package/theme/PrimeReactThemeFamily.ts +37 -0
  777. package/theme/index.ts +2 -2
  778. package/theme/primeReactThemePreset.ts +83 -0
  779. package/theme/primeReactThemes.ts +37 -18
  780. package/theme/themePresets.ts +381 -336
  781. package/theme/usePrimeReactTheme.ts +73 -25
  782. package/treeNodes.ts +1 -1
  783. package/.storybook/preview.ts +0 -22
  784. package/data/PrimeTreeTable.tsx +0 -32
  785. package/data/PrimeVirtualScroller.tsx +0 -31
  786. package/dist/cjs/data/PrimeTreeTable.js +0 -40
  787. package/dist/cjs/data/PrimeTreeTable.js.map +0 -1
  788. package/dist/cjs/data/PrimeVirtualScroller.js +0 -34
  789. package/dist/cjs/data/PrimeVirtualScroller.js.map +0 -1
  790. package/dist/cjs/form/PrimeCascadeSelect.js +0 -32
  791. package/dist/cjs/form/PrimeCascadeSelect.js.map +0 -1
  792. package/dist/cjs/form/PrimeInputMask.js +0 -26
  793. package/dist/cjs/form/PrimeInputMask.js.map +0 -1
  794. package/dist/cjs/theme/applyPrimeReactTheme.js +0 -51
  795. package/dist/cjs/theme/applyPrimeReactTheme.js.map +0 -1
  796. package/dist/cjs/theme/primeReactThemeStylesheet.js +0 -34
  797. package/dist/cjs/theme/primeReactThemeStylesheet.js.map +0 -1
  798. package/dist/esm/data/PrimeTreeTable.d.ts +0 -3
  799. package/dist/esm/data/PrimeTreeTable.d.ts.map +0 -1
  800. package/dist/esm/data/PrimeTreeTable.js +0 -38
  801. package/dist/esm/data/PrimeTreeTable.js.map +0 -1
  802. package/dist/esm/data/PrimeVirtualScroller.d.ts +0 -3
  803. package/dist/esm/data/PrimeVirtualScroller.d.ts.map +0 -1
  804. package/dist/esm/data/PrimeVirtualScroller.js +0 -32
  805. package/dist/esm/data/PrimeVirtualScroller.js.map +0 -1
  806. package/dist/esm/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.d.ts +0 -2
  807. package/dist/esm/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.d.ts.map +0 -1
  808. package/dist/esm/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.js +0 -63
  809. package/dist/esm/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.js.map +0 -1
  810. package/dist/esm/for_primeReactThemes/when_resolving_a_theme_stylesheet.d.ts +0 -2
  811. package/dist/esm/for_primeReactThemes/when_resolving_a_theme_stylesheet.d.ts.map +0 -1
  812. package/dist/esm/for_primeReactThemes/when_resolving_a_theme_stylesheet.js +0 -17
  813. package/dist/esm/for_primeReactThemes/when_resolving_a_theme_stylesheet.js.map +0 -1
  814. package/dist/esm/form/PrimeCascadeSelect.d.ts +0 -3
  815. package/dist/esm/form/PrimeCascadeSelect.d.ts.map +0 -1
  816. package/dist/esm/form/PrimeCascadeSelect.js +0 -30
  817. package/dist/esm/form/PrimeCascadeSelect.js.map +0 -1
  818. package/dist/esm/form/PrimeInputMask.d.ts +0 -3
  819. package/dist/esm/form/PrimeInputMask.d.ts.map +0 -1
  820. package/dist/esm/form/PrimeInputMask.js +0 -24
  821. package/dist/esm/form/PrimeInputMask.js.map +0 -1
  822. package/dist/esm/theme/applyPrimeReactTheme.d.ts +0 -2
  823. package/dist/esm/theme/applyPrimeReactTheme.d.ts.map +0 -1
  824. package/dist/esm/theme/applyPrimeReactTheme.js +0 -49
  825. package/dist/esm/theme/applyPrimeReactTheme.js.map +0 -1
  826. package/dist/esm/theme/primeReactThemeStylesheet.d.ts +0 -3
  827. package/dist/esm/theme/primeReactThemeStylesheet.d.ts.map +0 -1
  828. package/dist/esm/theme/primeReactThemeStylesheet.js +0 -31
  829. package/dist/esm/theme/primeReactThemeStylesheet.js.map +0 -1
  830. package/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.ts +0 -81
  831. package/for_primeReactThemes/when_resolving_a_theme_stylesheet.ts +0 -22
  832. package/form/PrimeCascadeSelect.tsx +0 -31
  833. package/form/PrimeInputMask.tsx +0 -27
  834. package/theme/applyPrimeReactTheme.ts +0 -52
  835. package/theme/primeReactThemeStylesheet.ts +0 -32
@@ -2,29 +2,70 @@
2
2
  // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
3
 
4
4
  import { useState } from 'react';
5
- import { OrderList } from 'primereact/orderlist';
5
+ import { type UseOrderListProps, useOrderList } from '@primereact/headless/orderlist';
6
6
  import { RegisteredComponentProps } from '@cratis/scene.react';
7
7
  import { optionsProperty, stringProperty } from '../properties';
8
8
  import { SelectOption } from '../SelectOption';
9
+ import { toSelectOptions } from './selectOptions';
9
10
 
10
11
  /**
11
12
  * The `PrimeReact:orderList` component - a list the user reorders with the supplied controls.
12
13
  *
13
- * Reordering is the component's entire purpose, so the order has to live somewhere that survives a
14
- * re-render; the adapter keeps it locally, seeded from `items`.
14
+ * PrimeReact 11 ships no styled order list at all: what survives is `useOrderList`, a headless hook that
15
+ * owns the ordering, works out which moves are legal, and hands back ready-made props for the move
16
+ * buttons - but renders nothing. The presentation below is therefore this package's, not PrimeReact's,
17
+ * which is why it is written out in full rather than configured.
15
18
  *
16
- * In PrimeReact 11 this component becomes a hook rather than a component.
19
+ * Selection is the one piece the hook does not own. It reads `selection` and never writes it, and it
20
+ * compares entries by identity, so the adapter holds the selected options and the very same object
21
+ * references it passed in as the list. Reordering is the component's entire purpose, so the order has to
22
+ * survive a re-render too; it is seeded from `items` once and kept from there on.
17
23
  */
18
24
  export function PrimeOrderList({ element }: RegisteredComponentProps) {
19
- const [items, setItems] = useState<SelectOption[]>(optionsProperty(element, 'items'));
25
+ const [items, setItems] = useState<SelectOption[]>(() => optionsProperty(element, 'items'));
26
+ const [selection, setSelection] = useState<SelectOption[]>([]);
27
+ const orderListProps: UseOrderListProps<SelectOption> = {
28
+ value: items,
29
+ selection,
30
+ onValueChange: (event) => setItems(toSelectOptions(event.value)),
31
+ };
32
+ const orderList = useOrderList(orderListProps);
33
+ const header = stringProperty(element, 'header');
34
+
35
+ const toggle = (item: SelectOption) =>
36
+ setSelection((current) => (current.includes(item) ? current.filter((entry) => entry !== item) : [...current, item]));
37
+
20
38
  return (
21
- <OrderList
22
- data-scene-id={element.id}
23
- value={items}
24
- onChange={(event) => setItems(event.value)}
25
- dataKey='value'
26
- header={stringProperty(element, 'header')}
27
- itemTemplate={(item: SelectOption) => <span>{item.label}</span>}
28
- />
39
+ <div data-scene-id={element.id} className='flex gap-2' {...orderList.rootProps}>
40
+ <div className='flex flex-col gap-1' {...orderList.controlsProps}>
41
+ <button {...orderList.firstProps}>⤒</button>
42
+ <button {...orderList.prevProps}>↑</button>
43
+ <button {...orderList.nextProps}>↓</button>
44
+ <button {...orderList.lastProps}>⤓</button>
45
+ </div>
46
+ <div className='flex flex-col gap-1'>
47
+ {header !== undefined && <span className='font-semibold'>{header}</span>}
48
+ <ul
49
+ className='flex flex-col border'
50
+ role='listbox'
51
+ aria-multiselectable
52
+ ref={(node) => {
53
+ orderList.listRef.current = node;
54
+ }}
55
+ {...orderList.listProps}>
56
+ {items.map((item, index) => (
57
+ <li
58
+ key={item.value}
59
+ role='option'
60
+ aria-selected={selection.includes(item)}
61
+ className='cursor-pointer px-3 py-1'
62
+ onClick={() => toggle(item)}
63
+ {...orderList.getOptionProps(item, index)}>
64
+ {item.label}
65
+ </li>
66
+ ))}
67
+ </ul>
68
+ </div>
69
+ </div>
29
70
  );
30
71
  }
@@ -1,9 +1,10 @@
1
1
  // Copyright (c) Cratis. All rights reserved.
2
2
  // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
3
 
4
- import { OrganizationChart } from 'primereact/organizationchart';
4
+ import { OrganizationChart, type OrganizationChartNodeRow } from 'primereact/organizationchart';
5
5
  import { RegisteredComponentProps } from '@cratis/scene.react';
6
6
  import { treeNodesProperty } from '../treeNodes';
7
+ import { toPrimeTreeNodes } from './primeTreeNodes';
7
8
 
8
9
  /**
9
10
  * The `PrimeReact:organizationChart` component - a hierarchy drawn top-down as connected boxes.
@@ -11,13 +12,32 @@ import { treeNodesProperty } from '../treeNodes';
11
12
  * Takes the same node model as `tree` and `treeSelect`, so one authored hierarchy can be shown three
12
13
  * different ways without being restructured.
13
14
  *
14
- * The empty case is guarded because PrimeReact's OrganizationChart reads the root node's `expanded` flag
15
- * without checking there is a root, and throws on an empty `value`. An element whose nodes have not been
16
- * authored yet is an ordinary state on a screen under construction; taking the whole screen down for it
17
- * would be the wrong failure.
15
+ * PrimeReact 10 threw on an empty `value`: it read the root node's `expanded` flag without checking there
16
+ * was a root, so an element whose nodes had not been authored yet took the whole screen down with it, and
17
+ * this adapter had to guard against its own empty case. PrimeReact 11 defaults the node list everywhere
18
+ * it reads it, and `OrganizationChart.Nodes` simply renders an empty subtree, so the guard is gone and
19
+ * an unconfigured chart renders as nothing rather than as an exception.
20
+ *
21
+ * The node body is declared once and applied to every node by the root's own recursion - `Nodes` invokes
22
+ * this child for each root node and each expanded node hands the same function down to its children, so
23
+ * there is no depth to walk here.
18
24
  */
19
25
  export function PrimeOrganizationChart({ element }: RegisteredComponentProps) {
20
- const nodes = treeNodesProperty(element, 'nodes');
21
- if (nodes.length === 0) return <div data-scene-id={element.id} />;
22
- return <OrganizationChart data-scene-id={element.id} value={nodes} />;
26
+ return (
27
+ <OrganizationChart.Root data-scene-id={element.id} value={toPrimeTreeNodes(treeNodesProperty(element, 'nodes'))}>
28
+ <OrganizationChart.Nodes>
29
+ {(row: OrganizationChartNodeRow) => (
30
+ <OrganizationChart.Node uKey={row.node.key}>
31
+ <OrganizationChart.Content>
32
+ <OrganizationChart.Label />
33
+ </OrganizationChart.Content>
34
+ <OrganizationChart.Toggle>
35
+ <OrganizationChart.ToggleIndicator match='collapsed'>▾</OrganizationChart.ToggleIndicator>
36
+ <OrganizationChart.ToggleIndicator match='expanded'>▴</OrganizationChart.ToggleIndicator>
37
+ </OrganizationChart.Toggle>
38
+ </OrganizationChart.Node>
39
+ )}
40
+ </OrganizationChart.Nodes>
41
+ </OrganizationChart.Root>
42
+ );
23
43
  }
@@ -2,31 +2,33 @@
2
2
  // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
3
 
4
4
  import { useState } from 'react';
5
- import { Paginator } from 'primereact/paginator';
6
5
  import { RegisteredComponentProps } from '@cratis/scene.react';
7
6
  import { numberProperty } from '../properties';
7
+ import { Pagination } from './Pagination';
8
8
 
9
9
  /**
10
10
  * The `PrimeReact:paginator` component - page navigation for a list a screen paginates itself.
11
11
  *
12
12
  * Owns the current page locally so the control is operable in a preview; a Scene element has no place to
13
13
  * record which page the user is on.
14
+ *
15
+ * The authored `first` property still names a record offset, as it did in PrimeReact 10, but PrimeReact
16
+ * 11's paginator counts pages rather than records - so the offset is divided into a page number here,
17
+ * with the page size floored at one so an authored zero cannot turn that division into a NaN page.
18
+ * Keeping the property in record terms means a screen written for the previous version still lands on the
19
+ * page it asked for. `rowsPerPageOptions` has no counterpart in PrimeReact 11 and is not carried over:
20
+ * the new paginator has no rows-per-page control to put the options in.
14
21
  */
15
22
  export function PrimePaginator({ element }: RegisteredComponentProps) {
16
- const pageSize = numberProperty(element, 'pageSize', 10);
17
- const [first, setFirst] = useState(numberProperty(element, 'first', 0));
18
- const [rows, setRows] = useState(pageSize);
23
+ const pageSize = Math.max(numberProperty(element, 'pageSize', 10), 1);
24
+ const [page, setPage] = useState(() => Math.floor(numberProperty(element, 'first', 0) / pageSize) + 1);
19
25
  return (
20
- <Paginator
21
- data-scene-id={element.id}
22
- first={first}
23
- rows={rows}
24
- totalRecords={numberProperty(element, 'totalRecords', 0)}
25
- rowsPerPageOptions={[pageSize, pageSize * 2, pageSize * 5]}
26
- onPageChange={(event) => {
27
- setFirst(event.first);
28
- setRows(event.rows);
29
- }}
26
+ <Pagination
27
+ sceneId={element.id}
28
+ page={page}
29
+ total={numberProperty(element, 'totalRecords', 0)}
30
+ itemsPerPage={pageSize}
31
+ onPageChange={setPage}
30
32
  />
31
33
  );
32
34
  }
@@ -2,35 +2,72 @@
2
2
  // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
3
 
4
4
  import { useState } from 'react';
5
- import { PickList } from 'primereact/picklist';
5
+ import { type UsePickListProps, usePickList } from '@primereact/headless/picklist';
6
6
  import { RegisteredComponentProps } from '@cratis/scene.react';
7
7
  import { optionsProperty, stringProperty } from '../properties';
8
8
  import { SelectOption } from '../SelectOption';
9
+ import { toSelectOptions } from './selectOptions';
9
10
 
10
11
  /**
11
12
  * The `PrimeReact:pickList` component - two lists with items moved between them.
12
13
  *
13
- * Both sides are held locally for the same reason {@link PrimeOrderList} holds its order: moving items is
14
- * what the component does, and a Scene element cannot record the result.
14
+ * Like {@link PrimeOrderList}, this is built on a headless hook because PrimeReact 11 ships no styled
15
+ * pick list: `usePickList` decides what a move does to each side and which move buttons are live, and the
16
+ * markup below is this package's own.
15
17
  *
16
- * In PrimeReact 11 this component becomes a hook rather than a component.
18
+ * Both sides are held locally for the same reason the order list holds its order - moving items is what
19
+ * the component does, and a Scene element cannot record the result. Selection is held locally too, but
20
+ * for a different reason: the hook reads it and only ever *prunes* it, when a selected item leaves the
21
+ * side it was on, so something has to add to it when the user picks a row.
17
22
  */
18
23
  export function PrimePickList({ element }: RegisteredComponentProps) {
19
- const [source, setSource] = useState<SelectOption[]>(optionsProperty(element, 'source'));
20
- const [target, setTarget] = useState<SelectOption[]>(optionsProperty(element, 'target'));
24
+ const [source, setSource] = useState<SelectOption[]>(() => optionsProperty(element, 'source'));
25
+ const [target, setTarget] = useState<SelectOption[]>(() => optionsProperty(element, 'target'));
26
+ const [selection, setSelection] = useState<SelectOption[]>([]);
27
+ const pickListProps: UsePickListProps<SelectOption> = {
28
+ source,
29
+ target,
30
+ selection,
31
+ onValueChange: (event) => {
32
+ setSource(toSelectOptions(event.source));
33
+ setTarget(toSelectOptions(event.target));
34
+ },
35
+ onSelectionChange: (event) => setSelection(toSelectOptions(event.value)),
36
+ };
37
+ const pickList = usePickList(pickListProps);
38
+
39
+ const toggle = (item: SelectOption) =>
40
+ setSelection((current) => (current.includes(item) ? current.filter((entry) => entry !== item) : [...current, item]));
41
+
42
+ const list = (heading: string, items: SelectOption[], side: 'source' | 'target', listProps: Record<string, unknown>) => (
43
+ <div className='flex flex-col gap-1'>
44
+ <span className='font-semibold'>{heading}</span>
45
+ <ul className='flex flex-col border' role='listbox' aria-label={heading} aria-multiselectable {...listProps}>
46
+ {items.map((item, index) => (
47
+ <li
48
+ key={item.value}
49
+ role='option'
50
+ aria-selected={selection.includes(item)}
51
+ className='cursor-pointer px-3 py-1'
52
+ onClick={() => toggle(item)}
53
+ {...pickList.getOptionProps(item, index, side)}>
54
+ {item.label}
55
+ </li>
56
+ ))}
57
+ </ul>
58
+ </div>
59
+ );
60
+
21
61
  return (
22
- <PickList
23
- data-scene-id={element.id}
24
- source={source}
25
- target={target}
26
- onChange={(event) => {
27
- setSource(event.source);
28
- setTarget(event.target);
29
- }}
30
- dataKey='value'
31
- sourceHeader={stringProperty(element, 'sourceHeader', 'Available')}
32
- targetHeader={stringProperty(element, 'targetHeader', 'Selected')}
33
- itemTemplate={(item: SelectOption) => <span>{item.label}</span>}
34
- />
62
+ <div data-scene-id={element.id} className='flex gap-2' {...pickList.rootProps}>
63
+ {list(stringProperty(element, 'sourceHeader', 'Available'), source, 'source', pickList.sourceListProps)}
64
+ <div className='flex flex-col gap-1 self-center'>
65
+ <button {...pickList.moveToTargetProps}>›</button>
66
+ <button {...pickList.moveAllToTargetProps}>»</button>
67
+ <button {...pickList.moveToSourceProps}>‹</button>
68
+ <button {...pickList.moveAllToSourceProps}>«</button>
69
+ </div>
70
+ {list(stringProperty(element, 'targetHeader', 'Selected'), target, 'target', pickList.targetListProps)}
71
+ </div>
35
72
  );
36
73
  }
@@ -8,26 +8,61 @@ import { recordArrayProperty, stringProperty } from '../properties';
8
8
  /**
9
9
  * The `PrimeReact:timeline` component - events laid out along an axis.
10
10
  *
11
- * Supplies its own content and opposite templates from the `titleField`, `descriptionField` and
12
- * `dateField` properties, because Timeline renders only the connector line without them.
11
+ * PrimeReact 11 replaced the `value` / `content` / `opposite` render props with a composition: a root
12
+ * that carries only alignment and orientation, and event, opposite, separator, marker, connector and
13
+ * content parts the caller assembles per event. The adapter walks the events itself and builds that
14
+ * structure from the `titleField`, `descriptionField` and `dateField` properties.
15
+ *
16
+ * The connector is left off the last event on purpose - it is the line *between* two events, and drawing
17
+ * one after the final marker makes the timeline look truncated rather than finished.
18
+ *
19
+ * The authored property is still called `layout`, as in PrimeReact 10, even though the prop it feeds is
20
+ * now `orientation`; renaming it would break every screen for no gain the author can see.
13
21
  */
14
22
  export function PrimeTimeline({ element }: RegisteredComponentProps) {
15
23
  const titleField = stringProperty(element, 'titleField', 'title');
16
24
  const descriptionField = stringProperty(element, 'descriptionField', 'description');
17
25
  const dateField = stringProperty(element, 'dateField', 'date');
26
+ const events = recordArrayProperty(element, 'events');
27
+
18
28
  return (
19
- <Timeline
29
+ <Timeline.Root
20
30
  data-scene-id={element.id}
21
- value={recordArrayProperty(element, 'events')}
22
- align={stringProperty(element, 'align', 'left') as 'left' | 'right' | 'alternate' | 'top' | 'bottom'}
23
- layout={stringProperty(element, 'layout', 'vertical') as 'vertical' | 'horizontal'}
24
- opposite={(event: Record<string, unknown>) => <span className='text-sm opacity-75'>{String(event[dateField] ?? '')}</span>}
25
- content={(event: Record<string, unknown>) => (
26
- <div className='flex flex-col'>
27
- <span className='font-semibold'>{String(event[titleField] ?? '')}</span>
28
- <span className='text-sm opacity-75'>{String(event[descriptionField] ?? '')}</span>
29
- </div>
30
- )}
31
- />
31
+ align={alignmentOf(stringProperty(element, 'align', 'left'))}
32
+ orientation={orientationOf(stringProperty(element, 'layout', 'vertical'))}>
33
+ {events.map((event, index) => (
34
+ <Timeline.Event key={index}>
35
+ <Timeline.Opposite>
36
+ <span className='text-sm opacity-75'>{String(event[dateField] ?? '')}</span>
37
+ </Timeline.Opposite>
38
+ <Timeline.Separator>
39
+ <Timeline.Marker />
40
+ {index < events.length - 1 && <Timeline.Connector />}
41
+ </Timeline.Separator>
42
+ <Timeline.Content>
43
+ <div className='flex flex-col'>
44
+ <span className='font-semibold'>{String(event[titleField] ?? '')}</span>
45
+ <span className='text-sm opacity-75'>{String(event[descriptionField] ?? '')}</span>
46
+ </div>
47
+ </Timeline.Content>
48
+ </Timeline.Event>
49
+ ))}
50
+ </Timeline.Root>
32
51
  );
33
52
  }
53
+
54
+ function alignmentOf(value: string): 'left' | 'right' | 'alternate' | 'top' | 'bottom' {
55
+ switch (value) {
56
+ case 'right':
57
+ case 'alternate':
58
+ case 'top':
59
+ case 'bottom':
60
+ return value;
61
+ default:
62
+ return 'left';
63
+ }
64
+ }
65
+
66
+ function orientationOf(value: string): 'horizontal' | 'vertical' {
67
+ return value === 'horizontal' ? 'horizontal' : 'vertical';
68
+ }
@@ -1,21 +1,44 @@
1
1
  // Copyright (c) Cratis. All rights reserved.
2
2
  // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
3
 
4
- import { Tree } from 'primereact/tree';
4
+ import { Tree, type TreeNodeRow } from 'primereact/tree';
5
5
  import { RegisteredComponentProps } from '@cratis/scene.react';
6
6
  import { booleanProperty } from '../properties';
7
7
  import { treeNodesProperty } from '../treeNodes';
8
+ import { toPrimeTreeNodes } from './primeTreeNodes';
8
9
 
9
10
  /**
10
11
  * The `PrimeReact:tree` component - a hierarchy the user can expand and collapse.
12
+ *
13
+ * PrimeReact 11 renders the tree through a flat iterator: `Tree.Nodes` calls its child once per *visible*
14
+ * node, already flattened, and the indentation comes from a level custom property rather than from
15
+ * nesting. That is why this looks like a list even though it draws a tree - the recursion happens in the
16
+ * root, which resolves each node by key, and the adapter only has to say what one row looks like.
17
+ *
18
+ * The two toggle indicators are matched on state rather than swapped in code so that the collapsed and
19
+ * expanded glyphs are both declared up front; `Tree.Toggle` renders a spacer instead of a button for a
20
+ * leaf, which keeps every row's label on the same left edge.
11
21
  */
12
22
  export function PrimeTree({ element }: RegisteredComponentProps) {
13
23
  return (
14
- <Tree
24
+ <Tree.Root
15
25
  data-scene-id={element.id}
16
- value={treeNodesProperty(element, 'nodes')}
17
- filter={booleanProperty(element, 'filter', false)}
18
- selectionMode={booleanProperty(element, 'selectable', false) ? 'single' : undefined}
19
- />
26
+ value={toPrimeTreeNodes(treeNodesProperty(element, 'nodes'))}
27
+ selectionMode={booleanProperty(element, 'selectable', false) ? 'single' : undefined}>
28
+ {booleanProperty(element, 'filter', false) && <Tree.Filter as='input' placeholder='Search' />}
29
+ <Tree.Nodes>
30
+ {(row: TreeNodeRow) => (
31
+ <Tree.Node uKey={row.node.key}>
32
+ <Tree.Content>
33
+ <Tree.Toggle>
34
+ <Tree.ToggleIndicator match='collapsed'>▸</Tree.ToggleIndicator>
35
+ <Tree.ToggleIndicator match='expanded'>▾</Tree.ToggleIndicator>
36
+ </Tree.Toggle>
37
+ <Tree.Label>{row.node.label}</Tree.Label>
38
+ </Tree.Content>
39
+ </Tree.Node>
40
+ )}
41
+ </Tree.Nodes>
42
+ </Tree.Root>
20
43
  );
21
44
  }
@@ -19,9 +19,11 @@ import { ColumnDefinition } from './ColumnDefinition';
19
19
  * an empty grid they have to debug.
20
20
  *
21
21
  * Note that the children are read from `element.slots` - the *model* - and not from the rendered React
22
- * nodes the adapter is handed. PrimeReact's DataTable identifies its columns by React element type, so a
23
- * Scene adapter wrapping `Column` would not be recognized as one; reading the definitions off the model
24
- * and constructing real `Column` elements is what makes nested `column` children work at all.
22
+ * nodes the adapter is handed. Those nodes are `PrimeColumn` adapters produced by Scene's renderer, one
23
+ * level removed from the `Column` declarations they render, so no amount of inspecting them recovers the
24
+ * declaration. Reading the model instead is what makes nested `column` children work at all, and it is
25
+ * why this derivation survived PrimeReact 11 removing `primereact/column` unchanged: it never depended
26
+ * on the component in the first place.
25
27
  *
26
28
  * @param element The table element.
27
29
  * @param rows The rows the table will show, used for the inference step.
package/data/index.ts CHANGED
@@ -1,16 +1,15 @@
1
1
  // Copyright (c) Cratis. All rights reserved.
2
2
  // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
3
 
4
+ export * from './Column';
4
5
  export * from './ColumnDefinition';
5
6
  export * from './columnDefinitions';
6
7
  export * from './PrimeColumn';
7
8
  export * from './PrimeDataTable';
8
9
  export * from './PrimeDataView';
9
10
  export * from './PrimeTree';
10
- export * from './PrimeTreeTable';
11
11
  export * from './PrimeTimeline';
12
12
  export * from './PrimePaginator';
13
13
  export * from './PrimeOrderList';
14
14
  export * from './PrimePickList';
15
15
  export * from './PrimeOrganizationChart';
16
- export * from './PrimeVirtualScroller';
@@ -0,0 +1,68 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+
4
+ import { TreeNode } from '../TreeNode';
5
+
6
+ /**
7
+ * A node in the shape PrimeReact 11's tree and organization chart both accept.
8
+ *
9
+ * The one difference from Scene's own {@link TreeNode} is that `key` is required. PrimeReact 11 resolves
10
+ * every node by key - `Tree.Node` and `OrganizationChart.Node` take a `uKey` and look the node up rather
11
+ * than receiving it - so a node without one cannot be rendered at all, where in PrimeReact 10 it merely
12
+ * misbehaved. Scene's `TreeNode` keeps `key` optional because an author need not supply one; this type is
13
+ * where that optionality is discharged.
14
+ *
15
+ * Declared as a type alias rather than an interface on purpose: PrimeReact's node types carry an index
16
+ * signature for arbitrary extra data, and only a type alias is assignable to one.
17
+ */
18
+ export type PrimeTreeNode = {
19
+ /**
20
+ * Identity, unique across the whole tree.
21
+ */
22
+ key: string;
23
+
24
+ /**
25
+ * The text shown for the node.
26
+ */
27
+ label?: string;
28
+
29
+ /**
30
+ * An icon class shown beside the label.
31
+ */
32
+ icon?: string;
33
+
34
+ /**
35
+ * Child nodes. A node with no `children` is a leaf.
36
+ */
37
+ children?: PrimeTreeNode[];
38
+
39
+ /**
40
+ * Whatever the author attached to the node, carried through untouched.
41
+ */
42
+ data?: unknown;
43
+ };
44
+
45
+ /**
46
+ * Converts Scene's tree model into the node shape PrimeReact 11 renders.
47
+ *
48
+ * Synthesizes a key from the node's path when the author did not supply one, for the same reason
49
+ * `toTreeNodes` does: two siblings sharing a label must not share an identity, or expanding one expands
50
+ * the other. The path is stable across re-renders, so expansion and selection survive them.
51
+ *
52
+ * `expanded` and `selectable` are dropped rather than carried. PrimeReact 11 moved both off the node and
53
+ * onto the component - expansion is `defaultExpandedKeys` / `defaultCollapsedKeys`, selectability is the
54
+ * component's `selectionMode` - so a per-node flag has nowhere to land and would silently do nothing.
55
+ *
56
+ * @param nodes The Scene nodes to convert.
57
+ * @param parentKey The key of the node these belong to, used to build stable child keys.
58
+ * @returns The converted nodes, in order.
59
+ */
60
+ export function toPrimeTreeNodes(nodes: TreeNode[], parentKey = ''): PrimeTreeNode[] {
61
+ return nodes.map((node, index) => {
62
+ const { children, expanded, selectable, ...rest } = node;
63
+ const key = node.key ?? (parentKey === '' ? `${index}` : `${parentKey}-${index}`);
64
+ const converted: PrimeTreeNode = { ...rest, key };
65
+ if (children !== undefined) converted.children = toPrimeTreeNodes(children, key);
66
+ return converted;
67
+ });
68
+ }
@@ -0,0 +1,29 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+
4
+ import { SelectOption } from '../SelectOption';
5
+
6
+ /**
7
+ * Narrows the untyped item list a PrimeReact 11 headless list hook hands back into {@link SelectOption}s.
8
+ *
9
+ * The order list and pick list hooks are generic over their items but report changes as `unknown[]`,
10
+ * because they only ever move entries around and never look inside one. The adapters fed them
11
+ * `SelectOption`s and get the very same object references back, so this could have been a cast - but a
12
+ * cast would also sail through if a future hook ever synthesized an entry, and the failure would surface
13
+ * as a blank row rather than a missing one. Filtering on the shape keeps the untrusted boundary honest
14
+ * for the cost of one pass over a list the user is looking at.
15
+ *
16
+ * @param values The entries as the hook reported them.
17
+ * @returns The entries that are usable options, in order.
18
+ */
19
+ export function toSelectOptions(values: unknown[]): SelectOption[] {
20
+ return values.filter(
21
+ (value): value is SelectOption =>
22
+ typeof value === 'object' &&
23
+ value !== null &&
24
+ 'label' in value &&
25
+ typeof value.label === 'string' &&
26
+ 'value' in value &&
27
+ typeof value.value === 'string'
28
+ );
29
+ }
@@ -11,18 +11,42 @@ var properties = require('../properties.js');
11
11
  * `PrimeReact` resolves `button` to this one and records that it shadowed core's - which is the whole
12
12
  * point of override priority, and the reason a screen written against the fallback vocabulary gets a real
13
13
  * themed button the moment a component library is added to the profile, with no edit to the screen.
14
+ *
15
+ * PrimeReact 11 reshaped the props under it, and the adapter absorbs all of it so screens do not have to.
16
+ * `label` and `icon` are children now rather than props. The `outlined` and `text` booleans collapsed into
17
+ * a single `variant`, which is the better model - they were never combinable - and the authored booleans
18
+ * are still read and translated. `warning` became `warn`.
19
+ *
20
+ * `loading` is the one that could not simply be translated: v11 dropped it. The state still matters to a
21
+ * screen, so it is rebuilt from parts that exist - a spinning icon in place of the button's own, the
22
+ * button disabled so the action cannot be fired twice, and `aria-busy` so the state is announced rather
23
+ * than only drawn. The icon is marked decorative throughout because the label already names the action.
14
24
  */ function PrimeButton({ element, slots }) {
15
- return /*#__PURE__*/ jsxRuntime.jsx(button.Button, {
25
+ const icon = properties.stringProperty(element, 'icon');
26
+ const severity = properties.severityProperty(element, 'severity');
27
+ const loading = properties.booleanProperty(element, 'loading', false);
28
+ let variant;
29
+ if (properties.booleanProperty(element, 'outlined', false)) variant = 'outlined';
30
+ else if (properties.booleanProperty(element, 'text', false)) variant = 'text';
31
+ return /*#__PURE__*/ jsxRuntime.jsxs(button.Button, {
16
32
  "data-scene-id": element.id,
17
- label: properties.stringProperty(element, 'label'),
18
- icon: properties.stringProperty(element, 'icon'),
19
- severity: properties.stringProperty(element, 'severity'),
20
- outlined: properties.booleanProperty(element, 'outlined', false),
21
- text: properties.booleanProperty(element, 'text', false),
33
+ severity: severity,
34
+ variant: variant,
22
35
  rounded: properties.booleanProperty(element, 'rounded', false),
23
- loading: properties.booleanProperty(element, 'loading', false),
24
- disabled: properties.booleanProperty(element, 'disabled', false),
25
- children: slots.content
36
+ disabled: loading || properties.booleanProperty(element, 'disabled', false),
37
+ "aria-busy": loading,
38
+ children: [
39
+ loading && /*#__PURE__*/ jsxRuntime.jsx("i", {
40
+ className: "pi pi-spinner pi-spin",
41
+ "aria-hidden": "true"
42
+ }),
43
+ !loading && icon !== undefined && /*#__PURE__*/ jsxRuntime.jsx("i", {
44
+ className: icon,
45
+ "aria-hidden": "true"
46
+ }),
47
+ properties.stringProperty(element, 'label'),
48
+ slots.content
49
+ ]
26
50
  });
27
51
  }
28
52
 
@@ -1 +1 @@
1
- {"version":3,"file":"PrimeButton.js","sources":["../../../button/PrimeButton.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { Button } from 'primereact/button';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { booleanProperty, stringProperty } from '../properties';\n\n/**\n * The `PrimeReact:button` component.\n *\n * Deliberately claims the same bare name `core` already declares. A `ui profile` listing `core` and then\n * `PrimeReact` resolves `button` to this one and records that it shadowed core's - which is the whole\n * point of override priority, and the reason a screen written against the fallback vocabulary gets a real\n * themed button the moment a component library is added to the profile, with no edit to the screen.\n */\nexport function PrimeButton({ element, slots }: RegisteredComponentProps) {\n return (\n <Button\n data-scene-id={element.id}\n label={stringProperty(element, 'label')}\n icon={stringProperty(element, 'icon')}\n severity={stringProperty(element, 'severity') as 'secondary' | 'success' | 'info' | 'warning' | 'danger' | 'help' | undefined}\n outlined={booleanProperty(element, 'outlined', false)}\n text={booleanProperty(element, 'text', false)}\n rounded={booleanProperty(element, 'rounded', false)}\n loading={booleanProperty(element, 'loading', false)}\n disabled={booleanProperty(element, 'disabled', false)}>\n {slots.content}\n </Button>\n );\n}\n"],"names":["PrimeButton","element","slots","_jsx","Button","data-scene-id","id","label","stringProperty","icon","severity","outlined","booleanProperty","text","rounded","loading","disabled","content"],"mappings":";;;;;;AAOA;;;;;;;AAOC,IACM,SAASA,WAAAA,CAAY,EAAEC,OAAO,EAAEC,KAAK,EAA4B,EAAA;AACpE,IAAA,qBACIC,cAAA,CAACC,aAAAA,EAAAA;AACGC,QAAAA,eAAAA,EAAeJ,QAAQK,EAAE;AACzBC,QAAAA,KAAAA,EAAOC,0BAAeP,OAAAA,EAAS,OAAA,CAAA;AAC/BQ,QAAAA,IAAAA,EAAMD,0BAAeP,OAAAA,EAAS,MAAA,CAAA;AAC9BS,QAAAA,QAAAA,EAAUF,0BAAeP,OAAAA,EAAS,UAAA,CAAA;QAClCU,QAAAA,EAAUC,0BAAAA,CAAgBX,SAAS,UAAA,EAAY,KAAA,CAAA;QAC/CY,IAAAA,EAAMD,0BAAAA,CAAgBX,SAAS,MAAA,EAAQ,KAAA,CAAA;QACvCa,OAAAA,EAASF,0BAAAA,CAAgBX,SAAS,SAAA,EAAW,KAAA,CAAA;QAC7Cc,OAAAA,EAASH,0BAAAA,CAAgBX,SAAS,SAAA,EAAW,KAAA,CAAA;QAC7Ce,QAAAA,EAAUJ,0BAAAA,CAAgBX,SAAS,UAAA,EAAY,KAAA,CAAA;AAC9CC,QAAAA,QAAAA,EAAAA,KAAAA,CAAMe;;AAGnB;;;;"}
1
+ {"version":3,"file":"PrimeButton.js","sources":["../../../button/PrimeButton.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { Button } from 'primereact/button';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport {booleanProperty, severityProperty, stringProperty} from '../properties';\n\n/**\n * The `PrimeReact:button` component.\n *\n * Deliberately claims the same bare name `core` already declares. A `ui profile` listing `core` and then\n * `PrimeReact` resolves `button` to this one and records that it shadowed core's - which is the whole\n * point of override priority, and the reason a screen written against the fallback vocabulary gets a real\n * themed button the moment a component library is added to the profile, with no edit to the screen.\n *\n * PrimeReact 11 reshaped the props under it, and the adapter absorbs all of it so screens do not have to.\n * `label` and `icon` are children now rather than props. The `outlined` and `text` booleans collapsed into\n * a single `variant`, which is the better model - they were never combinable - and the authored booleans\n * are still read and translated. `warning` became `warn`.\n *\n * `loading` is the one that could not simply be translated: v11 dropped it. The state still matters to a\n * screen, so it is rebuilt from parts that exist - a spinning icon in place of the button's own, the\n * button disabled so the action cannot be fired twice, and `aria-busy` so the state is announced rather\n * than only drawn. The icon is marked decorative throughout because the label already names the action.\n */\nexport function PrimeButton({ element, slots }: RegisteredComponentProps) {\n const icon = stringProperty(element, 'icon');\n const severity = severityProperty(element, 'severity');\n const loading = booleanProperty(element, 'loading', false);\n\n let variant: 'link' | 'text' | 'outlined' | undefined;\n if (booleanProperty(element, 'outlined', false)) variant = 'outlined';\n else if (booleanProperty(element, 'text', false)) variant = 'text';\n\n return (\n <Button\n data-scene-id={element.id}\n severity={severity}\n variant={variant}\n rounded={booleanProperty(element, 'rounded', false)}\n disabled={loading || booleanProperty(element, 'disabled', false)}\n aria-busy={loading}>\n {loading && <i className='pi pi-spinner pi-spin' aria-hidden='true' />}\n {!loading && icon !== undefined && <i className={icon} aria-hidden='true' />}\n {stringProperty(element, 'label')}\n {slots.content}\n </Button>\n );\n}\n"],"names":["PrimeButton","element","slots","icon","stringProperty","severity","severityProperty","loading","booleanProperty","variant","_jsxs","Button","data-scene-id","id","rounded","disabled","aria-busy","_jsx","i","className","aria-hidden","undefined","content"],"mappings":";;;;;;AAOA;;;;;;;;;;;;;;;;;AAiBC,IACM,SAASA,WAAAA,CAAY,EAAEC,OAAO,EAAEC,KAAK,EAA4B,EAAA;IACpE,MAAMC,IAAAA,GAAOC,0BAAeH,OAAAA,EAAS,MAAA,CAAA;IACrC,MAAMI,QAAAA,GAAWC,4BAAiBL,OAAAA,EAAS,UAAA,CAAA;IAC3C,MAAMM,OAAAA,GAAUC,0BAAAA,CAAgBP,OAAAA,EAAS,SAAA,EAAW,KAAA,CAAA;IAEpD,IAAIQ,OAAAA;AACJ,IAAA,IAAID,0BAAAA,CAAgBP,OAAAA,EAAS,UAAA,EAAY,KAAA,CAAA,EAAQQ,OAAAA,GAAU,UAAA;AACtD,SAAA,IAAID,0BAAAA,CAAgBP,OAAAA,EAAS,MAAA,EAAQ,KAAA,CAAA,EAAQQ,OAAAA,GAAU,MAAA;AAE5D,IAAA,qBACIC,eAAA,CAACC,aAAAA,EAAAA;AACGC,QAAAA,eAAAA,EAAeX,QAAQY,EAAE;QACzBR,QAAAA,EAAUA,QAAAA;QACVI,OAAAA,EAASA,OAAAA;QACTK,OAAAA,EAASN,0BAAAA,CAAgBP,SAAS,SAAA,EAAW,KAAA,CAAA;QAC7Cc,QAAAA,EAAUR,OAAAA,IAAWC,0BAAAA,CAAgBP,OAAAA,EAAS,UAAA,EAAY,KAAA,CAAA;QAC1De,WAAAA,EAAWT,OAAAA;;AACVA,YAAAA,OAAAA,kBAAWU,cAAA,CAACC,GAAAA,EAAAA;gBAAEC,SAAAA,EAAU,uBAAA;gBAAwBC,aAAAA,EAAY;;YAC5D,CAACb,OAAAA,IAAWJ,IAAAA,KAASkB,SAAAA,kBAAaJ,cAAA,CAACC,GAAAA,EAAAA;gBAAEC,SAAAA,EAAWhB,IAAAA;gBAAMiB,aAAAA,EAAY;;AAClEhB,YAAAA,yBAAAA,CAAeH,OAAAA,EAAS,OAAA,CAAA;AACxBC,YAAAA,KAAAA,CAAMoB;;;AAGnB;;;;"}