@cratis/scene.primereact 1.1.0 → 2.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 +19 -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
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+
5
+ // Copyright (c) Cratis. All rights reserved.
6
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
7
+ /**
8
+ * The inside of one menu entry - its icon and its label - without the element that makes it selectable.
9
+ *
10
+ * Seven of the components in this folder are Cratis-owned replacements for menus PrimeReact 11 removed,
11
+ * and each of them wraps an entry in a different element: a menubar puts it in a button, a tiered menu in
12
+ * a list row, a dock in an icon-only control. What never differs is the inside, so it is written once
13
+ * here instead of seven times, where six copies would eventually drift apart.
14
+ *
15
+ * Sharing it also settles one accessibility decision in a single place rather than repeatedly: the label
16
+ * already carries the meaning, so the icon beside it is decoration and is hidden from assistive
17
+ * technology. Left to each component, that is exactly the kind of detail one of them would quietly get
18
+ * wrong.
19
+ */ function MenuItemContent({ item }) {
20
+ return /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
21
+ children: [
22
+ item.icon !== undefined && /*#__PURE__*/ jsxRuntime.jsx("i", {
23
+ className: item.icon,
24
+ "aria-hidden": "true"
25
+ }),
26
+ item.label !== undefined && /*#__PURE__*/ jsxRuntime.jsx("span", {
27
+ children: item.label
28
+ })
29
+ ]
30
+ });
31
+ }
32
+
33
+ exports.MenuItemContent = MenuItemContent;
34
+ //# sourceMappingURL=MenuItemContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuItemContent.js","sources":["../../../menu/MenuItemContent.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 { MenuItem } from '../MenuItem';\n\n/**\n * The configuration {@link MenuItemContent} takes.\n */\nexport interface MenuItemContentProps {\n /**\n * The entry whose icon and label to show.\n */\n item: MenuItem;\n}\n\n/**\n * The inside of one menu entry - its icon and its label - without the element that makes it selectable.\n *\n * Seven of the components in this folder are Cratis-owned replacements for menus PrimeReact 11 removed,\n * and each of them wraps an entry in a different element: a menubar puts it in a button, a tiered menu in\n * a list row, a dock in an icon-only control. What never differs is the inside, so it is written once\n * here instead of seven times, where six copies would eventually drift apart.\n *\n * Sharing it also settles one accessibility decision in a single place rather than repeatedly: the label\n * already carries the meaning, so the icon beside it is decoration and is hidden from assistive\n * technology. Left to each component, that is exactly the kind of detail one of them would quietly get\n * wrong.\n */\nexport function MenuItemContent({ item }: MenuItemContentProps) {\n return (\n <>\n {item.icon !== undefined && <i className={item.icon} aria-hidden='true' />}\n {item.label !== undefined && <span>{item.label}</span>}\n </>\n );\n}\n"],"names":["MenuItemContent","item","_jsxs","_Fragment","icon","undefined","_jsx","i","className","aria-hidden","label","span"],"mappings":";;;;AAAA;AACA;AAcA;;;;;;;;;;;;AAYC,IACM,SAASA,eAAAA,CAAgB,EAAEC,IAAI,EAAwB,EAAA;IAC1D,qBACIC,eAAA,CAAAC,mBAAA,EAAA;;YACKF,IAAAA,CAAKG,IAAI,KAAKC,SAAAA,kBAAaC,cAAA,CAACC,GAAAA,EAAAA;AAAEC,gBAAAA,SAAAA,EAAWP,KAAKG,IAAI;gBAAEK,aAAAA,EAAY;;YAChER,IAAAA,CAAKS,KAAK,KAAKL,SAAAA,kBAAaC,cAAA,CAACK,MAAAA,EAAAA;AAAMV,gBAAAA,QAAAA,EAAAA,IAAAA,CAAKS;;;;AAGrD;;;;"}
@@ -0,0 +1,139 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var react = require('react');
5
+ var MenuItemAction = require('./MenuItemAction.js');
6
+ var MenuItemContent = require('./MenuItemContent.js');
7
+
8
+ const barStyle = {
9
+ background: 'var(--scene-surface-card)',
10
+ border: '1px solid var(--scene-surface-border)',
11
+ borderRadius: 'var(--scene-content-border-radius)',
12
+ color: 'var(--scene-text-color)'
13
+ };
14
+ const triggerStyle = {
15
+ background: 'transparent',
16
+ border: 'none',
17
+ color: 'inherit',
18
+ cursor: 'pointer',
19
+ font: 'inherit',
20
+ textDecoration: 'none'
21
+ };
22
+ const panelStyle = {
23
+ position: 'absolute',
24
+ top: '100%',
25
+ left: 0,
26
+ zIndex: 1,
27
+ minWidth: '12rem',
28
+ background: 'var(--scene-surface-overlay)',
29
+ border: '1px solid var(--scene-surface-border)',
30
+ borderRadius: 'var(--scene-content-border-radius)'
31
+ };
32
+ const panelItemStyle = {
33
+ ...triggerStyle,
34
+ width: '100%',
35
+ textAlign: 'left'
36
+ };
37
+ const separatorStyle = {
38
+ border: 'none',
39
+ borderTop: '1px solid var(--scene-surface-border)',
40
+ margin: 0
41
+ };
42
+ /**
43
+ * A horizontal bar of commands, each of which may drop down a panel of its children. Cratis-owned.
44
+ *
45
+ * This exists because PrimeReact 11 removed `primereact/menubar` outright, with no successor component
46
+ * and no headless hook to rebuild it from - unlike `menu`, `breadcrumb` and `contextmenu`, which survived
47
+ * as compositional part namespaces. Scene still has to render an element authored as a menubar, so the
48
+ * component is Scene's now. It follows `ActionMenubar` in `@cratis/components`, which is the same answer
49
+ * Cratis already reached for its own bar of actions after the v11 removal.
50
+ *
51
+ * What it deliberately does not carry over from the v10 `Menubar`: submenus nest exactly one level rather
52
+ * than arbitrarily deep (author a `tieredMenu` when a third level is genuinely needed); panels open on
53
+ * click only, never on hover; there is no responsive collapse to a hamburger at narrow widths; there is
54
+ * no roving-focus keyboard model across the bar, only the tab order and Escape the browser and this
55
+ * component give for free; and item templates are not supported, since a Scene item model has no place to
56
+ * put a React node.
57
+ *
58
+ * A panel does close when the pointer goes elsewhere on the page. That is not a feature carried over so
59
+ * much as the absence of a defect - a dropdown that survives a click on the rest of the screen is broken,
60
+ * not minimal.
61
+ */ function Menubar({ items = [], start, end, ...rest }) {
62
+ const [openIndex, setOpenIndex] = react.useState(undefined);
63
+ react.useEffect(()=>{
64
+ const close = ()=>setOpenIndex(undefined);
65
+ document.addEventListener('click', close);
66
+ return ()=>document.removeEventListener('click', close);
67
+ }, []);
68
+ return /*#__PURE__*/ jsxRuntime.jsxs("div", {
69
+ ...rest,
70
+ className: "relative flex items-center gap-2 p-3",
71
+ style: barStyle,
72
+ onKeyDown: (event)=>{
73
+ if (event.key === 'Escape') setOpenIndex(undefined);
74
+ },
75
+ children: [
76
+ start,
77
+ /*#__PURE__*/ jsxRuntime.jsx("div", {
78
+ role: "menubar",
79
+ className: "flex items-center gap-2",
80
+ children: items.map((item, index)=>{
81
+ const children = item.items ?? [];
82
+ return /*#__PURE__*/ jsxRuntime.jsx("div", {
83
+ role: "none",
84
+ className: "relative",
85
+ children: children.length > 0 ? /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
86
+ children: [
87
+ /*#__PURE__*/ jsxRuntime.jsxs("button", {
88
+ type: "button",
89
+ role: "menuitem",
90
+ className: "inline-flex items-center gap-2",
91
+ style: triggerStyle,
92
+ disabled: item.disabled,
93
+ "aria-haspopup": "true",
94
+ "aria-expanded": openIndex === index,
95
+ onClick: (event)=>{
96
+ event.stopPropagation();
97
+ setOpenIndex(openIndex === index ? undefined : index);
98
+ },
99
+ children: [
100
+ /*#__PURE__*/ jsxRuntime.jsx(MenuItemContent.MenuItemContent, {
101
+ item: item
102
+ }),
103
+ /*#__PURE__*/ jsxRuntime.jsx("i", {
104
+ className: "pi pi-angle-down",
105
+ "aria-hidden": "true"
106
+ })
107
+ ]
108
+ }),
109
+ openIndex === index && /*#__PURE__*/ jsxRuntime.jsx("div", {
110
+ role: "menu",
111
+ "aria-label": item.label,
112
+ className: "flex flex-col",
113
+ style: panelStyle,
114
+ children: children.map((child, childIndex)=>child.separator === true ? /*#__PURE__*/ jsxRuntime.jsx("hr", {
115
+ style: separatorStyle
116
+ }, childIndex) : /*#__PURE__*/ jsxRuntime.jsx(MenuItemAction.MenuItemAction, {
117
+ item: child,
118
+ role: "menuitem",
119
+ className: "flex items-center gap-2 p-3",
120
+ style: panelItemStyle
121
+ }, childIndex))
122
+ })
123
+ ]
124
+ }) : /*#__PURE__*/ jsxRuntime.jsx(MenuItemAction.MenuItemAction, {
125
+ item: item,
126
+ role: "menuitem",
127
+ className: "inline-flex items-center gap-2",
128
+ style: triggerStyle
129
+ })
130
+ }, index);
131
+ })
132
+ }),
133
+ end
134
+ ]
135
+ });
136
+ }
137
+
138
+ exports.Menubar = Menubar;
139
+ //# sourceMappingURL=Menubar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menubar.js","sources":["../../../menu/Menubar.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 { CSSProperties, HTMLAttributes, ReactNode, useEffect, useState } from 'react';\nimport { MenuItem } from '../MenuItem';\nimport { MenuItemAction } from './MenuItemAction';\nimport { MenuItemContent } from './MenuItemContent';\n\nconst barStyle: CSSProperties = {\n background: 'var(--scene-surface-card)',\n border: '1px solid var(--scene-surface-border)',\n borderRadius: 'var(--scene-content-border-radius)',\n color: 'var(--scene-text-color)',\n};\n\nconst triggerStyle: CSSProperties = {\n background: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'pointer',\n font: 'inherit',\n textDecoration: 'none',\n};\n\nconst panelStyle: CSSProperties = {\n position: 'absolute',\n top: '100%',\n left: 0,\n zIndex: 1,\n minWidth: '12rem',\n background: 'var(--scene-surface-overlay)',\n border: '1px solid var(--scene-surface-border)',\n borderRadius: 'var(--scene-content-border-radius)',\n};\n\nconst panelItemStyle: CSSProperties = { ...triggerStyle, width: '100%', textAlign: 'left' };\n\nconst separatorStyle: CSSProperties = { border: 'none', borderTop: '1px solid var(--scene-surface-border)', margin: 0 };\n\n/**\n * The configuration {@link Menubar} takes.\n */\nexport interface MenubarProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * The commands to show, top level across the bar and one level of children in a dropdown.\n */\n items?: MenuItem[];\n\n /**\n * Content pinned before the commands - branding, in a real application.\n */\n start?: ReactNode;\n\n /**\n * Content pinned after the commands - account and status controls, in a real application.\n */\n end?: ReactNode;\n}\n\n/**\n * A horizontal bar of commands, each of which may drop down a panel of its children. Cratis-owned.\n *\n * This exists because PrimeReact 11 removed `primereact/menubar` outright, with no successor component\n * and no headless hook to rebuild it from - unlike `menu`, `breadcrumb` and `contextmenu`, which survived\n * as compositional part namespaces. Scene still has to render an element authored as a menubar, so the\n * component is Scene's now. It follows `ActionMenubar` in `@cratis/components`, which is the same answer\n * Cratis already reached for its own bar of actions after the v11 removal.\n *\n * What it deliberately does not carry over from the v10 `Menubar`: submenus nest exactly one level rather\n * than arbitrarily deep (author a `tieredMenu` when a third level is genuinely needed); panels open on\n * click only, never on hover; there is no responsive collapse to a hamburger at narrow widths; there is\n * no roving-focus keyboard model across the bar, only the tab order and Escape the browser and this\n * component give for free; and item templates are not supported, since a Scene item model has no place to\n * put a React node.\n *\n * A panel does close when the pointer goes elsewhere on the page. That is not a feature carried over so\n * much as the absence of a defect - a dropdown that survives a click on the rest of the screen is broken,\n * not minimal.\n */\nexport function Menubar({ items = [], start, end, ...rest }: MenubarProps) {\n const [openIndex, setOpenIndex] = useState<number | undefined>(undefined);\n\n useEffect(() => {\n const close = () => setOpenIndex(undefined);\n document.addEventListener('click', close);\n return () => document.removeEventListener('click', close);\n }, []);\n\n return (\n <div\n {...rest}\n className='relative flex items-center gap-2 p-3'\n style={barStyle}\n onKeyDown={(event) => {\n if (event.key === 'Escape') setOpenIndex(undefined);\n }}>\n {start}\n <div role='menubar' className='flex items-center gap-2'>\n {items.map((item, index) => {\n const children = item.items ?? [];\n\n return (\n <div key={index} role='none' className='relative'>\n {children.length > 0 ? (\n <>\n <button\n type='button'\n role='menuitem'\n className='inline-flex items-center gap-2'\n style={triggerStyle}\n disabled={item.disabled}\n aria-haspopup='true'\n aria-expanded={openIndex === index}\n onClick={(event) => {\n event.stopPropagation();\n setOpenIndex(openIndex === index ? undefined : index);\n }}>\n <MenuItemContent item={item} />\n <i className='pi pi-angle-down' aria-hidden='true' />\n </button>\n {openIndex === index && (\n <div role='menu' aria-label={item.label} className='flex flex-col' style={panelStyle}>\n {children.map((child, childIndex) =>\n child.separator === true ? (\n <hr key={childIndex} style={separatorStyle} />\n ) : (\n <MenuItemAction\n key={childIndex}\n item={child}\n role='menuitem'\n className='flex items-center gap-2 p-3'\n style={panelItemStyle}\n />\n )\n )}\n </div>\n )}\n </>\n ) : (\n <MenuItemAction item={item} role='menuitem' className='inline-flex items-center gap-2' style={triggerStyle} />\n )}\n </div>\n );\n })}\n </div>\n {end}\n </div>\n );\n}\n"],"names":["barStyle","background","border","borderRadius","color","triggerStyle","cursor","font","textDecoration","panelStyle","position","top","left","zIndex","minWidth","panelItemStyle","width","textAlign","separatorStyle","borderTop","margin","Menubar","items","start","end","rest","openIndex","setOpenIndex","useState","undefined","useEffect","close","document","addEventListener","removeEventListener","_jsxs","div","className","style","onKeyDown","event","key","_jsx","role","map","item","index","children","length","_Fragment","button","type","disabled","aria-haspopup","aria-expanded","onClick","stopPropagation","MenuItemContent","i","aria-hidden","aria-label","label","child","childIndex","separator","hr","MenuItemAction"],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var accordion = require('primereact/accordion');
5
+ var MenuItemAction = require('./MenuItemAction.js');
6
+ var MenuItemContent = require('./MenuItemContent.js');
7
+
8
+ // Copyright (c) Cratis. All rights reserved.
9
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
10
+ const rootStyle = {
11
+ color: 'var(--scene-text-color)',
12
+ width: '16rem'
13
+ };
14
+ const headerStyle = {
15
+ background: 'var(--scene-surface-card)',
16
+ border: '1px solid var(--scene-surface-border)',
17
+ borderRadius: 'var(--scene-content-border-radius)',
18
+ color: 'inherit',
19
+ cursor: 'pointer',
20
+ font: 'inherit',
21
+ justifyContent: 'space-between',
22
+ textAlign: 'left',
23
+ textDecoration: 'none',
24
+ width: '100%'
25
+ };
26
+ const listStyle = {
27
+ listStyle: 'none',
28
+ margin: 0,
29
+ padding: 0
30
+ };
31
+ const childStyle = {
32
+ background: 'transparent',
33
+ border: 'none',
34
+ color: 'inherit',
35
+ cursor: 'pointer',
36
+ font: 'inherit',
37
+ textAlign: 'left',
38
+ textDecoration: 'none',
39
+ width: '100%'
40
+ };
41
+ /**
42
+ * A vertical menu whose sections expand in place, accordion style. Cratis-owned.
43
+ *
44
+ * This exists because PrimeReact 11 removed `primereact/panelmenu` outright. Unlike the other removals in
45
+ * this folder, though, the mechanism it needed did survive: `primereact/accordion` is exactly the
46
+ * expand-collapse behavior a panel menu is, so this composes the v11 `Accordion` parts rather than
47
+ * hand-rolling open state. That is worth doing rather than clever - the accordion already brings the
48
+ * `aria-expanded` and `aria-controls` wiring between a trigger and its content, the disabled handling, and
49
+ * the single-versus-multiple open policy, and every one of those is a thing a hand-rolled version would
50
+ * get subtly wrong. What is Cratis's here is only the mapping from a Scene item model onto those parts.
51
+ *
52
+ * What it deliberately does not carry over from the v10 `PanelMenu`: sections expand exactly one level
53
+ * deep rather than nesting arbitrarily, because an accordion panel holds content and not another
54
+ * accordion; there is no keyboard model beyond the accordion's own; and item templates are not supported.
55
+ */ function PanelMenu({ items = [], multiple = false, ...rest }) {
56
+ return /*#__PURE__*/ jsxRuntime.jsx(accordion.Accordion.Root, {
57
+ ...rest,
58
+ multiple: multiple,
59
+ className: "flex flex-col gap-1",
60
+ style: rootStyle,
61
+ children: items.map((item, index)=>{
62
+ const children = item.items ?? [];
63
+ if (children.length === 0) return /*#__PURE__*/ jsxRuntime.jsx(MenuItemAction.MenuItemAction, {
64
+ item: item,
65
+ className: "flex items-center gap-2 p-3",
66
+ style: headerStyle
67
+ }, index);
68
+ return /*#__PURE__*/ jsxRuntime.jsxs(accordion.Accordion.Panel, {
69
+ value: String(index),
70
+ disabled: item.disabled,
71
+ children: [
72
+ /*#__PURE__*/ jsxRuntime.jsx(accordion.Accordion.Header, {
73
+ children: /*#__PURE__*/ jsxRuntime.jsxs(accordion.Accordion.Trigger, {
74
+ className: "flex items-center gap-2 p-3",
75
+ style: headerStyle,
76
+ children: [
77
+ /*#__PURE__*/ jsxRuntime.jsx(MenuItemContent.MenuItemContent, {
78
+ item: item
79
+ }),
80
+ /*#__PURE__*/ jsxRuntime.jsx(accordion.Accordion.Indicator, {
81
+ children: /*#__PURE__*/ jsxRuntime.jsx("i", {
82
+ className: "pi pi-chevron-down",
83
+ "aria-hidden": "true"
84
+ })
85
+ })
86
+ ]
87
+ })
88
+ }),
89
+ /*#__PURE__*/ jsxRuntime.jsx(accordion.Accordion.Content, {
90
+ children: /*#__PURE__*/ jsxRuntime.jsx("ul", {
91
+ role: "menu",
92
+ "aria-label": item.label,
93
+ style: listStyle,
94
+ children: children.map((child, childIndex)=>/*#__PURE__*/ jsxRuntime.jsx("li", {
95
+ role: "none",
96
+ children: /*#__PURE__*/ jsxRuntime.jsx(MenuItemAction.MenuItemAction, {
97
+ item: child,
98
+ role: "menuitem",
99
+ className: "flex items-center gap-2 p-3",
100
+ style: childStyle
101
+ })
102
+ }, childIndex))
103
+ })
104
+ })
105
+ ]
106
+ }, index);
107
+ })
108
+ });
109
+ }
110
+
111
+ exports.PanelMenu = PanelMenu;
112
+ //# sourceMappingURL=PanelMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PanelMenu.js","sources":["../../../menu/PanelMenu.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 { CSSProperties, HTMLAttributes } from 'react';\nimport { Accordion } from 'primereact/accordion';\nimport { MenuItem } from '../MenuItem';\nimport { MenuItemAction } from './MenuItemAction';\nimport { MenuItemContent } from './MenuItemContent';\n\nconst rootStyle: CSSProperties = { color: 'var(--scene-text-color)', width: '16rem' };\n\nconst headerStyle: CSSProperties = {\n background: 'var(--scene-surface-card)',\n border: '1px solid var(--scene-surface-border)',\n borderRadius: 'var(--scene-content-border-radius)',\n color: 'inherit',\n cursor: 'pointer',\n font: 'inherit',\n justifyContent: 'space-between',\n textAlign: 'left',\n textDecoration: 'none',\n width: '100%',\n};\n\nconst listStyle: CSSProperties = { listStyle: 'none', margin: 0, padding: 0 };\n\nconst childStyle: CSSProperties = {\n background: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'pointer',\n font: 'inherit',\n textAlign: 'left',\n textDecoration: 'none',\n width: '100%',\n};\n\n/**\n * The configuration {@link PanelMenu} takes.\n *\n * `defaultValue` is omitted from the inherited attributes because the props are spread onto\n * `Accordion.Root`, which has a `defaultValue` of its own meaning \"the panels open to begin with\".\n * `HTMLAttributes` declares the form-control `defaultValue` (which includes `readonly string[]`), and the\n * two are not assignable. Dropping it is the honest resolution: a `<div>` has no default value, so nothing\n * is lost, and leaving both in scope would let a caller set one and silently get the other.\n */\nexport interface PanelMenuProps extends Omit<HTMLAttributes<HTMLDivElement>, 'defaultValue'> {\n /**\n * The commands to show. A top-level entry with children becomes an expandable panel; one without\n * stays a plain row.\n */\n items?: MenuItem[];\n\n /**\n * Whether more than one panel may be open at once.\n */\n multiple?: boolean;\n}\n\n/**\n * A vertical menu whose sections expand in place, accordion style. Cratis-owned.\n *\n * This exists because PrimeReact 11 removed `primereact/panelmenu` outright. Unlike the other removals in\n * this folder, though, the mechanism it needed did survive: `primereact/accordion` is exactly the\n * expand-collapse behavior a panel menu is, so this composes the v11 `Accordion` parts rather than\n * hand-rolling open state. That is worth doing rather than clever - the accordion already brings the\n * `aria-expanded` and `aria-controls` wiring between a trigger and its content, the disabled handling, and\n * the single-versus-multiple open policy, and every one of those is a thing a hand-rolled version would\n * get subtly wrong. What is Cratis's here is only the mapping from a Scene item model onto those parts.\n *\n * What it deliberately does not carry over from the v10 `PanelMenu`: sections expand exactly one level\n * deep rather than nesting arbitrarily, because an accordion panel holds content and not another\n * accordion; there is no keyboard model beyond the accordion's own; and item templates are not supported.\n */\nexport function PanelMenu({ items = [], multiple = false, ...rest }: PanelMenuProps) {\n return (\n <Accordion.Root {...rest} multiple={multiple} className='flex flex-col gap-1' style={rootStyle}>\n {items.map((item, index) => {\n const children = item.items ?? [];\n\n if (children.length === 0) return <MenuItemAction key={index} item={item} className='flex items-center gap-2 p-3' style={headerStyle} />;\n\n return (\n <Accordion.Panel key={index} value={String(index)} disabled={item.disabled}>\n <Accordion.Header>\n <Accordion.Trigger className='flex items-center gap-2 p-3' style={headerStyle}>\n <MenuItemContent item={item} />\n <Accordion.Indicator>\n <i className='pi pi-chevron-down' aria-hidden='true' />\n </Accordion.Indicator>\n </Accordion.Trigger>\n </Accordion.Header>\n <Accordion.Content>\n <ul role='menu' aria-label={item.label} style={listStyle}>\n {children.map((child, childIndex) => (\n <li key={childIndex} role='none'>\n <MenuItemAction item={child} role='menuitem' className='flex items-center gap-2 p-3' style={childStyle} />\n </li>\n ))}\n </ul>\n </Accordion.Content>\n </Accordion.Panel>\n );\n })}\n </Accordion.Root>\n );\n}\n"],"names":["rootStyle","color","width","headerStyle","background","border","borderRadius","cursor","font","justifyContent","textAlign","textDecoration","listStyle","margin","padding","childStyle","PanelMenu","items","multiple","rest","_jsx","Accordion","Root","className","style","map","item","index","children","length","MenuItemAction","_jsxs","Panel","value","String","disabled","Header","Trigger","MenuItemContent","Indicator","i","aria-hidden","Content","ul","role","aria-label","label","child","childIndex","li"],"mappings":"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"}
@@ -1,23 +1,85 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
+ var react = require('react');
4
5
  var breadcrumb = require('primereact/breadcrumb');
5
6
  var menuItems = require('../menuItems.js');
6
7
  var properties = require('../properties.js');
8
+ var MenuItemContent = require('./MenuItemContent.js');
7
9
 
10
+ /**
11
+ * One entry in the trail, as the strongest thing the authored data supports.
12
+ *
13
+ * The three cases are genuinely different to assistive technology and only one of them is a link. Where
14
+ * the user already is gets `Breadcrumb.Current`, which carries `aria-current="page"` and is what tells a
15
+ * screen reader the trail has ended - a trailing link says the opposite. An earlier entry that names a
16
+ * target is a link. An earlier entry that names none is plain text, because an anchor with no `href` is
17
+ * not focusable and only looks like a link.
18
+ *
19
+ * @param item The entry to render.
20
+ * @param current Whether this is the last entry, and so where the user is now.
21
+ * @returns The rendered entry.
22
+ */ function breadcrumbEntry(item, current) {
23
+ if (current) {
24
+ return /*#__PURE__*/ jsxRuntime.jsx(breadcrumb.Breadcrumb.Current, {
25
+ children: /*#__PURE__*/ jsxRuntime.jsx(MenuItemContent.MenuItemContent, {
26
+ item: item
27
+ })
28
+ });
29
+ }
30
+ if (item.url === undefined) return /*#__PURE__*/ jsxRuntime.jsx(MenuItemContent.MenuItemContent, {
31
+ item: item
32
+ });
33
+ return /*#__PURE__*/ jsxRuntime.jsx(breadcrumb.Breadcrumb.Link, {
34
+ href: item.url,
35
+ children: /*#__PURE__*/ jsxRuntime.jsx(MenuItemContent.MenuItemContent, {
36
+ item: item
37
+ })
38
+ });
39
+ }
8
40
  /**
9
41
  * The `PrimeReact:breadcrumb` component - the path to where the user currently is.
10
42
  *
11
- * The home entry is separate from the trail in PrimeReact's model, so it is read from its own `homeUrl`
43
+ * The home entry is separate from the trail in the authored model, so it is read from its own `homeUrl`
12
44
  * property and always rendered as an icon.
45
+ *
46
+ * PrimeReact 11 replaced the single `BreadCrumb` component and its `model`/`home` props with a namespace
47
+ * of parts, so the trail is assembled here. The parts are worth assembling rather than working around:
48
+ * the root is a `nav` carrying an accessible name, the list is an ordered list, and every separator is
49
+ * marked presentational so it is never read out as part of the path. The old `model` prop produced all of
50
+ * that too, but only because the component decided it - none of it is something a hand-rolled trail would
51
+ * reliably reproduce.
13
52
  */ function PrimeBreadcrumb({ element }) {
14
- return /*#__PURE__*/ jsxRuntime.jsx(breadcrumb.BreadCrumb, {
53
+ const items = menuItems.menuItemsProperty(element, 'items');
54
+ return /*#__PURE__*/ jsxRuntime.jsx(breadcrumb.Breadcrumb.Root, {
15
55
  "data-scene-id": element.id,
16
- model: menuItems.menuItemsProperty(element, 'items'),
17
- home: {
18
- icon: 'pi pi-home',
19
- url: properties.stringProperty(element, 'homeUrl', '/')
20
- }
56
+ children: /*#__PURE__*/ jsxRuntime.jsxs(breadcrumb.Breadcrumb.List, {
57
+ children: [
58
+ /*#__PURE__*/ jsxRuntime.jsx(breadcrumb.Breadcrumb.Item, {
59
+ children: /*#__PURE__*/ jsxRuntime.jsx(breadcrumb.Breadcrumb.Link, {
60
+ href: properties.stringProperty(element, 'homeUrl', '/'),
61
+ "aria-label": "Home",
62
+ children: /*#__PURE__*/ jsxRuntime.jsx("i", {
63
+ className: "pi pi-home",
64
+ "aria-hidden": "true"
65
+ })
66
+ })
67
+ }),
68
+ items.map((item, index)=>/*#__PURE__*/ jsxRuntime.jsxs(react.Fragment, {
69
+ children: [
70
+ /*#__PURE__*/ jsxRuntime.jsx(breadcrumb.Breadcrumb.Separator, {
71
+ children: /*#__PURE__*/ jsxRuntime.jsx("i", {
72
+ className: "pi pi-angle-right",
73
+ "aria-hidden": "true"
74
+ })
75
+ }),
76
+ /*#__PURE__*/ jsxRuntime.jsx(breadcrumb.Breadcrumb.Item, {
77
+ children: breadcrumbEntry(item, index === items.length - 1)
78
+ })
79
+ ]
80
+ }, index))
81
+ ]
82
+ })
21
83
  });
22
84
  }
23
85
 
@@ -1 +1 @@
1
- {"version":3,"file":"PrimeBreadcrumb.js","sources":["../../../menu/PrimeBreadcrumb.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 { BreadCrumb } from 'primereact/breadcrumb';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { menuItemsProperty } from '../menuItems';\nimport { stringProperty } from '../properties';\n\n/**\n * The `PrimeReact:breadcrumb` component - the path to where the user currently is.\n *\n * The home entry is separate from the trail in PrimeReact's model, so it is read from its own `homeUrl`\n * property and always rendered as an icon.\n */\nexport function PrimeBreadcrumb({ element }: RegisteredComponentProps) {\n return (\n <BreadCrumb\n data-scene-id={element.id}\n model={menuItemsProperty(element, 'items')}\n home={{ icon: 'pi pi-home', url: stringProperty(element, 'homeUrl', '/') }}\n />\n );\n}\n"],"names":["PrimeBreadcrumb","element","_jsx","BreadCrumb","data-scene-id","id","model","menuItemsProperty","home","icon","url","stringProperty"],"mappings":";;;;;;;AAQA;;;;;AAKC,IACM,SAASA,eAAAA,CAAgB,EAAEC,OAAO,EAA4B,EAAA;AACjE,IAAA,qBACIC,cAAA,CAACC,qBAAAA,EAAAA;AACGC,QAAAA,eAAAA,EAAeH,QAAQI,EAAE;AACzBC,QAAAA,KAAAA,EAAOC,4BAAkBN,OAAAA,EAAS,OAAA,CAAA;QAClCO,IAAAA,EAAM;YAAEC,IAAAA,EAAM,YAAA;YAAcC,GAAAA,EAAKC,yBAAAA,CAAeV,SAAS,SAAA,EAAW,GAAA;AAAK;;AAGrF;;;;"}
1
+ {"version":3,"file":"PrimeBreadcrumb.js","sources":["../../../menu/PrimeBreadcrumb.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 { Fragment, ReactNode } from 'react';\nimport { Breadcrumb } from 'primereact/breadcrumb';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { MenuItem } from '../MenuItem';\nimport { menuItemsProperty } from '../menuItems';\nimport { stringProperty } from '../properties';\nimport { MenuItemContent } from './MenuItemContent';\n\n/**\n * One entry in the trail, as the strongest thing the authored data supports.\n *\n * The three cases are genuinely different to assistive technology and only one of them is a link. Where\n * the user already is gets `Breadcrumb.Current`, which carries `aria-current=\"page\"` and is what tells a\n * screen reader the trail has ended - a trailing link says the opposite. An earlier entry that names a\n * target is a link. An earlier entry that names none is plain text, because an anchor with no `href` is\n * not focusable and only looks like a link.\n *\n * @param item The entry to render.\n * @param current Whether this is the last entry, and so where the user is now.\n * @returns The rendered entry.\n */\nfunction breadcrumbEntry(item: MenuItem, current: boolean): ReactNode {\n if (current) {\n return (\n <Breadcrumb.Current>\n <MenuItemContent item={item} />\n </Breadcrumb.Current>\n );\n }\n\n if (item.url === undefined) return <MenuItemContent item={item} />;\n\n return (\n <Breadcrumb.Link href={item.url}>\n <MenuItemContent item={item} />\n </Breadcrumb.Link>\n );\n}\n\n/**\n * The `PrimeReact:breadcrumb` component - the path to where the user currently is.\n *\n * The home entry is separate from the trail in the authored model, so it is read from its own `homeUrl`\n * property and always rendered as an icon.\n *\n * PrimeReact 11 replaced the single `BreadCrumb` component and its `model`/`home` props with a namespace\n * of parts, so the trail is assembled here. The parts are worth assembling rather than working around:\n * the root is a `nav` carrying an accessible name, the list is an ordered list, and every separator is\n * marked presentational so it is never read out as part of the path. The old `model` prop produced all of\n * that too, but only because the component decided it - none of it is something a hand-rolled trail would\n * reliably reproduce.\n */\nexport function PrimeBreadcrumb({ element }: RegisteredComponentProps) {\n const items = menuItemsProperty(element, 'items');\n\n return (\n <Breadcrumb.Root data-scene-id={element.id}>\n <Breadcrumb.List>\n <Breadcrumb.Item>\n <Breadcrumb.Link href={stringProperty(element, 'homeUrl', '/')} aria-label='Home'>\n <i className='pi pi-home' aria-hidden='true' />\n </Breadcrumb.Link>\n </Breadcrumb.Item>\n {items.map((item, index) => (\n <Fragment key={index}>\n <Breadcrumb.Separator>\n <i className='pi pi-angle-right' aria-hidden='true' />\n </Breadcrumb.Separator>\n <Breadcrumb.Item>{breadcrumbEntry(item, index === items.length - 1)}</Breadcrumb.Item>\n </Fragment>\n ))}\n </Breadcrumb.List>\n </Breadcrumb.Root>\n );\n}\n"],"names":["breadcrumbEntry","item","current","_jsx","Breadcrumb","Current","MenuItemContent","url","undefined","Link","href","PrimeBreadcrumb","element","items","menuItemsProperty","Root","data-scene-id","id","_jsxs","List","Item","stringProperty","aria-label","i","className","aria-hidden","map","index","Fragment","Separator","length"],"mappings":";;;;;;;;;AAWA;;;;;;;;;;;;AAYC,IACD,SAASA,eAAAA,CAAgBC,IAAc,EAAEC,OAAgB,EAAA;AACrD,IAAA,IAAIA,OAAAA,EAAS;QACT,qBACIC,cAAA,CAACC,sBAAWC,OAAO,EAAA;AACf,YAAA,QAAA,gBAAAF,cAAA,CAACG,+BAAAA,EAAAA;gBAAgBL,IAAAA,EAAMA;;;AAGnC,IAAA;AAEA,IAAA,IAAIA,IAAAA,CAAKM,GAAG,KAAKC,SAAAA,EAAW,qBAAOL,cAAA,CAACG,+BAAAA,EAAAA;QAAgBL,IAAAA,EAAMA;;IAE1D,qBACIE,cAAA,CAACC,sBAAWK,IAAI,EAAA;AAACC,QAAAA,IAAAA,EAAMT,KAAKM,GAAG;AAC3B,QAAA,QAAA,gBAAAJ,cAAA,CAACG,+BAAAA,EAAAA;YAAgBL,IAAAA,EAAMA;;;AAGnC;AAEA;;;;;;;;;;;;AAYC,IACM,SAASU,eAAAA,CAAgB,EAAEC,OAAO,EAA4B,EAAA;IACjE,MAAMC,KAAAA,GAAQC,4BAAkBF,OAAAA,EAAS,OAAA,CAAA;IAEzC,qBACIT,cAAA,CAACC,sBAAWW,IAAI,EAAA;AAACC,QAAAA,eAAAA,EAAeJ,QAAQK,EAAE;gCACtCC,eAAA,CAACd,sBAAWe,IAAI,EAAA;;AACZ,8BAAAhB,cAAA,CAACC,sBAAWgB,IAAI,EAAA;4CACZjB,cAAA,CAACC,sBAAWK,IAAI,EAAA;wBAACC,IAAAA,EAAMW,yBAAAA,CAAeT,SAAS,SAAA,EAAW,GAAA,CAAA;wBAAMU,YAAAA,EAAW,MAAA;AACvE,wBAAA,QAAA,gBAAAnB,cAAA,CAACoB,GAAAA,EAAAA;4BAAEC,SAAAA,EAAU,YAAA;4BAAaC,aAAAA,EAAY;;;;AAG7CZ,gBAAAA,KAAAA,CAAMa,GAAG,CAAC,CAACzB,IAAAA,EAAM0B,sBACdT,eAAA,CAACU,cAAAA,EAAAA;;AACG,0CAAAzB,cAAA,CAACC,sBAAWyB,SAAS,EAAA;AACjB,gCAAA,QAAA,gBAAA1B,cAAA,CAACoB,GAAAA,EAAAA;oCAAEC,SAAAA,EAAU,mBAAA;oCAAoBC,aAAAA,EAAY;;;AAEjD,0CAAAtB,cAAA,CAACC,sBAAWgB,IAAI,EAAA;AAAEpB,gCAAAA,QAAAA,EAAAA,eAAAA,CAAgBC,IAAAA,EAAM0B,KAAAA,KAAUd,KAAAA,CAAMiB,MAAM,GAAG,CAAA;;;AAJtDH,qBAAAA,EAAAA,KAAAA,CAAAA;;;;AAUnC;;;;"}
@@ -1,29 +1,53 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
- var react = require('react');
5
4
  var contextmenu = require('primereact/contextmenu');
6
5
  var menuItems = require('../menuItems.js');
7
6
  var properties = require('../properties.js');
7
+ var MenuItemContent = require('./MenuItemContent.js');
8
8
 
9
9
  /**
10
10
  * The `PrimeReact:contextMenu` component - commands revealed by right-clicking a region.
11
11
  *
12
- * ContextMenu is opened by a caller reacting to a context-menu event, so the adapter renders the region
13
- * that owns that event as well. Without it the menu could never be opened and the element would render
14
- * as nothing at all.
12
+ * The adapter renders the region that owns the context-menu event as well as the menu itself. Without it
13
+ * the menu could never be opened and the element would render as nothing at all.
14
+ *
15
+ * What changed in PrimeReact 11 is who owns that event. In v10 the menu was one component and the caller
16
+ * had to hold a ref to it and call `show(event)` from its own `onContextMenu` handler. In v11
17
+ * `ContextMenu.Trigger` is a part that already carries the handler, the `aria-haspopup` and the expanded
18
+ * state, so the ref and the hand-written handler are both gone - the region is now declared as the
19
+ * trigger rather than wired to the menu after the fact.
20
+ *
21
+ * The overlay is spelled out as portal, positioner and popup because those are separate parts now. That is
22
+ * not ceremony: the positioner is what keeps the menu on screen near the pointer, and it renders nothing
23
+ * at all until the menu is actually open, which is what makes an unopened context menu cost nothing.
15
24
  */ function PrimeContextMenu({ element, slots }) {
16
- const menu = react.useRef(null);
17
- return /*#__PURE__*/ jsxRuntime.jsxs("div", {
25
+ const items = menuItems.menuItemsProperty(element, 'items');
26
+ return /*#__PURE__*/ jsxRuntime.jsxs(contextmenu.ContextMenu.Root, {
18
27
  "data-scene-id": element.id,
19
- onContextMenu: (event)=>menu.current?.show(event),
20
28
  children: [
21
- /*#__PURE__*/ jsxRuntime.jsx(contextmenu.ContextMenu, {
22
- ref: menu,
23
- model: menuItems.menuItemsProperty(element, 'items')
29
+ /*#__PURE__*/ jsxRuntime.jsx(contextmenu.ContextMenu.Trigger, {
30
+ children: slots.content?.length ? slots.content : /*#__PURE__*/ jsxRuntime.jsx("span", {
31
+ children: properties.stringProperty(element, 'label', 'Right-click here')
32
+ })
24
33
  }),
25
- slots.content?.length ? slots.content : /*#__PURE__*/ jsxRuntime.jsx("span", {
26
- children: properties.stringProperty(element, 'label', 'Right-click here')
34
+ /*#__PURE__*/ jsxRuntime.jsx(contextmenu.ContextMenu.Portal, {
35
+ children: /*#__PURE__*/ jsxRuntime.jsx(contextmenu.ContextMenu.Positioner, {
36
+ children: /*#__PURE__*/ jsxRuntime.jsx(contextmenu.ContextMenu.Popup, {
37
+ children: /*#__PURE__*/ jsxRuntime.jsx(contextmenu.ContextMenu.List, {
38
+ children: items.map((item, index)=>item.separator === true ? /*#__PURE__*/ jsxRuntime.jsx(contextmenu.ContextMenu.Separator, {}, index) : /*#__PURE__*/ jsxRuntime.jsx(contextmenu.ContextMenu.Item, {
39
+ value: `${index}`,
40
+ as: item.url === undefined ? 'div' : 'a',
41
+ href: item.url,
42
+ disabled: item.disabled,
43
+ onSelect: ()=>item.command?.(),
44
+ children: /*#__PURE__*/ jsxRuntime.jsx(MenuItemContent.MenuItemContent, {
45
+ item: item
46
+ })
47
+ }, index))
48
+ })
49
+ })
50
+ })
27
51
  })
28
52
  ]
29
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PrimeContextMenu.js","sources":["../../../menu/PrimeContextMenu.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 { useRef } from 'react';\nimport { ContextMenu } from 'primereact/contextmenu';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { menuItemsProperty } from '../menuItems';\nimport { stringProperty } from '../properties';\n\n/**\n * The `PrimeReact:contextMenu` component - commands revealed by right-clicking a region.\n *\n * ContextMenu is opened by a caller reacting to a context-menu event, so the adapter renders the region\n * that owns that event as well. Without it the menu could never be opened and the element would render\n * as nothing at all.\n */\nexport function PrimeContextMenu({ element, slots }: RegisteredComponentProps) {\n const menu = useRef<ContextMenu>(null);\n return (\n <div data-scene-id={element.id} onContextMenu={(event) => menu.current?.show(event)}>\n <ContextMenu ref={menu} model={menuItemsProperty(element, 'items')} />\n {slots.content?.length ? slots.content : <span>{stringProperty(element, 'label', 'Right-click here')}</span>}\n </div>\n );\n}\n"],"names":["PrimeContextMenu","element","slots","menu","useRef","_jsxs","div","data-scene-id","id","onContextMenu","event","current","show","_jsx","ContextMenu","ref","model","menuItemsProperty","content","length","span","stringProperty"],"mappings":";;;;;;;;AASA;;;;;;AAMC,IACM,SAASA,gBAAAA,CAAiB,EAAEC,OAAO,EAAEC,KAAK,EAA4B,EAAA;AACzE,IAAA,MAAMC,OAAOC,YAAAA,CAAoB,IAAA,CAAA;AACjC,IAAA,qBACIC,eAAA,CAACC,KAAAA,EAAAA;AAAIC,QAAAA,eAAAA,EAAeN,QAAQO,EAAE;AAAEC,QAAAA,aAAAA,EAAe,CAACC,KAAAA,GAAUP,IAAAA,CAAKQ,OAAO,EAAEC,IAAAA,CAAKF,KAAAA,CAAAA;;0BACzEG,cAAA,CAACC,uBAAAA,EAAAA;gBAAYC,GAAAA,EAAKZ,IAAAA;AAAMa,gBAAAA,KAAAA,EAAOC,4BAAkBhB,OAAAA,EAAS,OAAA;;AACzDC,YAAAA,KAAAA,CAAMgB,OAAO,EAAEC,MAAAA,GAASjB,KAAAA,CAAMgB,OAAO,iBAAGL,cAAA,CAACO,MAAAA,EAAAA;AAAMC,gBAAAA,QAAAA,EAAAA,yBAAAA,CAAepB,SAAS,OAAA,EAAS,kBAAA;;;;AAG7F;;;;"}
1
+ {"version":3,"file":"PrimeContextMenu.js","sources":["../../../menu/PrimeContextMenu.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 { ContextMenu } from 'primereact/contextmenu';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { menuItemsProperty } from '../menuItems';\nimport { stringProperty } from '../properties';\nimport { MenuItemContent } from './MenuItemContent';\n\n/**\n * The `PrimeReact:contextMenu` component - commands revealed by right-clicking a region.\n *\n * The adapter renders the region that owns the context-menu event as well as the menu itself. Without it\n * the menu could never be opened and the element would render as nothing at all.\n *\n * What changed in PrimeReact 11 is who owns that event. In v10 the menu was one component and the caller\n * had to hold a ref to it and call `show(event)` from its own `onContextMenu` handler. In v11\n * `ContextMenu.Trigger` is a part that already carries the handler, the `aria-haspopup` and the expanded\n * state, so the ref and the hand-written handler are both gone - the region is now declared as the\n * trigger rather than wired to the menu after the fact.\n *\n * The overlay is spelled out as portal, positioner and popup because those are separate parts now. That is\n * not ceremony: the positioner is what keeps the menu on screen near the pointer, and it renders nothing\n * at all until the menu is actually open, which is what makes an unopened context menu cost nothing.\n */\nexport function PrimeContextMenu({ element, slots }: RegisteredComponentProps) {\n const items = menuItemsProperty(element, 'items');\n\n return (\n <ContextMenu.Root data-scene-id={element.id}>\n <ContextMenu.Trigger>\n {slots.content?.length ? slots.content : <span>{stringProperty(element, 'label', 'Right-click here')}</span>}\n </ContextMenu.Trigger>\n <ContextMenu.Portal>\n <ContextMenu.Positioner>\n <ContextMenu.Popup>\n <ContextMenu.List>\n {items.map((item, index) =>\n item.separator === true ? (\n <ContextMenu.Separator key={index} />\n ) : (\n <ContextMenu.Item\n key={index}\n value={`${index}`}\n as={item.url === undefined ? 'div' : 'a'}\n href={item.url}\n disabled={item.disabled}\n onSelect={() => item.command?.()}>\n <MenuItemContent item={item} />\n </ContextMenu.Item>\n )\n )}\n </ContextMenu.List>\n </ContextMenu.Popup>\n </ContextMenu.Positioner>\n </ContextMenu.Portal>\n </ContextMenu.Root>\n );\n}\n"],"names":["PrimeContextMenu","element","slots","items","menuItemsProperty","_jsxs","ContextMenu","Root","data-scene-id","id","_jsx","Trigger","content","length","span","stringProperty","Portal","Positioner","Popup","List","map","item","index","separator","Separator","Item","value","as","url","undefined","href","disabled","onSelect","command","MenuItemContent"],"mappings":";;;;;;;;AASA;;;;;;;;;;;;;;;AAeC,IACM,SAASA,gBAAAA,CAAiB,EAAEC,OAAO,EAAEC,KAAK,EAA4B,EAAA;IACzE,MAAMC,KAAAA,GAAQC,4BAAkBH,OAAAA,EAAS,OAAA,CAAA;IAEzC,qBACII,eAAA,CAACC,wBAAYC,IAAI,EAAA;AAACC,QAAAA,eAAAA,EAAeP,QAAQQ,EAAE;;AACvC,0BAAAC,cAAA,CAACJ,wBAAYK,OAAO,EAAA;AACfT,gBAAAA,QAAAA,EAAAA,KAAAA,CAAMU,OAAO,EAAEC,MAAAA,GAASX,KAAAA,CAAMU,OAAO,iBAAGF,cAAA,CAACI,MAAAA,EAAAA;AAAMC,oBAAAA,QAAAA,EAAAA,yBAAAA,CAAed,SAAS,OAAA,EAAS,kBAAA;;;AAErF,0BAAAS,cAAA,CAACJ,wBAAYU,MAAM,EAAA;wCACfN,cAAA,CAACJ,wBAAYW,UAAU,EAAA;4CACnBP,cAAA,CAACJ,wBAAYY,KAAK,EAAA;gDACdR,cAAA,CAACJ,wBAAYa,IAAI,EAAA;AACZhB,4BAAAA,QAAAA,EAAAA,KAAAA,CAAMiB,GAAG,CAAC,CAACC,IAAAA,EAAMC,KAAAA,GACdD,KAAKE,SAAS,KAAK,IAAA,iBACfb,cAAA,CAACJ,wBAAYkB,SAAS,EAAA,EAAA,EAAMF,KAAAA,CAAAA,iBAE5BZ,cAAA,CAACJ,wBAAYmB,IAAI,EAAA;AAEbC,oCAAAA,KAAAA,EAAO,GAAGJ,KAAAA,CAAAA,CAAO;AACjBK,oCAAAA,EAAAA,EAAIN,IAAAA,CAAKO,GAAG,KAAKC,SAAAA,GAAY,KAAA,GAAQ,GAAA;AACrCC,oCAAAA,IAAAA,EAAMT,KAAKO,GAAG;AACdG,oCAAAA,QAAAA,EAAUV,KAAKU,QAAQ;oCACvBC,QAAAA,EAAU,IAAMX,KAAKY,OAAO,IAAA;AAC5B,oCAAA,QAAA,gBAAAvB,cAAA,CAACwB,+BAAAA,EAAAA;wCAAgBb,IAAAA,EAAMA;;AANlBC,iCAAAA,EAAAA,KAAAA,CAAAA;;;;;;;AAgB7C;;;;"}
@@ -1,24 +1,51 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
- var dock = require('primereact/dock');
5
4
  var menuItems = require('../menuItems.js');
6
5
  var properties = require('../properties.js');
6
+ var Dock = require('./Dock.js');
7
+ var DockPosition = require('./DockPosition.js');
7
8
 
9
+ // Copyright (c) Cratis. All rights reserved.
10
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
8
11
  /**
9
- * The `PrimeReact:dock` component - a macOS-style dock of magnifying icons.
12
+ * Narrows an authored `position` onto the edges a dock can actually be anchored to.
10
13
  *
11
- * Dock positions itself absolutely against its nearest positioned ancestor, so it is wrapped in a sized
12
- * relative box; dropped straight into a Scene tree it would otherwise pin itself to the page.
14
+ * A screen's properties are authored data rather than compiler-checked values, so an unrecognized edge is
15
+ * an ordinary thing to encounter. Falling back to the bottom edge - the dock's own default - keeps a
16
+ * mistyped property behaving exactly like an absent one, which is the rule every reader in this package
17
+ * follows.
13
18
  *
14
- * In PrimeReact 11 this component is removed with no direct replacement.
19
+ * @param value The authored position.
20
+ * @returns The matching edge, or the bottom edge when the value names none.
21
+ */ function dockPosition(value) {
22
+ switch(value){
23
+ case DockPosition.DockPosition.Top:
24
+ return DockPosition.DockPosition.Top;
25
+ case DockPosition.DockPosition.Left:
26
+ return DockPosition.DockPosition.Left;
27
+ case DockPosition.DockPosition.Right:
28
+ return DockPosition.DockPosition.Right;
29
+ default:
30
+ return DockPosition.DockPosition.Bottom;
31
+ }
32
+ }
33
+ /**
34
+ * The `PrimeReact:dock` component - a strip of icons anchored to one edge.
35
+ *
36
+ * PrimeReact 11 removed `dock` with nothing to replace it, so what this adapts is Scene's own
37
+ * {@link Dock}. The magnifying effect that made v10's dock recognizable is not part of the replacement;
38
+ * what a screen actually depends on is a row of icon commands pinned to an edge, and that is what remains.
39
+ *
40
+ * A dock positions itself absolutely against its nearest positioned ancestor, so it is wrapped in a sized
41
+ * relative box here; dropped straight into a Scene tree it would otherwise pin itself to the page.
15
42
  */ function PrimeDock({ element }) {
16
43
  return /*#__PURE__*/ jsxRuntime.jsx("div", {
17
44
  "data-scene-id": element.id,
18
45
  className: "relative h-40 w-full",
19
- children: /*#__PURE__*/ jsxRuntime.jsx(dock.Dock, {
20
- model: menuItems.menuItemsProperty(element, 'items'),
21
- position: properties.stringProperty(element, 'position', 'bottom')
46
+ children: /*#__PURE__*/ jsxRuntime.jsx(Dock.Dock, {
47
+ items: menuItems.menuItemsProperty(element, 'items'),
48
+ position: dockPosition(properties.stringProperty(element, 'position', DockPosition.DockPosition.Bottom))
22
49
  })
23
50
  });
24
51
  }