@cimpress-ui/react 0.3.0 → 0.4.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 (620) hide show
  1. package/dist/commonjs/components/alert/alert.d.ts +25 -0
  2. package/dist/commonjs/components/alert/alert.d.ts.map +1 -0
  3. package/dist/commonjs/components/alert/alert.js +51 -0
  4. package/dist/commonjs/components/alert/alert.js.map +1 -0
  5. package/dist/commonjs/components/alert-dialog/alert-dialog.d.ts +51 -0
  6. package/dist/commonjs/components/alert-dialog/alert-dialog.d.ts.map +1 -0
  7. package/dist/commonjs/components/alert-dialog/alert-dialog.js +26 -0
  8. package/dist/commonjs/components/alert-dialog/alert-dialog.js.map +1 -0
  9. package/dist/commonjs/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  10. package/dist/commonjs/components/breadcrumbs/breadcrumbs.js +17 -1
  11. package/dist/commonjs/components/breadcrumbs/breadcrumbs.js.map +1 -1
  12. package/dist/commonjs/components/button/button.d.ts.map +1 -1
  13. package/dist/commonjs/components/button/button.js +3 -3
  14. package/dist/commonjs/components/button/button.js.map +1 -1
  15. package/dist/commonjs/components/button/icon-button.d.ts.map +1 -1
  16. package/dist/commonjs/components/button/icon-button.js +3 -3
  17. package/dist/commonjs/components/button/icon-button.js.map +1 -1
  18. package/dist/commonjs/components/button/icon-link-button.js +1 -1
  19. package/dist/commonjs/components/button/icon-link-button.js.map +1 -1
  20. package/dist/commonjs/components/button/link-button.js +1 -1
  21. package/dist/commonjs/components/button/link-button.js.map +1 -1
  22. package/dist/commonjs/components/button/types.js.map +1 -1
  23. package/dist/commonjs/components/callout/callout.d.ts +27 -0
  24. package/dist/commonjs/components/callout/callout.d.ts.map +1 -0
  25. package/dist/commonjs/components/callout/callout.js +46 -0
  26. package/dist/commonjs/components/callout/callout.js.map +1 -0
  27. package/dist/commonjs/components/card/card.d.ts +21 -9
  28. package/dist/commonjs/components/card/card.d.ts.map +1 -1
  29. package/dist/commonjs/components/card/card.js +17 -11
  30. package/dist/commonjs/components/card/card.js.map +1 -1
  31. package/dist/commonjs/components/checkbox/checkbox-group.d.ts +1 -1
  32. package/dist/commonjs/components/checkbox/checkbox-group.d.ts.map +1 -1
  33. package/dist/commonjs/components/checkbox/checkbox-group.js +2 -2
  34. package/dist/commonjs/components/checkbox/checkbox-group.js.map +1 -1
  35. package/dist/commonjs/components/checkbox/checkbox.d.ts.map +1 -1
  36. package/dist/commonjs/components/checkbox/checkbox.js +2 -2
  37. package/dist/commonjs/components/checkbox/checkbox.js.map +1 -1
  38. package/dist/commonjs/components/combo-box/combo-box.d.ts +2 -1
  39. package/dist/commonjs/components/combo-box/combo-box.d.ts.map +1 -1
  40. package/dist/commonjs/components/combo-box/combo-box.js +5 -3
  41. package/dist/commonjs/components/combo-box/combo-box.js.map +1 -1
  42. package/dist/commonjs/components/container/container.d.ts +16 -0
  43. package/dist/commonjs/components/container/container.d.ts.map +1 -0
  44. package/dist/commonjs/components/container/container.js +13 -0
  45. package/dist/commonjs/components/container/container.js.map +1 -0
  46. package/dist/commonjs/components/date-picker/date-picker-calendar.d.ts +2 -0
  47. package/dist/commonjs/components/date-picker/date-picker-calendar.d.ts.map +1 -0
  48. package/dist/commonjs/components/date-picker/date-picker-calendar.js +26 -0
  49. package/dist/commonjs/components/date-picker/date-picker-calendar.js.map +1 -0
  50. package/dist/commonjs/components/date-picker/date-picker.d.ts +17 -0
  51. package/dist/commonjs/components/date-picker/date-picker.d.ts.map +1 -0
  52. package/dist/commonjs/components/date-picker/date-picker.js +54 -0
  53. package/dist/commonjs/components/date-picker/date-picker.js.map +1 -0
  54. package/dist/commonjs/components/date-picker/utils.d.ts +2 -0
  55. package/dist/commonjs/components/date-picker/utils.d.ts.map +1 -0
  56. package/dist/commonjs/components/date-picker/utils.js +31 -0
  57. package/dist/commonjs/components/date-picker/utils.js.map +1 -0
  58. package/dist/commonjs/components/date-picker/views/month/month-view.d.ts +2 -0
  59. package/dist/commonjs/components/date-picker/views/month/month-view.d.ts.map +1 -0
  60. package/dist/commonjs/components/date-picker/views/month/month-view.js +35 -0
  61. package/dist/commonjs/components/date-picker/views/month/month-view.js.map +1 -0
  62. package/dist/commonjs/components/date-picker/views/multi-year/multi-year-view.d.ts +2 -0
  63. package/dist/commonjs/components/date-picker/views/multi-year/multi-year-view.d.ts.map +1 -0
  64. package/dist/commonjs/components/date-picker/views/multi-year/multi-year-view.js +16 -0
  65. package/dist/commonjs/components/date-picker/views/multi-year/multi-year-view.js.map +1 -0
  66. package/dist/commonjs/components/date-picker/views/multi-year/use-multi-year-view-state.d.ts +2 -0
  67. package/dist/commonjs/components/date-picker/views/multi-year/use-multi-year-view-state.d.ts.map +1 -0
  68. package/dist/commonjs/components/date-picker/views/multi-year/use-multi-year-view-state.js +130 -0
  69. package/dist/commonjs/components/date-picker/views/multi-year/use-multi-year-view-state.js.map +1 -0
  70. package/dist/commonjs/components/date-picker/views/types.d.ts +2 -0
  71. package/dist/commonjs/components/date-picker/views/types.d.ts.map +1 -0
  72. package/dist/commonjs/components/date-picker/views/types.js +3 -0
  73. package/dist/commonjs/components/date-picker/views/types.js.map +1 -0
  74. package/dist/commonjs/components/date-picker/views/use-view-header.d.ts +2 -0
  75. package/dist/commonjs/components/date-picker/views/use-view-header.d.ts.map +1 -0
  76. package/dist/commonjs/components/date-picker/views/use-view-header.js +56 -0
  77. package/dist/commonjs/components/date-picker/views/use-view-header.js.map +1 -0
  78. package/dist/commonjs/components/date-picker/views/view-grid-cell.d.ts +2 -0
  79. package/dist/commonjs/components/date-picker/views/view-grid-cell.d.ts.map +1 -0
  80. package/dist/commonjs/components/date-picker/views/view-grid-cell.js +72 -0
  81. package/dist/commonjs/components/date-picker/views/view-grid-cell.js.map +1 -0
  82. package/dist/commonjs/components/date-picker/views/view-grid.d.ts +2 -0
  83. package/dist/commonjs/components/date-picker/views/view-grid.d.ts.map +1 -0
  84. package/dist/commonjs/components/date-picker/views/view-grid.js +75 -0
  85. package/dist/commonjs/components/date-picker/views/view-grid.js.map +1 -0
  86. package/dist/commonjs/components/date-picker/views/view-provider.d.ts +2 -0
  87. package/dist/commonjs/components/date-picker/views/view-provider.d.ts.map +1 -0
  88. package/dist/commonjs/components/date-picker/views/view-provider.js +21 -0
  89. package/dist/commonjs/components/date-picker/views/view-provider.js.map +1 -0
  90. package/dist/commonjs/components/date-picker/views/year/use-year-view-state.d.ts +2 -0
  91. package/dist/commonjs/components/date-picker/views/year/use-year-view-state.d.ts.map +1 -0
  92. package/dist/commonjs/components/date-picker/views/year/use-year-view-state.js +158 -0
  93. package/dist/commonjs/components/date-picker/views/year/use-year-view-state.js.map +1 -0
  94. package/dist/commonjs/components/date-picker/views/year/year-view.d.ts +2 -0
  95. package/dist/commonjs/components/date-picker/views/year/year-view.d.ts.map +1 -0
  96. package/dist/commonjs/components/date-picker/views/year/year-view.js +20 -0
  97. package/dist/commonjs/components/date-picker/views/year/year-view.js.map +1 -0
  98. package/dist/commonjs/components/dialog-root/dialog-root.d.ts +20 -0
  99. package/dist/commonjs/components/dialog-root/dialog-root.d.ts.map +1 -0
  100. package/dist/commonjs/components/dialog-root/dialog-root.js +15 -0
  101. package/dist/commonjs/components/dialog-root/dialog-root.js.map +1 -0
  102. package/dist/commonjs/components/disclosure/context.d.ts +3 -0
  103. package/dist/commonjs/components/disclosure/context.d.ts.map +1 -0
  104. package/dist/commonjs/components/disclosure/context.js +7 -0
  105. package/dist/commonjs/components/disclosure/context.js.map +1 -0
  106. package/dist/commonjs/components/disclosure/disclosure-group.d.ts +15 -4
  107. package/dist/commonjs/components/disclosure/disclosure-group.d.ts.map +1 -1
  108. package/dist/commonjs/components/disclosure/disclosure-group.js +11 -5
  109. package/dist/commonjs/components/disclosure/disclosure-group.js.map +1 -1
  110. package/dist/commonjs/components/disclosure/disclosure.d.ts +35 -4
  111. package/dist/commonjs/components/disclosure/disclosure.d.ts.map +1 -1
  112. package/dist/commonjs/components/disclosure/disclosure.js +16 -5
  113. package/dist/commonjs/components/disclosure/disclosure.js.map +1 -1
  114. package/dist/commonjs/components/divider/divider.d.ts +12 -0
  115. package/dist/commonjs/components/divider/divider.d.ts.map +1 -0
  116. package/dist/commonjs/components/divider/divider.js +19 -0
  117. package/dist/commonjs/components/divider/divider.js.map +1 -0
  118. package/dist/commonjs/components/file-picker/file-picker.d.ts +19 -0
  119. package/dist/commonjs/components/file-picker/file-picker.d.ts.map +1 -0
  120. package/dist/commonjs/components/file-picker/file-picker.js +68 -0
  121. package/dist/commonjs/components/file-picker/file-picker.js.map +1 -0
  122. package/dist/commonjs/components/header/cimpress-logo.d.ts +2 -0
  123. package/dist/commonjs/components/header/cimpress-logo.d.ts.map +1 -0
  124. package/dist/commonjs/components/header/cimpress-logo.js +9 -0
  125. package/dist/commonjs/components/header/cimpress-logo.js.map +1 -0
  126. package/dist/commonjs/components/header/header.d.ts +10 -0
  127. package/dist/commonjs/components/header/header.d.ts.map +1 -0
  128. package/dist/commonjs/components/header/header.js +19 -0
  129. package/dist/commonjs/components/header/header.js.map +1 -0
  130. package/dist/commonjs/components/internal/form-field/form-field.js +1 -1
  131. package/dist/commonjs/components/internal/form-field/form-field.js.map +1 -1
  132. package/dist/commonjs/components/internal/x-button/x-button.d.ts +2 -0
  133. package/dist/commonjs/components/internal/x-button/x-button.d.ts.map +1 -0
  134. package/dist/commonjs/components/internal/x-button/x-button.js +17 -0
  135. package/dist/commonjs/components/internal/x-button/x-button.js.map +1 -0
  136. package/dist/commonjs/components/menu/menu.d.ts +3 -6
  137. package/dist/commonjs/components/menu/menu.d.ts.map +1 -1
  138. package/dist/commonjs/components/menu/menu.js +4 -9
  139. package/dist/commonjs/components/menu/menu.js.map +1 -1
  140. package/dist/commonjs/components/modal-dialog/modal-dialog.d.ts +63 -0
  141. package/dist/commonjs/components/modal-dialog/modal-dialog.d.ts.map +1 -0
  142. package/dist/commonjs/components/modal-dialog/modal-dialog.js +50 -0
  143. package/dist/commonjs/components/modal-dialog/modal-dialog.js.map +1 -0
  144. package/dist/commonjs/components/number-field/number-field.d.ts +1 -1
  145. package/dist/commonjs/components/number-field/number-field.d.ts.map +1 -1
  146. package/dist/commonjs/components/number-field/number-field.js +6 -4
  147. package/dist/commonjs/components/number-field/number-field.js.map +1 -1
  148. package/dist/commonjs/components/pagination/base-pagination.d.ts.map +1 -1
  149. package/dist/commonjs/components/pagination/base-pagination.js +9 -10
  150. package/dist/commonjs/components/pagination/base-pagination.js.map +1 -1
  151. package/dist/commonjs/components/pagination/pagination.d.ts.map +1 -1
  152. package/dist/commonjs/components/pagination/pagination.js +7 -5
  153. package/dist/commonjs/components/pagination/pagination.js.map +1 -1
  154. package/dist/commonjs/components/popover/popover.d.ts +7 -2
  155. package/dist/commonjs/components/popover/popover.d.ts.map +1 -1
  156. package/dist/commonjs/components/popover/popover.js +2 -2
  157. package/dist/commonjs/components/popover/popover.js.map +1 -1
  158. package/dist/commonjs/components/radio/radio-group.d.ts +1 -1
  159. package/dist/commonjs/components/radio/radio-group.d.ts.map +1 -1
  160. package/dist/commonjs/components/radio/radio-group.js +2 -2
  161. package/dist/commonjs/components/radio/radio-group.js.map +1 -1
  162. package/dist/commonjs/components/radio/radio.d.ts.map +1 -1
  163. package/dist/commonjs/components/radio/radio.js +2 -2
  164. package/dist/commonjs/components/radio/radio.js.map +1 -1
  165. package/dist/commonjs/components/select/select.d.ts +2 -1
  166. package/dist/commonjs/components/select/select.d.ts.map +1 -1
  167. package/dist/commonjs/components/select/select.js +5 -4
  168. package/dist/commonjs/components/select/select.js.map +1 -1
  169. package/dist/commonjs/components/spacing/stack/stack.d.ts +1 -1
  170. package/dist/commonjs/components/spacing/stack/stack.js +1 -1
  171. package/dist/commonjs/components/spacing/stack/stack.js.map +1 -1
  172. package/dist/commonjs/components/spacing/types.d.ts +1 -1
  173. package/dist/commonjs/components/spacing/types.d.ts.map +1 -1
  174. package/dist/commonjs/components/spacing/types.js +2 -2
  175. package/dist/commonjs/components/spacing/types.js.map +1 -1
  176. package/dist/commonjs/components/spinner/spinner.d.ts.map +1 -1
  177. package/dist/commonjs/components/spinner/spinner.js +3 -3
  178. package/dist/commonjs/components/spinner/spinner.js.map +1 -1
  179. package/dist/commonjs/components/table/contexts/column-collection.d.ts.map +1 -1
  180. package/dist/commonjs/components/table/contexts/column-collection.js +2 -0
  181. package/dist/commonjs/components/table/contexts/column-collection.js.map +1 -1
  182. package/dist/commonjs/components/table/contexts/table-state.d.ts +1 -0
  183. package/dist/commonjs/components/table/contexts/table-state.d.ts.map +1 -1
  184. package/dist/commonjs/components/table/contexts/table-state.js +6 -1
  185. package/dist/commonjs/components/table/contexts/table-state.js.map +1 -1
  186. package/dist/commonjs/components/table/hooks/use-table-cell.js +2 -2
  187. package/dist/commonjs/components/table/hooks/use-table-cell.js.map +1 -1
  188. package/dist/commonjs/components/table/table-empty-state.js +1 -1
  189. package/dist/commonjs/components/table/table-empty-state.js.map +1 -1
  190. package/dist/commonjs/components/table/table-header-button.d.ts +2 -0
  191. package/dist/commonjs/components/table/table-header-button.d.ts.map +1 -0
  192. package/dist/commonjs/components/table/table-header-button.js +16 -0
  193. package/dist/commonjs/components/table/table-header-button.js.map +1 -0
  194. package/dist/commonjs/components/table/table-header-cell.d.ts.map +1 -1
  195. package/dist/commonjs/components/table/table-header-cell.js +7 -5
  196. package/dist/commonjs/components/table/table-header-cell.js.map +1 -1
  197. package/dist/commonjs/components/table/table.d.ts +1 -1
  198. package/dist/commonjs/components/table/table.d.ts.map +1 -1
  199. package/dist/commonjs/components/table/table.js +2 -2
  200. package/dist/commonjs/components/table/table.js.map +1 -1
  201. package/dist/commonjs/components/tag/tag-group.d.ts +1 -1
  202. package/dist/commonjs/components/tag/tag-group.d.ts.map +1 -1
  203. package/dist/commonjs/components/tag/tag-group.js.map +1 -1
  204. package/dist/commonjs/components/tag/tag.js +1 -1
  205. package/dist/commonjs/components/tag/tag.js.map +1 -1
  206. package/dist/commonjs/components/tag-field/tag-field-input.d.ts +2 -0
  207. package/dist/commonjs/components/tag-field/tag-field-input.d.ts.map +1 -0
  208. package/dist/commonjs/components/tag-field/tag-field-input.js +31 -0
  209. package/dist/commonjs/components/tag-field/tag-field-input.js.map +1 -0
  210. package/dist/commonjs/components/tag-field/tag-field-list-box.d.ts +2 -0
  211. package/dist/commonjs/components/tag-field/tag-field-list-box.d.ts.map +1 -0
  212. package/dist/commonjs/components/tag-field/tag-field-list-box.js +31 -0
  213. package/dist/commonjs/components/tag-field/tag-field-list-box.js.map +1 -0
  214. package/dist/commonjs/components/tag-field/tag-field-tags.d.ts +2 -0
  215. package/dist/commonjs/components/tag-field/tag-field-tags.d.ts.map +1 -0
  216. package/dist/commonjs/components/tag-field/tag-field-tags.js +27 -0
  217. package/dist/commonjs/components/tag-field/tag-field-tags.js.map +1 -0
  218. package/dist/commonjs/components/tag-field/tag-field.d.ts +43 -0
  219. package/dist/commonjs/components/tag-field/tag-field.d.ts.map +1 -0
  220. package/dist/commonjs/components/tag-field/tag-field.js +143 -0
  221. package/dist/commonjs/components/tag-field/tag-field.js.map +1 -0
  222. package/dist/commonjs/components/text-inputs/text-area.d.ts +1 -1
  223. package/dist/commonjs/components/text-inputs/text-area.d.ts.map +1 -1
  224. package/dist/commonjs/components/text-inputs/text-area.js +2 -2
  225. package/dist/commonjs/components/text-inputs/text-area.js.map +1 -1
  226. package/dist/commonjs/components/text-inputs/text-field.d.ts +1 -1
  227. package/dist/commonjs/components/text-inputs/text-field.d.ts.map +1 -1
  228. package/dist/commonjs/components/text-inputs/text-field.js +2 -2
  229. package/dist/commonjs/components/text-inputs/text-field.js.map +1 -1
  230. package/dist/commonjs/components/toast/toast-region.d.ts +5 -0
  231. package/dist/commonjs/components/toast/toast-region.d.ts.map +1 -0
  232. package/dist/commonjs/components/toast/toast-region.js +24 -0
  233. package/dist/commonjs/components/toast/toast-region.js.map +1 -0
  234. package/dist/commonjs/components/toast/toast.d.ts +2 -0
  235. package/dist/commonjs/components/toast/toast.d.ts.map +1 -0
  236. package/dist/commonjs/components/toast/toast.js +24 -0
  237. package/dist/commonjs/components/toast/toast.js.map +1 -0
  238. package/dist/commonjs/components/toast/types.d.ts +5 -0
  239. package/dist/commonjs/components/toast/types.d.ts.map +1 -0
  240. package/dist/commonjs/components/toast/types.js +3 -0
  241. package/dist/commonjs/components/toast/types.js.map +1 -0
  242. package/dist/commonjs/components/toggle/toggle.d.ts +14 -0
  243. package/dist/commonjs/components/toggle/toggle.d.ts.map +1 -0
  244. package/dist/commonjs/components/toggle/toggle.js +32 -0
  245. package/dist/commonjs/components/toggle/toggle.js.map +1 -0
  246. package/dist/commonjs/components/tooltip/tooltip.d.ts +4 -2
  247. package/dist/commonjs/components/tooltip/tooltip.d.ts.map +1 -1
  248. package/dist/commonjs/components/tooltip/tooltip.js.map +1 -1
  249. package/dist/commonjs/components/types.d.ts +4 -0
  250. package/dist/commonjs/components/types.d.ts.map +1 -1
  251. package/dist/commonjs/components/types.js.map +1 -1
  252. package/dist/commonjs/components/typography/text.d.ts.map +1 -1
  253. package/dist/commonjs/date.d.ts +2 -0
  254. package/dist/commonjs/date.d.ts.map +1 -0
  255. package/dist/commonjs/date.js +27 -0
  256. package/dist/commonjs/date.js.map +1 -0
  257. package/dist/commonjs/i18n/index.d.ts +3 -0
  258. package/dist/commonjs/i18n/index.d.ts.map +1 -0
  259. package/dist/commonjs/i18n/index.js +19 -0
  260. package/dist/commonjs/i18n/index.js.map +1 -0
  261. package/dist/commonjs/i18n/localization-provider.d.ts +59 -0
  262. package/dist/commonjs/i18n/localization-provider.d.ts.map +1 -0
  263. package/dist/commonjs/i18n/localization-provider.js +82 -0
  264. package/dist/commonjs/i18n/localization-provider.js.map +1 -0
  265. package/dist/commonjs/i18n/messages/en-US.d.ts +4 -0
  266. package/dist/commonjs/i18n/messages/en-US.d.ts.map +1 -0
  267. package/dist/commonjs/i18n/messages/en-US.js +38 -0
  268. package/dist/commonjs/i18n/messages/en-US.js.map +1 -0
  269. package/dist/commonjs/i18n/messages/index.d.ts +3 -0
  270. package/dist/commonjs/i18n/messages/index.d.ts.map +1 -0
  271. package/dist/commonjs/i18n/messages/index.js +6 -0
  272. package/dist/commonjs/i18n/messages/index.js.map +1 -0
  273. package/dist/commonjs/i18n/messages/types.d.ts +72 -0
  274. package/dist/commonjs/i18n/messages/types.d.ts.map +1 -0
  275. package/dist/commonjs/i18n/messages/types.js +3 -0
  276. package/dist/commonjs/i18n/messages/types.js.map +1 -0
  277. package/dist/commonjs/index.d.ts +18 -3
  278. package/dist/commonjs/index.d.ts.map +1 -1
  279. package/dist/commonjs/index.js +16 -3
  280. package/dist/commonjs/index.js.map +1 -1
  281. package/dist/commonjs/providers/ssr/ssr-provider.d.ts +1 -3
  282. package/dist/commonjs/providers/ssr/ssr-provider.d.ts.map +1 -1
  283. package/dist/commonjs/providers/ssr/ssr-provider.js +2 -2
  284. package/dist/commonjs/providers/ssr/ssr-provider.js.map +1 -1
  285. package/dist/commonjs/utils/is-production.d.ts +2 -0
  286. package/dist/commonjs/utils/is-production.d.ts.map +1 -0
  287. package/dist/commonjs/utils/is-production.js +7 -0
  288. package/dist/commonjs/utils/is-production.js.map +1 -0
  289. package/dist/commonjs/utils/style/types.d.ts +1 -1
  290. package/dist/commonjs/utils/style/types.d.ts.map +1 -1
  291. package/dist/commonjs/utils/style/types.js.map +1 -1
  292. package/dist/commonjs/utils/use-media-query.d.ts +2 -0
  293. package/dist/commonjs/utils/use-media-query.d.ts.map +1 -0
  294. package/dist/commonjs/utils/use-media-query.js +35 -0
  295. package/dist/commonjs/utils/use-media-query.js.map +1 -0
  296. package/dist/commonjs/utils/use-production-warning.d.ts +3 -0
  297. package/dist/commonjs/utils/use-production-warning.d.ts.map +1 -0
  298. package/dist/commonjs/utils/use-production-warning.js +7 -0
  299. package/dist/commonjs/utils/use-production-warning.js.map +1 -0
  300. package/dist/commonjs/with-style-props.d.ts.map +1 -1
  301. package/dist/esm/components/alert/alert.d.ts +25 -0
  302. package/dist/esm/components/alert/alert.d.ts.map +1 -0
  303. package/dist/esm/components/alert/alert.js +45 -0
  304. package/dist/esm/components/alert/alert.js.map +1 -0
  305. package/dist/esm/components/alert-dialog/alert-dialog.d.ts +51 -0
  306. package/dist/esm/components/alert-dialog/alert-dialog.d.ts.map +1 -0
  307. package/dist/esm/components/alert-dialog/alert-dialog.js +20 -0
  308. package/dist/esm/components/alert-dialog/alert-dialog.js.map +1 -0
  309. package/dist/esm/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  310. package/dist/esm/components/breadcrumbs/breadcrumbs.js +18 -2
  311. package/dist/esm/components/breadcrumbs/breadcrumbs.js.map +1 -1
  312. package/dist/esm/components/button/button.d.ts.map +1 -1
  313. package/dist/esm/components/button/button.js +3 -3
  314. package/dist/esm/components/button/button.js.map +1 -1
  315. package/dist/esm/components/button/icon-button.d.ts.map +1 -1
  316. package/dist/esm/components/button/icon-button.js +3 -3
  317. package/dist/esm/components/button/icon-button.js.map +1 -1
  318. package/dist/esm/components/button/icon-link-button.js +1 -1
  319. package/dist/esm/components/button/icon-link-button.js.map +1 -1
  320. package/dist/esm/components/button/link-button.js +1 -1
  321. package/dist/esm/components/button/link-button.js.map +1 -1
  322. package/dist/esm/components/button/types.js.map +1 -1
  323. package/dist/esm/components/callout/callout.d.ts +27 -0
  324. package/dist/esm/components/callout/callout.d.ts.map +1 -0
  325. package/dist/esm/components/callout/callout.js +40 -0
  326. package/dist/esm/components/callout/callout.js.map +1 -0
  327. package/dist/esm/components/card/card.d.ts +21 -9
  328. package/dist/esm/components/card/card.d.ts.map +1 -1
  329. package/dist/esm/components/card/card.js +16 -11
  330. package/dist/esm/components/card/card.js.map +1 -1
  331. package/dist/esm/components/checkbox/checkbox-group.d.ts +1 -1
  332. package/dist/esm/components/checkbox/checkbox-group.d.ts.map +1 -1
  333. package/dist/esm/components/checkbox/checkbox-group.js +2 -2
  334. package/dist/esm/components/checkbox/checkbox-group.js.map +1 -1
  335. package/dist/esm/components/checkbox/checkbox.d.ts.map +1 -1
  336. package/dist/esm/components/checkbox/checkbox.js +2 -2
  337. package/dist/esm/components/checkbox/checkbox.js.map +1 -1
  338. package/dist/esm/components/combo-box/combo-box.d.ts +2 -1
  339. package/dist/esm/components/combo-box/combo-box.d.ts.map +1 -1
  340. package/dist/esm/components/combo-box/combo-box.js +6 -4
  341. package/dist/esm/components/combo-box/combo-box.js.map +1 -1
  342. package/dist/esm/components/container/container.d.ts +16 -0
  343. package/dist/esm/components/container/container.d.ts.map +1 -0
  344. package/dist/esm/components/container/container.js +7 -0
  345. package/dist/esm/components/container/container.js.map +1 -0
  346. package/dist/esm/components/date-picker/date-picker-calendar.d.ts +2 -0
  347. package/dist/esm/components/date-picker/date-picker-calendar.d.ts.map +1 -0
  348. package/dist/esm/components/date-picker/date-picker-calendar.js +23 -0
  349. package/dist/esm/components/date-picker/date-picker-calendar.js.map +1 -0
  350. package/dist/esm/components/date-picker/date-picker.d.ts +17 -0
  351. package/dist/esm/components/date-picker/date-picker.d.ts.map +1 -0
  352. package/dist/esm/components/date-picker/date-picker.js +48 -0
  353. package/dist/esm/components/date-picker/date-picker.js.map +1 -0
  354. package/dist/esm/components/date-picker/utils.d.ts +2 -0
  355. package/dist/esm/components/date-picker/utils.d.ts.map +1 -0
  356. package/dist/esm/components/date-picker/utils.js +26 -0
  357. package/dist/esm/components/date-picker/utils.js.map +1 -0
  358. package/dist/esm/components/date-picker/views/month/month-view.d.ts +2 -0
  359. package/dist/esm/components/date-picker/views/month/month-view.d.ts.map +1 -0
  360. package/dist/esm/components/date-picker/views/month/month-view.js +29 -0
  361. package/dist/esm/components/date-picker/views/month/month-view.js.map +1 -0
  362. package/dist/esm/components/date-picker/views/multi-year/multi-year-view.d.ts +2 -0
  363. package/dist/esm/components/date-picker/views/multi-year/multi-year-view.d.ts.map +1 -0
  364. package/dist/esm/components/date-picker/views/multi-year/multi-year-view.js +13 -0
  365. package/dist/esm/components/date-picker/views/multi-year/multi-year-view.js.map +1 -0
  366. package/dist/esm/components/date-picker/views/multi-year/use-multi-year-view-state.d.ts +2 -0
  367. package/dist/esm/components/date-picker/views/multi-year/use-multi-year-view-state.d.ts.map +1 -0
  368. package/dist/esm/components/date-picker/views/multi-year/use-multi-year-view-state.js +127 -0
  369. package/dist/esm/components/date-picker/views/multi-year/use-multi-year-view-state.js.map +1 -0
  370. package/dist/esm/components/date-picker/views/types.d.ts +2 -0
  371. package/dist/esm/components/date-picker/views/types.d.ts.map +1 -0
  372. package/dist/esm/components/date-picker/views/types.js +2 -0
  373. package/dist/esm/components/date-picker/views/types.js.map +1 -0
  374. package/dist/esm/components/date-picker/views/use-view-header.d.ts +2 -0
  375. package/dist/esm/components/date-picker/views/use-view-header.d.ts.map +1 -0
  376. package/dist/esm/components/date-picker/views/use-view-header.js +53 -0
  377. package/dist/esm/components/date-picker/views/use-view-header.js.map +1 -0
  378. package/dist/esm/components/date-picker/views/view-grid-cell.d.ts +2 -0
  379. package/dist/esm/components/date-picker/views/view-grid-cell.d.ts.map +1 -0
  380. package/dist/esm/components/date-picker/views/view-grid-cell.js +66 -0
  381. package/dist/esm/components/date-picker/views/view-grid-cell.js.map +1 -0
  382. package/dist/esm/components/date-picker/views/view-grid.d.ts +2 -0
  383. package/dist/esm/components/date-picker/views/view-grid.d.ts.map +1 -0
  384. package/dist/esm/components/date-picker/views/view-grid.js +69 -0
  385. package/dist/esm/components/date-picker/views/view-grid.js.map +1 -0
  386. package/dist/esm/components/date-picker/views/view-provider.d.ts +2 -0
  387. package/dist/esm/components/date-picker/views/view-provider.d.ts.map +1 -0
  388. package/dist/esm/components/date-picker/views/view-provider.js +17 -0
  389. package/dist/esm/components/date-picker/views/view-provider.js.map +1 -0
  390. package/dist/esm/components/date-picker/views/year/use-year-view-state.d.ts +2 -0
  391. package/dist/esm/components/date-picker/views/year/use-year-view-state.d.ts.map +1 -0
  392. package/dist/esm/components/date-picker/views/year/use-year-view-state.js +155 -0
  393. package/dist/esm/components/date-picker/views/year/use-year-view-state.js.map +1 -0
  394. package/dist/esm/components/date-picker/views/year/year-view.d.ts +2 -0
  395. package/dist/esm/components/date-picker/views/year/year-view.d.ts.map +1 -0
  396. package/dist/esm/components/date-picker/views/year/year-view.js +17 -0
  397. package/dist/esm/components/date-picker/views/year/year-view.js.map +1 -0
  398. package/dist/esm/components/dialog-root/dialog-root.d.ts +20 -0
  399. package/dist/esm/components/dialog-root/dialog-root.d.ts.map +1 -0
  400. package/dist/esm/components/dialog-root/dialog-root.js +12 -0
  401. package/dist/esm/components/dialog-root/dialog-root.js.map +1 -0
  402. package/dist/esm/components/disclosure/context.d.ts +3 -0
  403. package/dist/esm/components/disclosure/context.d.ts.map +1 -0
  404. package/dist/esm/components/disclosure/context.js +4 -0
  405. package/dist/esm/components/disclosure/context.js.map +1 -0
  406. package/dist/esm/components/disclosure/disclosure-group.d.ts +15 -4
  407. package/dist/esm/components/disclosure/disclosure-group.d.ts.map +1 -1
  408. package/dist/esm/components/disclosure/disclosure-group.js +10 -4
  409. package/dist/esm/components/disclosure/disclosure-group.js.map +1 -1
  410. package/dist/esm/components/disclosure/disclosure.d.ts +35 -4
  411. package/dist/esm/components/disclosure/disclosure.d.ts.map +1 -1
  412. package/dist/esm/components/disclosure/disclosure.js +16 -5
  413. package/dist/esm/components/disclosure/disclosure.js.map +1 -1
  414. package/dist/esm/components/divider/divider.d.ts +12 -0
  415. package/dist/esm/components/divider/divider.d.ts.map +1 -0
  416. package/dist/esm/components/divider/divider.js +13 -0
  417. package/dist/esm/components/divider/divider.js.map +1 -0
  418. package/dist/esm/components/file-picker/file-picker.d.ts +19 -0
  419. package/dist/esm/components/file-picker/file-picker.d.ts.map +1 -0
  420. package/dist/esm/components/file-picker/file-picker.js +62 -0
  421. package/dist/esm/components/file-picker/file-picker.js.map +1 -0
  422. package/dist/esm/components/header/cimpress-logo.d.ts +2 -0
  423. package/dist/esm/components/header/cimpress-logo.d.ts.map +1 -0
  424. package/dist/esm/components/header/cimpress-logo.js +6 -0
  425. package/dist/esm/components/header/cimpress-logo.js.map +1 -0
  426. package/dist/esm/components/header/header.d.ts +10 -0
  427. package/dist/esm/components/header/header.d.ts.map +1 -0
  428. package/dist/esm/components/header/header.js +13 -0
  429. package/dist/esm/components/header/header.js.map +1 -0
  430. package/dist/esm/components/internal/form-field/form-field.js +1 -1
  431. package/dist/esm/components/internal/form-field/form-field.js.map +1 -1
  432. package/dist/esm/components/internal/x-button/x-button.d.ts +2 -0
  433. package/dist/esm/components/internal/x-button/x-button.d.ts.map +1 -0
  434. package/dist/esm/components/internal/x-button/x-button.js +11 -0
  435. package/dist/esm/components/internal/x-button/x-button.js.map +1 -0
  436. package/dist/esm/components/menu/menu.d.ts +3 -6
  437. package/dist/esm/components/menu/menu.d.ts.map +1 -1
  438. package/dist/esm/components/menu/menu.js +5 -9
  439. package/dist/esm/components/menu/menu.js.map +1 -1
  440. package/dist/esm/components/modal-dialog/modal-dialog.d.ts +63 -0
  441. package/dist/esm/components/modal-dialog/modal-dialog.d.ts.map +1 -0
  442. package/dist/esm/components/modal-dialog/modal-dialog.js +42 -0
  443. package/dist/esm/components/modal-dialog/modal-dialog.js.map +1 -0
  444. package/dist/esm/components/number-field/number-field.d.ts +1 -1
  445. package/dist/esm/components/number-field/number-field.d.ts.map +1 -1
  446. package/dist/esm/components/number-field/number-field.js +5 -3
  447. package/dist/esm/components/number-field/number-field.js.map +1 -1
  448. package/dist/esm/components/pagination/base-pagination.d.ts.map +1 -1
  449. package/dist/esm/components/pagination/base-pagination.js +6 -7
  450. package/dist/esm/components/pagination/base-pagination.js.map +1 -1
  451. package/dist/esm/components/pagination/pagination.d.ts.map +1 -1
  452. package/dist/esm/components/pagination/pagination.js +7 -5
  453. package/dist/esm/components/pagination/pagination.js.map +1 -1
  454. package/dist/esm/components/popover/popover.d.ts +7 -2
  455. package/dist/esm/components/popover/popover.d.ts.map +1 -1
  456. package/dist/esm/components/popover/popover.js +2 -2
  457. package/dist/esm/components/popover/popover.js.map +1 -1
  458. package/dist/esm/components/radio/radio-group.d.ts +1 -1
  459. package/dist/esm/components/radio/radio-group.d.ts.map +1 -1
  460. package/dist/esm/components/radio/radio-group.js +2 -2
  461. package/dist/esm/components/radio/radio-group.js.map +1 -1
  462. package/dist/esm/components/radio/radio.d.ts.map +1 -1
  463. package/dist/esm/components/radio/radio.js +2 -2
  464. package/dist/esm/components/radio/radio.js.map +1 -1
  465. package/dist/esm/components/select/select.d.ts +2 -1
  466. package/dist/esm/components/select/select.d.ts.map +1 -1
  467. package/dist/esm/components/select/select.js +5 -4
  468. package/dist/esm/components/select/select.js.map +1 -1
  469. package/dist/esm/components/spacing/stack/stack.d.ts +1 -1
  470. package/dist/esm/components/spacing/stack/stack.js +1 -1
  471. package/dist/esm/components/spacing/stack/stack.js.map +1 -1
  472. package/dist/esm/components/spacing/types.d.ts +1 -1
  473. package/dist/esm/components/spacing/types.d.ts.map +1 -1
  474. package/dist/esm/components/spacing/types.js +2 -2
  475. package/dist/esm/components/spacing/types.js.map +1 -1
  476. package/dist/esm/components/spinner/spinner.d.ts.map +1 -1
  477. package/dist/esm/components/spinner/spinner.js +3 -3
  478. package/dist/esm/components/spinner/spinner.js.map +1 -1
  479. package/dist/esm/components/table/contexts/column-collection.d.ts.map +1 -1
  480. package/dist/esm/components/table/contexts/column-collection.js +2 -0
  481. package/dist/esm/components/table/contexts/column-collection.js.map +1 -1
  482. package/dist/esm/components/table/contexts/table-state.d.ts +1 -0
  483. package/dist/esm/components/table/contexts/table-state.d.ts.map +1 -1
  484. package/dist/esm/components/table/contexts/table-state.js +8 -3
  485. package/dist/esm/components/table/contexts/table-state.js.map +1 -1
  486. package/dist/esm/components/table/hooks/use-table-cell.js +2 -2
  487. package/dist/esm/components/table/hooks/use-table-cell.js.map +1 -1
  488. package/dist/esm/components/table/table-empty-state.js +1 -1
  489. package/dist/esm/components/table/table-empty-state.js.map +1 -1
  490. package/dist/esm/components/table/table-header-button.d.ts +2 -0
  491. package/dist/esm/components/table/table-header-button.d.ts.map +1 -0
  492. package/dist/esm/components/table/table-header-button.js +10 -0
  493. package/dist/esm/components/table/table-header-button.js.map +1 -0
  494. package/dist/esm/components/table/table-header-cell.d.ts.map +1 -1
  495. package/dist/esm/components/table/table-header-cell.js +9 -7
  496. package/dist/esm/components/table/table-header-cell.js.map +1 -1
  497. package/dist/esm/components/table/table.d.ts +1 -1
  498. package/dist/esm/components/table/table.d.ts.map +1 -1
  499. package/dist/esm/components/table/table.js +2 -2
  500. package/dist/esm/components/table/table.js.map +1 -1
  501. package/dist/esm/components/tag/tag-group.d.ts +1 -1
  502. package/dist/esm/components/tag/tag-group.d.ts.map +1 -1
  503. package/dist/esm/components/tag/tag-group.js.map +1 -1
  504. package/dist/esm/components/tag/tag.js +1 -1
  505. package/dist/esm/components/tag/tag.js.map +1 -1
  506. package/dist/esm/components/tag-field/tag-field-input.d.ts +2 -0
  507. package/dist/esm/components/tag-field/tag-field-input.d.ts.map +1 -0
  508. package/dist/esm/components/tag-field/tag-field-input.js +25 -0
  509. package/dist/esm/components/tag-field/tag-field-input.js.map +1 -0
  510. package/dist/esm/components/tag-field/tag-field-list-box.d.ts +2 -0
  511. package/dist/esm/components/tag-field/tag-field-list-box.d.ts.map +1 -0
  512. package/dist/esm/components/tag-field/tag-field-list-box.js +28 -0
  513. package/dist/esm/components/tag-field/tag-field-list-box.js.map +1 -0
  514. package/dist/esm/components/tag-field/tag-field-tags.d.ts +2 -0
  515. package/dist/esm/components/tag-field/tag-field-tags.d.ts.map +1 -0
  516. package/dist/esm/components/tag-field/tag-field-tags.js +24 -0
  517. package/dist/esm/components/tag-field/tag-field-tags.js.map +1 -0
  518. package/dist/esm/components/tag-field/tag-field.d.ts +43 -0
  519. package/dist/esm/components/tag-field/tag-field.d.ts.map +1 -0
  520. package/dist/esm/components/tag-field/tag-field.js +135 -0
  521. package/dist/esm/components/tag-field/tag-field.js.map +1 -0
  522. package/dist/esm/components/text-inputs/text-area.d.ts +1 -1
  523. package/dist/esm/components/text-inputs/text-area.d.ts.map +1 -1
  524. package/dist/esm/components/text-inputs/text-area.js +2 -2
  525. package/dist/esm/components/text-inputs/text-area.js.map +1 -1
  526. package/dist/esm/components/text-inputs/text-field.d.ts +1 -1
  527. package/dist/esm/components/text-inputs/text-field.d.ts.map +1 -1
  528. package/dist/esm/components/text-inputs/text-field.js +2 -2
  529. package/dist/esm/components/text-inputs/text-field.js.map +1 -1
  530. package/dist/esm/components/toast/toast-region.d.ts +5 -0
  531. package/dist/esm/components/toast/toast-region.d.ts.map +1 -0
  532. package/dist/esm/components/toast/toast-region.js +20 -0
  533. package/dist/esm/components/toast/toast-region.js.map +1 -0
  534. package/dist/esm/components/toast/toast.d.ts +2 -0
  535. package/dist/esm/components/toast/toast.d.ts.map +1 -0
  536. package/dist/esm/components/toast/toast.js +21 -0
  537. package/dist/esm/components/toast/toast.js.map +1 -0
  538. package/dist/esm/components/toast/types.d.ts +5 -0
  539. package/dist/esm/components/toast/types.d.ts.map +1 -0
  540. package/dist/esm/components/toast/types.js +2 -0
  541. package/dist/esm/components/toast/types.js.map +1 -0
  542. package/dist/esm/components/toggle/toggle.d.ts +14 -0
  543. package/dist/esm/components/toggle/toggle.d.ts.map +1 -0
  544. package/dist/esm/components/toggle/toggle.js +26 -0
  545. package/dist/esm/components/toggle/toggle.js.map +1 -0
  546. package/dist/esm/components/tooltip/tooltip.d.ts +4 -2
  547. package/dist/esm/components/tooltip/tooltip.d.ts.map +1 -1
  548. package/dist/esm/components/tooltip/tooltip.js.map +1 -1
  549. package/dist/esm/components/types.d.ts +4 -0
  550. package/dist/esm/components/types.d.ts.map +1 -1
  551. package/dist/esm/components/types.js.map +1 -1
  552. package/dist/esm/components/typography/text.d.ts.map +1 -1
  553. package/dist/esm/date.d.ts +2 -0
  554. package/dist/esm/date.d.ts.map +1 -0
  555. package/dist/esm/date.js +11 -0
  556. package/dist/esm/date.js.map +1 -0
  557. package/dist/esm/i18n/index.d.ts +3 -0
  558. package/dist/esm/i18n/index.d.ts.map +1 -0
  559. package/dist/esm/i18n/index.js +3 -0
  560. package/dist/esm/i18n/index.js.map +1 -0
  561. package/dist/esm/i18n/localization-provider.d.ts +59 -0
  562. package/dist/esm/i18n/localization-provider.d.ts.map +1 -0
  563. package/dist/esm/i18n/localization-provider.js +76 -0
  564. package/dist/esm/i18n/localization-provider.js.map +1 -0
  565. package/dist/esm/i18n/messages/en-US.d.ts +4 -0
  566. package/dist/esm/i18n/messages/en-US.d.ts.map +1 -0
  567. package/dist/esm/i18n/messages/en-US.js +35 -0
  568. package/dist/esm/i18n/messages/en-US.js.map +1 -0
  569. package/dist/esm/i18n/messages/index.d.ts +3 -0
  570. package/dist/esm/i18n/messages/index.d.ts.map +1 -0
  571. package/dist/esm/i18n/messages/index.js +2 -0
  572. package/dist/esm/i18n/messages/index.js.map +1 -0
  573. package/dist/esm/i18n/messages/types.d.ts +72 -0
  574. package/dist/esm/i18n/messages/types.d.ts.map +1 -0
  575. package/dist/esm/i18n/messages/types.js +2 -0
  576. package/dist/esm/i18n/messages/types.js.map +1 -0
  577. package/dist/esm/index.d.ts +18 -3
  578. package/dist/esm/index.d.ts.map +1 -1
  579. package/dist/esm/index.js +16 -3
  580. package/dist/esm/index.js.map +1 -1
  581. package/dist/esm/providers/ssr/ssr-provider.d.ts +1 -3
  582. package/dist/esm/providers/ssr/ssr-provider.d.ts.map +1 -1
  583. package/dist/esm/providers/ssr/ssr-provider.js +3 -3
  584. package/dist/esm/providers/ssr/ssr-provider.js.map +1 -1
  585. package/dist/esm/utils/is-production.d.ts +2 -0
  586. package/dist/esm/utils/is-production.d.ts.map +1 -0
  587. package/dist/esm/utils/is-production.js +4 -0
  588. package/dist/esm/utils/is-production.js.map +1 -0
  589. package/dist/esm/utils/style/types.d.ts +1 -1
  590. package/dist/esm/utils/style/types.d.ts.map +1 -1
  591. package/dist/esm/utils/style/types.js.map +1 -1
  592. package/dist/esm/utils/use-media-query.d.ts +2 -0
  593. package/dist/esm/utils/use-media-query.d.ts.map +1 -0
  594. package/dist/esm/utils/use-media-query.js +32 -0
  595. package/dist/esm/utils/use-media-query.js.map +1 -0
  596. package/dist/esm/utils/use-production-warning.d.ts +3 -0
  597. package/dist/esm/utils/use-production-warning.d.ts.map +1 -0
  598. package/dist/esm/utils/use-production-warning.js +4 -0
  599. package/dist/esm/utils/use-production-warning.js.map +1 -0
  600. package/dist/esm/with-style-props.d.ts.map +1 -1
  601. package/dist-styles/core.css +1 -1
  602. package/dist-styles/normalize.css +1 -1
  603. package/dist-styles/styles.css +1 -1
  604. package/package.json +64 -20
  605. package/dist/commonjs/components/card/card-context.d.ts +0 -4
  606. package/dist/commonjs/components/card/card-context.d.ts.map +0 -1
  607. package/dist/commonjs/components/card/card-context.js +0 -6
  608. package/dist/commonjs/components/card/card-context.js.map +0 -1
  609. package/dist/commonjs/components/modal/modal.d.ts +0 -64
  610. package/dist/commonjs/components/modal/modal.d.ts.map +0 -1
  611. package/dist/commonjs/components/modal/modal.js +0 -40
  612. package/dist/commonjs/components/modal/modal.js.map +0 -1
  613. package/dist/esm/components/card/card-context.d.ts +0 -4
  614. package/dist/esm/components/card/card-context.d.ts.map +0 -1
  615. package/dist/esm/components/card/card-context.js +0 -3
  616. package/dist/esm/components/card/card-context.js.map +0 -1
  617. package/dist/esm/components/modal/modal.d.ts +0 -64
  618. package/dist/esm/components/modal/modal.d.ts.map +0 -1
  619. package/dist/esm/components/modal/modal.js +0 -33
  620. package/dist/esm/components/modal/modal.js.map +0 -1
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEraFormat = getEraFormat;
4
+ exports.isDateInvalid = isDateInvalid;
5
+ exports.constrainValue = constrainValue;
6
+ const date_1 = require("@internationalized/date");
7
+ /** @internal */
8
+ function getEraFormat(date) {
9
+ return date?.calendar.identifier === 'gregory' && date.era === 'BC' ? 'short' : undefined;
10
+ }
11
+ /** @internal */
12
+ function isDateInvalid(date, minValue, maxValue) {
13
+ return (minValue != null && date.compare(minValue) < 0) || (maxValue != null && date.compare(maxValue) > 0);
14
+ }
15
+ /** @internal */
16
+ function constrainValue(date, minValue, maxValue) {
17
+ if (minValue) {
18
+ const newDate = (0, date_1.maxDate)(date, (0, date_1.toCalendarDate)(minValue));
19
+ if (newDate) {
20
+ date = newDate;
21
+ }
22
+ }
23
+ if (maxValue) {
24
+ const newDate = (0, date_1.minDate)(date, (0, date_1.toCalendarDate)(maxValue));
25
+ if (newDate) {
26
+ date = newDate;
27
+ }
28
+ }
29
+ return date;
30
+ }
31
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/date-picker/utils.ts"],"names":[],"mappings":";;AAQA,oCAEC;AAGD,sCAEC;AAGD,wCAoBC;AAtCD,kDAA8G;AAO9G,gBAAgB;AAChB,SAAgB,YAAY,CAAC,IAA8B;IACzD,OAAO,IAAI,EAAE,QAAQ,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5F,CAAC;AAED,gBAAgB;AAChB,SAAgB,aAAa,CAAC,IAAe,EAAE,QAA2B,EAAE,QAA2B;IACrG,OAAO,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9G,CAAC;AAED,gBAAgB;AAChB,SAAgB,cAAc,CAC5B,IAAkB,EAClB,QAA2B,EAC3B,QAA2B;IAE3B,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,IAAA,cAAO,EAAC,IAAI,EAAE,IAAA,qBAAc,EAAC,QAAQ,CAAC,CAAC,CAAC;QACxD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,GAAG,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,IAAA,cAAO,EAAC,IAAI,EAAE,IAAA,qBAAc,EAAC,QAAQ,CAAC,CAAC,CAAC;QACxD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,GAAG,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import { maxDate, minDate, toCalendarDate, type CalendarDate, type DateValue } from '@internationalized/date';\nimport type { Context } from 'react';\nimport type { CalendarStateContext as RACCalendarStateContext } from 'react-aria-components';\n\n/** @internal */\nexport type CalendarState = typeof RACCalendarStateContext extends Context<infer R> ? NonNullable<R> : never;\n\n/** @internal */\nexport function getEraFormat(date: CalendarDate | undefined): 'short' | undefined {\n return date?.calendar.identifier === 'gregory' && date.era === 'BC' ? 'short' : undefined;\n}\n\n/** @internal */\nexport function isDateInvalid(date: DateValue, minValue?: DateValue | null, maxValue?: DateValue | null): boolean {\n return (minValue != null && date.compare(minValue) < 0) || (maxValue != null && date.compare(maxValue) > 0);\n}\n\n/** @internal */\nexport function constrainValue(\n date: CalendarDate,\n minValue?: DateValue | null,\n maxValue?: DateValue | null,\n): CalendarDate {\n if (minValue) {\n const newDate = maxDate(date, toCalendarDate(minValue));\n if (newDate) {\n date = newDate;\n }\n }\n\n if (maxValue) {\n const newDate = minDate(date, toCalendarDate(maxValue));\n if (newDate) {\n date = newDate;\n }\n }\n\n return date;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=month-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"month-view.d.ts","sourceRoot":"","sources":["../../../../../../src/components/date-picker/views/month/month-view.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MonthView = MonthView;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const date_1 = require("@internationalized/date");
9
+ const clsx_1 = __importDefault(require("clsx"));
10
+ const react_1 = require("react");
11
+ const react_aria_components_1 = require("react-aria-components");
12
+ const index_js_1 = require("../../../../i18n/index.js");
13
+ const index_js_2 = require("../../../../icons/index.js");
14
+ const button_js_1 = require("../../../button/button.js");
15
+ const icon_button_js_1 = require("../../../button/icon-button.js");
16
+ const utils_js_1 = require("../../../typography/utils.js");
17
+ const view_provider_js_1 = require("./../view-provider.js");
18
+ /** @internal */
19
+ function MonthView() {
20
+ const state = (0, react_1.useContext)(react_aria_components_1.CalendarStateContext);
21
+ const {
22
+ // @ts-expect-error RACHeadingContext contains a `children` property, but it's not in the types
23
+ children: title, } = (0, react_1.useContext)(react_aria_components_1.HeadingContext);
24
+ const { switchToView } = (0, view_provider_js_1.useDatePickerView)();
25
+ const messages = (0, index_js_1.useLocalizedMessages)('datePicker');
26
+ (0, react_1.useEffect)(() => {
27
+ state?.setFocused(true);
28
+ // eslint-disable-next-line react-hooks/exhaustive-deps
29
+ }, []);
30
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("div", { className: "cim-date-picker-view-header", children: [(0, jsx_runtime_1.jsx)(icon_button_js_1.IconButton, { slot: "previous", "aria-label": messages.format('previousMonth'), icon: (0, jsx_runtime_1.jsx)(index_js_2.IconChevronLeft, {}), variant: "tertiary", size: "small" }), (0, jsx_runtime_1.jsx)(button_js_1.Button, { slot: null, "aria-label": messages.format('switchToYearView'), variant: "tertiary", onPress: () => switchToView('year'), children: title }), (0, jsx_runtime_1.jsx)(icon_button_js_1.IconButton, { slot: "next", "aria-label": messages.format('nextMonth'), icon: (0, jsx_runtime_1.jsx)(index_js_2.IconChevronRight, {}), variant: "tertiary", size: "small" })] }), (0, jsx_runtime_1.jsxs)(react_aria_components_1.CalendarGrid, { className: "cim-date-picker-view-grid", weekdayStyle: "narrow", children: [(0, jsx_runtime_1.jsx)(react_aria_components_1.CalendarGridHeader, { children: (day) => ((0, jsx_runtime_1.jsx)(react_aria_components_1.CalendarHeaderCell, { children: (0, jsx_runtime_1.jsx)("div", { className: (0, clsx_1.default)('cim-date-picker-calendar-header-cell', (0, utils_js_1.textStyle)({ variant: 'medium-semibold', tone: 'base' })), children: day }) })) }), (0, jsx_runtime_1.jsx)(react_aria_components_1.CalendarGridBody, { children: (date) => {
31
+ const isCurrentDate = (0, date_1.isToday)(date, state.timeZone);
32
+ return ((0, jsx_runtime_1.jsx)(react_aria_components_1.CalendarCell, { className: (0, clsx_1.default)('cim-date-picker-calendar-cell', (0, utils_js_1.textStyle)({ variant: isCurrentDate ? 'medium-semibold' : 'medium' })), date: date, "data-current": isCurrentDate || undefined }));
33
+ } })] })] }));
34
+ }
35
+ //# sourceMappingURL=month-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"month-view.js","sourceRoot":"","sources":["../../../../../../src/components/date-picker/views/month/month-view.tsx"],"names":[],"mappings":";;;;;AAoBA,8BA6EC;;AAjGD,kDAAkD;AAClD,gDAAwB;AACxB,iCAA8C;AAC9C,iEAQ+B;AAC/B,wDAAiE;AACjE,yDAA+E;AAC/E,yDAAmD;AACnD,mEAA4D;AAC5D,2DAAyD;AACzD,4DAA0D;AAE1D,gBAAgB;AAChB,SAAgB,SAAS;IACvB,MAAM,KAAK,GAAG,IAAA,kBAAU,EAAC,4CAAuB,CAAC,CAAC;IAClD,MAAM;IACJ,+FAA+F;IAC/F,QAAQ,EAAE,KAAK,GAChB,GAAG,IAAA,kBAAU,EAAC,sCAAiB,CAAC,CAAC;IAClC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAA,oCAAiB,GAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,IAAA,+BAAoB,EAAC,YAAY,CAAC,CAAC;IAEpD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;QACxB,uDAAuD;IACzD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,6DACE,iCAAK,SAAS,EAAC,6BAA6B,aAC1C,uBAAC,2BAAU,IACT,IAAI,EAAC,UAAU,gBACH,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,EAC5C,IAAI,EAAE,uBAAC,0BAAe,KAAG,EACzB,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,OAAO,GACZ,EAEF,uBAAC,kBAAM,IACL,IAAI,EAAE,IAAI,gBACE,QAAQ,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAC/C,OAAO,EAAC,UAAU,EAClB,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,YAElC,KAAK,GACC,EAET,uBAAC,2BAAU,IACT,IAAI,EAAC,MAAM,gBACC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,EACxC,IAAI,EAAE,uBAAC,2BAAgB,KAAG,EAC1B,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,OAAO,GACZ,IACE,EAEN,wBAAC,oCAAe,IAAC,SAAS,EAAC,2BAA2B,EAAC,YAAY,EAAC,QAAQ,aAC1E,uBAAC,0CAAqB,cACnB,CAAC,GAAG,EAAE,EAAE,CAAC,CACR,uBAAC,0CAAqB,cACpB,gCACE,SAAS,EAAE,IAAA,cAAI,EACb,sCAAsC,EACtC,IAAA,oBAAS,EAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CACxD,YAEA,GAAG,GACA,GACgB,CACzB,GACqB,EACxB,uBAAC,wCAAmB,cACjB,CAAC,IAAI,EAAE,EAAE;4BACR,MAAM,aAAa,GAAG,IAAA,cAAO,EAAC,IAAI,EAAE,KAAM,CAAC,QAAQ,CAAC,CAAC;4BAErD,OAAO,CACL,uBAAC,oCAAe,IACd,SAAS,EAAE,IAAA,cAAI,EACb,+BAA+B,EAC/B,IAAA,oBAAS,EAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CACrE,EACD,IAAI,EAAE,IAAI,kBACI,aAAa,IAAI,SAAS,GACxC,CACH,CAAC;wBACJ,CAAC,GACmB,IACN,IACjB,CACJ,CAAC;AACJ,CAAC","sourcesContent":["import { isToday } from '@internationalized/date';\nimport clsx from 'clsx';\nimport { useContext, useEffect } from 'react';\nimport {\n CalendarCell as RACCalendarCell,\n CalendarGrid as RACCalendarGrid,\n CalendarGridBody as RACCalendarGridBody,\n CalendarGridHeader as RACCalendarGridHeader,\n CalendarHeaderCell as RACCalendarHeaderCell,\n CalendarStateContext as RACCalendarStateContext,\n HeadingContext as RACHeadingContext,\n} from 'react-aria-components';\nimport { useLocalizedMessages } from '../../../../i18n/index.js';\nimport { IconChevronLeft, IconChevronRight } from '../../../../icons/index.js';\nimport { Button } from '../../../button/button.js';\nimport { IconButton } from '../../../button/icon-button.js';\nimport { textStyle } from '../../../typography/utils.js';\nimport { useDatePickerView } from './../view-provider.js';\n\n/** @internal */\nexport function MonthView() {\n const state = useContext(RACCalendarStateContext);\n const {\n // @ts-expect-error RACHeadingContext contains a `children` property, but it's not in the types\n children: title,\n } = useContext(RACHeadingContext);\n const { switchToView } = useDatePickerView();\n const messages = useLocalizedMessages('datePicker');\n\n useEffect(() => {\n state?.setFocused(true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <>\n <div className=\"cim-date-picker-view-header\">\n <IconButton\n slot=\"previous\"\n aria-label={messages.format('previousMonth')}\n icon={<IconChevronLeft />}\n variant=\"tertiary\"\n size=\"small\"\n />\n\n <Button\n slot={null}\n aria-label={messages.format('switchToYearView')}\n variant=\"tertiary\"\n onPress={() => switchToView('year')}\n >\n {title}\n </Button>\n\n <IconButton\n slot=\"next\"\n aria-label={messages.format('nextMonth')}\n icon={<IconChevronRight />}\n variant=\"tertiary\"\n size=\"small\"\n />\n </div>\n\n <RACCalendarGrid className=\"cim-date-picker-view-grid\" weekdayStyle=\"narrow\">\n <RACCalendarGridHeader>\n {(day) => (\n <RACCalendarHeaderCell>\n <div\n className={clsx(\n 'cim-date-picker-calendar-header-cell',\n textStyle({ variant: 'medium-semibold', tone: 'base' }),\n )}\n >\n {day}\n </div>\n </RACCalendarHeaderCell>\n )}\n </RACCalendarGridHeader>\n <RACCalendarGridBody>\n {(date) => {\n const isCurrentDate = isToday(date, state!.timeZone);\n\n return (\n <RACCalendarCell\n className={clsx(\n 'cim-date-picker-calendar-cell',\n textStyle({ variant: isCurrentDate ? 'medium-semibold' : 'medium' }),\n )}\n date={date}\n data-current={isCurrentDate || undefined}\n />\n );\n }}\n </RACCalendarGridBody>\n </RACCalendarGrid>\n </>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=multi-year-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-year-view.d.ts","sourceRoot":"","sources":["../../../../../../src/components/date-picker/views/multi-year/multi-year-view.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MultiYearView = MultiYearView;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const icon_button_js_1 = require("../../../button/icon-button.js");
6
+ const text_js_1 = require("../../../typography/text.js");
7
+ const use_view_header_js_1 = require("../use-view-header.js");
8
+ const view_grid_js_1 = require("../view-grid.js");
9
+ const use_multi_year_view_state_js_1 = require("./use-multi-year-view-state.js");
10
+ /** @internal */
11
+ function MultiYearView() {
12
+ const state = (0, use_multi_year_view_state_js_1.useMultiYearViewState)();
13
+ const { nextButtonProps, prevButtonProps } = (0, use_view_header_js_1.useViewHeader)(state);
14
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("div", { className: "cim-date-picker-view-header", children: [(0, jsx_runtime_1.jsx)(icon_button_js_1.IconButton, { slot: null, ...prevButtonProps }), (0, jsx_runtime_1.jsx)(text_js_1.Text, { as: "span", variant: "title-6", tone: "base", children: state.header }), (0, jsx_runtime_1.jsx)(icon_button_js_1.IconButton, { slot: null, ...nextButtonProps })] }), (0, jsx_runtime_1.jsx)(view_grid_js_1.ViewGrid, { state: state, className: "cim-date-picker-view-grid-multi-year" })] }));
15
+ }
16
+ //# sourceMappingURL=multi-year-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-year-view.js","sourceRoot":"","sources":["../../../../../../src/components/date-picker/views/multi-year/multi-year-view.tsx"],"names":[],"mappings":";;AAOA,sCAmBC;;AA1BD,mEAA4D;AAC5D,yDAAmD;AACnD,8DAAsD;AACtD,kDAA2C;AAC3C,iFAAuE;AAEvE,gBAAgB;AAChB,SAAgB,aAAa;IAC3B,MAAM,KAAK,GAAG,IAAA,oDAAqB,GAAE,CAAC;IACtC,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,IAAA,kCAAa,EAAC,KAAK,CAAC,CAAC;IAElE,OAAO,CACL,6DACE,iCAAK,SAAS,EAAC,6BAA6B,aAC1C,uBAAC,2BAAU,IAAC,IAAI,EAAE,IAAI,KAAM,eAAe,GAAI,EAE/C,uBAAC,cAAI,IAAC,EAAE,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,MAAM,YAC1C,KAAK,CAAC,MAAM,GACR,EAEP,uBAAC,2BAAU,IAAC,IAAI,EAAE,IAAI,KAAM,eAAe,GAAI,IAC3C,EAEN,uBAAC,uBAAQ,IAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAC,sCAAsC,GAAG,IAC1E,CACJ,CAAC;AACJ,CAAC","sourcesContent":["import { IconButton } from '../../../button/icon-button.js';\nimport { Text } from '../../../typography/text.js';\nimport { useViewHeader } from '../use-view-header.js';\nimport { ViewGrid } from '../view-grid.js';\nimport { useMultiYearViewState } from './use-multi-year-view-state.js';\n\n/** @internal */\nexport function MultiYearView() {\n const state = useMultiYearViewState();\n const { nextButtonProps, prevButtonProps } = useViewHeader(state);\n\n return (\n <>\n <div className=\"cim-date-picker-view-header\">\n <IconButton slot={null} {...prevButtonProps} />\n\n <Text as=\"span\" variant=\"title-6\" tone=\"base\">\n {state.header}\n </Text>\n\n <IconButton slot={null} {...nextButtonProps} />\n </div>\n\n <ViewGrid state={state} className=\"cim-date-picker-view-grid-multi-year\" />\n </>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=use-multi-year-view-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-multi-year-view-state.d.ts","sourceRoot":"","sources":["../../../../../../src/components/date-picker/views/multi-year/use-multi-year-view-state.ts"],"names":[],"mappings":""}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useMultiYearViewState = useMultiYearViewState;
4
+ const date_1 = require("@internationalized/date");
5
+ const react_1 = require("react");
6
+ const react_aria_1 = require("react-aria");
7
+ const react_aria_components_1 = require("react-aria-components");
8
+ const index_js_1 = require("../../../../i18n/index.js");
9
+ const utils_js_1 = require("../../utils.js");
10
+ const view_provider_js_1 = require("../view-provider.js");
11
+ const ITEMS_PER_ROW = 4;
12
+ const YEARS_PER_SECTION = 20;
13
+ const YEARS_SKIP_AMOUNT = 100;
14
+ /** @internal */
15
+ function useMultiYearViewState() {
16
+ const calendarState = (0, react_1.useContext)(react_aria_components_1.CalendarStateContext);
17
+ const { switchToView, focusedDate, setFocusedDate } = (0, view_provider_js_1.useDatePickerView)();
18
+ const messages = (0, index_js_1.useLocalizedMessages)('datePicker');
19
+ const [isFocused, setIsFocused] = (0, react_1.useState)(true);
20
+ const currentDate = (0, react_1.useMemo)(() => (0, date_1.today)(calendarState.timeZone), [calendarState.timeZone]);
21
+ const yearFormatter = (0, react_aria_1.useDateFormatter)({
22
+ year: 'numeric',
23
+ era: (0, utils_js_1.getEraFormat)(focusedDate),
24
+ calendar: focusedDate.calendar.identifier,
25
+ timeZone: calendarState.timeZone,
26
+ });
27
+ let startYear = (Math.ceil(focusedDate.year / YEARS_PER_SECTION) - 1) * YEARS_PER_SECTION + 1;
28
+ let endYear = startYear + YEARS_PER_SECTION - 1;
29
+ // Years are always represented by positive numbers.
30
+ // If era implies negative years, flip start and end.
31
+ const isNegativeEra = focusedDate.era === 'BC';
32
+ if (isNegativeEra) {
33
+ const temp = startYear;
34
+ startYear = endYear;
35
+ endYear = temp;
36
+ }
37
+ const data = (0, react_1.useMemo)(() => {
38
+ const rowCount = Math.ceil(YEARS_PER_SECTION / ITEMS_PER_ROW);
39
+ const result = new Array(rowCount);
40
+ for (let rowIdx = 0; rowIdx < rowCount; rowIdx++) {
41
+ result[rowIdx] = new Array(ITEMS_PER_ROW).fill(null);
42
+ }
43
+ for (let yearIdx = 0; yearIdx < YEARS_PER_SECTION; yearIdx++) {
44
+ const rowIdx = Math.floor(yearIdx / ITEMS_PER_ROW);
45
+ const colIdx = yearIdx % ITEMS_PER_ROW;
46
+ const yearToSet = startYear + (isNegativeEra ? -yearIdx : yearIdx);
47
+ const date = focusedDate.set({ year: yearToSet });
48
+ if (date.year !== yearToSet) {
49
+ // Reached minimum/maximum date
50
+ continue;
51
+ }
52
+ const content = yearFormatter.format(date.toDate(calendarState.timeZone));
53
+ result[rowIdx][colIdx] = {
54
+ date,
55
+ content,
56
+ ariaLabel: content,
57
+ isCurrent: (0, date_1.isSameYear)(date, currentDate),
58
+ };
59
+ }
60
+ return result;
61
+ }, [startYear, calendarState.timeZone, focusedDate, yearFormatter, isNegativeEra, currentDate]);
62
+ const focusCell = (date) => {
63
+ setFocusedDate((0, utils_js_1.constrainValue)(date, calendarState.minValue, calendarState.maxValue));
64
+ };
65
+ return {
66
+ header: yearFormatter.formatRange(focusedDate.set({ year: startYear }).toDate(calendarState.timeZone), focusedDate.set({ year: endYear }).toDate(calendarState.timeZone)),
67
+ previousLabel: messages.format('previousMultiYearSection', { yearCount: 20 }),
68
+ nextLabel: messages.format('nextMultiYearSection', { yearCount: 20 }),
69
+ data,
70
+ isReadOnly: calendarState.isReadOnly,
71
+ isDisabled: calendarState.isDisabled,
72
+ isFocused,
73
+ setIsFocused,
74
+ focusedDate,
75
+ setFocusedDate,
76
+ timeZone: calendarState.timeZone,
77
+ focusPreviousItem() {
78
+ focusCell(focusedDate.subtract({ years: 1 }));
79
+ },
80
+ focusNextItem() {
81
+ focusCell(focusedDate.add({ years: 1 }));
82
+ },
83
+ focusPreviousRow() {
84
+ focusCell(focusedDate.subtract({ years: ITEMS_PER_ROW }));
85
+ },
86
+ focusNextRow() {
87
+ focusCell(focusedDate.add({ years: ITEMS_PER_ROW }));
88
+ },
89
+ focusSectionStart() {
90
+ focusCell(focusedDate.set({ year: startYear }));
91
+ },
92
+ focusSectionEnd() {
93
+ focusCell(focusedDate.set({ year: endYear }));
94
+ },
95
+ focusPreviousSection(shouldSkip) {
96
+ focusCell(focusedDate.subtract({ years: shouldSkip ? YEARS_SKIP_AMOUNT : YEARS_PER_SECTION }));
97
+ },
98
+ focusNextSection(shouldSkip) {
99
+ focusCell(focusedDate.add({ years: shouldSkip ? YEARS_SKIP_AMOUNT : YEARS_PER_SECTION }));
100
+ },
101
+ isPreviousSectionInvalid() {
102
+ const current = (0, date_1.startOfYear)(focusedDate.set({ year: startYear }));
103
+ const prev = current.subtract({ days: 1 });
104
+ return ((0, utils_js_1.isDateInvalid)(current, calendarState.minValue, calendarState.maxValue) ||
105
+ (0, utils_js_1.isDateInvalid)(prev, calendarState.minValue, calendarState.maxValue) ||
106
+ (0, date_1.isSameDay)(prev, current));
107
+ },
108
+ isNextSectionInvalid() {
109
+ const current = (0, date_1.endOfYear)(focusedDate.set({ year: endYear }));
110
+ const next = current.add({ days: 1 });
111
+ return ((0, utils_js_1.isDateInvalid)(current, calendarState.minValue, calendarState.maxValue) ||
112
+ (0, utils_js_1.isDateInvalid)(next, calendarState.minValue, calendarState.maxValue) ||
113
+ (0, date_1.isSameDay)(next, current));
114
+ },
115
+ selectFocusedDate() {
116
+ switchToView('year');
117
+ },
118
+ isCellDisabled(date) {
119
+ return ((0, utils_js_1.isDateInvalid)((0, date_1.endOfYear)(date), calendarState.minValue, null) ||
120
+ (0, utils_js_1.isDateInvalid)((0, date_1.startOfYear)(date), null, calendarState.maxValue));
121
+ },
122
+ isCellSelected(date) {
123
+ return calendarState.value !== null && (0, date_1.isSameYear)(date, calendarState.value);
124
+ },
125
+ isCellTabbable(date) {
126
+ return (0, date_1.isSameYear)(date, focusedDate);
127
+ },
128
+ };
129
+ }
130
+ //# sourceMappingURL=use-multi-year-view-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-multi-year-view-state.js","sourceRoot":"","sources":["../../../../../../src/components/date-picker/views/multi-year/use-multi-year-view-state.ts"],"names":[],"mappings":"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","sourcesContent":["import { endOfYear, isSameDay, isSameYear, startOfYear, today, type CalendarDate } from '@internationalized/date';\nimport { useContext, useMemo, useState } from 'react';\nimport { useDateFormatter } from 'react-aria';\nimport { CalendarStateContext as RACCalendarStateContext } from 'react-aria-components';\nimport { useLocalizedMessages } from '../../../../i18n/index.js';\nimport { constrainValue, getEraFormat, isDateInvalid } from '../../utils.js';\nimport type { ViewGridCellData, ViewGridState } from '../types.js';\nimport { useDatePickerView } from '../view-provider.js';\n\nconst ITEMS_PER_ROW = 4;\nconst YEARS_PER_SECTION = 20;\nconst YEARS_SKIP_AMOUNT = 100;\n\n/** @internal */\nexport function useMultiYearViewState(): ViewGridState {\n const calendarState = useContext(RACCalendarStateContext)!;\n const { switchToView, focusedDate, setFocusedDate } = useDatePickerView();\n const messages = useLocalizedMessages('datePicker');\n const [isFocused, setIsFocused] = useState(true);\n\n const currentDate = useMemo(() => today(calendarState.timeZone), [calendarState.timeZone]);\n\n const yearFormatter = useDateFormatter({\n year: 'numeric',\n era: getEraFormat(focusedDate),\n calendar: focusedDate.calendar.identifier,\n timeZone: calendarState.timeZone,\n });\n\n let startYear = (Math.ceil(focusedDate.year / YEARS_PER_SECTION) - 1) * YEARS_PER_SECTION + 1;\n let endYear = startYear + YEARS_PER_SECTION - 1;\n\n // Years are always represented by positive numbers.\n // If era implies negative years, flip start and end.\n const isNegativeEra = focusedDate.era === 'BC';\n if (isNegativeEra) {\n const temp = startYear;\n startYear = endYear;\n endYear = temp;\n }\n\n const data: (ViewGridCellData | null)[][] = useMemo(() => {\n const rowCount = Math.ceil(YEARS_PER_SECTION / ITEMS_PER_ROW);\n const result: (ViewGridCellData | null)[][] = new Array(rowCount);\n\n for (let rowIdx = 0; rowIdx < rowCount; rowIdx++) {\n result[rowIdx] = new Array(ITEMS_PER_ROW).fill(null);\n }\n\n for (let yearIdx = 0; yearIdx < YEARS_PER_SECTION; yearIdx++) {\n const rowIdx = Math.floor(yearIdx / ITEMS_PER_ROW);\n const colIdx = yearIdx % ITEMS_PER_ROW;\n\n const yearToSet = startYear + (isNegativeEra ? -yearIdx : yearIdx);\n const date = focusedDate.set({ year: yearToSet });\n\n if (date.year !== yearToSet) {\n // Reached minimum/maximum date\n continue;\n }\n\n const content = yearFormatter.format(date.toDate(calendarState.timeZone));\n\n result[rowIdx]![colIdx] = {\n date,\n content,\n ariaLabel: content,\n isCurrent: isSameYear(date, currentDate),\n };\n }\n\n return result;\n }, [startYear, calendarState.timeZone, focusedDate, yearFormatter, isNegativeEra, currentDate]);\n\n const focusCell = (date: CalendarDate) => {\n setFocusedDate(constrainValue(date, calendarState.minValue, calendarState.maxValue));\n };\n\n return {\n header: yearFormatter.formatRange(\n focusedDate.set({ year: startYear }).toDate(calendarState.timeZone),\n focusedDate.set({ year: endYear }).toDate(calendarState.timeZone),\n ),\n previousLabel: messages.format('previousMultiYearSection', { yearCount: 20 }),\n nextLabel: messages.format('nextMultiYearSection', { yearCount: 20 }),\n data,\n isReadOnly: calendarState.isReadOnly,\n isDisabled: calendarState.isDisabled,\n isFocused,\n setIsFocused,\n focusedDate,\n setFocusedDate,\n timeZone: calendarState.timeZone,\n focusPreviousItem() {\n focusCell(focusedDate.subtract({ years: 1 }));\n },\n focusNextItem() {\n focusCell(focusedDate.add({ years: 1 }));\n },\n focusPreviousRow() {\n focusCell(focusedDate.subtract({ years: ITEMS_PER_ROW }));\n },\n focusNextRow() {\n focusCell(focusedDate.add({ years: ITEMS_PER_ROW }));\n },\n focusSectionStart() {\n focusCell(focusedDate.set({ year: startYear }));\n },\n focusSectionEnd() {\n focusCell(focusedDate.set({ year: endYear }));\n },\n focusPreviousSection(shouldSkip) {\n focusCell(focusedDate.subtract({ years: shouldSkip ? YEARS_SKIP_AMOUNT : YEARS_PER_SECTION }));\n },\n focusNextSection(shouldSkip) {\n focusCell(focusedDate.add({ years: shouldSkip ? YEARS_SKIP_AMOUNT : YEARS_PER_SECTION }));\n },\n isPreviousSectionInvalid() {\n const current = startOfYear(focusedDate.set({ year: startYear }));\n const prev = current.subtract({ days: 1 });\n\n return (\n isDateInvalid(current, calendarState.minValue, calendarState.maxValue) ||\n isDateInvalid(prev, calendarState.minValue, calendarState.maxValue) ||\n isSameDay(prev, current)\n );\n },\n isNextSectionInvalid() {\n const current = endOfYear(focusedDate.set({ year: endYear }));\n const next = current.add({ days: 1 });\n\n return (\n isDateInvalid(current, calendarState.minValue, calendarState.maxValue) ||\n isDateInvalid(next, calendarState.minValue, calendarState.maxValue) ||\n isSameDay(next, current)\n );\n },\n selectFocusedDate() {\n switchToView('year');\n },\n isCellDisabled(date) {\n return (\n isDateInvalid(endOfYear(date), calendarState.minValue, null) ||\n isDateInvalid(startOfYear(date), null, calendarState.maxValue)\n );\n },\n isCellSelected(date) {\n return calendarState.value !== null && isSameYear(date, calendarState.value);\n },\n isCellTabbable(date) {\n return isSameYear(date, focusedDate);\n },\n };\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { CalendarDate } from '@internationalized/date';\n\n/** @internal */\nexport interface ViewGridCellData {\n date: CalendarDate;\n content: string;\n ariaLabel: string;\n isCurrent: boolean;\n}\n\n/** @internal */\nexport interface ViewGridState {\n header: string;\n previousLabel: string;\n nextLabel: string;\n data: (ViewGridCellData | null)[][];\n isReadOnly: boolean;\n isDisabled: boolean;\n isFocused: boolean;\n setIsFocused(value: boolean): void;\n focusedDate: CalendarDate;\n setFocusedDate(date: CalendarDate): void;\n timeZone: string;\n focusPreviousItem(): void;\n focusNextItem(): void;\n focusPreviousRow(): void;\n focusNextRow(): void;\n focusSectionStart(): void;\n focusSectionEnd(): void;\n focusPreviousSection(shouldSkip?: boolean): void;\n focusNextSection(shouldSkip?: boolean): void;\n isPreviousSectionInvalid(): boolean;\n isNextSectionInvalid(): boolean;\n selectFocusedDate(): void;\n isCellDisabled(date: CalendarDate): boolean;\n isCellSelected(date: CalendarDate): boolean;\n isCellTabbable(date: CalendarDate): boolean;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=use-view-header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-view-header.d.ts","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/use-view-header.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useViewHeader = useViewHeader;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const live_announcer_1 = require("@react-aria/live-announcer");
6
+ const utils_1 = require("@react-aria/utils");
7
+ const react_1 = require("react");
8
+ const index_js_1 = require("../../../icons/index.js");
9
+ /** @internal */
10
+ function useViewHeader(state) {
11
+ const { isFocused, header } = state;
12
+ // Announce when the section changes
13
+ (0, utils_1.useUpdateEffect)(() => {
14
+ // only when pressing the Previous or Next button
15
+ if (!isFocused) {
16
+ (0, live_announcer_1.announce)(header);
17
+ }
18
+ // eslint-disable-next-line react-hooks/exhaustive-deps
19
+ }, [header]);
20
+ // If the next or previous buttons become disabled while they are focused, move focus to the grid.
21
+ const [previousFocused, setPreviousFocused] = (0, react_1.useState)(false);
22
+ const previousDisabled = state.isDisabled || state.isPreviousSectionInvalid();
23
+ if (previousDisabled && previousFocused) {
24
+ setPreviousFocused(false);
25
+ state.setIsFocused(true);
26
+ }
27
+ const [nextFocused, setNextFocused] = (0, react_1.useState)(false);
28
+ const nextDisabled = state.isDisabled || state.isNextSectionInvalid();
29
+ if (nextDisabled && nextFocused) {
30
+ setNextFocused(false);
31
+ state.setIsFocused(true);
32
+ }
33
+ return {
34
+ prevButtonProps: {
35
+ onPress: () => state.focusPreviousSection(),
36
+ 'aria-label': state.previousLabel,
37
+ icon: (0, jsx_runtime_1.jsx)(index_js_1.IconChevronLeft, {}),
38
+ variant: 'tertiary',
39
+ size: 'small',
40
+ isDisabled: previousDisabled,
41
+ // @ts-expect-error our buttons don't expose `onFocusChange`, but it gets passed to React Aria anyway
42
+ onFocusChange: setPreviousFocused,
43
+ },
44
+ nextButtonProps: {
45
+ onPress: () => state.focusNextSection(),
46
+ 'aria-label': state.nextLabel,
47
+ icon: (0, jsx_runtime_1.jsx)(index_js_1.IconChevronRight, {}),
48
+ variant: 'tertiary',
49
+ size: 'small',
50
+ isDisabled: nextDisabled,
51
+ // @ts-expect-error our buttons don't expose `onFocusChange`, but it gets passed to React Aria anyway
52
+ onFocusChange: setNextFocused,
53
+ },
54
+ };
55
+ }
56
+ //# sourceMappingURL=use-view-header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-view-header.js","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/use-view-header.tsx"],"names":[],"mappings":";;AAaA,sCAiDC;;AA9DD,+DAAsD;AACtD,6CAAoD;AACpD,iCAAiC;AACjC,sDAA4E;AAS5E,gBAAgB;AAChB,SAAgB,aAAa,CAAC,KAAoB;IAChD,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAEpC,oCAAoC;IACpC,IAAA,uBAAe,EAAC,GAAG,EAAE;QACnB,iDAAiD;QACjD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAA,yBAAQ,EAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QACD,uDAAuD;IACzD,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,kGAAkG;IAClG,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;IAC9E,IAAI,gBAAgB,IAAI,eAAe,EAAE,CAAC;QACxC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC1B,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;IACtE,IAAI,YAAY,IAAI,WAAW,EAAE,CAAC;QAChC,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,eAAe,EAAE;YACf,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,oBAAoB,EAAE;YAC3C,YAAY,EAAE,KAAK,CAAC,aAAa;YACjC,IAAI,EAAE,uBAAC,0BAAe,KAAG;YACzB,OAAO,EAAE,UAAU;YACnB,IAAI,EAAE,OAAO;YACb,UAAU,EAAE,gBAAgB;YAC5B,qGAAqG;YACrG,aAAa,EAAE,kBAAkB;SAClC;QACD,eAAe,EAAE;YACf,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE;YACvC,YAAY,EAAE,KAAK,CAAC,SAAS;YAC7B,IAAI,EAAE,uBAAC,2BAAgB,KAAG;YAC1B,OAAO,EAAE,UAAU;YACnB,IAAI,EAAE,OAAO;YACb,UAAU,EAAE,YAAY;YACxB,qGAAqG;YACrG,aAAa,EAAE,cAAc;SAC9B;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { announce } from '@react-aria/live-announcer';\nimport { useUpdateEffect } from '@react-aria/utils';\nimport { useState } from 'react';\nimport { IconChevronLeft, IconChevronRight } from '../../../icons/index.js';\nimport type { IconButtonProps } from '../../button/icon-button.js';\nimport type { ViewGridState } from './types.js';\n\ninterface UseViewHeader {\n prevButtonProps: IconButtonProps;\n nextButtonProps: IconButtonProps;\n}\n\n/** @internal */\nexport function useViewHeader(state: ViewGridState): UseViewHeader {\n const { isFocused, header } = state;\n\n // Announce when the section changes\n useUpdateEffect(() => {\n // only when pressing the Previous or Next button\n if (!isFocused) {\n announce(header);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [header]);\n\n // If the next or previous buttons become disabled while they are focused, move focus to the grid.\n const [previousFocused, setPreviousFocused] = useState(false);\n const previousDisabled = state.isDisabled || state.isPreviousSectionInvalid();\n if (previousDisabled && previousFocused) {\n setPreviousFocused(false);\n state.setIsFocused(true);\n }\n\n const [nextFocused, setNextFocused] = useState(false);\n const nextDisabled = state.isDisabled || state.isNextSectionInvalid();\n if (nextDisabled && nextFocused) {\n setNextFocused(false);\n state.setIsFocused(true);\n }\n\n return {\n prevButtonProps: {\n onPress: () => state.focusPreviousSection(),\n 'aria-label': state.previousLabel,\n icon: <IconChevronLeft />,\n variant: 'tertiary',\n size: 'small',\n isDisabled: previousDisabled,\n // @ts-expect-error our buttons don't expose `onFocusChange`, but it gets passed to React Aria anyway\n onFocusChange: setPreviousFocused,\n },\n nextButtonProps: {\n onPress: () => state.focusNextSection(),\n 'aria-label': state.nextLabel,\n icon: <IconChevronRight />,\n variant: 'tertiary',\n size: 'small',\n isDisabled: nextDisabled,\n // @ts-expect-error our buttons don't expose `onFocusChange`, but it gets passed to React Aria anyway\n onFocusChange: setNextFocused,\n },\n };\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=view-grid-cell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-grid-cell.d.ts","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/view-grid-cell.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ViewGridCell = ViewGridCell;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const focus_1 = require("@react-aria/focus");
9
+ const interactions_1 = require("@react-aria/interactions");
10
+ const utils_1 = require("@react-aria/utils");
11
+ const clsx_1 = __importDefault(require("clsx"));
12
+ const react_1 = require("react");
13
+ const utils_js_1 = require("../../typography/utils.js");
14
+ /** @internal */
15
+ function ViewGridCell({ cellData, state }) {
16
+ const ref = (0, react_1.useRef)(null);
17
+ const isDisabled = cellData ? state.isDisabled || state.isCellDisabled(cellData.date) : true;
18
+ const isSelected = cellData ? !isDisabled && state.isCellSelected(cellData.date) : false;
19
+ const isTabbable = cellData ? state.isCellTabbable(cellData.date) : false;
20
+ const isFocused = state.isFocused && isTabbable;
21
+ const { pressProps, isPressed } = (0, interactions_1.usePress)({
22
+ preventFocusOnPress: true,
23
+ isDisabled: isDisabled || state.isReadOnly,
24
+ onPress: () => {
25
+ if (!state.isReadOnly && cellData) {
26
+ state.setFocusedDate(cellData.date);
27
+ state.selectFocusedDate();
28
+ }
29
+ },
30
+ });
31
+ let tabIndex = undefined;
32
+ if (!isDisabled) {
33
+ tabIndex = isTabbable ? 0 : -1;
34
+ }
35
+ // Focus the button in the DOM when the state updates.
36
+ (0, react_1.useEffect)(() => {
37
+ if (isFocused && ref.current) {
38
+ (0, utils_1.focusWithoutScrolling)(ref.current);
39
+ // Scroll into view if navigating with a keyboard
40
+ if ((0, interactions_1.getInteractionModality)() !== 'pointer' && document.activeElement === ref.current) {
41
+ (0, utils_1.scrollIntoViewport)(ref.current, { containingElement: (0, utils_1.getScrollParent)(ref.current) });
42
+ }
43
+ }
44
+ }, [isFocused]);
45
+ const { hoverProps, isHovered } = (0, interactions_1.useHover)({ isDisabled });
46
+ const { focusProps, isFocusVisible } = (0, focus_1.useFocusRing)();
47
+ const cellProps = {
48
+ role: 'gridcell',
49
+ 'aria-disabled': isDisabled || undefined,
50
+ 'aria-selected': isSelected || undefined,
51
+ };
52
+ if (!cellData) {
53
+ return (0, jsx_runtime_1.jsx)("td", { ...cellProps });
54
+ }
55
+ const { date, content, ariaLabel, isCurrent } = cellData;
56
+ const buttonProps = (0, utils_1.mergeProps)(pressProps, hoverProps, focusProps, {
57
+ onFocus() {
58
+ if (!isDisabled) {
59
+ state.setFocusedDate(date);
60
+ }
61
+ },
62
+ tabIndex,
63
+ role: 'button',
64
+ 'aria-disabled': isDisabled || undefined,
65
+ 'aria-label': ariaLabel,
66
+ onContextMenu(e) {
67
+ e.preventDefault();
68
+ },
69
+ });
70
+ return ((0, jsx_runtime_1.jsx)("td", { ...cellProps, children: (0, jsx_runtime_1.jsx)("div", { ...buttonProps, ref: ref, className: (0, clsx_1.default)('cim-date-picker-calendar-cell', (0, utils_js_1.textStyle)({ variant: isCurrent ? 'medium-semibold' : 'medium' })), "data-disabled": isDisabled || undefined, "data-hovered": isHovered || undefined, "data-pressed": isPressed || undefined, "data-selected": isSelected || undefined, "data-focus-visible": (isFocusVisible && isFocused) || undefined, "data-current": isCurrent || undefined, children: content }) }));
71
+ }
72
+ //# sourceMappingURL=view-grid-cell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-grid-cell.js","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/view-grid-cell.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useFocusRing } from '@react-aria/focus';\nimport { getInteractionModality, useHover, usePress } from '@react-aria/interactions';\nimport { focusWithoutScrolling, getScrollParent, mergeProps, scrollIntoViewport } from '@react-aria/utils';\nimport clsx from 'clsx';\nimport { type DOMAttributes, useEffect, useRef } from 'react';\nimport type { NativeElementProps } from '../../types.js';\nimport { textStyle } from '../../typography/utils.js';\nimport type { ViewGridCellData, ViewGridState } from './types.js';\n\n/** @internal */\nexport function ViewGridCell({ cellData, state }: { cellData: ViewGridCellData | null; state: ViewGridState }) {\n const ref = useRef<HTMLDivElement>(null);\n\n const isDisabled = cellData ? state.isDisabled || state.isCellDisabled(cellData.date) : true;\n const isSelected = cellData ? !isDisabled && state.isCellSelected(cellData.date) : false;\n const isTabbable = cellData ? state.isCellTabbable(cellData.date) : false;\n const isFocused = state.isFocused && isTabbable;\n\n const { pressProps, isPressed } = usePress({\n preventFocusOnPress: true,\n isDisabled: isDisabled || state.isReadOnly,\n onPress: () => {\n if (!state.isReadOnly && cellData) {\n state.setFocusedDate(cellData.date);\n state.selectFocusedDate();\n }\n },\n });\n\n let tabIndex: number | undefined = undefined;\n if (!isDisabled) {\n tabIndex = isTabbable ? 0 : -1;\n }\n\n // Focus the button in the DOM when the state updates.\n useEffect(() => {\n if (isFocused && ref.current) {\n focusWithoutScrolling(ref.current);\n\n // Scroll into view if navigating with a keyboard\n if (getInteractionModality() !== 'pointer' && document.activeElement === ref.current) {\n scrollIntoViewport(ref.current, { containingElement: getScrollParent(ref.current) });\n }\n }\n }, [isFocused]);\n\n const { hoverProps, isHovered } = useHover({ isDisabled });\n const { focusProps, isFocusVisible } = useFocusRing();\n\n const cellProps: NativeElementProps<HTMLTableCellElement> = {\n role: 'gridcell',\n 'aria-disabled': isDisabled || undefined,\n 'aria-selected': isSelected || undefined,\n };\n\n if (!cellData) {\n return <td {...cellProps} />;\n }\n\n const { date, content, ariaLabel, isCurrent } = cellData;\n\n const buttonProps = mergeProps(pressProps, hoverProps, focusProps, {\n onFocus() {\n if (!isDisabled) {\n state.setFocusedDate(date);\n }\n },\n tabIndex,\n role: 'button',\n 'aria-disabled': isDisabled || undefined,\n 'aria-label': ariaLabel,\n onContextMenu(e) {\n e.preventDefault();\n },\n } as DOMAttributes<HTMLDivElement>);\n\n return (\n <td {...cellProps}>\n <div\n {...buttonProps}\n ref={ref}\n className={clsx(\n 'cim-date-picker-calendar-cell',\n textStyle({ variant: isCurrent ? 'medium-semibold' : 'medium' }),\n )}\n data-disabled={isDisabled || undefined}\n data-hovered={isHovered || undefined}\n data-pressed={isPressed || undefined}\n data-selected={isSelected || undefined}\n data-focus-visible={(isFocusVisible && isFocused) || undefined}\n data-current={isCurrent || undefined}\n >\n {content}\n </div>\n </td>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=view-grid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-grid.d.ts","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/view-grid.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ViewGrid = ViewGrid;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const clsx_1 = __importDefault(require("clsx"));
9
+ const index_js_1 = require("../../../i18n/index.js");
10
+ const view_grid_cell_js_1 = require("./view-grid-cell.js");
11
+ /** @internal */
12
+ function ViewGrid({ state, className }) {
13
+ const { direction } = (0, index_js_1.useLocaleInfo)();
14
+ const onKeyDown = (e) => {
15
+ switch (e.key) {
16
+ case 'Enter':
17
+ case ' ':
18
+ e.preventDefault();
19
+ state.selectFocusedDate();
20
+ break;
21
+ case 'PageUp':
22
+ e.preventDefault();
23
+ e.stopPropagation();
24
+ state.focusPreviousSection(e.shiftKey);
25
+ break;
26
+ case 'PageDown':
27
+ e.preventDefault();
28
+ e.stopPropagation();
29
+ state.focusNextSection(e.shiftKey);
30
+ break;
31
+ case 'End':
32
+ e.preventDefault();
33
+ e.stopPropagation();
34
+ state.focusSectionEnd();
35
+ break;
36
+ case 'Home':
37
+ e.preventDefault();
38
+ e.stopPropagation();
39
+ state.focusSectionStart();
40
+ break;
41
+ case 'ArrowLeft':
42
+ e.preventDefault();
43
+ e.stopPropagation();
44
+ if (direction === 'rtl') {
45
+ state.focusNextItem();
46
+ }
47
+ else {
48
+ state.focusPreviousItem();
49
+ }
50
+ break;
51
+ case 'ArrowUp':
52
+ e.preventDefault();
53
+ e.stopPropagation();
54
+ state.focusPreviousRow();
55
+ break;
56
+ case 'ArrowRight':
57
+ e.preventDefault();
58
+ e.stopPropagation();
59
+ if (direction === 'rtl') {
60
+ state.focusPreviousItem();
61
+ }
62
+ else {
63
+ state.focusNextItem();
64
+ }
65
+ break;
66
+ case 'ArrowDown':
67
+ e.preventDefault();
68
+ e.stopPropagation();
69
+ state.focusNextRow();
70
+ break;
71
+ }
72
+ };
73
+ return ((0, jsx_runtime_1.jsx)("table", { role: "grid", className: (0, clsx_1.default)('cim-date-picker-view-grid', className), "aria-label": state.header, "aria-readonly": state.isReadOnly || undefined, "aria-disabled": state.isDisabled || undefined, onKeyDown: onKeyDown, onFocus: () => state.setIsFocused(true), onBlur: () => state.setIsFocused(false), children: (0, jsx_runtime_1.jsx)("tbody", { children: state.data.map((row, idx) => ((0, jsx_runtime_1.jsx)("tr", { children: row.map((cellData, idx) => ((0, jsx_runtime_1.jsx)(view_grid_cell_js_1.ViewGridCell, { cellData: cellData, state: state }, cellData?.ariaLabel ?? idx))) }, idx))) }) }));
74
+ }
75
+ //# sourceMappingURL=view-grid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-grid.js","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/view-grid.tsx"],"names":[],"mappings":"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","sourcesContent":["import clsx from 'clsx';\nimport type { KeyboardEvent } from 'react';\nimport { useLocaleInfo } from '../../../i18n/index.js';\nimport type { ViewGridState } from './types.js';\nimport { ViewGridCell } from './view-grid-cell.js';\n\n/** @internal */\nexport function ViewGrid({ state, className }: { state: ViewGridState; className?: string }) {\n const { direction } = useLocaleInfo();\n\n const onKeyDown = (e: KeyboardEvent) => {\n switch (e.key) {\n case 'Enter':\n case ' ':\n e.preventDefault();\n state.selectFocusedDate();\n break;\n case 'PageUp':\n e.preventDefault();\n e.stopPropagation();\n state.focusPreviousSection(e.shiftKey);\n break;\n case 'PageDown':\n e.preventDefault();\n e.stopPropagation();\n state.focusNextSection(e.shiftKey);\n break;\n case 'End':\n e.preventDefault();\n e.stopPropagation();\n state.focusSectionEnd();\n break;\n case 'Home':\n e.preventDefault();\n e.stopPropagation();\n state.focusSectionStart();\n break;\n case 'ArrowLeft':\n e.preventDefault();\n e.stopPropagation();\n if (direction === 'rtl') {\n state.focusNextItem();\n } else {\n state.focusPreviousItem();\n }\n break;\n case 'ArrowUp':\n e.preventDefault();\n e.stopPropagation();\n state.focusPreviousRow();\n break;\n case 'ArrowRight':\n e.preventDefault();\n e.stopPropagation();\n if (direction === 'rtl') {\n state.focusPreviousItem();\n } else {\n state.focusNextItem();\n }\n break;\n case 'ArrowDown':\n e.preventDefault();\n e.stopPropagation();\n state.focusNextRow();\n break;\n }\n };\n return (\n <table\n role=\"grid\"\n className={clsx('cim-date-picker-view-grid', className)}\n aria-label={state.header}\n aria-readonly={state.isReadOnly || undefined}\n aria-disabled={state.isDisabled || undefined}\n onKeyDown={onKeyDown}\n onFocus={() => state.setIsFocused(true)}\n onBlur={() => state.setIsFocused(false)}\n >\n <tbody>\n {state.data.map((row, idx) => (\n <tr key={idx}>\n {row.map((cellData, idx) => (\n <ViewGridCell cellData={cellData} key={cellData?.ariaLabel ?? idx} state={state} />\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=view-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-provider.d.ts","sourceRoot":"","sources":["../../../../../src/components/date-picker/views/view-provider.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DatePickerViewProvider = DatePickerViewProvider;
4
+ exports.useDatePickerView = useDatePickerView;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = require("react");
7
+ const DatePickerViewContext = (0, react_1.createContext)(null);
8
+ /** @internal */
9
+ function DatePickerViewProvider({ children, currentView, switchToView, focusedDate, setFocusedDate, }) {
10
+ return ((0, jsx_runtime_1.jsx)(DatePickerViewContext.Provider, { value: { currentView, switchToView, focusedDate, setFocusedDate }, children: children }));
11
+ }
12
+ /** @internal */
13
+ // eslint-disable-next-line react-refresh/only-export-components
14
+ function useDatePickerView() {
15
+ const state = (0, react_1.useContext)(DatePickerViewContext);
16
+ if (!state) {
17
+ throw new Error('Cannot use date picker view state outside of a date picker');
18
+ }
19
+ return state;
20
+ }
21
+ //# sourceMappingURL=view-provider.js.map