@cimpress-ui/react 0.3.0 → 1.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 (709) hide show
  1. package/README.md +0 -2
  2. package/dist/commonjs/components/alert/alert.d.ts +25 -0
  3. package/dist/commonjs/components/alert/alert.d.ts.map +1 -0
  4. package/dist/commonjs/components/alert/alert.js +51 -0
  5. package/dist/commonjs/components/alert/alert.js.map +1 -0
  6. package/dist/commonjs/components/alert-dialog/alert-dialog.d.ts +51 -0
  7. package/dist/commonjs/components/alert-dialog/alert-dialog.d.ts.map +1 -0
  8. package/dist/commonjs/components/alert-dialog/alert-dialog.js +26 -0
  9. package/dist/commonjs/components/alert-dialog/alert-dialog.js.map +1 -0
  10. package/dist/commonjs/components/app-header/app-header.d.ts +20 -0
  11. package/dist/commonjs/components/app-header/app-header.d.ts.map +1 -0
  12. package/dist/commonjs/components/app-header/app-header.js +26 -0
  13. package/dist/commonjs/components/app-header/app-header.js.map +1 -0
  14. package/dist/commonjs/components/app-header/cimpress-logo.d.ts +2 -0
  15. package/dist/commonjs/components/app-header/cimpress-logo.d.ts.map +1 -0
  16. package/dist/commonjs/components/app-header/cimpress-logo.js +9 -0
  17. package/dist/commonjs/components/app-header/cimpress-logo.js.map +1 -0
  18. package/dist/commonjs/components/app-header/simple-auth-tool.d.ts +29 -0
  19. package/dist/commonjs/components/app-header/simple-auth-tool.d.ts.map +1 -0
  20. package/dist/commonjs/components/app-header/simple-auth-tool.js +31 -0
  21. package/dist/commonjs/components/app-header/simple-auth-tool.js.map +1 -0
  22. package/dist/commonjs/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  23. package/dist/commonjs/components/breadcrumbs/breadcrumbs.js +17 -1
  24. package/dist/commonjs/components/breadcrumbs/breadcrumbs.js.map +1 -1
  25. package/dist/commonjs/components/button/button.d.ts.map +1 -1
  26. package/dist/commonjs/components/button/button.js +3 -3
  27. package/dist/commonjs/components/button/button.js.map +1 -1
  28. package/dist/commonjs/components/button/icon-button.d.ts.map +1 -1
  29. package/dist/commonjs/components/button/icon-button.js +3 -3
  30. package/dist/commonjs/components/button/icon-button.js.map +1 -1
  31. package/dist/commonjs/components/button/icon-link-button.js +1 -1
  32. package/dist/commonjs/components/button/icon-link-button.js.map +1 -1
  33. package/dist/commonjs/components/button/link-button.js +1 -1
  34. package/dist/commonjs/components/button/link-button.js.map +1 -1
  35. package/dist/commonjs/components/button/types.js.map +1 -1
  36. package/dist/commonjs/components/callout/callout.d.ts +27 -0
  37. package/dist/commonjs/components/callout/callout.d.ts.map +1 -0
  38. package/dist/commonjs/components/callout/callout.js +46 -0
  39. package/dist/commonjs/components/callout/callout.js.map +1 -0
  40. package/dist/commonjs/components/card/card.d.ts +51 -11
  41. package/dist/commonjs/components/card/card.d.ts.map +1 -1
  42. package/dist/commonjs/components/card/card.js +19 -13
  43. package/dist/commonjs/components/card/card.js.map +1 -1
  44. package/dist/commonjs/components/checkbox/checkbox-group.d.ts +1 -1
  45. package/dist/commonjs/components/checkbox/checkbox-group.d.ts.map +1 -1
  46. package/dist/commonjs/components/checkbox/checkbox-group.js +2 -2
  47. package/dist/commonjs/components/checkbox/checkbox-group.js.map +1 -1
  48. package/dist/commonjs/components/checkbox/checkbox.d.ts.map +1 -1
  49. package/dist/commonjs/components/checkbox/checkbox.js +3 -3
  50. package/dist/commonjs/components/checkbox/checkbox.js.map +1 -1
  51. package/dist/commonjs/components/combo-box/combo-box.d.ts +7 -1
  52. package/dist/commonjs/components/combo-box/combo-box.d.ts.map +1 -1
  53. package/dist/commonjs/components/combo-box/combo-box.js +15 -6
  54. package/dist/commonjs/components/combo-box/combo-box.js.map +1 -1
  55. package/dist/commonjs/components/container/container.d.ts +16 -0
  56. package/dist/commonjs/components/container/container.d.ts.map +1 -0
  57. package/dist/commonjs/components/container/container.js +13 -0
  58. package/dist/commonjs/components/container/container.js.map +1 -0
  59. package/dist/commonjs/components/date-picker/date-picker-calendar.d.ts +2 -0
  60. package/dist/commonjs/components/date-picker/date-picker-calendar.d.ts.map +1 -0
  61. package/dist/commonjs/components/date-picker/date-picker-calendar.js +26 -0
  62. package/dist/commonjs/components/date-picker/date-picker-calendar.js.map +1 -0
  63. package/dist/commonjs/components/date-picker/date-picker.d.ts +17 -0
  64. package/dist/commonjs/components/date-picker/date-picker.d.ts.map +1 -0
  65. package/dist/commonjs/components/date-picker/date-picker.js +54 -0
  66. package/dist/commonjs/components/date-picker/date-picker.js.map +1 -0
  67. package/dist/commonjs/components/date-picker/utils.d.ts +2 -0
  68. package/dist/commonjs/components/date-picker/utils.d.ts.map +1 -0
  69. package/dist/commonjs/components/date-picker/utils.js +31 -0
  70. package/dist/commonjs/components/date-picker/utils.js.map +1 -0
  71. package/dist/commonjs/components/date-picker/views/month/month-view.d.ts +2 -0
  72. package/dist/commonjs/components/date-picker/views/month/month-view.d.ts.map +1 -0
  73. package/dist/commonjs/components/date-picker/views/month/month-view.js +35 -0
  74. package/dist/commonjs/components/date-picker/views/month/month-view.js.map +1 -0
  75. package/dist/commonjs/components/date-picker/views/multi-year/multi-year-view.d.ts +2 -0
  76. package/dist/commonjs/components/date-picker/views/multi-year/multi-year-view.d.ts.map +1 -0
  77. package/dist/commonjs/components/date-picker/views/multi-year/multi-year-view.js +16 -0
  78. package/dist/commonjs/components/date-picker/views/multi-year/multi-year-view.js.map +1 -0
  79. package/dist/commonjs/components/date-picker/views/multi-year/use-multi-year-view-state.d.ts +2 -0
  80. package/dist/commonjs/components/date-picker/views/multi-year/use-multi-year-view-state.d.ts.map +1 -0
  81. package/dist/commonjs/components/date-picker/views/multi-year/use-multi-year-view-state.js +130 -0
  82. package/dist/commonjs/components/date-picker/views/multi-year/use-multi-year-view-state.js.map +1 -0
  83. package/dist/commonjs/components/date-picker/views/types.d.ts +2 -0
  84. package/dist/commonjs/components/date-picker/views/types.d.ts.map +1 -0
  85. package/dist/commonjs/components/date-picker/views/types.js +3 -0
  86. package/dist/commonjs/components/date-picker/views/types.js.map +1 -0
  87. package/dist/commonjs/components/date-picker/views/use-view-header.d.ts +2 -0
  88. package/dist/commonjs/components/date-picker/views/use-view-header.d.ts.map +1 -0
  89. package/dist/commonjs/components/date-picker/views/use-view-header.js +56 -0
  90. package/dist/commonjs/components/date-picker/views/use-view-header.js.map +1 -0
  91. package/dist/commonjs/components/date-picker/views/view-grid-cell.d.ts +2 -0
  92. package/dist/commonjs/components/date-picker/views/view-grid-cell.d.ts.map +1 -0
  93. package/dist/commonjs/components/date-picker/views/view-grid-cell.js +72 -0
  94. package/dist/commonjs/components/date-picker/views/view-grid-cell.js.map +1 -0
  95. package/dist/commonjs/components/date-picker/views/view-grid.d.ts +2 -0
  96. package/dist/commonjs/components/date-picker/views/view-grid.d.ts.map +1 -0
  97. package/dist/commonjs/components/date-picker/views/view-grid.js +75 -0
  98. package/dist/commonjs/components/date-picker/views/view-grid.js.map +1 -0
  99. package/dist/commonjs/components/date-picker/views/view-provider.d.ts +2 -0
  100. package/dist/commonjs/components/date-picker/views/view-provider.d.ts.map +1 -0
  101. package/dist/commonjs/components/date-picker/views/view-provider.js +21 -0
  102. package/dist/commonjs/components/date-picker/views/view-provider.js.map +1 -0
  103. package/dist/commonjs/components/date-picker/views/year/use-year-view-state.d.ts +2 -0
  104. package/dist/commonjs/components/date-picker/views/year/use-year-view-state.d.ts.map +1 -0
  105. package/dist/commonjs/components/date-picker/views/year/use-year-view-state.js +158 -0
  106. package/dist/commonjs/components/date-picker/views/year/use-year-view-state.js.map +1 -0
  107. package/dist/commonjs/components/date-picker/views/year/year-view.d.ts +2 -0
  108. package/dist/commonjs/components/date-picker/views/year/year-view.d.ts.map +1 -0
  109. package/dist/commonjs/components/date-picker/views/year/year-view.js +20 -0
  110. package/dist/commonjs/components/date-picker/views/year/year-view.js.map +1 -0
  111. package/dist/commonjs/components/dialog-root/dialog-root.d.ts +20 -0
  112. package/dist/commonjs/components/dialog-root/dialog-root.d.ts.map +1 -0
  113. package/dist/commonjs/components/dialog-root/dialog-root.js +15 -0
  114. package/dist/commonjs/components/dialog-root/dialog-root.js.map +1 -0
  115. package/dist/commonjs/components/disclosure/context.d.ts +3 -0
  116. package/dist/commonjs/components/disclosure/context.d.ts.map +1 -0
  117. package/dist/commonjs/components/disclosure/context.js +7 -0
  118. package/dist/commonjs/components/disclosure/context.js.map +1 -0
  119. package/dist/commonjs/components/disclosure/disclosure-group.d.ts +15 -4
  120. package/dist/commonjs/components/disclosure/disclosure-group.d.ts.map +1 -1
  121. package/dist/commonjs/components/disclosure/disclosure-group.js +11 -5
  122. package/dist/commonjs/components/disclosure/disclosure-group.js.map +1 -1
  123. package/dist/commonjs/components/disclosure/disclosure.d.ts +35 -4
  124. package/dist/commonjs/components/disclosure/disclosure.d.ts.map +1 -1
  125. package/dist/commonjs/components/disclosure/disclosure.js +16 -5
  126. package/dist/commonjs/components/disclosure/disclosure.js.map +1 -1
  127. package/dist/commonjs/components/divider/divider.d.ts +12 -0
  128. package/dist/commonjs/components/divider/divider.d.ts.map +1 -0
  129. package/dist/commonjs/components/divider/divider.js +19 -0
  130. package/dist/commonjs/components/divider/divider.js.map +1 -0
  131. package/dist/commonjs/components/drawer/drawer.d.ts +81 -0
  132. package/dist/commonjs/components/drawer/drawer.d.ts.map +1 -0
  133. package/dist/commonjs/components/drawer/drawer.js +59 -0
  134. package/dist/commonjs/components/drawer/drawer.js.map +1 -0
  135. package/dist/commonjs/components/file-picker/file-picker.d.ts +19 -0
  136. package/dist/commonjs/components/file-picker/file-picker.d.ts.map +1 -0
  137. package/dist/commonjs/components/file-picker/file-picker.js +68 -0
  138. package/dist/commonjs/components/file-picker/file-picker.js.map +1 -0
  139. package/dist/commonjs/components/internal/form-field/form-field.js +1 -1
  140. package/dist/commonjs/components/internal/form-field/form-field.js.map +1 -1
  141. package/dist/commonjs/components/internal/x-button/x-button.d.ts +2 -0
  142. package/dist/commonjs/components/internal/x-button/x-button.d.ts.map +1 -0
  143. package/dist/commonjs/components/internal/x-button/x-button.js +17 -0
  144. package/dist/commonjs/components/internal/x-button/x-button.js.map +1 -0
  145. package/dist/commonjs/components/link-tabs/context.d.ts +2 -0
  146. package/dist/commonjs/components/link-tabs/context.d.ts.map +1 -0
  147. package/dist/commonjs/components/link-tabs/context.js +7 -0
  148. package/dist/commonjs/components/link-tabs/context.js.map +1 -0
  149. package/dist/commonjs/components/link-tabs/link-tabs.d.ts +36 -0
  150. package/dist/commonjs/components/link-tabs/link-tabs.d.ts.map +1 -0
  151. package/dist/commonjs/components/link-tabs/link-tabs.js +54 -0
  152. package/dist/commonjs/components/link-tabs/link-tabs.js.map +1 -0
  153. package/dist/commonjs/components/menu/menu.d.ts +3 -6
  154. package/dist/commonjs/components/menu/menu.d.ts.map +1 -1
  155. package/dist/commonjs/components/menu/menu.js +4 -9
  156. package/dist/commonjs/components/menu/menu.js.map +1 -1
  157. package/dist/commonjs/components/modal-dialog/modal-dialog.d.ts +63 -0
  158. package/dist/commonjs/components/modal-dialog/modal-dialog.d.ts.map +1 -0
  159. package/dist/commonjs/components/modal-dialog/modal-dialog.js +46 -0
  160. package/dist/commonjs/components/modal-dialog/modal-dialog.js.map +1 -0
  161. package/dist/commonjs/components/number-field/number-field.d.ts +1 -1
  162. package/dist/commonjs/components/number-field/number-field.d.ts.map +1 -1
  163. package/dist/commonjs/components/number-field/number-field.js +6 -4
  164. package/dist/commonjs/components/number-field/number-field.js.map +1 -1
  165. package/dist/commonjs/components/pagination/base-pagination.d.ts.map +1 -1
  166. package/dist/commonjs/components/pagination/base-pagination.js +9 -10
  167. package/dist/commonjs/components/pagination/base-pagination.js.map +1 -1
  168. package/dist/commonjs/components/pagination/pagination.d.ts.map +1 -1
  169. package/dist/commonjs/components/pagination/pagination.js +7 -5
  170. package/dist/commonjs/components/pagination/pagination.js.map +1 -1
  171. package/dist/commonjs/components/popover/popover.d.ts +7 -2
  172. package/dist/commonjs/components/popover/popover.d.ts.map +1 -1
  173. package/dist/commonjs/components/popover/popover.js +2 -2
  174. package/dist/commonjs/components/popover/popover.js.map +1 -1
  175. package/dist/commonjs/components/radio/radio-group.d.ts +1 -1
  176. package/dist/commonjs/components/radio/radio-group.d.ts.map +1 -1
  177. package/dist/commonjs/components/radio/radio-group.js +2 -2
  178. package/dist/commonjs/components/radio/radio-group.js.map +1 -1
  179. package/dist/commonjs/components/radio/radio.d.ts.map +1 -1
  180. package/dist/commonjs/components/radio/radio.js +3 -3
  181. package/dist/commonjs/components/radio/radio.js.map +1 -1
  182. package/dist/commonjs/components/select/select.d.ts +7 -1
  183. package/dist/commonjs/components/select/select.d.ts.map +1 -1
  184. package/dist/commonjs/components/select/select.js +14 -6
  185. package/dist/commonjs/components/select/select.js.map +1 -1
  186. package/dist/commonjs/components/spacing/stack/stack.d.ts +1 -1
  187. package/dist/commonjs/components/spacing/stack/stack.js +1 -1
  188. package/dist/commonjs/components/spacing/stack/stack.js.map +1 -1
  189. package/dist/commonjs/components/spacing/types.d.ts +1 -1
  190. package/dist/commonjs/components/spacing/types.d.ts.map +1 -1
  191. package/dist/commonjs/components/spacing/types.js +2 -2
  192. package/dist/commonjs/components/spacing/types.js.map +1 -1
  193. package/dist/commonjs/components/spinner/spinner.d.ts.map +1 -1
  194. package/dist/commonjs/components/spinner/spinner.js +3 -3
  195. package/dist/commonjs/components/spinner/spinner.js.map +1 -1
  196. package/dist/commonjs/components/table/contexts/column-collection.d.ts.map +1 -1
  197. package/dist/commonjs/components/table/contexts/column-collection.js +2 -0
  198. package/dist/commonjs/components/table/contexts/column-collection.js.map +1 -1
  199. package/dist/commonjs/components/table/contexts/table-state.d.ts +1 -0
  200. package/dist/commonjs/components/table/contexts/table-state.d.ts.map +1 -1
  201. package/dist/commonjs/components/table/contexts/table-state.js +6 -1
  202. package/dist/commonjs/components/table/contexts/table-state.js.map +1 -1
  203. package/dist/commonjs/components/table/hooks/use-table-cell.js +2 -2
  204. package/dist/commonjs/components/table/hooks/use-table-cell.js.map +1 -1
  205. package/dist/commonjs/components/table/table-empty-state.js +1 -1
  206. package/dist/commonjs/components/table/table-empty-state.js.map +1 -1
  207. package/dist/commonjs/components/table/table-header-button.d.ts +2 -0
  208. package/dist/commonjs/components/table/table-header-button.d.ts.map +1 -0
  209. package/dist/commonjs/components/table/table-header-button.js +16 -0
  210. package/dist/commonjs/components/table/table-header-button.js.map +1 -0
  211. package/dist/commonjs/components/table/table-header-cell.d.ts.map +1 -1
  212. package/dist/commonjs/components/table/table-header-cell.js +7 -5
  213. package/dist/commonjs/components/table/table-header-cell.js.map +1 -1
  214. package/dist/commonjs/components/table/table.d.ts +1 -1
  215. package/dist/commonjs/components/table/table.d.ts.map +1 -1
  216. package/dist/commonjs/components/table/table.js +2 -2
  217. package/dist/commonjs/components/table/table.js.map +1 -1
  218. package/dist/commonjs/components/tabs/tabs.d.ts +53 -0
  219. package/dist/commonjs/components/tabs/tabs.d.ts.map +1 -0
  220. package/dist/commonjs/components/tabs/tabs.js +69 -0
  221. package/dist/commonjs/components/tabs/tabs.js.map +1 -0
  222. package/dist/commonjs/components/tag/tag-group.d.ts +1 -1
  223. package/dist/commonjs/components/tag/tag-group.d.ts.map +1 -1
  224. package/dist/commonjs/components/tag/tag-group.js.map +1 -1
  225. package/dist/commonjs/components/tag/tag.js +1 -1
  226. package/dist/commonjs/components/tag/tag.js.map +1 -1
  227. package/dist/commonjs/components/tag-field/tag-field-input.d.ts +2 -0
  228. package/dist/commonjs/components/tag-field/tag-field-input.d.ts.map +1 -0
  229. package/dist/commonjs/components/tag-field/tag-field-input.js +30 -0
  230. package/dist/commonjs/components/tag-field/tag-field-input.js.map +1 -0
  231. package/dist/commonjs/components/tag-field/tag-field-list-box.d.ts +2 -0
  232. package/dist/commonjs/components/tag-field/tag-field-list-box.d.ts.map +1 -0
  233. package/dist/commonjs/components/tag-field/tag-field-list-box.js +38 -0
  234. package/dist/commonjs/components/tag-field/tag-field-list-box.js.map +1 -0
  235. package/dist/commonjs/components/tag-field/tag-field-tags.d.ts +2 -0
  236. package/dist/commonjs/components/tag-field/tag-field-tags.d.ts.map +1 -0
  237. package/dist/commonjs/components/tag-field/tag-field-tags.js +29 -0
  238. package/dist/commonjs/components/tag-field/tag-field-tags.js.map +1 -0
  239. package/dist/commonjs/components/tag-field/tag-field.d.ts +51 -0
  240. package/dist/commonjs/components/tag-field/tag-field.d.ts.map +1 -0
  241. package/dist/commonjs/components/tag-field/tag-field.js +143 -0
  242. package/dist/commonjs/components/tag-field/tag-field.js.map +1 -0
  243. package/dist/commonjs/components/text-inputs/text-area.d.ts +1 -1
  244. package/dist/commonjs/components/text-inputs/text-area.d.ts.map +1 -1
  245. package/dist/commonjs/components/text-inputs/text-area.js +3 -3
  246. package/dist/commonjs/components/text-inputs/text-area.js.map +1 -1
  247. package/dist/commonjs/components/text-inputs/text-field.d.ts +1 -1
  248. package/dist/commonjs/components/text-inputs/text-field.d.ts.map +1 -1
  249. package/dist/commonjs/components/text-inputs/text-field.js +3 -3
  250. package/dist/commonjs/components/text-inputs/text-field.js.map +1 -1
  251. package/dist/commonjs/components/toast/toast-region.d.ts +5 -0
  252. package/dist/commonjs/components/toast/toast-region.d.ts.map +1 -0
  253. package/dist/commonjs/components/toast/toast-region.js +24 -0
  254. package/dist/commonjs/components/toast/toast-region.js.map +1 -0
  255. package/dist/commonjs/components/toast/toast.d.ts +2 -0
  256. package/dist/commonjs/components/toast/toast.d.ts.map +1 -0
  257. package/dist/commonjs/components/toast/toast.js +24 -0
  258. package/dist/commonjs/components/toast/toast.js.map +1 -0
  259. package/dist/commonjs/components/toast/types.d.ts +5 -0
  260. package/dist/commonjs/components/toast/types.d.ts.map +1 -0
  261. package/dist/commonjs/components/toast/types.js +3 -0
  262. package/dist/commonjs/components/toast/types.js.map +1 -0
  263. package/dist/commonjs/components/toggle/toggle.d.ts +14 -0
  264. package/dist/commonjs/components/toggle/toggle.d.ts.map +1 -0
  265. package/dist/commonjs/components/toggle/toggle.js +32 -0
  266. package/dist/commonjs/components/toggle/toggle.js.map +1 -0
  267. package/dist/commonjs/components/toggle-button/toggle-button-group.d.ts +15 -0
  268. package/dist/commonjs/components/toggle-button/toggle-button-group.d.ts.map +1 -0
  269. package/dist/commonjs/components/toggle-button/toggle-button-group.js +30 -0
  270. package/dist/commonjs/components/toggle-button/toggle-button-group.js.map +1 -0
  271. package/dist/commonjs/components/toggle-button/toggle-button.d.ts +16 -0
  272. package/dist/commonjs/components/toggle-button/toggle-button.d.ts.map +1 -0
  273. package/dist/commonjs/components/toggle-button/toggle-button.js +24 -0
  274. package/dist/commonjs/components/toggle-button/toggle-button.js.map +1 -0
  275. package/dist/commonjs/components/toggle-button/toggle-icon-button.d.ts +14 -0
  276. package/dist/commonjs/components/toggle-button/toggle-icon-button.d.ts.map +1 -0
  277. package/dist/commonjs/components/toggle-button/toggle-icon-button.js +24 -0
  278. package/dist/commonjs/components/toggle-button/toggle-icon-button.js.map +1 -0
  279. package/dist/commonjs/components/tooltip/tooltip.d.ts +4 -2
  280. package/dist/commonjs/components/tooltip/tooltip.d.ts.map +1 -1
  281. package/dist/commonjs/components/tooltip/tooltip.js.map +1 -1
  282. package/dist/commonjs/components/types.d.ts +4 -0
  283. package/dist/commonjs/components/types.d.ts.map +1 -1
  284. package/dist/commonjs/components/types.js.map +1 -1
  285. package/dist/commonjs/components/typography/text.d.ts.map +1 -1
  286. package/dist/commonjs/date.d.ts +2 -0
  287. package/dist/commonjs/date.d.ts.map +1 -0
  288. package/dist/commonjs/date.js +27 -0
  289. package/dist/commonjs/date.js.map +1 -0
  290. package/dist/commonjs/i18n/index.d.ts +3 -0
  291. package/dist/commonjs/i18n/index.d.ts.map +1 -0
  292. package/dist/commonjs/i18n/index.js +19 -0
  293. package/dist/commonjs/i18n/index.js.map +1 -0
  294. package/dist/commonjs/i18n/localization-provider.d.ts +59 -0
  295. package/dist/commonjs/i18n/localization-provider.d.ts.map +1 -0
  296. package/dist/commonjs/i18n/localization-provider.js +82 -0
  297. package/dist/commonjs/i18n/localization-provider.js.map +1 -0
  298. package/dist/commonjs/i18n/messages/en-US.d.ts +4 -0
  299. package/dist/commonjs/i18n/messages/en-US.d.ts.map +1 -0
  300. package/dist/commonjs/i18n/messages/en-US.js +44 -0
  301. package/dist/commonjs/i18n/messages/en-US.js.map +1 -0
  302. package/dist/commonjs/i18n/messages/index.d.ts +3 -0
  303. package/dist/commonjs/i18n/messages/index.d.ts.map +1 -0
  304. package/dist/commonjs/i18n/messages/index.js +6 -0
  305. package/dist/commonjs/i18n/messages/index.js.map +1 -0
  306. package/dist/commonjs/i18n/messages/types.d.ts +82 -0
  307. package/dist/commonjs/i18n/messages/types.d.ts.map +1 -0
  308. package/dist/commonjs/i18n/messages/types.js +3 -0
  309. package/dist/commonjs/i18n/messages/types.js.map +1 -0
  310. package/dist/commonjs/icons/index.d.ts +1 -0
  311. package/dist/commonjs/icons/index.d.ts.map +1 -1
  312. package/dist/commonjs/icons/index.js +3 -1
  313. package/dist/commonjs/icons/index.js.map +1 -1
  314. package/dist/commonjs/icons/rating-star.d.ts +8 -0
  315. package/dist/commonjs/icons/rating-star.d.ts.map +1 -0
  316. package/dist/commonjs/icons/rating-star.js +24 -0
  317. package/dist/commonjs/icons/rating-star.js.map +1 -0
  318. package/dist/commonjs/index.d.ts +26 -5
  319. package/dist/commonjs/index.d.ts.map +1 -1
  320. package/dist/commonjs/index.js +24 -5
  321. package/dist/commonjs/index.js.map +1 -1
  322. package/dist/commonjs/providers/ssr/ssr-provider.d.ts +1 -3
  323. package/dist/commonjs/providers/ssr/ssr-provider.d.ts.map +1 -1
  324. package/dist/commonjs/providers/ssr/ssr-provider.js +2 -2
  325. package/dist/commonjs/providers/ssr/ssr-provider.js.map +1 -1
  326. package/dist/commonjs/utils/is-production.d.ts +2 -0
  327. package/dist/commonjs/utils/is-production.d.ts.map +1 -0
  328. package/dist/commonjs/utils/is-production.js +7 -0
  329. package/dist/commonjs/utils/is-production.js.map +1 -0
  330. package/dist/commonjs/utils/style/types.d.ts +1 -1
  331. package/dist/commonjs/utils/style/types.d.ts.map +1 -1
  332. package/dist/commonjs/utils/style/types.js.map +1 -1
  333. package/dist/commonjs/utils/use-media-query.d.ts +2 -0
  334. package/dist/commonjs/utils/use-media-query.d.ts.map +1 -0
  335. package/dist/commonjs/utils/use-media-query.js +35 -0
  336. package/dist/commonjs/utils/use-media-query.js.map +1 -0
  337. package/dist/commonjs/utils/use-production-warning.d.ts +3 -0
  338. package/dist/commonjs/utils/use-production-warning.d.ts.map +1 -0
  339. package/dist/commonjs/utils/use-production-warning.js +7 -0
  340. package/dist/commonjs/utils/use-production-warning.js.map +1 -0
  341. package/dist/commonjs/with-style-props.d.ts.map +1 -1
  342. package/dist/esm/components/alert/alert.d.ts +25 -0
  343. package/dist/esm/components/alert/alert.d.ts.map +1 -0
  344. package/dist/esm/components/alert/alert.js +45 -0
  345. package/dist/esm/components/alert/alert.js.map +1 -0
  346. package/dist/esm/components/alert-dialog/alert-dialog.d.ts +51 -0
  347. package/dist/esm/components/alert-dialog/alert-dialog.d.ts.map +1 -0
  348. package/dist/esm/components/alert-dialog/alert-dialog.js +20 -0
  349. package/dist/esm/components/alert-dialog/alert-dialog.js.map +1 -0
  350. package/dist/esm/components/app-header/app-header.d.ts +20 -0
  351. package/dist/esm/components/app-header/app-header.d.ts.map +1 -0
  352. package/dist/esm/components/app-header/app-header.js +20 -0
  353. package/dist/esm/components/app-header/app-header.js.map +1 -0
  354. package/dist/esm/components/app-header/cimpress-logo.d.ts +2 -0
  355. package/dist/esm/components/app-header/cimpress-logo.d.ts.map +1 -0
  356. package/dist/esm/components/app-header/cimpress-logo.js +6 -0
  357. package/dist/esm/components/app-header/cimpress-logo.js.map +1 -0
  358. package/dist/esm/components/app-header/simple-auth-tool.d.ts +29 -0
  359. package/dist/esm/components/app-header/simple-auth-tool.d.ts.map +1 -0
  360. package/dist/esm/components/app-header/simple-auth-tool.js +28 -0
  361. package/dist/esm/components/app-header/simple-auth-tool.js.map +1 -0
  362. package/dist/esm/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  363. package/dist/esm/components/breadcrumbs/breadcrumbs.js +18 -2
  364. package/dist/esm/components/breadcrumbs/breadcrumbs.js.map +1 -1
  365. package/dist/esm/components/button/button.d.ts.map +1 -1
  366. package/dist/esm/components/button/button.js +3 -3
  367. package/dist/esm/components/button/button.js.map +1 -1
  368. package/dist/esm/components/button/icon-button.d.ts.map +1 -1
  369. package/dist/esm/components/button/icon-button.js +3 -3
  370. package/dist/esm/components/button/icon-button.js.map +1 -1
  371. package/dist/esm/components/button/icon-link-button.js +1 -1
  372. package/dist/esm/components/button/icon-link-button.js.map +1 -1
  373. package/dist/esm/components/button/link-button.js +1 -1
  374. package/dist/esm/components/button/link-button.js.map +1 -1
  375. package/dist/esm/components/button/types.js.map +1 -1
  376. package/dist/esm/components/callout/callout.d.ts +27 -0
  377. package/dist/esm/components/callout/callout.d.ts.map +1 -0
  378. package/dist/esm/components/callout/callout.js +40 -0
  379. package/dist/esm/components/callout/callout.js.map +1 -0
  380. package/dist/esm/components/card/card.d.ts +51 -11
  381. package/dist/esm/components/card/card.d.ts.map +1 -1
  382. package/dist/esm/components/card/card.js +17 -12
  383. package/dist/esm/components/card/card.js.map +1 -1
  384. package/dist/esm/components/checkbox/checkbox-group.d.ts +1 -1
  385. package/dist/esm/components/checkbox/checkbox-group.d.ts.map +1 -1
  386. package/dist/esm/components/checkbox/checkbox-group.js +2 -2
  387. package/dist/esm/components/checkbox/checkbox-group.js.map +1 -1
  388. package/dist/esm/components/checkbox/checkbox.d.ts.map +1 -1
  389. package/dist/esm/components/checkbox/checkbox.js +3 -3
  390. package/dist/esm/components/checkbox/checkbox.js.map +1 -1
  391. package/dist/esm/components/combo-box/combo-box.d.ts +7 -1
  392. package/dist/esm/components/combo-box/combo-box.d.ts.map +1 -1
  393. package/dist/esm/components/combo-box/combo-box.js +17 -8
  394. package/dist/esm/components/combo-box/combo-box.js.map +1 -1
  395. package/dist/esm/components/container/container.d.ts +16 -0
  396. package/dist/esm/components/container/container.d.ts.map +1 -0
  397. package/dist/esm/components/container/container.js +7 -0
  398. package/dist/esm/components/container/container.js.map +1 -0
  399. package/dist/esm/components/date-picker/date-picker-calendar.d.ts +2 -0
  400. package/dist/esm/components/date-picker/date-picker-calendar.d.ts.map +1 -0
  401. package/dist/esm/components/date-picker/date-picker-calendar.js +23 -0
  402. package/dist/esm/components/date-picker/date-picker-calendar.js.map +1 -0
  403. package/dist/esm/components/date-picker/date-picker.d.ts +17 -0
  404. package/dist/esm/components/date-picker/date-picker.d.ts.map +1 -0
  405. package/dist/esm/components/date-picker/date-picker.js +48 -0
  406. package/dist/esm/components/date-picker/date-picker.js.map +1 -0
  407. package/dist/esm/components/date-picker/utils.d.ts +2 -0
  408. package/dist/esm/components/date-picker/utils.d.ts.map +1 -0
  409. package/dist/esm/components/date-picker/utils.js +26 -0
  410. package/dist/esm/components/date-picker/utils.js.map +1 -0
  411. package/dist/esm/components/date-picker/views/month/month-view.d.ts +2 -0
  412. package/dist/esm/components/date-picker/views/month/month-view.d.ts.map +1 -0
  413. package/dist/esm/components/date-picker/views/month/month-view.js +29 -0
  414. package/dist/esm/components/date-picker/views/month/month-view.js.map +1 -0
  415. package/dist/esm/components/date-picker/views/multi-year/multi-year-view.d.ts +2 -0
  416. package/dist/esm/components/date-picker/views/multi-year/multi-year-view.d.ts.map +1 -0
  417. package/dist/esm/components/date-picker/views/multi-year/multi-year-view.js +13 -0
  418. package/dist/esm/components/date-picker/views/multi-year/multi-year-view.js.map +1 -0
  419. package/dist/esm/components/date-picker/views/multi-year/use-multi-year-view-state.d.ts +2 -0
  420. package/dist/esm/components/date-picker/views/multi-year/use-multi-year-view-state.d.ts.map +1 -0
  421. package/dist/esm/components/date-picker/views/multi-year/use-multi-year-view-state.js +127 -0
  422. package/dist/esm/components/date-picker/views/multi-year/use-multi-year-view-state.js.map +1 -0
  423. package/dist/esm/components/date-picker/views/types.d.ts +2 -0
  424. package/dist/esm/components/date-picker/views/types.d.ts.map +1 -0
  425. package/dist/esm/components/date-picker/views/types.js +2 -0
  426. package/dist/esm/components/date-picker/views/types.js.map +1 -0
  427. package/dist/esm/components/date-picker/views/use-view-header.d.ts +2 -0
  428. package/dist/esm/components/date-picker/views/use-view-header.d.ts.map +1 -0
  429. package/dist/esm/components/date-picker/views/use-view-header.js +53 -0
  430. package/dist/esm/components/date-picker/views/use-view-header.js.map +1 -0
  431. package/dist/esm/components/date-picker/views/view-grid-cell.d.ts +2 -0
  432. package/dist/esm/components/date-picker/views/view-grid-cell.d.ts.map +1 -0
  433. package/dist/esm/components/date-picker/views/view-grid-cell.js +66 -0
  434. package/dist/esm/components/date-picker/views/view-grid-cell.js.map +1 -0
  435. package/dist/esm/components/date-picker/views/view-grid.d.ts +2 -0
  436. package/dist/esm/components/date-picker/views/view-grid.d.ts.map +1 -0
  437. package/dist/esm/components/date-picker/views/view-grid.js +69 -0
  438. package/dist/esm/components/date-picker/views/view-grid.js.map +1 -0
  439. package/dist/esm/components/date-picker/views/view-provider.d.ts +2 -0
  440. package/dist/esm/components/date-picker/views/view-provider.d.ts.map +1 -0
  441. package/dist/esm/components/date-picker/views/view-provider.js +17 -0
  442. package/dist/esm/components/date-picker/views/view-provider.js.map +1 -0
  443. package/dist/esm/components/date-picker/views/year/use-year-view-state.d.ts +2 -0
  444. package/dist/esm/components/date-picker/views/year/use-year-view-state.d.ts.map +1 -0
  445. package/dist/esm/components/date-picker/views/year/use-year-view-state.js +155 -0
  446. package/dist/esm/components/date-picker/views/year/use-year-view-state.js.map +1 -0
  447. package/dist/esm/components/date-picker/views/year/year-view.d.ts +2 -0
  448. package/dist/esm/components/date-picker/views/year/year-view.d.ts.map +1 -0
  449. package/dist/esm/components/date-picker/views/year/year-view.js +17 -0
  450. package/dist/esm/components/date-picker/views/year/year-view.js.map +1 -0
  451. package/dist/esm/components/dialog-root/dialog-root.d.ts +20 -0
  452. package/dist/esm/components/dialog-root/dialog-root.d.ts.map +1 -0
  453. package/dist/esm/components/dialog-root/dialog-root.js +12 -0
  454. package/dist/esm/components/dialog-root/dialog-root.js.map +1 -0
  455. package/dist/esm/components/disclosure/context.d.ts +3 -0
  456. package/dist/esm/components/disclosure/context.d.ts.map +1 -0
  457. package/dist/esm/components/disclosure/context.js +4 -0
  458. package/dist/esm/components/disclosure/context.js.map +1 -0
  459. package/dist/esm/components/disclosure/disclosure-group.d.ts +15 -4
  460. package/dist/esm/components/disclosure/disclosure-group.d.ts.map +1 -1
  461. package/dist/esm/components/disclosure/disclosure-group.js +10 -4
  462. package/dist/esm/components/disclosure/disclosure-group.js.map +1 -1
  463. package/dist/esm/components/disclosure/disclosure.d.ts +35 -4
  464. package/dist/esm/components/disclosure/disclosure.d.ts.map +1 -1
  465. package/dist/esm/components/disclosure/disclosure.js +16 -5
  466. package/dist/esm/components/disclosure/disclosure.js.map +1 -1
  467. package/dist/esm/components/divider/divider.d.ts +12 -0
  468. package/dist/esm/components/divider/divider.d.ts.map +1 -0
  469. package/dist/esm/components/divider/divider.js +13 -0
  470. package/dist/esm/components/divider/divider.js.map +1 -0
  471. package/dist/esm/components/drawer/drawer.d.ts +81 -0
  472. package/dist/esm/components/drawer/drawer.d.ts.map +1 -0
  473. package/dist/esm/components/drawer/drawer.js +50 -0
  474. package/dist/esm/components/drawer/drawer.js.map +1 -0
  475. package/dist/esm/components/file-picker/file-picker.d.ts +19 -0
  476. package/dist/esm/components/file-picker/file-picker.d.ts.map +1 -0
  477. package/dist/esm/components/file-picker/file-picker.js +62 -0
  478. package/dist/esm/components/file-picker/file-picker.js.map +1 -0
  479. package/dist/esm/components/internal/form-field/form-field.js +1 -1
  480. package/dist/esm/components/internal/form-field/form-field.js.map +1 -1
  481. package/dist/esm/components/internal/x-button/x-button.d.ts +2 -0
  482. package/dist/esm/components/internal/x-button/x-button.d.ts.map +1 -0
  483. package/dist/esm/components/internal/x-button/x-button.js +11 -0
  484. package/dist/esm/components/internal/x-button/x-button.js.map +1 -0
  485. package/dist/esm/components/link-tabs/context.d.ts +2 -0
  486. package/dist/esm/components/link-tabs/context.d.ts.map +1 -0
  487. package/dist/esm/components/link-tabs/context.js +4 -0
  488. package/dist/esm/components/link-tabs/context.js.map +1 -0
  489. package/dist/esm/components/link-tabs/link-tabs.d.ts +36 -0
  490. package/dist/esm/components/link-tabs/link-tabs.d.ts.map +1 -0
  491. package/dist/esm/components/link-tabs/link-tabs.js +47 -0
  492. package/dist/esm/components/link-tabs/link-tabs.js.map +1 -0
  493. package/dist/esm/components/menu/menu.d.ts +3 -6
  494. package/dist/esm/components/menu/menu.d.ts.map +1 -1
  495. package/dist/esm/components/menu/menu.js +5 -9
  496. package/dist/esm/components/menu/menu.js.map +1 -1
  497. package/dist/esm/components/modal-dialog/modal-dialog.d.ts +63 -0
  498. package/dist/esm/components/modal-dialog/modal-dialog.d.ts.map +1 -0
  499. package/dist/esm/components/modal-dialog/modal-dialog.js +38 -0
  500. package/dist/esm/components/modal-dialog/modal-dialog.js.map +1 -0
  501. package/dist/esm/components/number-field/number-field.d.ts +1 -1
  502. package/dist/esm/components/number-field/number-field.d.ts.map +1 -1
  503. package/dist/esm/components/number-field/number-field.js +5 -3
  504. package/dist/esm/components/number-field/number-field.js.map +1 -1
  505. package/dist/esm/components/pagination/base-pagination.d.ts.map +1 -1
  506. package/dist/esm/components/pagination/base-pagination.js +6 -7
  507. package/dist/esm/components/pagination/base-pagination.js.map +1 -1
  508. package/dist/esm/components/pagination/pagination.d.ts.map +1 -1
  509. package/dist/esm/components/pagination/pagination.js +7 -5
  510. package/dist/esm/components/pagination/pagination.js.map +1 -1
  511. package/dist/esm/components/popover/popover.d.ts +7 -2
  512. package/dist/esm/components/popover/popover.d.ts.map +1 -1
  513. package/dist/esm/components/popover/popover.js +2 -2
  514. package/dist/esm/components/popover/popover.js.map +1 -1
  515. package/dist/esm/components/radio/radio-group.d.ts +1 -1
  516. package/dist/esm/components/radio/radio-group.d.ts.map +1 -1
  517. package/dist/esm/components/radio/radio-group.js +2 -2
  518. package/dist/esm/components/radio/radio-group.js.map +1 -1
  519. package/dist/esm/components/radio/radio.d.ts.map +1 -1
  520. package/dist/esm/components/radio/radio.js +3 -3
  521. package/dist/esm/components/radio/radio.js.map +1 -1
  522. package/dist/esm/components/select/select.d.ts +7 -1
  523. package/dist/esm/components/select/select.d.ts.map +1 -1
  524. package/dist/esm/components/select/select.js +15 -7
  525. package/dist/esm/components/select/select.js.map +1 -1
  526. package/dist/esm/components/spacing/stack/stack.d.ts +1 -1
  527. package/dist/esm/components/spacing/stack/stack.js +1 -1
  528. package/dist/esm/components/spacing/stack/stack.js.map +1 -1
  529. package/dist/esm/components/spacing/types.d.ts +1 -1
  530. package/dist/esm/components/spacing/types.d.ts.map +1 -1
  531. package/dist/esm/components/spacing/types.js +2 -2
  532. package/dist/esm/components/spacing/types.js.map +1 -1
  533. package/dist/esm/components/spinner/spinner.d.ts.map +1 -1
  534. package/dist/esm/components/spinner/spinner.js +3 -3
  535. package/dist/esm/components/spinner/spinner.js.map +1 -1
  536. package/dist/esm/components/table/contexts/column-collection.d.ts.map +1 -1
  537. package/dist/esm/components/table/contexts/column-collection.js +2 -0
  538. package/dist/esm/components/table/contexts/column-collection.js.map +1 -1
  539. package/dist/esm/components/table/contexts/table-state.d.ts +1 -0
  540. package/dist/esm/components/table/contexts/table-state.d.ts.map +1 -1
  541. package/dist/esm/components/table/contexts/table-state.js +8 -3
  542. package/dist/esm/components/table/contexts/table-state.js.map +1 -1
  543. package/dist/esm/components/table/hooks/use-table-cell.js +2 -2
  544. package/dist/esm/components/table/hooks/use-table-cell.js.map +1 -1
  545. package/dist/esm/components/table/table-empty-state.js +1 -1
  546. package/dist/esm/components/table/table-empty-state.js.map +1 -1
  547. package/dist/esm/components/table/table-header-button.d.ts +2 -0
  548. package/dist/esm/components/table/table-header-button.d.ts.map +1 -0
  549. package/dist/esm/components/table/table-header-button.js +10 -0
  550. package/dist/esm/components/table/table-header-button.js.map +1 -0
  551. package/dist/esm/components/table/table-header-cell.d.ts.map +1 -1
  552. package/dist/esm/components/table/table-header-cell.js +9 -7
  553. package/dist/esm/components/table/table-header-cell.js.map +1 -1
  554. package/dist/esm/components/table/table.d.ts +1 -1
  555. package/dist/esm/components/table/table.d.ts.map +1 -1
  556. package/dist/esm/components/table/table.js +2 -2
  557. package/dist/esm/components/table/table.js.map +1 -1
  558. package/dist/esm/components/tabs/tabs.d.ts +53 -0
  559. package/dist/esm/components/tabs/tabs.d.ts.map +1 -0
  560. package/dist/esm/components/tabs/tabs.js +59 -0
  561. package/dist/esm/components/tabs/tabs.js.map +1 -0
  562. package/dist/esm/components/tag/tag-group.d.ts +1 -1
  563. package/dist/esm/components/tag/tag-group.d.ts.map +1 -1
  564. package/dist/esm/components/tag/tag-group.js.map +1 -1
  565. package/dist/esm/components/tag/tag.js +1 -1
  566. package/dist/esm/components/tag/tag.js.map +1 -1
  567. package/dist/esm/components/tag-field/tag-field-input.d.ts +2 -0
  568. package/dist/esm/components/tag-field/tag-field-input.d.ts.map +1 -0
  569. package/dist/esm/components/tag-field/tag-field-input.js +24 -0
  570. package/dist/esm/components/tag-field/tag-field-input.js.map +1 -0
  571. package/dist/esm/components/tag-field/tag-field-list-box.d.ts +2 -0
  572. package/dist/esm/components/tag-field/tag-field-list-box.d.ts.map +1 -0
  573. package/dist/esm/components/tag-field/tag-field-list-box.js +35 -0
  574. package/dist/esm/components/tag-field/tag-field-list-box.js.map +1 -0
  575. package/dist/esm/components/tag-field/tag-field-tags.d.ts +2 -0
  576. package/dist/esm/components/tag-field/tag-field-tags.d.ts.map +1 -0
  577. package/dist/esm/components/tag-field/tag-field-tags.js +26 -0
  578. package/dist/esm/components/tag-field/tag-field-tags.js.map +1 -0
  579. package/dist/esm/components/tag-field/tag-field.d.ts +51 -0
  580. package/dist/esm/components/tag-field/tag-field.d.ts.map +1 -0
  581. package/dist/esm/components/tag-field/tag-field.js +135 -0
  582. package/dist/esm/components/tag-field/tag-field.js.map +1 -0
  583. package/dist/esm/components/text-inputs/text-area.d.ts +1 -1
  584. package/dist/esm/components/text-inputs/text-area.d.ts.map +1 -1
  585. package/dist/esm/components/text-inputs/text-area.js +3 -3
  586. package/dist/esm/components/text-inputs/text-area.js.map +1 -1
  587. package/dist/esm/components/text-inputs/text-field.d.ts +1 -1
  588. package/dist/esm/components/text-inputs/text-field.d.ts.map +1 -1
  589. package/dist/esm/components/text-inputs/text-field.js +3 -3
  590. package/dist/esm/components/text-inputs/text-field.js.map +1 -1
  591. package/dist/esm/components/toast/toast-region.d.ts +5 -0
  592. package/dist/esm/components/toast/toast-region.d.ts.map +1 -0
  593. package/dist/esm/components/toast/toast-region.js +20 -0
  594. package/dist/esm/components/toast/toast-region.js.map +1 -0
  595. package/dist/esm/components/toast/toast.d.ts +2 -0
  596. package/dist/esm/components/toast/toast.d.ts.map +1 -0
  597. package/dist/esm/components/toast/toast.js +21 -0
  598. package/dist/esm/components/toast/toast.js.map +1 -0
  599. package/dist/esm/components/toast/types.d.ts +5 -0
  600. package/dist/esm/components/toast/types.d.ts.map +1 -0
  601. package/dist/esm/components/toast/types.js +2 -0
  602. package/dist/esm/components/toast/types.js.map +1 -0
  603. package/dist/esm/components/toggle/toggle.d.ts +14 -0
  604. package/dist/esm/components/toggle/toggle.d.ts.map +1 -0
  605. package/dist/esm/components/toggle/toggle.js +26 -0
  606. package/dist/esm/components/toggle/toggle.js.map +1 -0
  607. package/dist/esm/components/toggle-button/toggle-button-group.d.ts +15 -0
  608. package/dist/esm/components/toggle-button/toggle-button-group.d.ts.map +1 -0
  609. package/dist/esm/components/toggle-button/toggle-button-group.js +24 -0
  610. package/dist/esm/components/toggle-button/toggle-button-group.js.map +1 -0
  611. package/dist/esm/components/toggle-button/toggle-button.d.ts +16 -0
  612. package/dist/esm/components/toggle-button/toggle-button.d.ts.map +1 -0
  613. package/dist/esm/components/toggle-button/toggle-button.js +18 -0
  614. package/dist/esm/components/toggle-button/toggle-button.js.map +1 -0
  615. package/dist/esm/components/toggle-button/toggle-icon-button.d.ts +14 -0
  616. package/dist/esm/components/toggle-button/toggle-icon-button.d.ts.map +1 -0
  617. package/dist/esm/components/toggle-button/toggle-icon-button.js +18 -0
  618. package/dist/esm/components/toggle-button/toggle-icon-button.js.map +1 -0
  619. package/dist/esm/components/tooltip/tooltip.d.ts +4 -2
  620. package/dist/esm/components/tooltip/tooltip.d.ts.map +1 -1
  621. package/dist/esm/components/tooltip/tooltip.js.map +1 -1
  622. package/dist/esm/components/types.d.ts +4 -0
  623. package/dist/esm/components/types.d.ts.map +1 -1
  624. package/dist/esm/components/types.js.map +1 -1
  625. package/dist/esm/components/typography/text.d.ts.map +1 -1
  626. package/dist/esm/date.d.ts +2 -0
  627. package/dist/esm/date.d.ts.map +1 -0
  628. package/dist/esm/date.js +11 -0
  629. package/dist/esm/date.js.map +1 -0
  630. package/dist/esm/i18n/index.d.ts +3 -0
  631. package/dist/esm/i18n/index.d.ts.map +1 -0
  632. package/dist/esm/i18n/index.js +3 -0
  633. package/dist/esm/i18n/index.js.map +1 -0
  634. package/dist/esm/i18n/localization-provider.d.ts +59 -0
  635. package/dist/esm/i18n/localization-provider.d.ts.map +1 -0
  636. package/dist/esm/i18n/localization-provider.js +76 -0
  637. package/dist/esm/i18n/localization-provider.js.map +1 -0
  638. package/dist/esm/i18n/messages/en-US.d.ts +4 -0
  639. package/dist/esm/i18n/messages/en-US.d.ts.map +1 -0
  640. package/dist/esm/i18n/messages/en-US.js +41 -0
  641. package/dist/esm/i18n/messages/en-US.js.map +1 -0
  642. package/dist/esm/i18n/messages/index.d.ts +3 -0
  643. package/dist/esm/i18n/messages/index.d.ts.map +1 -0
  644. package/dist/esm/i18n/messages/index.js +2 -0
  645. package/dist/esm/i18n/messages/index.js.map +1 -0
  646. package/dist/esm/i18n/messages/types.d.ts +82 -0
  647. package/dist/esm/i18n/messages/types.d.ts.map +1 -0
  648. package/dist/esm/i18n/messages/types.js +2 -0
  649. package/dist/esm/i18n/messages/types.js.map +1 -0
  650. package/dist/esm/icons/index.d.ts +1 -0
  651. package/dist/esm/icons/index.d.ts.map +1 -1
  652. package/dist/esm/icons/index.js +1 -0
  653. package/dist/esm/icons/index.js.map +1 -1
  654. package/dist/esm/icons/rating-star.d.ts +8 -0
  655. package/dist/esm/icons/rating-star.d.ts.map +1 -0
  656. package/dist/esm/icons/rating-star.js +19 -0
  657. package/dist/esm/icons/rating-star.js.map +1 -0
  658. package/dist/esm/index.d.ts +26 -5
  659. package/dist/esm/index.d.ts.map +1 -1
  660. package/dist/esm/index.js +24 -5
  661. package/dist/esm/index.js.map +1 -1
  662. package/dist/esm/providers/ssr/ssr-provider.d.ts +1 -3
  663. package/dist/esm/providers/ssr/ssr-provider.d.ts.map +1 -1
  664. package/dist/esm/providers/ssr/ssr-provider.js +3 -3
  665. package/dist/esm/providers/ssr/ssr-provider.js.map +1 -1
  666. package/dist/esm/utils/is-production.d.ts +2 -0
  667. package/dist/esm/utils/is-production.d.ts.map +1 -0
  668. package/dist/esm/utils/is-production.js +4 -0
  669. package/dist/esm/utils/is-production.js.map +1 -0
  670. package/dist/esm/utils/style/types.d.ts +1 -1
  671. package/dist/esm/utils/style/types.d.ts.map +1 -1
  672. package/dist/esm/utils/style/types.js.map +1 -1
  673. package/dist/esm/utils/use-media-query.d.ts +2 -0
  674. package/dist/esm/utils/use-media-query.d.ts.map +1 -0
  675. package/dist/esm/utils/use-media-query.js +32 -0
  676. package/dist/esm/utils/use-media-query.js.map +1 -0
  677. package/dist/esm/utils/use-production-warning.d.ts +3 -0
  678. package/dist/esm/utils/use-production-warning.d.ts.map +1 -0
  679. package/dist/esm/utils/use-production-warning.js +4 -0
  680. package/dist/esm/utils/use-production-warning.js.map +1 -0
  681. package/dist/esm/with-style-props.d.ts.map +1 -1
  682. package/dist-styles/core.css +1 -1
  683. package/dist-styles/normalize.css +1 -1
  684. package/dist-styles/styles.css +1 -1
  685. package/package.json +64 -20
  686. package/dist/commonjs/components/card/card-context.d.ts +0 -4
  687. package/dist/commonjs/components/card/card-context.d.ts.map +0 -1
  688. package/dist/commonjs/components/card/card-context.js +0 -6
  689. package/dist/commonjs/components/card/card-context.js.map +0 -1
  690. package/dist/commonjs/components/modal/modal.d.ts +0 -64
  691. package/dist/commonjs/components/modal/modal.d.ts.map +0 -1
  692. package/dist/commonjs/components/modal/modal.js +0 -40
  693. package/dist/commonjs/components/modal/modal.js.map +0 -1
  694. package/dist/commonjs/components/nav-tabs/nav-tabs.d.ts +0 -23
  695. package/dist/commonjs/components/nav-tabs/nav-tabs.d.ts.map +0 -1
  696. package/dist/commonjs/components/nav-tabs/nav-tabs.js +0 -27
  697. package/dist/commonjs/components/nav-tabs/nav-tabs.js.map +0 -1
  698. package/dist/esm/components/card/card-context.d.ts +0 -4
  699. package/dist/esm/components/card/card-context.d.ts.map +0 -1
  700. package/dist/esm/components/card/card-context.js +0 -3
  701. package/dist/esm/components/card/card-context.js.map +0 -1
  702. package/dist/esm/components/modal/modal.d.ts +0 -64
  703. package/dist/esm/components/modal/modal.d.ts.map +0 -1
  704. package/dist/esm/components/modal/modal.js +0 -33
  705. package/dist/esm/components/modal/modal.js.map +0 -1
  706. package/dist/esm/components/nav-tabs/nav-tabs.d.ts +0 -23
  707. package/dist/esm/components/nav-tabs/nav-tabs.d.ts.map +0 -1
  708. package/dist/esm/components/nav-tabs/nav-tabs.js +0 -20
  709. package/dist/esm/components/nav-tabs/nav-tabs.js.map +0 -1
@@ -1,19 +1,30 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import clsx from 'clsx';
4
+ import { useContext } from 'react';
4
5
  import { Disclosure as RACDisclosure, Button as RACButton, Heading as RACHeading, DisclosurePanel as RACDisclosurePanel, } from 'react-aria-components';
5
6
  import { forwardRef } from '../../forward-ref.js';
6
- import { IconChevronExpand } from '../../icons/index.js';
7
+ import { IconChevronRight, IconChevronRightBold } from '../../icons/index.js';
7
8
  import { withStyleProps } from '../../with-style-props.js';
8
9
  import { Text } from '../typography/text.js';
9
- function UNSTABLE_Disclosure({ children, title, actions, UNSAFE_className, UNSAFE_style, ...props }, ref) {
10
- return (_jsxs(RACDisclosure, { ...props, ref: ref, className: clsx('cim-disclosure', UNSAFE_className), style: UNSAFE_style, children: [_jsxs("div", { className: "cim-disclosure-heading-wrapper", children: [_jsx(RACHeading, { className: "cim-disclosure-heading", children: _jsxs(RACButton, { className: "cim-disclosure-button", slot: "trigger", children: [_jsx(IconChevronExpand, { size: 24, UNSAFE_className: "cim-disclosure-icon" }), _jsx(Text, { as: "span", variant: "body-semibold", children: title })] }) }), actions && _jsx("div", { className: "cim-disclosure-actions", children: actions })] }), _jsx(RACDisclosurePanel, { className: "cim-disclosure-panel", children: _jsx("div", { className: "cim-disclosure-panel-content", children: children }) })] }));
10
+ import { DisclosureContext } from './context.js';
11
+ const iconMap = {
12
+ medium: IconChevronRight,
13
+ small: IconChevronRightBold,
14
+ };
15
+ function Disclosure({ children, variant: ownVariant = 'base', size: ownSize = 'medium', title, iconStart, iconEnd, badge, actions, UNSAFE_className, UNSAFE_style, ...props }, ref) {
16
+ const disclosureContext = useContext(DisclosureContext);
17
+ const variant = disclosureContext?.variant ?? ownVariant;
18
+ const size = disclosureContext?.size ?? ownSize;
19
+ const isMediumSize = size === 'medium';
20
+ const Icon = iconMap[size];
21
+ return (_jsxs(RACDisclosure, { ...props, ref: ref, className: clsx('cim-disclosure', UNSAFE_className), style: UNSAFE_style, "data-variant": variant, "data-size": size, children: [_jsxs("div", { className: "cim-disclosure-heading-wrapper", children: [_jsx(RACHeading, { className: "cim-disclosure-heading", children: _jsxs(RACButton, { className: "cim-disclosure-button", slot: "trigger", children: [_jsx(Icon, { size: isMediumSize ? 32 : 16, UNSAFE_className: "cim-disclosure-icon" }), isMediumSize && iconStart, _jsx(Text, { as: "h3", variant: isMediumSize ? 'body' : 'medium', children: title }), isMediumSize && iconEnd, isMediumSize && badge && _jsx("div", { className: "cim-disclosure-badge", children: badge })] }) }), actions && _jsx("div", { className: "cim-disclosure-actions", children: actions })] }), _jsx(RACDisclosurePanel, { className: "cim-disclosure-panel", children: _jsx("div", { className: "cim-disclosure-panel-content", children: _jsx(DisclosureContext.Provider, { value: null, children: children }) }) })] }));
11
22
  }
12
23
  /**
13
24
  * Displays a collapsible section of content.
14
25
  *
15
26
  * See [disclosure usage guidelines](https://ui.cimpress.io/components/disclosure/).
16
27
  */
17
- const _Disclosure = withStyleProps(forwardRef(UNSTABLE_Disclosure), 'Disclosure');
18
- export { _Disclosure as UNSTABLE_Disclosure };
28
+ const _Disclosure = withStyleProps(forwardRef(Disclosure), 'Disclosure');
29
+ export { _Disclosure as Disclosure };
19
30
  //# sourceMappingURL=disclosure.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"disclosure.js","sourceRoot":"","sources":["../../../../src/components/disclosure/disclosure.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EACL,UAAU,IAAI,aAAa,EAC3B,MAAM,IAAI,SAAS,EACnB,OAAO,IAAI,UAAU,EACrB,eAAe,IAAI,kBAAkB,GAEtC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAa7C,SAAS,mBAAmB,CAC1B,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,KAAK,EAA4B,EAChG,GAAiC;IAEjC,OAAO,CACL,MAAC,aAAa,OAAK,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,KAAK,EAAE,YAAY,aAC1G,eAAK,SAAS,EAAC,gCAAgC,aAC7C,KAAC,UAAU,IAAC,SAAS,EAAC,wBAAwB,YAC5C,MAAC,SAAS,IAAC,SAAS,EAAC,uBAAuB,EAAC,IAAI,EAAC,SAAS,aACzD,KAAC,iBAAiB,IAAC,IAAI,EAAE,EAAE,EAAE,gBAAgB,EAAC,qBAAqB,GAAG,EACtE,KAAC,IAAI,IAAC,EAAE,EAAC,MAAM,EAAC,OAAO,EAAC,eAAe,YACpC,KAAK,GACD,IACG,GACD,EACZ,OAAO,IAAI,cAAK,SAAS,EAAC,wBAAwB,YAAE,OAAO,GAAO,IAC/D,EACN,KAAC,kBAAkB,IAAC,SAAS,EAAC,sBAAsB,YAClD,cAAK,SAAS,EAAC,8BAA8B,YAAE,QAAQ,GAAO,GAC3C,IACP,CACjB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,YAAY,CAAC,CAAC;AAElF,OAAO,EAAE,WAAW,IAAI,mBAAmB,EAAE,CAAC","sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport type { ForwardedRef, ReactNode } from 'react';\nimport {\n Disclosure as RACDisclosure,\n Button as RACButton,\n Heading as RACHeading,\n DisclosurePanel as RACDisclosurePanel,\n type DisclosureProps as RACDisclosureProps,\n} from 'react-aria-components';\nimport { forwardRef } from '../../forward-ref.js';\nimport { IconChevronExpand } from '../../icons/index.js';\nimport { withStyleProps } from '../../with-style-props.js';\nimport type { CommonProps } from '../types.js';\nimport { Text } from '../typography/text.js';\n\nexport interface UNSTABLE_DisclosureProps\n extends Omit<CommonProps, 'id'>,\n Pick<RACDisclosureProps, 'id' | 'isDisabled' | 'defaultExpanded' | 'isExpanded' | 'onExpandedChange'> {\n /** The content to display when the disclosure is expanded. */\n children: ReactNode;\n /** The title that is always visible in the disclosure header. */\n title: string;\n /** The actions displayed in the disclosure header. */\n actions?: ReactNode;\n}\n\nfunction UNSTABLE_Disclosure(\n { children, title, actions, UNSAFE_className, UNSAFE_style, ...props }: UNSTABLE_DisclosureProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n return (\n <RACDisclosure {...props} ref={ref} className={clsx('cim-disclosure', UNSAFE_className)} style={UNSAFE_style}>\n <div className=\"cim-disclosure-heading-wrapper\">\n <RACHeading className=\"cim-disclosure-heading\">\n <RACButton className=\"cim-disclosure-button\" slot=\"trigger\">\n <IconChevronExpand size={24} UNSAFE_className=\"cim-disclosure-icon\" />\n <Text as=\"span\" variant=\"body-semibold\">\n {title}\n </Text>\n </RACButton>\n </RACHeading>\n {actions && <div className=\"cim-disclosure-actions\">{actions}</div>}\n </div>\n <RACDisclosurePanel className=\"cim-disclosure-panel\">\n <div className=\"cim-disclosure-panel-content\">{children}</div>\n </RACDisclosurePanel>\n </RACDisclosure>\n );\n}\n\n/**\n * Displays a collapsible section of content.\n *\n * See [disclosure usage guidelines](https://ui.cimpress.io/components/disclosure/).\n */\nconst _Disclosure = withStyleProps(forwardRef(UNSTABLE_Disclosure), 'Disclosure');\n\nexport { _Disclosure as UNSTABLE_Disclosure };\n"]}
1
+ {"version":3,"file":"disclosure.js","sourceRoot":"","sources":["../../../../src/components/disclosure/disclosure.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAY,UAAU,EAAqC,MAAM,OAAO,CAAC;AAChF,OAAO,EACL,UAAU,IAAI,aAAa,EAC3B,MAAM,IAAI,SAAS,EACnB,OAAO,IAAI,UAAU,EACrB,eAAe,IAAI,kBAAkB,GAEtC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAA+C,MAAM,cAAc,CAAC;AAE9F,MAAM,OAAO,GAA8D;IACzE,MAAM,EAAE,gBAAgB;IACxB,KAAK,EAAE,oBAAoB;CAC5B,CAAC;AA2CF,SAAS,UAAU,CACjB,EACE,QAAQ,EACR,OAAO,EAAE,UAAU,GAAG,MAAM,EAC5B,IAAI,EAAE,OAAO,GAAG,QAAQ,EACxB,KAAK,EACL,SAAS,EACT,OAAO,EACP,KAAK,EACL,OAAO,EACP,gBAAgB,EAChB,YAAY,EACZ,GAAG,KAAK,EACQ,EAClB,GAAiC;IAEjC,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,iBAAiB,EAAE,OAAO,IAAI,UAAU,CAAC;IACzD,MAAM,IAAI,GAAG,iBAAiB,EAAE,IAAI,IAAI,OAAO,CAAC;IAChD,MAAM,YAAY,GAAG,IAAI,KAAK,QAAQ,CAAC;IAEvC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B,OAAO,CACL,MAAC,aAAa,OACR,KAAK,EACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,EACnD,KAAK,EAAE,YAAY,kBACL,OAAO,eACV,IAAI,aAEf,eAAK,SAAS,EAAC,gCAAgC,aAC7C,KAAC,UAAU,IAAC,SAAS,EAAC,wBAAwB,YAC5C,MAAC,SAAS,IAAC,SAAS,EAAC,uBAAuB,EAAC,IAAI,EAAC,SAAS,aACzD,KAAC,IAAI,IAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,gBAAgB,EAAC,qBAAqB,GAAG,EAE5E,YAAY,IAAI,SAAS,EAC1B,KAAC,IAAI,IAAC,EAAE,EAAC,IAAI,EAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,YACpD,KAAK,GACD,EACN,YAAY,IAAI,OAAO,EAEvB,YAAY,IAAI,KAAK,IAAI,cAAK,SAAS,EAAC,sBAAsB,YAAE,KAAK,GAAO,IACnE,GACD,EAEZ,OAAO,IAAI,cAAK,SAAS,EAAC,wBAAwB,YAAE,OAAO,GAAO,IAC/D,EAEN,KAAC,kBAAkB,IAAC,SAAS,EAAC,sBAAsB,YAClD,cAAK,SAAS,EAAC,8BAA8B,YAE3C,KAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI,YAAG,QAAQ,GAA8B,GAC5E,GACa,IACP,CACjB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;AAEzE,OAAO,EAAE,WAAW,IAAI,UAAU,EAAE,CAAC","sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport { type JSX, useContext, type ForwardedRef, type ReactNode } from 'react';\nimport {\n Disclosure as RACDisclosure,\n Button as RACButton,\n Heading as RACHeading,\n DisclosurePanel as RACDisclosurePanel,\n type DisclosureProps as RACDisclosureProps,\n} from 'react-aria-components';\nimport { forwardRef } from '../../forward-ref.js';\nimport { IconChevronRight, IconChevronRightBold } from '../../icons/index.js';\nimport { withStyleProps } from '../../with-style-props.js';\nimport type { CommonProps, IconProps } from '../types.js';\nimport { Text } from '../typography/text.js';\nimport { DisclosureContext, type DisclosureSize, type DisclosureVariant } from './context.js';\n\nconst iconMap: Record<DisclosureSize, (props: IconProps) => JSX.Element> = {\n medium: IconChevronRight,\n small: IconChevronRightBold,\n};\n\nexport interface DisclosureProps\n extends Omit<CommonProps, 'id'>,\n Pick<RACDisclosureProps, 'id' | 'isDisabled' | 'defaultExpanded' | 'isExpanded' | 'onExpandedChange'> {\n /** The content to display when the disclosure is expanded. */\n children: ReactNode;\n /**\n * Determines the visual appearance of the disclosure.\n * If the disclosure is part of a group, this prop has no effect - provide `variant` to `DisclosureGroup` instead.\n * @default 'base'\n */\n variant?: DisclosureVariant;\n /**\n * Determines the size of the disclosure.\n * If the disclosure is part of a group, this prop has no effect - provide `size` to `DisclosureGroup` instead.\n * @default 'medium'\n */\n size?: DisclosureSize;\n /** The title that is always visible in the disclosure header. */\n title: string;\n /**\n * An icon displayed before the disclosure title.\n *\n * Should not be used when size is set to `'small'` as icons won't be displayed at this size.\n */\n iconStart?: ReactNode;\n /**\n * An icon displayed after the disclosure title.\n *\n * Should not be used when size is set to `'small'` as icons won't be displayed at this size.\n */\n iconEnd?: ReactNode;\n /**\n * The badge displayed in the disclosure header.\n *\n * Should not be used when size is set to `'small'` as the badge won't be displayed at this size.\n */\n badge?: ReactNode;\n /** The actions displayed in the disclosure header. */\n actions?: ReactNode;\n}\n\nfunction Disclosure(\n {\n children,\n variant: ownVariant = 'base',\n size: ownSize = 'medium',\n title,\n iconStart,\n iconEnd,\n badge,\n actions,\n UNSAFE_className,\n UNSAFE_style,\n ...props\n }: DisclosureProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const disclosureContext = useContext(DisclosureContext);\n const variant = disclosureContext?.variant ?? ownVariant;\n const size = disclosureContext?.size ?? ownSize;\n const isMediumSize = size === 'medium';\n\n const Icon = iconMap[size];\n\n return (\n <RACDisclosure\n {...props}\n ref={ref}\n className={clsx('cim-disclosure', UNSAFE_className)}\n style={UNSAFE_style}\n data-variant={variant}\n data-size={size}\n >\n <div className=\"cim-disclosure-heading-wrapper\">\n <RACHeading className=\"cim-disclosure-heading\">\n <RACButton className=\"cim-disclosure-button\" slot=\"trigger\">\n <Icon size={isMediumSize ? 32 : 16} UNSAFE_className=\"cim-disclosure-icon\" />\n\n {isMediumSize && iconStart}\n <Text as=\"h3\" variant={isMediumSize ? 'body' : 'medium'}>\n {title}\n </Text>\n {isMediumSize && iconEnd}\n\n {isMediumSize && badge && <div className=\"cim-disclosure-badge\">{badge}</div>}\n </RACButton>\n </RACHeading>\n\n {actions && <div className=\"cim-disclosure-actions\">{actions}</div>}\n </div>\n\n <RACDisclosurePanel className=\"cim-disclosure-panel\">\n <div className=\"cim-disclosure-panel-content\">\n {/* Reset disclosure context to allow nesting disclosures */}\n <DisclosureContext.Provider value={null}>{children}</DisclosureContext.Provider>\n </div>\n </RACDisclosurePanel>\n </RACDisclosure>\n );\n}\n\n/**\n * Displays a collapsible section of content.\n *\n * See [disclosure usage guidelines](https://ui.cimpress.io/components/disclosure/).\n */\nconst _Disclosure = withStyleProps(forwardRef(Disclosure), 'Disclosure');\n\nexport { _Disclosure as Disclosure };\n"]}
@@ -0,0 +1,12 @@
1
+ import type { CommonProps } from '../types.js';
2
+ export interface DividerProps extends CommonProps {
3
+ /**
4
+ * The orientation of the divider (horizontal or vertical).
5
+ * @default 'horizontal'
6
+ */
7
+ orientation?: 'horizontal' | 'vertical';
8
+ }
9
+ /** Renders a divider between adjacent content. */
10
+ declare const _Divider: (props: DividerProps & import("react").RefAttributes<HTMLDivElement> & import("../../with-style-props.js").StyleProps) => import("react").JSX.Element | null;
11
+ export { _Divider as Divider };
12
+ //# sourceMappingURL=divider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.d.ts","sourceRoot":"","sources":["../../../../src/components/divider/divider.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C;;;OAGG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;CACzC;AAkBD,kDAAkD;AAClD,QAAA,MAAM,QAAQ,8JAAiD,CAAC;AAEhE,OAAO,EAAE,QAAQ,IAAI,OAAO,EAAE,CAAC"}
@@ -0,0 +1,13 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import clsx from 'clsx';
4
+ import { Separator as RACSeparator } from 'react-aria-components';
5
+ import { forwardRef } from '../../forward-ref.js';
6
+ import { withStyleProps } from '../../with-style-props.js';
7
+ function Divider({ orientation = 'horizontal', UNSAFE_className, UNSAFE_style, ...props }, ref) {
8
+ return (_jsx(RACSeparator, { ...props, ref: ref, className: clsx('cim-divider', UNSAFE_className), style: UNSAFE_style, elementType: "div", orientation: orientation }));
9
+ }
10
+ /** Renders a divider between adjacent content. */
11
+ const _Divider = withStyleProps(forwardRef(Divider), 'Divider');
12
+ export { _Divider as Divider };
13
+ //# sourceMappingURL=divider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.js","sourceRoot":"","sources":["../../../../src/components/divider/divider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAW3D,SAAS,OAAO,CACd,EAAE,WAAW,GAAG,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,KAAK,EAAgB,EACtF,GAAiC;IAEjC,OAAO,CACL,KAAC,YAAY,OACP,KAAK,EACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,EAChD,KAAK,EAAE,YAAY,EACnB,WAAW,EAAC,KAAK,EACjB,WAAW,EAAE,WAAW,GACxB,CACH,CAAC;AACJ,CAAC;AAED,kDAAkD;AAClD,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;AAEhE,OAAO,EAAE,QAAQ,IAAI,OAAO,EAAE,CAAC","sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport type { ForwardedRef } from 'react';\nimport { Separator as RACSeparator } from 'react-aria-components';\nimport { forwardRef } from '../../forward-ref.js';\nimport { withStyleProps } from '../../with-style-props.js';\nimport type { CommonProps } from '../types.js';\n\nexport interface DividerProps extends CommonProps {\n /**\n * The orientation of the divider (horizontal or vertical).\n * @default 'horizontal'\n */\n orientation?: 'horizontal' | 'vertical';\n}\n\nfunction Divider(\n { orientation = 'horizontal', UNSAFE_className, UNSAFE_style, ...props }: DividerProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n return (\n <RACSeparator\n {...props}\n ref={ref}\n className={clsx('cim-divider', UNSAFE_className)}\n style={UNSAFE_style}\n elementType=\"div\"\n orientation={orientation}\n />\n );\n}\n\n/** Renders a divider between adjacent content. */\nconst _Divider = withStyleProps(forwardRef(Divider), 'Divider');\n\nexport { _Divider as Divider };\n"]}
@@ -0,0 +1,81 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { AriaLabelingProps, CommonProps } from '../types.js';
3
+ export interface UNSTABLE_DrawerRootProps {
4
+ /** The drawer trigger with its associated drawer. Provide the trigger as the first child, and the drawer as the second child. */
5
+ children: ReactNode;
6
+ /** Whether the drawer is open (controlled). */
7
+ isOpen?: boolean;
8
+ /** Whether the drawer is open by default (uncontrolled). */
9
+ defaultOpen?: boolean;
10
+ /** Handler that is called when the drawer's open state changes. */
11
+ onOpenChange?: (isOpen: boolean) => void;
12
+ }
13
+ /**
14
+ * Encapsulates a drawer trigger and its associated drawer.
15
+ * The trigger can be any Cimpress UI button, and the drawer will be displayed when the trigger is activated.
16
+ */
17
+ export declare function UNSTABLE_DrawerRoot(props: UNSTABLE_DrawerRootProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare namespace UNSTABLE_DrawerRoot {
19
+ var displayName: string;
20
+ }
21
+ export interface UNSTABLE_DrawerRenderProps {
22
+ /** Closes the drawer when called. */
23
+ close: () => void;
24
+ }
25
+ export interface UNSTABLE_DrawerProps extends CommonProps, AriaLabelingProps {
26
+ /** The contents of the drawer. A function may be provided to access a function to close the drawer. */
27
+ children: ReactNode | ((renderProps: UNSTABLE_DrawerRenderProps) => ReactNode);
28
+ /** The title of the drawer. */
29
+ title?: string;
30
+ /**
31
+ * The size of the drawer. This prop is ignored on small devices - drawers on small devices will always take up all available width.
32
+ * @default 'medium'
33
+ */
34
+ size?: 'small' | 'medium' | 'large';
35
+ /**
36
+ * Whether to close the drawer when the user interacts outside of it or presses the Escape key.
37
+ * @default true
38
+ */
39
+ isDismissible?: boolean;
40
+ /**
41
+ * Whether the drawer is open (controlled).
42
+ * If using `DrawerRoot`, this prop has no effect - provide `isOpen` to `DrawerRoot` instead.
43
+ */
44
+ isOpen?: boolean;
45
+ /**
46
+ * Whether the drawer is open by default (uncontrolled).
47
+ * If using `DrawerRoot`, this prop has no effect - provide `defaultOpen` to `DrawerRoot` instead.
48
+ */
49
+ defaultOpen?: boolean;
50
+ /**
51
+ * Handler that is called when the drawer's open state changes.
52
+ * If using `DrawerRoot`, this prop has no effect - provide `onOpenChange` to `DrawerRoot` instead.
53
+ */
54
+ onOpenChange?: (isOpen: boolean) => void;
55
+ }
56
+ /**
57
+ * Displays an overlay element which blocks interaction with outside elements.
58
+ *
59
+ * See [drawer usage guidelines](https://ui.cimpress.io/components/drawer/).
60
+ */
61
+ declare const _UNSTABLE_Drawer: (props: UNSTABLE_DrawerProps & import("react").RefAttributes<HTMLElement>) => import("react").JSX.Element | null;
62
+ export { _UNSTABLE_Drawer as UNSTABLE_Drawer };
63
+ export interface UNSTABLE_DrawerBodyProps {
64
+ /** The content to render within the drawer. */
65
+ children: ReactNode;
66
+ }
67
+ /** Renders content within `Drawer`. */
68
+ export declare function UNSTABLE_DrawerBody(props: UNSTABLE_DrawerBodyProps): import("react/jsx-runtime").JSX.Element;
69
+ export declare namespace UNSTABLE_DrawerBody {
70
+ var displayName: string;
71
+ }
72
+ export interface UNSTABLE_DrawerActionsProps {
73
+ /** Actions that should be available in the drawer. */
74
+ children: ReactNode;
75
+ }
76
+ /** Renders actions within `Drawer`. */
77
+ export declare function UNSTABLE_DrawerActions({ children, ...props }: UNSTABLE_DrawerActionsProps): import("react/jsx-runtime").JSX.Element;
78
+ export declare namespace UNSTABLE_DrawerActions {
79
+ var displayName: string;
80
+ }
81
+ //# sourceMappingURL=drawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../../src/components/drawer/drawer.tsx"],"names":[],"mappings":"AAGA,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAcpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGlE,MAAM,WAAW,wBAAwB;IACvC,iIAAiI;IACjI,QAAQ,EAAE,SAAS,CAAC;IACpB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mEAAmE;IACnE,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAC1C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,2CAElE;yBAFe,mBAAmB;;;AAMnC,MAAM,WAAW,0BAA0B;IACzC,qCAAqC;IACrC,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,oBAAqB,SAAQ,WAAW,EAAE,iBAAiB;IAC1E,uGAAuG;IACvG,QAAQ,EAAE,SAAS,GAAG,CAAC,CAAC,WAAW,EAAE,0BAA0B,KAAK,SAAS,CAAC,CAAC;IAC/E,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAC1C;AA6DD;;;;GAIG;AACH,QAAA,MAAM,gBAAgB,kHAAwC,CAAC;AAE/D,OAAO,EAAE,gBAAgB,IAAI,eAAe,EAAE,CAAC;AAE/C,MAAM,WAAW,wBAAwB;IACvC,+CAA+C;IAC/C,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,uCAAuC;AACvC,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,2CAElE;yBAFe,mBAAmB;;;AAMnC,MAAM,WAAW,2BAA2B;IAC1C,sDAAsD;IACtD,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,uCAAuC;AACvC,wBAAgB,sBAAsB,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,2BAA2B,2CASzF;yBATe,sBAAsB"}
@@ -0,0 +1,50 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import clsx from 'clsx';
4
+ import { Children } from 'react';
5
+ import { Dialog as RACDialog, DialogTrigger as RACDialogTrigger, Heading as RACHeading, Modal as RACModal, ModalOverlay as RACModalOverlay, } from 'react-aria-components';
6
+ import { forwardRef } from '../../forward-ref.js';
7
+ import { useLocalizedMessages } from '../../i18n/index.js';
8
+ import { useMediaQuery } from '../../utils/use-media-query.js';
9
+ import { useProductionWarning } from '../../utils/use-production-warning.js';
10
+ import { FocusableContainer } from '../internal/focusable-container/focusable-container.js';
11
+ import { XButton } from '../internal/x-button/x-button.js';
12
+ import { textStyle } from '../typography/utils.js';
13
+ /**
14
+ * Encapsulates a drawer trigger and its associated drawer.
15
+ * The trigger can be any Cimpress UI button, and the drawer will be displayed when the trigger is activated.
16
+ */
17
+ export function UNSTABLE_DrawerRoot(props) {
18
+ return _jsx(RACDialogTrigger, { ...props });
19
+ }
20
+ UNSTABLE_DrawerRoot.displayName = 'DrawerRoot';
21
+ function UNSTABLE_Drawer({ children, title, size = 'medium', UNSAFE_className, UNSAFE_style, isDismissible = true, isOpen, defaultOpen, onOpenChange, ...props }, ref) {
22
+ const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy } = props;
23
+ useProductionWarning(() => {
24
+ if (!title && !ariaLabel && !ariaLabelledBy) {
25
+ console.warn('Drawer requires one of title / aria-label / aria-labelledby for accessibility');
26
+ }
27
+ }, [title, ariaLabel, ariaLabelledBy]);
28
+ const messages = useLocalizedMessages('common');
29
+ return (_jsx(RACModalOverlay, { className: "cim-drawer-overlay", isDismissable: isDismissible, isKeyboardDismissDisabled: !isDismissible, isOpen: isOpen, defaultOpen: defaultOpen, onOpenChange: onOpenChange, "data-cim-style-root": true, children: _jsx(RACModal, { className: clsx('cim-drawer', UNSAFE_className), style: UNSAFE_style, "data-size": size, children: _jsx(RACDialog, { ...props, ref: ref, className: "cim-drawer-dialog", children: (renderProps) => (_jsxs(_Fragment, { children: [_jsxs("div", { className: "cim-drawer-header", children: [title && (_jsx(RACHeading, { slot: "title", className: clsx('cim-drawer-title', textStyle({ variant: 'title-5', tone: 'base' })), children: title })), _jsx(XButton, { "aria-label": messages.format('dismiss'), slot: "close" })] }), typeof children === 'function' ? children(renderProps) : children] })) }) }) }));
30
+ }
31
+ /**
32
+ * Displays an overlay element which blocks interaction with outside elements.
33
+ *
34
+ * See [drawer usage guidelines](https://ui.cimpress.io/components/drawer/).
35
+ */
36
+ const _UNSTABLE_Drawer = forwardRef(UNSTABLE_Drawer, 'Drawer');
37
+ export { _UNSTABLE_Drawer as UNSTABLE_Drawer };
38
+ /** Renders content within `Drawer`. */
39
+ export function UNSTABLE_DrawerBody(props) {
40
+ return _jsx(FocusableContainer, { ...props, className: "cim-drawer-body", scrollDirection: "vertical" });
41
+ }
42
+ UNSTABLE_DrawerBody.displayName = 'DrawerBody';
43
+ /** Renders actions within `Drawer`. */
44
+ export function UNSTABLE_DrawerActions({ children, ...props }) {
45
+ const matches = useMediaQuery('(min-width: 640px)');
46
+ const componentChildren = matches ? children : Children.toArray(children).reverse();
47
+ return (_jsx("div", { ...props, className: "cim-drawer-actions", children: componentChildren }));
48
+ }
49
+ UNSTABLE_DrawerActions.displayName = 'DrawerActions';
50
+ //# sourceMappingURL=drawer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawer.js","sourceRoot":"","sources":["../../../../src/components/drawer/drawer.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport { Children, type ForwardedRef, type ReactNode } from 'react';\nimport {\n Dialog as RACDialog,\n DialogTrigger as RACDialogTrigger,\n Heading as RACHeading,\n Modal as RACModal,\n ModalOverlay as RACModalOverlay,\n} from 'react-aria-components';\nimport { forwardRef } from '../../forward-ref.js';\nimport { useLocalizedMessages } from '../../i18n/index.js';\nimport { useMediaQuery } from '../../utils/use-media-query.js';\nimport { useProductionWarning } from '../../utils/use-production-warning.js';\nimport { FocusableContainer } from '../internal/focusable-container/focusable-container.js';\nimport { XButton } from '../internal/x-button/x-button.js';\nimport type { AriaLabelingProps, CommonProps } from '../types.js';\nimport { textStyle } from '../typography/utils.js';\n\nexport interface UNSTABLE_DrawerRootProps {\n /** The drawer trigger with its associated drawer. Provide the trigger as the first child, and the drawer as the second child. */\n children: ReactNode;\n /** Whether the drawer is open (controlled). */\n isOpen?: boolean;\n /** Whether the drawer is open by default (uncontrolled). */\n defaultOpen?: boolean;\n /** Handler that is called when the drawer's open state changes. */\n onOpenChange?: (isOpen: boolean) => void;\n}\n\n/**\n * Encapsulates a drawer trigger and its associated drawer.\n * The trigger can be any Cimpress UI button, and the drawer will be displayed when the trigger is activated.\n */\nexport function UNSTABLE_DrawerRoot(props: UNSTABLE_DrawerRootProps) {\n return <RACDialogTrigger {...props} />;\n}\n\nUNSTABLE_DrawerRoot.displayName = 'DrawerRoot';\n\nexport interface UNSTABLE_DrawerRenderProps {\n /** Closes the drawer when called. */\n close: () => void;\n}\n\nexport interface UNSTABLE_DrawerProps extends CommonProps, AriaLabelingProps {\n /** The contents of the drawer. A function may be provided to access a function to close the drawer. */\n children: ReactNode | ((renderProps: UNSTABLE_DrawerRenderProps) => ReactNode);\n /** The title of the drawer. */\n title?: string;\n /**\n * The size of the drawer. This prop is ignored on small devices - drawers on small devices will always take up all available width.\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n /**\n * Whether to close the drawer when the user interacts outside of it or presses the Escape key.\n * @default true\n */\n isDismissible?: boolean;\n /**\n * Whether the drawer is open (controlled).\n * If using `DrawerRoot`, this prop has no effect - provide `isOpen` to `DrawerRoot` instead.\n */\n isOpen?: boolean;\n /**\n * Whether the drawer is open by default (uncontrolled).\n * If using `DrawerRoot`, this prop has no effect - provide `defaultOpen` to `DrawerRoot` instead.\n */\n defaultOpen?: boolean;\n /**\n * Handler that is called when the drawer's open state changes.\n * If using `DrawerRoot`, this prop has no effect - provide `onOpenChange` to `DrawerRoot` instead.\n */\n onOpenChange?: (isOpen: boolean) => void;\n}\n\nfunction UNSTABLE_Drawer(\n {\n children,\n title,\n size = 'medium',\n UNSAFE_className,\n UNSAFE_style,\n isDismissible = true,\n isOpen,\n defaultOpen,\n onOpenChange,\n ...props\n }: UNSTABLE_DrawerProps,\n ref: ForwardedRef<HTMLElement>,\n) {\n const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy } = props;\n\n useProductionWarning(() => {\n if (!title && !ariaLabel && !ariaLabelledBy) {\n console.warn('Drawer requires one of title / aria-label / aria-labelledby for accessibility');\n }\n }, [title, ariaLabel, ariaLabelledBy]);\n\n const messages = useLocalizedMessages('common');\n\n return (\n <RACModalOverlay\n className=\"cim-drawer-overlay\"\n isDismissable={isDismissible}\n isKeyboardDismissDisabled={!isDismissible}\n isOpen={isOpen}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}\n data-cim-style-root\n >\n <RACModal className={clsx('cim-drawer', UNSAFE_className)} style={UNSAFE_style} data-size={size}>\n <RACDialog {...props} ref={ref} className=\"cim-drawer-dialog\">\n {(renderProps) => (\n <>\n <div className=\"cim-drawer-header\">\n {title && (\n <RACHeading\n slot=\"title\"\n className={clsx('cim-drawer-title', textStyle({ variant: 'title-5', tone: 'base' }))}\n >\n {title}\n </RACHeading>\n )}\n <XButton aria-label={messages.format('dismiss')} slot=\"close\" />\n </div>\n {typeof children === 'function' ? children(renderProps) : children}\n </>\n )}\n </RACDialog>\n </RACModal>\n </RACModalOverlay>\n );\n}\n\n/**\n * Displays an overlay element which blocks interaction with outside elements.\n *\n * See [drawer usage guidelines](https://ui.cimpress.io/components/drawer/).\n */\nconst _UNSTABLE_Drawer = forwardRef(UNSTABLE_Drawer, 'Drawer');\n\nexport { _UNSTABLE_Drawer as UNSTABLE_Drawer };\n\nexport interface UNSTABLE_DrawerBodyProps {\n /** The content to render within the drawer. */\n children: ReactNode;\n}\n\n/** Renders content within `Drawer`. */\nexport function UNSTABLE_DrawerBody(props: UNSTABLE_DrawerBodyProps) {\n return <FocusableContainer {...props} className=\"cim-drawer-body\" scrollDirection=\"vertical\" />;\n}\n\nUNSTABLE_DrawerBody.displayName = 'DrawerBody';\n\nexport interface UNSTABLE_DrawerActionsProps {\n /** Actions that should be available in the drawer. */\n children: ReactNode;\n}\n\n/** Renders actions within `Drawer`. */\nexport function UNSTABLE_DrawerActions({ children, ...props }: UNSTABLE_DrawerActionsProps) {\n const matches = useMediaQuery('(min-width: 640px)');\n const componentChildren = matches ? children : Children.toArray(children).reverse();\n\n return (\n <div {...props} className=\"cim-drawer-actions\">\n {componentChildren}\n </div>\n );\n}\n\nUNSTABLE_DrawerActions.displayName = 'DrawerActions';\n"]}
@@ -0,0 +1,19 @@
1
+ import { type FileTriggerProps as RACFileTriggerProps } from 'react-aria-components';
2
+ import type { CommonProps, FieldProps } from '../types.js';
3
+ export interface UNSTABLE_FilePickerProps extends CommonProps, Omit<FieldProps<File[]>, 'aria-label'>, Pick<RACFileTriggerProps, 'acceptedFileTypes' | 'allowsMultiple' | 'acceptDirectory' | 'defaultCamera'> {
4
+ /** Whether the field is disabled. */
5
+ isDisabled?: boolean;
6
+ /** Whether the field is required. */
7
+ isRequired?: boolean;
8
+ /** Whether the field is invalid. */
9
+ isInvalid?: boolean;
10
+ /** The allowed file types that can be selected. */
11
+ acceptedFileTypes?: string[];
12
+ /** Whether multiple files can be selected. */
13
+ allowsMultiple?: boolean;
14
+ /** Handler called when files are selected. */
15
+ onSelect?: (files: File[] | null) => void;
16
+ }
17
+ declare const _UNSTABLE_FilePicker: (props: UNSTABLE_FilePickerProps & import("react").RefAttributes<HTMLDivElement> & import("../../with-style-props.js").StyleProps) => import("react").JSX.Element | null;
18
+ export { _UNSTABLE_FilePicker as UNSTABLE_FilePicker };
19
+ //# sourceMappingURL=file-picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-picker.d.ts","sourceRoot":"","sources":["../../../../src/components/file-picker/file-picker.tsx"],"names":[],"mappings":"AAKA,OAAO,EAGL,KAAK,gBAAgB,IAAI,mBAAmB,EAI7C,MAAM,uBAAuB,CAAC;AAM/B,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI3D,MAAM,WAAW,wBACf,SAAQ,WAAW,EACjB,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,YAAY,CAAC,EACtC,IAAI,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,eAAe,CAAC;IACzG,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mDAAmD;IACnD,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,KAAK,IAAI,CAAC;CAC3C;AAmID,QAAA,MAAM,oBAAoB,0KAAgE,CAAC;AAE3F,OAAO,EAAE,oBAAoB,IAAI,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useFormValidation } from '@react-aria/form';
3
+ import { useFormReset, useId, useSlotId } from '@react-aria/utils';
4
+ import { useFormValidationState } from '@react-stately/form';
5
+ import clsx from 'clsx';
6
+ import { useRef, useState } from 'react';
7
+ import { FieldErrorContext as RACFieldErrorContext, FileTrigger as RACFileTrigger, LabelContext as RACLabelContext, Provider as RACProvider, TextContext as RACTextContext, } from 'react-aria-components';
8
+ import { forwardRef } from '../../forward-ref.js';
9
+ import { useLocalizedMessages } from '../../i18n/index.js';
10
+ import { withStyleProps } from '../../with-style-props.js';
11
+ import { Button } from '../button/button.js';
12
+ import { FormFieldDescription, FormFieldError, FormFieldLabel } from '../internal/form-field/form-field.js';
13
+ import { Text } from '../typography/text.js';
14
+ import { UNSTABLE_VisuallyHidden } from '../visually-hidden/visually-hidden.js';
15
+ function UNSTABLE_FilePicker({ id, label, description, isDisabled, isRequired, isInvalid, onSelect, acceptedFileTypes, allowsMultiple, acceptDirectory, defaultCamera, error, name, validate, 'aria-labelledby': ariaLabelledBy, 'aria-describedby': ariaDescribedBy, 'aria-details': ariaDetails, UNSAFE_className, UNSAFE_style, ...props }, ref) {
16
+ const buttonId = useId(id);
17
+ const labelId = useId();
18
+ const fileTextId = useId();
19
+ const [files, setFiles] = useState(null);
20
+ const fileInputRef = useRef(null);
21
+ const handleSelect = (files) => {
22
+ // Commit validation to clear any previous validation errors when new files are selected
23
+ validationState.commitValidation();
24
+ const filesArray = files?.length ? Array.from(files) : null;
25
+ setFiles(filesArray);
26
+ onSelect?.(filesArray);
27
+ if (fileInputRef.current) {
28
+ fileInputRef.current.files = files;
29
+ }
30
+ };
31
+ const labelMessages = useLocalizedMessages('label');
32
+ const messages = useLocalizedMessages('filePicker');
33
+ const labelText = files?.length != null
34
+ ? files.length === 1
35
+ ? files[0]?.name
36
+ : messages.format('multipleFilesSelected', { fileCount: files.length })
37
+ : messages.format('noFilesSelected', { allowsMultiple: allowsMultiple ?? false });
38
+ const validationBehavior = 'native';
39
+ const validationState = useFormValidationState({
40
+ value: files,
41
+ isInvalid,
42
+ isRequired,
43
+ name,
44
+ validate,
45
+ validationBehavior,
46
+ });
47
+ useFormValidation({ isInvalid, isRequired, validate, validationBehavior }, validationState, fileInputRef);
48
+ useFormReset(fileInputRef, files, setFiles);
49
+ const descriptionId = useSlotId([Boolean(description)]);
50
+ const errorMessageId = useSlotId([
51
+ Boolean(error || validationState.displayValidation.validationErrors),
52
+ validationState.displayValidation.isInvalid,
53
+ ]);
54
+ return (_jsxs(RACProvider, { values: [
55
+ [RACLabelContext, label != null ? { id: labelId, htmlFor: buttonId } : {}],
56
+ [RACTextContext, { slots: { description: { id: descriptionId }, errorMessage: { id: errorMessageId } } }],
57
+ [RACFieldErrorContext, validationState.displayValidation],
58
+ ], children: [_jsxs("div", { ...props, className: clsx('cim-file-picker', UNSAFE_className), style: UNSAFE_style, ref: ref, children: [label && (_jsxs(FormFieldLabel, { isRequired: isRequired, isDisabled: isDisabled, children: [label, isRequired && _jsx(UNSTABLE_VisuallyHidden, { children: labelMessages.format('required') })] })), _jsxs("div", { className: "cim-file-picker-button-container", children: [_jsx(RACFileTrigger, { onSelect: handleSelect, acceptedFileTypes: acceptedFileTypes, allowsMultiple: allowsMultiple, acceptDirectory: acceptDirectory, defaultCamera: defaultCamera, children: _jsx(Button, { id: buttonId, isDisabled: isDisabled, "aria-labelledby": [buttonId, label != null ? labelId : null, ariaLabelledBy].filter(Boolean).join(' '), "aria-describedby": [fileTextId, descriptionId, errorMessageId, ariaDescribedBy].join(' '), "aria-details": ariaDetails, children: messages.format('chooseFile') }) }), _jsx(Text, { id: fileTextId, as: "p", variant: "medium", tone: "base", children: labelText })] }), _jsx(FormFieldError, { children: error }), _jsx(FormFieldDescription, { children: description })] }), name && (_jsx("input", { type: "file", className: "cim-file-picker-hidden-input", name: name, multiple: allowsMultiple, required: isRequired, ref: fileInputRef }))] }));
59
+ }
60
+ const _UNSTABLE_FilePicker = withStyleProps(forwardRef(UNSTABLE_FilePicker), 'FilePicker');
61
+ export { _UNSTABLE_FilePicker as UNSTABLE_FilePicker };
62
+ //# sourceMappingURL=file-picker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-picker.js","sourceRoot":"","sources":["../../../../src/components/file-picker/file-picker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useFormValidation } from '@react-aria/form';\nimport { useFormReset, useId, useSlotId } from '@react-aria/utils';\nimport { useFormValidationState } from '@react-stately/form';\nimport clsx from 'clsx';\nimport { type ForwardedRef, useRef, useState } from 'react';\nimport {\n FieldErrorContext as RACFieldErrorContext,\n FileTrigger as RACFileTrigger,\n type FileTriggerProps as RACFileTriggerProps,\n LabelContext as RACLabelContext,\n Provider as RACProvider,\n TextContext as RACTextContext,\n} from 'react-aria-components';\nimport { forwardRef } from '../../forward-ref.js';\nimport { useLocalizedMessages } from '../../i18n/index.js';\nimport { withStyleProps } from '../../with-style-props.js';\nimport { Button } from '../button/button.js';\nimport { FormFieldDescription, FormFieldError, FormFieldLabel } from '../internal/form-field/form-field.js';\nimport type { CommonProps, FieldProps } from '../types.js';\nimport { Text } from '../typography/text.js';\nimport { UNSTABLE_VisuallyHidden } from '../visually-hidden/visually-hidden.js';\n\nexport interface UNSTABLE_FilePickerProps\n extends CommonProps,\n Omit<FieldProps<File[]>, 'aria-label'>,\n Pick<RACFileTriggerProps, 'acceptedFileTypes' | 'allowsMultiple' | 'acceptDirectory' | 'defaultCamera'> {\n /** Whether the field is disabled. */\n isDisabled?: boolean;\n /** Whether the field is required. */\n isRequired?: boolean;\n /** Whether the field is invalid. */\n isInvalid?: boolean;\n /** The allowed file types that can be selected. */\n acceptedFileTypes?: string[];\n /** Whether multiple files can be selected. */\n allowsMultiple?: boolean;\n /** Handler called when files are selected. */\n onSelect?: (files: File[] | null) => void;\n}\n\nfunction UNSTABLE_FilePicker(\n {\n id,\n label,\n description,\n isDisabled,\n isRequired,\n isInvalid,\n onSelect,\n acceptedFileTypes,\n allowsMultiple,\n acceptDirectory,\n defaultCamera,\n error,\n name,\n validate,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n 'aria-details': ariaDetails,\n UNSAFE_className,\n UNSAFE_style,\n ...props\n }: UNSTABLE_FilePickerProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const buttonId = useId(id);\n const labelId = useId();\n const fileTextId = useId();\n\n const [files, setFiles] = useState<File[] | null>(null);\n const fileInputRef = useRef<HTMLInputElement>(null);\n const handleSelect = (files: FileList | null) => {\n // Commit validation to clear any previous validation errors when new files are selected\n validationState.commitValidation();\n\n const filesArray = files?.length ? Array.from(files) : null;\n setFiles(filesArray);\n onSelect?.(filesArray);\n\n if (fileInputRef.current) {\n fileInputRef.current.files = files;\n }\n };\n\n const labelMessages = useLocalizedMessages('label');\n const messages = useLocalizedMessages('filePicker');\n const labelText =\n files?.length != null\n ? files.length === 1\n ? files[0]?.name\n : messages.format('multipleFilesSelected', { fileCount: files.length })\n : messages.format('noFilesSelected', { allowsMultiple: allowsMultiple ?? false });\n\n const validationBehavior = 'native';\n const validationState = useFormValidationState({\n value: files,\n isInvalid,\n isRequired,\n name,\n validate,\n validationBehavior,\n });\n useFormValidation({ isInvalid, isRequired, validate, validationBehavior }, validationState, fileInputRef);\n useFormReset(fileInputRef, files, setFiles);\n\n const descriptionId = useSlotId([Boolean(description)]);\n const errorMessageId = useSlotId([\n Boolean(error || validationState.displayValidation.validationErrors),\n validationState.displayValidation.isInvalid,\n ]);\n\n return (\n <RACProvider\n values={[\n [RACLabelContext, label != null ? { id: labelId, htmlFor: buttonId } : {}],\n [RACTextContext, { slots: { description: { id: descriptionId }, errorMessage: { id: errorMessageId } } }],\n [RACFieldErrorContext, validationState.displayValidation],\n ]}\n >\n <div {...props} className={clsx('cim-file-picker', UNSAFE_className)} style={UNSAFE_style} ref={ref}>\n {label && (\n <FormFieldLabel isRequired={isRequired} isDisabled={isDisabled}>\n {label}\n {/*\n * Button elements don't support `aria-required`, so we need to add visually hidden text to indicate that the field is required.\n * See: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Reference/Attributes/aria-required#examples:~:text=Note%3A%20If%20the%20field%27s%20label%20already%20contains%20the%20word%20%22required%22%2C%20it%20is%20recommended%20to%20leave%20out%20the%20aria%2Drequired%20attribute.%20This%20avoids%20that%20screen%20readers%20read%20out%20the%20term%20%22required%22%20twice.\n */}\n {isRequired && <UNSTABLE_VisuallyHidden>{labelMessages.format('required')}</UNSTABLE_VisuallyHidden>}\n </FormFieldLabel>\n )}\n <div className=\"cim-file-picker-button-container\">\n <RACFileTrigger\n onSelect={handleSelect}\n acceptedFileTypes={acceptedFileTypes}\n allowsMultiple={allowsMultiple}\n acceptDirectory={acceptDirectory}\n defaultCamera={defaultCamera}\n >\n <Button\n id={buttonId}\n isDisabled={isDisabled}\n aria-labelledby={[buttonId, label != null ? labelId : null, ariaLabelledBy].filter(Boolean).join(' ')}\n aria-describedby={[fileTextId, descriptionId, errorMessageId, ariaDescribedBy].join(' ')}\n aria-details={ariaDetails}\n >\n {messages.format('chooseFile')}\n </Button>\n </RACFileTrigger>\n <Text id={fileTextId} as=\"p\" variant=\"medium\" tone=\"base\">\n {labelText}\n </Text>\n </div>\n <FormFieldError>{error}</FormFieldError>\n <FormFieldDescription>{description}</FormFieldDescription>\n </div>\n {name && (\n <input\n type=\"file\"\n className=\"cim-file-picker-hidden-input\"\n name={name}\n multiple={allowsMultiple}\n required={isRequired}\n ref={fileInputRef}\n />\n )}\n </RACProvider>\n );\n}\n\nconst _UNSTABLE_FilePicker = withStyleProps(forwardRef(UNSTABLE_FilePicker), 'FilePicker');\n\nexport { _UNSTABLE_FilePicker as UNSTABLE_FilePicker };\n"]}
@@ -12,7 +12,7 @@ export function FormFieldLabel({ children, isRequired, isDisabled, }) {
12
12
  if (!children) {
13
13
  return null;
14
14
  }
15
- return (_jsxs(RACLabel, { className: clsx('cim-form-field-label', textStyle({ variant: 'medium', tone: isDisabled ? 'muted' : 'base' })), children: [children, isRequired && (_jsx(Text, { tone: "critical", as: "span", "aria-hidden": true, children: "*" }))] }));
15
+ return (_jsxs("div", { className: clsx('cim-form-field-label', textStyle({ variant: 'medium', tone: isDisabled ? 'muted' : 'base' })), children: [_jsx(RACLabel, { children: children }), isRequired && (_jsx(Text, { tone: "critical", as: "span", "aria-hidden": true, children: "*" }))] }));
16
16
  }
17
17
  /**
18
18
  * Renders a description for a form field.
@@ -1 +1 @@
1
- {"version":3,"file":"form-field.js","sourceRoot":"","sources":["../../../../../src/components/internal/form-field/form-field.tsx"],"names":[],"mappings":"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","sourcesContent":["import clsx from 'clsx';\nimport type { ReactNode } from 'react';\nimport {\n FieldError as RACFieldError,\n Label as RACLabel,\n Text as RACText,\n type ValidationResult as RACValidationResult,\n} from 'react-aria-components';\nimport { IconWarning } from '../../../icons/index.js';\nimport type { FieldError } from '../../types.js';\nimport { Text } from '../../typography/text.js';\nimport { textStyle } from '../../typography/utils.js';\n\n/**\n * Renders a label for a form field.\n * @internal\n */\nexport function FormFieldLabel({\n children,\n isRequired,\n isDisabled,\n}: {\n children: string | undefined;\n isRequired: boolean | undefined;\n isDisabled?: boolean | undefined;\n}) {\n if (!children) {\n return null;\n }\n\n return (\n <RACLabel\n className={clsx('cim-form-field-label', textStyle({ variant: 'medium', tone: isDisabled ? 'muted' : 'base' }))}\n >\n {children}\n {isRequired && (\n <Text tone=\"critical\" as=\"span\" aria-hidden>\n *\n </Text>\n )}\n </RACLabel>\n );\n}\n\n/**\n * Renders a description for a form field.\n * @internal\n */\nexport function FormFieldDescription({ children }: { children: string | undefined }) {\n if (!children) {\n return null;\n }\n\n return (\n <RACText\n slot=\"description\"\n className={clsx('cim-form-field-description', textStyle({ variant: 'small', tone: 'subtle' }))}\n >\n {children}\n </RACText>\n );\n}\n\n/**\n * Renders an error message for a form field.\n *\n * Must be rendered unconditionally, as it can be populated with browser validation errors\n * even if an explicit error message isn't provided.\n *\n * @internal\n */\nexport function FormFieldError({ children }: { children: FieldError }) {\n return (\n <RACFieldError className={clsx('cim-form-field-error', textStyle({ variant: 'small', tone: 'critical' }))}>\n {(validation) => renderFieldError(children, validation)}\n </RACFieldError>\n );\n}\n\nfunction renderFieldError(fieldError: FieldError, validation: RACValidationResult): string | ReactNode | undefined {\n const errors =\n typeof fieldError === 'function' ? fieldError(validation) : (fieldError ?? validation.validationErrors);\n\n if (!errors || !errors.length) {\n return null;\n }\n\n return (\n <ul className=\"cim-form-field-error-list\">\n {typeof errors === 'object' ? (\n errors.map((error) => <ErrorMessage key={error} message={error} />)\n ) : (\n <ErrorMessage message={errors} />\n )}\n </ul>\n );\n}\n\nfunction ErrorMessage({ message }: { message: string }) {\n return (\n <li className=\"cim-form-field-error-message\">\n <div className=\"cim-form-field-error-icon-wrapper\" aria-hidden>\n <IconWarning />\n </div>\n {message}\n </li>\n );\n}\n\n/**\n * Renders an error message for `errorMessage` slot.\n * Used by `TagGroup` to show error messages, since `FieldError` is not supported as it is not a form field.\n *\n * @internal\n */\nexport function FormFieldErrorText({ children }: { children: string }) {\n return (\n <RACText\n slot=\"errorMessage\"\n className={clsx('cim-form-field-error', textStyle({ variant: 'small', tone: 'critical' }))}\n >\n <ErrorMessage message={children} />\n </RACText>\n );\n}\n"]}
1
+ {"version":3,"file":"form-field.js","sourceRoot":"","sources":["../../../../../src/components/internal/form-field/form-field.tsx"],"names":[],"mappings":"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","sourcesContent":["import clsx from 'clsx';\nimport type { ReactNode } from 'react';\nimport {\n FieldError as RACFieldError,\n Label as RACLabel,\n Text as RACText,\n type ValidationResult as RACValidationResult,\n} from 'react-aria-components';\nimport { IconWarning } from '../../../icons/index.js';\nimport type { FieldError } from '../../types.js';\nimport { Text } from '../../typography/text.js';\nimport { textStyle } from '../../typography/utils.js';\n\n/**\n * Renders a label for a form field.\n * @internal\n */\nexport function FormFieldLabel({\n children,\n isRequired,\n isDisabled,\n}: {\n children: ReactNode | undefined;\n isRequired: boolean | undefined;\n isDisabled?: boolean | undefined;\n}) {\n if (!children) {\n return null;\n }\n\n return (\n <div\n className={clsx('cim-form-field-label', textStyle({ variant: 'medium', tone: isDisabled ? 'muted' : 'base' }))}\n >\n <RACLabel>{children}</RACLabel>\n {isRequired && (\n <Text tone=\"critical\" as=\"span\" aria-hidden>\n *\n </Text>\n )}\n </div>\n );\n}\n\n/**\n * Renders a description for a form field.\n * @internal\n */\nexport function FormFieldDescription({ children }: { children: string | undefined }) {\n if (!children) {\n return null;\n }\n\n return (\n <RACText\n slot=\"description\"\n className={clsx('cim-form-field-description', textStyle({ variant: 'small', tone: 'subtle' }))}\n >\n {children}\n </RACText>\n );\n}\n\n/**\n * Renders an error message for a form field.\n *\n * Must be rendered unconditionally, as it can be populated with browser validation errors\n * even if an explicit error message isn't provided.\n *\n * @internal\n */\nexport function FormFieldError({ children }: { children: FieldError }) {\n return (\n <RACFieldError className={clsx('cim-form-field-error', textStyle({ variant: 'small', tone: 'critical' }))}>\n {(validation) => renderFieldError(children, validation)}\n </RACFieldError>\n );\n}\n\nfunction renderFieldError(fieldError: FieldError, validation: RACValidationResult): string | ReactNode | undefined {\n const errors =\n typeof fieldError === 'function' ? fieldError(validation) : (fieldError ?? validation.validationErrors);\n\n if (!errors || !errors.length) {\n return null;\n }\n\n return (\n <ul className=\"cim-form-field-error-list\">\n {typeof errors === 'object' ? (\n errors.map((error) => <ErrorMessage key={error} message={error} />)\n ) : (\n <ErrorMessage message={errors} />\n )}\n </ul>\n );\n}\n\nfunction ErrorMessage({ message }: { message: string }) {\n return (\n <li className=\"cim-form-field-error-message\">\n <div className=\"cim-form-field-error-icon-wrapper\" aria-hidden>\n <IconWarning />\n </div>\n {message}\n </li>\n );\n}\n\n/**\n * Renders an error message for `errorMessage` slot.\n * Used by `TagGroup` to show error messages, since `FieldError` is not supported as it is not a form field.\n *\n * @internal\n */\nexport function FormFieldErrorText({ children }: { children: string }) {\n return (\n <RACText\n slot=\"errorMessage\"\n className={clsx('cim-form-field-error', textStyle({ variant: 'small', tone: 'critical' }))}\n >\n <ErrorMessage message={children} />\n </RACText>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=x-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x-button.d.ts","sourceRoot":"","sources":["../../../../../src/components/internal/x-button/x-button.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import clsx from 'clsx';
3
+ import { Button as RACButton } from 'react-aria-components';
4
+ import { IconCloseBold } from '../../../icons/index.js';
5
+ /**
6
+ * @internal
7
+ */
8
+ export function XButton({ size = 'medium', variant = 'square', UNSAFE_className, UNSAFE_style, ...props }) {
9
+ return (_jsx(RACButton, { ...props, className: clsx('cim-x-button', UNSAFE_className), style: UNSAFE_style, "data-size": size, "data-variant": variant, children: _jsx(IconCloseBold, {}) }));
10
+ }
11
+ //# sourceMappingURL=x-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x-button.js","sourceRoot":"","sources":["../../../../../src/components/internal/x-button/x-button.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAsC,MAAM,IAAI,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AASxD;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,EACtB,IAAI,GAAG,QAAQ,EACf,OAAO,GAAG,QAAQ,EAClB,gBAAgB,EAChB,YAAY,EACZ,GAAG,KAAK,EACK;IACb,OAAO,CACL,KAAC,SAAS,OACJ,KAAK,EACT,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,EACjD,KAAK,EAAE,YAAY,eACR,IAAI,kBACD,OAAO,YAErB,KAAC,aAAa,KAAG,GACP,CACb,CAAC;AACJ,CAAC","sourcesContent":["import clsx from 'clsx';\nimport { type ButtonProps as RACButtonProps, Button as RACButton } from 'react-aria-components';\nimport { IconCloseBold } from '../../../icons/index.js';\nimport type { CommonProps } from '../../types.js';\n\ninterface XButtonProps extends CommonProps, Pick<RACButtonProps, 'onPress' | 'slot'> {\n 'aria-label': string;\n size?: 'small' | 'medium';\n variant?: 'circle' | 'square';\n}\n\n/**\n * @internal\n */\nexport function XButton({\n size = 'medium',\n variant = 'square',\n UNSAFE_className,\n UNSAFE_style,\n ...props\n}: XButtonProps) {\n return (\n <RACButton\n {...props}\n className={clsx('cim-x-button', UNSAFE_className)}\n style={UNSAFE_style}\n data-size={size}\n data-variant={variant}\n >\n <IconCloseBold />\n </RACButton>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/components/link-tabs/context.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { createContext } from 'react';
2
+ /** @internal */
3
+ export const LinkTabsContext = createContext(null);
4
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/components/link-tabs/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAUtC,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAA8B,IAAI,CAAC,CAAC","sourcesContent":["import { createContext } from 'react';\nimport type { Href } from '../types.js';\n\n/** @internal */\nexport interface LinkTabsContextValue {\n isDisabled?: boolean;\n currentHref: Href | null;\n setCurrentHref: (href: Href | null) => void;\n}\n\n/** @internal */\nexport const LinkTabsContext = createContext<LinkTabsContextValue | null>(null);\n"]}
@@ -0,0 +1,36 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type LinkProps as RACLinkProps } from 'react-aria-components';
3
+ import type { AriaLabelingProps, CommonProps, Href, NavigationProps, StringLikeChildren, WithRequired } from '../types.js';
4
+ export interface LinkTabsProps extends CommonProps, AriaLabelingProps {
5
+ /** Link tabs belonging to the group. */
6
+ children: ReactNode;
7
+ /** Whether the link tabs are disabled. */
8
+ isDisabled?: boolean;
9
+ /** The currently selected key in the collection (controlled). */
10
+ currentHref?: Href | null;
11
+ /** The initial selected key in the collection (uncontrolled). */
12
+ defaultHref?: Href | null;
13
+ /** Handler that is called when the selection changes. */
14
+ onHrefChange?: (href: Href | null) => void;
15
+ }
16
+ /**
17
+ * Displays a list of tabs to help users navigate through a website.
18
+ *
19
+ * See [tabs usage guidelines](https://ui.cimpress.io/components/tabs/).
20
+ */
21
+ declare const _LinkTabs: (props: LinkTabsProps & import("react").RefAttributes<HTMLDivElement> & import("../../with-style-props.js").StyleProps) => import("react").JSX.Element | null;
22
+ export { _LinkTabs as LinkTabs };
23
+ export interface LinkTabProps extends Omit<CommonProps, 'id'>, WithRequired<NavigationProps, 'href'>, Pick<RACLinkProps, 'children' | 'isDisabled' | 'onHoverStart' | 'onHoverEnd'> {
24
+ /** The text to display as the tab title. */
25
+ children: StringLikeChildren;
26
+ /** An icon displayed before the tab title. */
27
+ iconStart?: ReactNode;
28
+ /** A badge displayed after the tab title. */
29
+ badge?: ReactNode;
30
+ }
31
+ /** Renders a single tab within `LinkTabs`. */
32
+ export declare function LinkTab({ children, href, iconStart, badge, UNSAFE_className, UNSAFE_style, isDisabled, ...props }: LinkTabProps): import("react/jsx-runtime").JSX.Element;
33
+ export declare namespace LinkTab {
34
+ var displayName: string;
35
+ }
36
+ //# sourceMappingURL=link-tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-tabs.d.ts","sourceRoot":"","sources":["../../../../src/components/link-tabs/link-tabs.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAA0C,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAmB,KAAK,SAAS,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIxF,OAAO,KAAK,EACV,iBAAiB,EACjB,WAAW,EACX,IAAI,EACJ,eAAe,EACf,kBAAkB,EAClB,YAAY,EACb,MAAM,aAAa,CAAC;AAIrB,MAAM,WAAW,aAAc,SAAQ,WAAW,EAAE,iBAAiB;IACnE,wCAAwC;IACxC,QAAQ,EAAE,SAAS,CAAC;IACpB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iEAAiE;IACjE,WAAW,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC1B,iEAAiE;IACjE,WAAW,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC1B,yDAAyD;IACzD,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5C;AAkDD;;;;GAIG;AACH,QAAA,MAAM,SAAS,+JAAmD,CAAC;AAEnE,OAAO,EAAE,SAAS,IAAI,QAAQ,EAAE,CAAC;AAEjC,MAAM,WAAW,YACf,SAAQ,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAC7B,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,EACrC,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,YAAY,GAAG,cAAc,GAAG,YAAY,CAAC;IAC/E,4CAA4C;IAC5C,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,8CAA8C;IAC9C,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,8CAA8C;AAC9C,wBAAgB,OAAO,CAAC,EACtB,QAAQ,EACR,IAAI,EACJ,SAAS,EACT,KAAK,EACL,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,GAAG,KAAK,EACT,EAAE,YAAY,2CA8Bd;yBAvCe,OAAO"}
@@ -0,0 +1,47 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId } from '@react-aria/utils';
4
+ import { useControlledState } from '@react-stately/utils';
5
+ import clsx from 'clsx';
6
+ import { useMemo, useContext } from 'react';
7
+ import { Link as RACLink } from 'react-aria-components';
8
+ import { forwardRef } from '../../forward-ref.js';
9
+ import { useProductionWarning } from '../../utils/use-production-warning.js';
10
+ import { withStyleProps } from '../../with-style-props.js';
11
+ import { Text } from '../typography/text.js';
12
+ import { LinkTabsContext } from './context.js';
13
+ function LinkTabs({ children, currentHref, defaultHref, onHrefChange, UNSAFE_className, UNSAFE_style, id, isDisabled, ...props }, ref) {
14
+ const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy } = props;
15
+ useProductionWarning(() => {
16
+ if (!ariaLabel && !ariaLabelledBy) {
17
+ console.warn('LinkTabs requires one of aria-label / aria-labelledby for accessibility');
18
+ }
19
+ }, [ariaLabel, ariaLabelledBy]);
20
+ const linkTabsId = useId(id);
21
+ const [href, setHref] = useControlledState(currentHref, defaultHref ?? null, onHrefChange);
22
+ const linkTabsContext = useMemo(() => ({
23
+ isDisabled,
24
+ currentHref: href,
25
+ setCurrentHref: setHref,
26
+ }), [isDisabled, href, setHref]);
27
+ return (_jsx("nav", { ...props, ref: ref, id: linkTabsId, children: _jsx("ul", { className: clsx('cim-tab-list', 'cim-link-tabs', UNSAFE_className), style: UNSAFE_style, "aria-labelledby": linkTabsId, "data-disabled": isDisabled, children: _jsx(LinkTabsContext.Provider, { value: linkTabsContext, children: children }) }) }));
28
+ }
29
+ /**
30
+ * Displays a list of tabs to help users navigate through a website.
31
+ *
32
+ * See [tabs usage guidelines](https://ui.cimpress.io/components/tabs/).
33
+ */
34
+ const _LinkTabs = withStyleProps(forwardRef(LinkTabs), 'LinkTabs');
35
+ export { _LinkTabs as LinkTabs };
36
+ /** Renders a single tab within `LinkTabs`. */
37
+ export function LinkTab({ children, href, iconStart, badge, UNSAFE_className, UNSAFE_style, isDisabled, ...props }) {
38
+ const linkTabsContext = useContext(LinkTabsContext);
39
+ if (!linkTabsContext) {
40
+ throw new Error('Cannot use link tab outside of link tabs');
41
+ }
42
+ const { isDisabled: isGroupDisabled, currentHref, setCurrentHref } = linkTabsContext;
43
+ const isCurrent = href === currentHref;
44
+ return (_jsx("li", { children: _jsxs(RACLink, { ...props, className: clsx('cim-tab-item', 'cim-link-tab-item', UNSAFE_className), style: UNSAFE_style, href: href, onPress: () => setCurrentHref(href), "aria-current": isCurrent ? 'page' : undefined, "data-selected": isCurrent || undefined, isDisabled: isDisabled || isGroupDisabled, children: [iconStart, _jsx(Text, { as: "span", variant: "medium-semibold", alignment: "center", children: children }), badge] }) }));
45
+ }
46
+ LinkTab.displayName = 'LinkTab';
47
+ //# sourceMappingURL=link-tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-tabs.js","sourceRoot":"","sources":["../../../../src/components/link-tabs/link-tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\n\nimport { useId } from '@react-aria/utils';\nimport { useControlledState } from '@react-stately/utils';\nimport clsx from 'clsx';\nimport { type ReactNode, type ForwardedRef, useMemo, useContext } from 'react';\nimport { Link as RACLink, type LinkProps as RACLinkProps } from 'react-aria-components';\nimport { forwardRef } from '../../forward-ref.js';\nimport { useProductionWarning } from '../../utils/use-production-warning.js';\nimport { withStyleProps } from '../../with-style-props.js';\nimport type {\n AriaLabelingProps,\n CommonProps,\n Href,\n NavigationProps,\n StringLikeChildren,\n WithRequired,\n} from '../types.js';\nimport { Text } from '../typography/text.js';\nimport { LinkTabsContext, type LinkTabsContextValue } from './context.js';\n\nexport interface LinkTabsProps extends CommonProps, AriaLabelingProps {\n /** Link tabs belonging to the group. */\n children: ReactNode;\n /** Whether the link tabs are disabled. */\n isDisabled?: boolean;\n /** The currently selected key in the collection (controlled). */\n currentHref?: Href | null;\n /** The initial selected key in the collection (uncontrolled). */\n defaultHref?: Href | null;\n /** Handler that is called when the selection changes. */\n onHrefChange?: (href: Href | null) => void;\n}\n\nfunction LinkTabs(\n {\n children,\n currentHref,\n defaultHref,\n onHrefChange,\n UNSAFE_className,\n UNSAFE_style,\n id,\n isDisabled,\n ...props\n }: LinkTabsProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy } = props;\n\n useProductionWarning(() => {\n if (!ariaLabel && !ariaLabelledBy) {\n console.warn('LinkTabs requires one of aria-label / aria-labelledby for accessibility');\n }\n }, [ariaLabel, ariaLabelledBy]);\n\n const linkTabsId = useId(id);\n const [href, setHref] = useControlledState(currentHref, defaultHref ?? null, onHrefChange);\n\n const linkTabsContext: LinkTabsContextValue = useMemo(\n () => ({\n isDisabled,\n currentHref: href,\n setCurrentHref: setHref,\n }),\n [isDisabled, href, setHref],\n );\n\n return (\n <nav {...props} ref={ref} id={linkTabsId}>\n <ul\n className={clsx('cim-tab-list', 'cim-link-tabs', UNSAFE_className)}\n style={UNSAFE_style}\n aria-labelledby={linkTabsId}\n data-disabled={isDisabled}\n >\n <LinkTabsContext.Provider value={linkTabsContext}>{children}</LinkTabsContext.Provider>\n </ul>\n </nav>\n );\n}\n\n/**\n * Displays a list of tabs to help users navigate through a website.\n *\n * See [tabs usage guidelines](https://ui.cimpress.io/components/tabs/).\n */\nconst _LinkTabs = withStyleProps(forwardRef(LinkTabs), 'LinkTabs');\n\nexport { _LinkTabs as LinkTabs };\n\nexport interface LinkTabProps\n extends Omit<CommonProps, 'id'>,\n WithRequired<NavigationProps, 'href'>,\n Pick<RACLinkProps, 'children' | 'isDisabled' | 'onHoverStart' | 'onHoverEnd'> {\n /** The text to display as the tab title. */\n children: StringLikeChildren;\n /** An icon displayed before the tab title. */\n iconStart?: ReactNode;\n /** A badge displayed after the tab title. */\n badge?: ReactNode;\n}\n\n/** Renders a single tab within `LinkTabs`. */\nexport function LinkTab({\n children,\n href,\n iconStart,\n badge,\n UNSAFE_className,\n UNSAFE_style,\n isDisabled,\n ...props\n}: LinkTabProps) {\n const linkTabsContext = useContext(LinkTabsContext);\n if (!linkTabsContext) {\n throw new Error('Cannot use link tab outside of link tabs');\n }\n\n const { isDisabled: isGroupDisabled, currentHref, setCurrentHref } = linkTabsContext;\n\n const isCurrent = href === currentHref;\n\n return (\n <li>\n <RACLink\n {...props}\n className={clsx('cim-tab-item', 'cim-link-tab-item', UNSAFE_className)}\n style={UNSAFE_style}\n href={href}\n onPress={() => setCurrentHref(href)}\n aria-current={isCurrent ? 'page' : undefined}\n data-selected={isCurrent || undefined}\n isDisabled={isDisabled || isGroupDisabled}\n >\n {iconStart}\n <Text as=\"span\" variant=\"medium-semibold\" alignment=\"center\">\n {children}\n </Text>\n {badge}\n </RACLink>\n </li>\n );\n}\n\nLinkTab.displayName = 'LinkTab';\n"]}