@bloomneo/uikit 1.5.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 (678) hide show
  1. package/CHANGELOG.md +222 -0
  2. package/LICENSE +21 -0
  3. package/README.md +513 -0
  4. package/bin/commands/build.js +232 -0
  5. package/bin/commands/bundle.js +587 -0
  6. package/bin/commands/create.js +768 -0
  7. package/bin/commands/deploy.js +533 -0
  8. package/bin/commands/generate.js +673 -0
  9. package/bin/commands/optimize.js +198 -0
  10. package/bin/commands/prerender.js +306 -0
  11. package/bin/commands/serve.js +216 -0
  12. package/bin/templates/fbca/README.md.template +130 -0
  13. package/bin/templates/fbca/docs/QUICKSTART_FBCA.md +368 -0
  14. package/bin/templates/fbca/docs/UIKIT_CLI_GUIDE.md +574 -0
  15. package/bin/templates/fbca/docs/UIKIT_COMPOSITE_UI_SYSTEM.md +649 -0
  16. package/bin/templates/fbca/docs/UIKIT_LLM_GUIDE.md +2055 -0
  17. package/bin/templates/fbca/docs/UIKIT_THEME_GUIDE.md +359 -0
  18. package/bin/templates/fbca/package.json.template +41 -0
  19. package/bin/templates/fbca/public/favicon.svg +10 -0
  20. package/bin/templates/fbca/public/hero_fbca.svg +1 -0
  21. package/bin/templates/fbca/src/utils/asset.ts +6 -0
  22. package/bin/templates/fbca/src/web/App.tsx.template +20 -0
  23. package/bin/templates/fbca/src/web/features/auth/pages/index.tsx.template +157 -0
  24. package/bin/templates/fbca/src/web/features/docs/pages/[...slug].tsx.template +83 -0
  25. package/bin/templates/fbca/src/web/features/gallery/hooks/useGallery.ts.template +74 -0
  26. package/bin/templates/fbca/src/web/features/gallery/pages/index.tsx.template +136 -0
  27. package/bin/templates/fbca/src/web/features/main/components/CTASection.tsx.template +43 -0
  28. package/bin/templates/fbca/src/web/features/main/pages/About.tsx.template +374 -0
  29. package/bin/templates/fbca/src/web/features/main/pages/index.tsx.template +214 -0
  30. package/bin/templates/fbca/src/web/index.html.template +15 -0
  31. package/bin/templates/fbca/src/web/lib/page-router.tsx.template +134 -0
  32. package/bin/templates/fbca/src/web/main.tsx.template +14 -0
  33. package/bin/templates/fbca/src/web/shared/components/Footer.tsx.template +57 -0
  34. package/bin/templates/fbca/src/web/shared/components/Header.tsx.template +91 -0
  35. package/bin/templates/fbca/src/web/shared/components/SEO.tsx.template +24 -0
  36. package/bin/templates/fbca/src/web/shared/components/index.ts.template +3 -0
  37. package/bin/templates/fbca/src/web/shared/hooks/useSEO.ts.template +85 -0
  38. package/bin/templates/fbca/src/web/shared/utils/asset.ts +6 -0
  39. package/bin/templates/fbca/src/web/styles/index.css.template +8 -0
  40. package/bin/templates/fbca/src/web/utils/asset.ts +6 -0
  41. package/bin/templates/fbca/tsconfig.json.template +32 -0
  42. package/bin/templates/fbca/tsconfig.node.json.template +10 -0
  43. package/bin/templates/fbca/vite.config.ts.template +38 -0
  44. package/bin/templates/generate/component/component.tsx.template +79 -0
  45. package/bin/templates/generate/component/index.ts.template +2 -0
  46. package/bin/templates/generate/component/types.ts.template +58 -0
  47. package/bin/templates/generate/feature/index.ts.template +14 -0
  48. package/bin/templates/generate/feature/list-page.tsx.template +34 -0
  49. package/bin/templates/generate/feature/main-component.tsx.template +37 -0
  50. package/bin/templates/generate/feature/main-page.tsx.template +30 -0
  51. package/bin/templates/generate/feature/types.ts.template +34 -0
  52. package/bin/templates/generate/hook/hook.ts.template +35 -0
  53. package/bin/templates/generate/index.css.template +10 -0
  54. package/bin/templates/generate/main.tsx.template +10 -0
  55. package/bin/templates/generate/page/index.ts.template +2 -0
  56. package/bin/templates/generate/page/page.tsx.template +86 -0
  57. package/bin/templates/generate/theme/README.md +31 -0
  58. package/bin/templates/generate/theme/theme.js.template +155 -0
  59. package/bin/templates/multi/README.md.template +120 -0
  60. package/bin/templates/multi/docs/QUICKSTART_MULTI.md +334 -0
  61. package/bin/templates/multi/docs/UIKIT_CLI_GUIDE.md +574 -0
  62. package/bin/templates/multi/docs/UIKIT_COMPOSITE_UI_SYSTEM.md +649 -0
  63. package/bin/templates/multi/docs/UIKIT_LLM_GUIDE.md +2055 -0
  64. package/bin/templates/multi/docs/UIKIT_THEME_GUIDE.md +359 -0
  65. package/bin/templates/multi/index.html.template +58 -0
  66. package/bin/templates/multi/package.json.template +35 -0
  67. package/bin/templates/multi/public/favicon.svg +10 -0
  68. package/bin/templates/multi/public/hero_multi.svg +1 -0
  69. package/bin/templates/multi/src/App.tsx.template +92 -0
  70. package/bin/templates/multi/src/components/Footer.tsx.template +58 -0
  71. package/bin/templates/multi/src/components/Header.tsx.template +103 -0
  72. package/bin/templates/multi/src/components/SEO.tsx.template +19 -0
  73. package/bin/templates/multi/src/components/index.ts.template +3 -0
  74. package/bin/templates/multi/src/hooks/useSEO.ts.template +38 -0
  75. package/bin/templates/multi/src/index.css.template +7 -0
  76. package/bin/templates/multi/src/main.tsx.template +14 -0
  77. package/bin/templates/multi/src/pages/About.tsx.template +276 -0
  78. package/bin/templates/multi/src/pages/Components.tsx.template +288 -0
  79. package/bin/templates/multi/src/pages/Contact.tsx.template +348 -0
  80. package/bin/templates/multi/src/pages/Dashboard.tsx.template +306 -0
  81. package/bin/templates/multi/src/pages/ErrorPage.tsx.template +37 -0
  82. package/bin/templates/multi/src/pages/Home.tsx.template +201 -0
  83. package/bin/templates/multi/src/pages/Login.tsx.template +148 -0
  84. package/bin/templates/multi/src/pages/Themes.tsx.template +207 -0
  85. package/bin/templates/multi/src/router.tsx.template +34 -0
  86. package/bin/templates/multi/src/utils/asset.ts +6 -0
  87. package/bin/templates/multi/tsconfig.json.template +30 -0
  88. package/bin/templates/multi/tsconfig.node.json +22 -0
  89. package/bin/templates/multi/vite.config.ts.template +36 -0
  90. package/bin/templates/single/README.md.template +131 -0
  91. package/bin/templates/single/docs/QUICKSTART_SINGLE.md +259 -0
  92. package/bin/templates/single/docs/UIKIT_CLI_GUIDE.md +574 -0
  93. package/bin/templates/single/docs/UIKIT_COMPOSITE_UI_SYSTEM.md +649 -0
  94. package/bin/templates/single/docs/UIKIT_LLM_GUIDE.md +2055 -0
  95. package/bin/templates/single/docs/UIKIT_THEME_GUIDE.md +359 -0
  96. package/bin/templates/single/index.html.template +37 -0
  97. package/bin/templates/single/package.json.template +34 -0
  98. package/bin/templates/single/public/favicon.svg +10 -0
  99. package/bin/templates/single/public/hero.svg +1 -0
  100. package/bin/templates/single/src/App.tsx.template +233 -0
  101. package/bin/templates/single/src/index.css.template +7 -0
  102. package/bin/templates/single/src/main.tsx.template +14 -0
  103. package/bin/templates/single/src/styles/fonts.css +99 -0
  104. package/bin/templates/single/src/utils/asset.ts +6 -0
  105. package/bin/templates/single/tsconfig.json +31 -0
  106. package/bin/templates/single/tsconfig.node.json +22 -0
  107. package/bin/templates/single/vite.config.ts.template +36 -0
  108. package/bin/templates/spa/README.md.template +105 -0
  109. package/bin/templates/spa/components/SEO.tsx.template +19 -0
  110. package/bin/templates/spa/docs/QUICKSTART_SPA.md +300 -0
  111. package/bin/templates/spa/docs/UIKIT_CLI_GUIDE.md +574 -0
  112. package/bin/templates/spa/docs/UIKIT_COMPOSITE_UI_SYSTEM.md +649 -0
  113. package/bin/templates/spa/docs/UIKIT_LLM_GUIDE.md +2055 -0
  114. package/bin/templates/spa/docs/UIKIT_THEME_GUIDE.md +359 -0
  115. package/bin/templates/spa/hooks/useSEO.ts.template +38 -0
  116. package/bin/templates/spa/index.html.template +58 -0
  117. package/bin/templates/spa/package.json.template +35 -0
  118. package/bin/templates/spa/public/favicon.svg +15 -0
  119. package/bin/templates/spa/public/hero_spa.svg +1 -0
  120. package/bin/templates/spa/src/App.tsx.template +659 -0
  121. package/bin/templates/spa/src/index.css.template +7 -0
  122. package/bin/templates/spa/src/main.tsx.template +14 -0
  123. package/bin/templates/spa/src/utils/asset.ts +6 -0
  124. package/bin/templates/spa/tsconfig.json.template +30 -0
  125. package/bin/templates/spa/tsconfig.node.json +22 -0
  126. package/bin/templates/spa/vite.config.ts.template +36 -0
  127. package/bin/uikit.js +133 -0
  128. package/cookbook/README.md +20 -0
  129. package/cookbook/crud-page.tsx +99 -0
  130. package/cookbook/dashboard.tsx +89 -0
  131. package/cookbook/delete-flow.tsx +59 -0
  132. package/cookbook/login.tsx +85 -0
  133. package/cookbook/settings.tsx +113 -0
  134. package/dist/Combination-C0DFrmJW.js +674 -0
  135. package/dist/Combination-C0DFrmJW.js.map +1 -0
  136. package/dist/accordion.js +284 -0
  137. package/dist/accordion.js.map +1 -0
  138. package/dist/admin.js +429 -0
  139. package/dist/admin.js.map +1 -0
  140. package/dist/alert.js +67 -0
  141. package/dist/alert.js.map +1 -0
  142. package/dist/auth.js +178 -0
  143. package/dist/auth.js.map +1 -0
  144. package/dist/avatar.js +249 -0
  145. package/dist/avatar.js.map +1 -0
  146. package/dist/badge.js +40 -0
  147. package/dist/badge.js.map +1 -0
  148. package/dist/blank.js +80 -0
  149. package/dist/blank.js.map +1 -0
  150. package/dist/breadcrumb.js +104 -0
  151. package/dist/breadcrumb.js.map +1 -0
  152. package/dist/button.js +50 -0
  153. package/dist/button.js.map +1 -0
  154. package/dist/calendar.js +2785 -0
  155. package/dist/calendar.js.map +1 -0
  156. package/dist/card.js +91 -0
  157. package/dist/card.js.map +1 -0
  158. package/dist/check-DXouwtzp.js +12 -0
  159. package/dist/check-DXouwtzp.js.map +1 -0
  160. package/dist/checkbox.js +268 -0
  161. package/dist/checkbox.js.map +1 -0
  162. package/dist/chevron-down-BORJtX8F.js +14 -0
  163. package/dist/chevron-down-BORJtX8F.js.map +1 -0
  164. package/dist/chevron-left-C1pkx4AF.js +14 -0
  165. package/dist/chevron-left-C1pkx4AF.js.map +1 -0
  166. package/dist/chevron-right-pz9eCjj-.js +14 -0
  167. package/dist/chevron-right-pz9eCjj-.js.map +1 -0
  168. package/dist/circle-DHOdTDQh.js +14 -0
  169. package/dist/circle-DHOdTDQh.js.map +1 -0
  170. package/dist/collapsible.js +35 -0
  171. package/dist/collapsible.js.map +1 -0
  172. package/dist/command.js +481 -0
  173. package/dist/command.js.map +1 -0
  174. package/dist/confirm-dialog.js +129 -0
  175. package/dist/confirm-dialog.js.map +1 -0
  176. package/dist/container.js +334 -0
  177. package/dist/container.js.map +1 -0
  178. package/dist/createLucideIcon-B45kRl5r.js +80 -0
  179. package/dist/createLucideIcon-B45kRl5r.js.map +1 -0
  180. package/dist/data-table.js +574 -0
  181. package/dist/data-table.js.map +1 -0
  182. package/dist/detail-page.js +454 -0
  183. package/dist/detail-page.js.map +1 -0
  184. package/dist/dialog.js +137 -0
  185. package/dist/dialog.js.map +1 -0
  186. package/dist/dropdown-menu.js +424 -0
  187. package/dist/dropdown-menu.js.map +1 -0
  188. package/dist/ellipsis-BhAoKPVk.js +16 -0
  189. package/dist/ellipsis-BhAoKPVk.js.map +1 -0
  190. package/dist/empty-state.js +54 -0
  191. package/dist/empty-state.js.map +1 -0
  192. package/dist/errors.js +36 -0
  193. package/dist/errors.js.map +1 -0
  194. package/dist/eye-DDKoW0KS.js +46 -0
  195. package/dist/eye-DDKoW0KS.js.map +1 -0
  196. package/dist/fonts/caveat-cyrillic-400-normal.woff +0 -0
  197. package/dist/fonts/caveat-cyrillic-400-normal.woff2 +0 -0
  198. package/dist/fonts/caveat-cyrillic-700-normal.woff +0 -0
  199. package/dist/fonts/caveat-cyrillic-700-normal.woff2 +0 -0
  200. package/dist/fonts/caveat-cyrillic-ext-400-normal.woff +0 -0
  201. package/dist/fonts/caveat-cyrillic-ext-400-normal.woff2 +0 -0
  202. package/dist/fonts/caveat-cyrillic-ext-700-normal.woff +0 -0
  203. package/dist/fonts/caveat-cyrillic-ext-700-normal.woff2 +0 -0
  204. package/dist/fonts/caveat-latin-400-normal.woff +0 -0
  205. package/dist/fonts/caveat-latin-400-normal.woff2 +0 -0
  206. package/dist/fonts/caveat-latin-700-normal.woff +0 -0
  207. package/dist/fonts/caveat-latin-700-normal.woff2 +0 -0
  208. package/dist/fonts/caveat-latin-ext-400-normal.woff +0 -0
  209. package/dist/fonts/caveat-latin-ext-400-normal.woff2 +0 -0
  210. package/dist/fonts/caveat-latin-ext-700-normal.woff +0 -0
  211. package/dist/fonts/caveat-latin-ext-700-normal.woff2 +0 -0
  212. package/dist/fonts/crimson-text-latin-400-normal.woff +0 -0
  213. package/dist/fonts/crimson-text-latin-400-normal.woff2 +0 -0
  214. package/dist/fonts/crimson-text-latin-600-normal.woff +0 -0
  215. package/dist/fonts/crimson-text-latin-600-normal.woff2 +0 -0
  216. package/dist/fonts/crimson-text-latin-700-normal.woff +0 -0
  217. package/dist/fonts/crimson-text-latin-700-normal.woff2 +0 -0
  218. package/dist/fonts/crimson-text-latin-ext-400-normal.woff +0 -0
  219. package/dist/fonts/crimson-text-latin-ext-400-normal.woff2 +0 -0
  220. package/dist/fonts/crimson-text-latin-ext-600-normal.woff +0 -0
  221. package/dist/fonts/crimson-text-latin-ext-600-normal.woff2 +0 -0
  222. package/dist/fonts/crimson-text-latin-ext-700-normal.woff +0 -0
  223. package/dist/fonts/crimson-text-latin-ext-700-normal.woff2 +0 -0
  224. package/dist/fonts/crimson-text-vietnamese-400-normal.woff +0 -0
  225. package/dist/fonts/crimson-text-vietnamese-400-normal.woff2 +0 -0
  226. package/dist/fonts/crimson-text-vietnamese-600-normal.woff +0 -0
  227. package/dist/fonts/crimson-text-vietnamese-600-normal.woff2 +0 -0
  228. package/dist/fonts/crimson-text-vietnamese-700-normal.woff +0 -0
  229. package/dist/fonts/crimson-text-vietnamese-700-normal.woff2 +0 -0
  230. package/dist/fonts/dm-serif-display-latin-400-normal.woff +0 -0
  231. package/dist/fonts/dm-serif-display-latin-400-normal.woff2 +0 -0
  232. package/dist/fonts/dm-serif-display-latin-ext-400-normal.woff +0 -0
  233. package/dist/fonts/dm-serif-display-latin-ext-400-normal.woff2 +0 -0
  234. package/dist/fonts/libre-baskerville-latin-400-normal.woff +0 -0
  235. package/dist/fonts/libre-baskerville-latin-400-normal.woff2 +0 -0
  236. package/dist/fonts/libre-baskerville-latin-700-normal.woff +0 -0
  237. package/dist/fonts/libre-baskerville-latin-700-normal.woff2 +0 -0
  238. package/dist/fonts/libre-baskerville-latin-ext-400-normal.woff +0 -0
  239. package/dist/fonts/libre-baskerville-latin-ext-400-normal.woff2 +0 -0
  240. package/dist/fonts/libre-baskerville-latin-ext-700-normal.woff +0 -0
  241. package/dist/fonts/libre-baskerville-latin-ext-700-normal.woff2 +0 -0
  242. package/dist/fonts/montserrat-cyrillic-400-normal.woff +0 -0
  243. package/dist/fonts/montserrat-cyrillic-400-normal.woff2 +0 -0
  244. package/dist/fonts/montserrat-cyrillic-500-normal.woff +0 -0
  245. package/dist/fonts/montserrat-cyrillic-500-normal.woff2 +0 -0
  246. package/dist/fonts/montserrat-cyrillic-600-normal.woff +0 -0
  247. package/dist/fonts/montserrat-cyrillic-600-normal.woff2 +0 -0
  248. package/dist/fonts/montserrat-cyrillic-ext-400-normal.woff +0 -0
  249. package/dist/fonts/montserrat-cyrillic-ext-400-normal.woff2 +0 -0
  250. package/dist/fonts/montserrat-cyrillic-ext-500-normal.woff +0 -0
  251. package/dist/fonts/montserrat-cyrillic-ext-500-normal.woff2 +0 -0
  252. package/dist/fonts/montserrat-cyrillic-ext-600-normal.woff +0 -0
  253. package/dist/fonts/montserrat-cyrillic-ext-600-normal.woff2 +0 -0
  254. package/dist/fonts/montserrat-latin-400-normal.woff +0 -0
  255. package/dist/fonts/montserrat-latin-400-normal.woff2 +0 -0
  256. package/dist/fonts/montserrat-latin-500-normal.woff +0 -0
  257. package/dist/fonts/montserrat-latin-500-normal.woff2 +0 -0
  258. package/dist/fonts/montserrat-latin-600-normal.woff +0 -0
  259. package/dist/fonts/montserrat-latin-600-normal.woff2 +0 -0
  260. package/dist/fonts/montserrat-latin-ext-400-normal.woff +0 -0
  261. package/dist/fonts/montserrat-latin-ext-400-normal.woff2 +0 -0
  262. package/dist/fonts/montserrat-latin-ext-500-normal.woff +0 -0
  263. package/dist/fonts/montserrat-latin-ext-500-normal.woff2 +0 -0
  264. package/dist/fonts/montserrat-latin-ext-600-normal.woff +0 -0
  265. package/dist/fonts/montserrat-latin-ext-600-normal.woff2 +0 -0
  266. package/dist/fonts/montserrat-vietnamese-400-normal.woff +0 -0
  267. package/dist/fonts/montserrat-vietnamese-400-normal.woff2 +0 -0
  268. package/dist/fonts/montserrat-vietnamese-500-normal.woff +0 -0
  269. package/dist/fonts/montserrat-vietnamese-500-normal.woff2 +0 -0
  270. package/dist/fonts/montserrat-vietnamese-600-normal.woff +0 -0
  271. package/dist/fonts/montserrat-vietnamese-600-normal.woff2 +0 -0
  272. package/dist/fonts/playfair-display-cyrillic-400-normal.woff +0 -0
  273. package/dist/fonts/playfair-display-cyrillic-400-normal.woff2 +0 -0
  274. package/dist/fonts/playfair-display-cyrillic-500-normal.woff +0 -0
  275. package/dist/fonts/playfair-display-cyrillic-500-normal.woff2 +0 -0
  276. package/dist/fonts/playfair-display-latin-400-normal.woff +0 -0
  277. package/dist/fonts/playfair-display-latin-400-normal.woff2 +0 -0
  278. package/dist/fonts/playfair-display-latin-500-normal.woff +0 -0
  279. package/dist/fonts/playfair-display-latin-500-normal.woff2 +0 -0
  280. package/dist/fonts/playfair-display-latin-ext-400-normal.woff +0 -0
  281. package/dist/fonts/playfair-display-latin-ext-400-normal.woff2 +0 -0
  282. package/dist/fonts/playfair-display-latin-ext-500-normal.woff +0 -0
  283. package/dist/fonts/playfair-display-latin-ext-500-normal.woff2 +0 -0
  284. package/dist/fonts/playfair-display-vietnamese-400-normal.woff +0 -0
  285. package/dist/fonts/playfair-display-vietnamese-400-normal.woff2 +0 -0
  286. package/dist/fonts/playfair-display-vietnamese-500-normal.woff +0 -0
  287. package/dist/fonts/playfair-display-vietnamese-500-normal.woff2 +0 -0
  288. package/dist/fonts/poppins-devanagari-400-normal.woff +0 -0
  289. package/dist/fonts/poppins-devanagari-400-normal.woff2 +0 -0
  290. package/dist/fonts/poppins-devanagari-500-normal.woff +0 -0
  291. package/dist/fonts/poppins-devanagari-500-normal.woff2 +0 -0
  292. package/dist/fonts/poppins-devanagari-600-normal.woff +0 -0
  293. package/dist/fonts/poppins-devanagari-600-normal.woff2 +0 -0
  294. package/dist/fonts/poppins-latin-400-normal.woff +0 -0
  295. package/dist/fonts/poppins-latin-400-normal.woff2 +0 -0
  296. package/dist/fonts/poppins-latin-500-normal.woff +0 -0
  297. package/dist/fonts/poppins-latin-500-normal.woff2 +0 -0
  298. package/dist/fonts/poppins-latin-600-normal.woff +0 -0
  299. package/dist/fonts/poppins-latin-600-normal.woff2 +0 -0
  300. package/dist/fonts/poppins-latin-ext-400-normal.woff +0 -0
  301. package/dist/fonts/poppins-latin-ext-400-normal.woff2 +0 -0
  302. package/dist/fonts/poppins-latin-ext-500-normal.woff +0 -0
  303. package/dist/fonts/poppins-latin-ext-500-normal.woff2 +0 -0
  304. package/dist/fonts/poppins-latin-ext-600-normal.woff +0 -0
  305. package/dist/fonts/poppins-latin-ext-600-normal.woff2 +0 -0
  306. package/dist/fonts/rubik-arabic-400-normal.woff +0 -0
  307. package/dist/fonts/rubik-arabic-400-normal.woff2 +0 -0
  308. package/dist/fonts/rubik-arabic-500-normal.woff +0 -0
  309. package/dist/fonts/rubik-arabic-500-normal.woff2 +0 -0
  310. package/dist/fonts/rubik-cyrillic-400-normal.woff +0 -0
  311. package/dist/fonts/rubik-cyrillic-400-normal.woff2 +0 -0
  312. package/dist/fonts/rubik-cyrillic-500-normal.woff +0 -0
  313. package/dist/fonts/rubik-cyrillic-500-normal.woff2 +0 -0
  314. package/dist/fonts/rubik-cyrillic-ext-400-normal.woff +0 -0
  315. package/dist/fonts/rubik-cyrillic-ext-400-normal.woff2 +0 -0
  316. package/dist/fonts/rubik-cyrillic-ext-500-normal.woff +0 -0
  317. package/dist/fonts/rubik-cyrillic-ext-500-normal.woff2 +0 -0
  318. package/dist/fonts/rubik-hebrew-400-normal.woff +0 -0
  319. package/dist/fonts/rubik-hebrew-400-normal.woff2 +0 -0
  320. package/dist/fonts/rubik-hebrew-500-normal.woff +0 -0
  321. package/dist/fonts/rubik-hebrew-500-normal.woff2 +0 -0
  322. package/dist/fonts/rubik-latin-400-normal.woff +0 -0
  323. package/dist/fonts/rubik-latin-400-normal.woff2 +0 -0
  324. package/dist/fonts/rubik-latin-500-normal.woff +0 -0
  325. package/dist/fonts/rubik-latin-500-normal.woff2 +0 -0
  326. package/dist/fonts/rubik-latin-ext-400-normal.woff +0 -0
  327. package/dist/fonts/rubik-latin-ext-400-normal.woff2 +0 -0
  328. package/dist/fonts/rubik-latin-ext-500-normal.woff +0 -0
  329. package/dist/fonts/rubik-latin-ext-500-normal.woff2 +0 -0
  330. package/dist/fonts/source-serif-pro-cyrillic-400-normal.woff +0 -0
  331. package/dist/fonts/source-serif-pro-cyrillic-400-normal.woff2 +0 -0
  332. package/dist/fonts/source-serif-pro-cyrillic-ext-400-normal.woff +0 -0
  333. package/dist/fonts/source-serif-pro-cyrillic-ext-400-normal.woff2 +0 -0
  334. package/dist/fonts/source-serif-pro-greek-400-normal.woff +0 -0
  335. package/dist/fonts/source-serif-pro-greek-400-normal.woff2 +0 -0
  336. package/dist/fonts/source-serif-pro-latin-400-normal.woff +0 -0
  337. package/dist/fonts/source-serif-pro-latin-400-normal.woff2 +0 -0
  338. package/dist/fonts/source-serif-pro-latin-ext-400-normal.woff +0 -0
  339. package/dist/fonts/source-serif-pro-latin-ext-400-normal.woff2 +0 -0
  340. package/dist/fonts/source-serif-pro-vietnamese-400-normal.woff +0 -0
  341. package/dist/fonts/source-serif-pro-vietnamese-400-normal.woff2 +0 -0
  342. package/dist/fonts/space-grotesk-latin-400-normal.woff +0 -0
  343. package/dist/fonts/space-grotesk-latin-400-normal.woff2 +0 -0
  344. package/dist/fonts/space-grotesk-latin-600-normal.woff +0 -0
  345. package/dist/fonts/space-grotesk-latin-600-normal.woff2 +0 -0
  346. package/dist/fonts/space-grotesk-latin-700-normal.woff +0 -0
  347. package/dist/fonts/space-grotesk-latin-700-normal.woff2 +0 -0
  348. package/dist/fonts/space-grotesk-latin-ext-400-normal.woff +0 -0
  349. package/dist/fonts/space-grotesk-latin-ext-400-normal.woff2 +0 -0
  350. package/dist/fonts/space-grotesk-latin-ext-600-normal.woff +0 -0
  351. package/dist/fonts/space-grotesk-latin-ext-600-normal.woff2 +0 -0
  352. package/dist/fonts/space-grotesk-latin-ext-700-normal.woff +0 -0
  353. package/dist/fonts/space-grotesk-latin-ext-700-normal.woff2 +0 -0
  354. package/dist/fonts/space-grotesk-vietnamese-400-normal.woff +0 -0
  355. package/dist/fonts/space-grotesk-vietnamese-400-normal.woff2 +0 -0
  356. package/dist/fonts/space-grotesk-vietnamese-600-normal.woff +0 -0
  357. package/dist/fonts/space-grotesk-vietnamese-600-normal.woff2 +0 -0
  358. package/dist/fonts/space-grotesk-vietnamese-700-normal.woff +0 -0
  359. package/dist/fonts/space-grotesk-vietnamese-700-normal.woff2 +0 -0
  360. package/dist/fonts/work-sans-latin-400-normal.woff +0 -0
  361. package/dist/fonts/work-sans-latin-400-normal.woff2 +0 -0
  362. package/dist/fonts/work-sans-latin-500-normal.woff +0 -0
  363. package/dist/fonts/work-sans-latin-500-normal.woff2 +0 -0
  364. package/dist/fonts/work-sans-latin-ext-400-normal.woff +0 -0
  365. package/dist/fonts/work-sans-latin-ext-400-normal.woff2 +0 -0
  366. package/dist/fonts/work-sans-latin-ext-500-normal.woff +0 -0
  367. package/dist/fonts/work-sans-latin-ext-500-normal.woff2 +0 -0
  368. package/dist/fonts/work-sans-vietnamese-400-normal.woff +0 -0
  369. package/dist/fonts/work-sans-vietnamese-400-normal.woff2 +0 -0
  370. package/dist/fonts/work-sans-vietnamese-500-normal.woff +0 -0
  371. package/dist/fonts/work-sans-vietnamese-500-normal.woff2 +0 -0
  372. package/dist/footer.js +308 -0
  373. package/dist/footer.js.map +1 -0
  374. package/dist/form-field.js +69 -0
  375. package/dist/form-field.js.map +1 -0
  376. package/dist/form.js +732 -0
  377. package/dist/form.js.map +1 -0
  378. package/dist/format.js +112 -0
  379. package/dist/format.js.map +1 -0
  380. package/dist/fouc.js +28 -0
  381. package/dist/fouc.js.map +1 -0
  382. package/dist/header.js +289 -0
  383. package/dist/header.js.map +1 -0
  384. package/dist/hooks.js +13 -0
  385. package/dist/hooks.js.map +1 -0
  386. package/dist/hover-card.js +210 -0
  387. package/dist/hover-card.js.map +1 -0
  388. package/dist/index-0ioNhtNM.js +11 -0
  389. package/dist/index-0ioNhtNM.js.map +1 -0
  390. package/dist/index-1QHKgw6D.js +55 -0
  391. package/dist/index-1QHKgw6D.js.map +1 -0
  392. package/dist/index-B6sSWi7l.js +747 -0
  393. package/dist/index-B6sSWi7l.js.map +1 -0
  394. package/dist/index-BCjJQGh8.js +71 -0
  395. package/dist/index-BCjJQGh8.js.map +1 -0
  396. package/dist/index-BGQepRFJ.js +28 -0
  397. package/dist/index-BGQepRFJ.js.map +1 -0
  398. package/dist/index-BVRIAMfe.js +37 -0
  399. package/dist/index-BVRIAMfe.js.map +1 -0
  400. package/dist/index-BY7PeRJA.js +145 -0
  401. package/dist/index-BY7PeRJA.js.map +1 -0
  402. package/dist/index-BZPx6jYI.js +9 -0
  403. package/dist/index-BZPx6jYI.js.map +1 -0
  404. package/dist/index-Ba4eHUBD.js +243 -0
  405. package/dist/index-Ba4eHUBD.js.map +1 -0
  406. package/dist/index-Bke1qZdk.js +35 -0
  407. package/dist/index-Bke1qZdk.js.map +1 -0
  408. package/dist/index-C0UREtMP.js +60 -0
  409. package/dist/index-C0UREtMP.js.map +1 -0
  410. package/dist/index-CCKe-Mpx.js +7 -0
  411. package/dist/index-CCKe-Mpx.js.map +1 -0
  412. package/dist/index-DFZozV_h.js +69 -0
  413. package/dist/index-DFZozV_h.js.map +1 -0
  414. package/dist/index-DFi6WydO.js +180 -0
  415. package/dist/index-DFi6WydO.js.map +1 -0
  416. package/dist/index-DQH6odE9.js +83 -0
  417. package/dist/index-DQH6odE9.js.map +1 -0
  418. package/dist/index-EO5flKM3.js +119 -0
  419. package/dist/index-EO5flKM3.js.map +1 -0
  420. package/dist/index-Lf7yDOXW.js +615 -0
  421. package/dist/index-Lf7yDOXW.js.map +1 -0
  422. package/dist/index-dhIqEbxW.js +1541 -0
  423. package/dist/index-dhIqEbxW.js.map +1 -0
  424. package/dist/index-pWhlqjff.js +32 -0
  425. package/dist/index-pWhlqjff.js.map +1 -0
  426. package/dist/index-rKs9bXHr.js +7 -0
  427. package/dist/index-rKs9bXHr.js.map +1 -0
  428. package/dist/index-xqkGMOJ8.js +14 -0
  429. package/dist/index-xqkGMOJ8.js.map +1 -0
  430. package/dist/index.js +247 -0
  431. package/dist/index.js.map +1 -0
  432. package/dist/input.js +22 -0
  433. package/dist/input.js.map +1 -0
  434. package/dist/label.js +36 -0
  435. package/dist/label.js.map +1 -0
  436. package/dist/layout-wrapper.js +208 -0
  437. package/dist/layout-wrapper.js.map +1 -0
  438. package/dist/llms.txt +1140 -0
  439. package/dist/menu-DBhEanGo.js +16 -0
  440. package/dist/menu-DBhEanGo.js.map +1 -0
  441. package/dist/menubar.js +565 -0
  442. package/dist/menubar.js.map +1 -0
  443. package/dist/mobile.js +183 -0
  444. package/dist/mobile.js.map +1 -0
  445. package/dist/motion.js +119 -0
  446. package/dist/motion.js.map +1 -0
  447. package/dist/page-header.js +47 -0
  448. package/dist/page-header.js.map +1 -0
  449. package/dist/page.js +214 -0
  450. package/dist/page.js.map +1 -0
  451. package/dist/pagination.js +121 -0
  452. package/dist/pagination.js.map +1 -0
  453. package/dist/platform.js +194 -0
  454. package/dist/platform.js.map +1 -0
  455. package/dist/popover.js +263 -0
  456. package/dist/popover.js.map +1 -0
  457. package/dist/popup.js +335 -0
  458. package/dist/popup.js.map +1 -0
  459. package/dist/progress.js +108 -0
  460. package/dist/progress.js.map +1 -0
  461. package/dist/radio-group.js +272 -0
  462. package/dist/radio-group.js.map +1 -0
  463. package/dist/safe-area.js +42 -0
  464. package/dist/safe-area.js.map +1 -0
  465. package/dist/search-CpUwRnG-.js +15 -0
  466. package/dist/search-CpUwRnG-.js.map +1 -0
  467. package/dist/select.js +985 -0
  468. package/dist/select.js.map +1 -0
  469. package/dist/separator.js +45 -0
  470. package/dist/separator.js.map +1 -0
  471. package/dist/sheet.js +127 -0
  472. package/dist/sheet.js.map +1 -0
  473. package/dist/skeleton.js +16 -0
  474. package/dist/skeleton.js.map +1 -0
  475. package/dist/slider.js +485 -0
  476. package/dist/slider.js.map +1 -0
  477. package/dist/sonner.js +52 -0
  478. package/dist/sonner.js.map +1 -0
  479. package/dist/styles/fonts.css +253 -0
  480. package/dist/styles.css +2 -0
  481. package/dist/switch.js +155 -0
  482. package/dist/switch.js.map +1 -0
  483. package/dist/tab-bar.js +110 -0
  484. package/dist/tab-bar.js.map +1 -0
  485. package/dist/table.js +115 -0
  486. package/dist/table.js.map +1 -0
  487. package/dist/tabs.js +218 -0
  488. package/dist/tabs.js.map +1 -0
  489. package/dist/textarea.js +19 -0
  490. package/dist/textarea.js.map +1 -0
  491. package/dist/theme-provider.js +154 -0
  492. package/dist/theme-provider.js.map +1 -0
  493. package/dist/themes.js +873 -0
  494. package/dist/themes.js.map +1 -0
  495. package/dist/toast.js +63 -0
  496. package/dist/toast.js.map +1 -0
  497. package/dist/toggle.js +70 -0
  498. package/dist/toggle.js.map +1 -0
  499. package/dist/tooltip.js +375 -0
  500. package/dist/tooltip.js.map +1 -0
  501. package/dist/types/App.d.ts +3 -0
  502. package/dist/types/App.d.ts.map +1 -0
  503. package/dist/types/components/layouts/admin.d.ts +117 -0
  504. package/dist/types/components/layouts/admin.d.ts.map +1 -0
  505. package/dist/types/components/layouts/auth.d.ts +17 -0
  506. package/dist/types/components/layouts/auth.d.ts.map +1 -0
  507. package/dist/types/components/layouts/blank.d.ts +63 -0
  508. package/dist/types/components/layouts/blank.d.ts.map +1 -0
  509. package/dist/types/components/layouts/layout-wrapper.d.ts +130 -0
  510. package/dist/types/components/layouts/layout-wrapper.d.ts.map +1 -0
  511. package/dist/types/components/layouts/mobile.d.ts +91 -0
  512. package/dist/types/components/layouts/mobile.d.ts.map +1 -0
  513. package/dist/types/components/layouts/page.d.ts +181 -0
  514. package/dist/types/components/layouts/page.d.ts.map +1 -0
  515. package/dist/types/components/layouts/popup.d.ts +100 -0
  516. package/dist/types/components/layouts/popup.d.ts.map +1 -0
  517. package/dist/types/components/sections/container.d.ts +79 -0
  518. package/dist/types/components/sections/container.d.ts.map +1 -0
  519. package/dist/types/components/sections/footer.d.ts +128 -0
  520. package/dist/types/components/sections/footer.d.ts.map +1 -0
  521. package/dist/types/components/sections/header.d.ts +72 -0
  522. package/dist/types/components/sections/header.d.ts.map +1 -0
  523. package/dist/types/components/sections/safe-area.d.ts +46 -0
  524. package/dist/types/components/sections/safe-area.d.ts.map +1 -0
  525. package/dist/types/components/sections/tab-bar.d.ts +61 -0
  526. package/dist/types/components/sections/tab-bar.d.ts.map +1 -0
  527. package/dist/types/components/ui/accordion.d.ts +8 -0
  528. package/dist/types/components/ui/accordion.d.ts.map +1 -0
  529. package/dist/types/components/ui/alert.d.ts +10 -0
  530. package/dist/types/components/ui/alert.d.ts.map +1 -0
  531. package/dist/types/components/ui/avatar.d.ts +7 -0
  532. package/dist/types/components/ui/avatar.d.ts.map +1 -0
  533. package/dist/types/components/ui/badge.d.ts +10 -0
  534. package/dist/types/components/ui/badge.d.ts.map +1 -0
  535. package/dist/types/components/ui/breadcrumb.d.ts +12 -0
  536. package/dist/types/components/ui/breadcrumb.d.ts.map +1 -0
  537. package/dist/types/components/ui/button.d.ts +11 -0
  538. package/dist/types/components/ui/button.d.ts.map +1 -0
  539. package/dist/types/components/ui/calendar.d.ts +9 -0
  540. package/dist/types/components/ui/calendar.d.ts.map +1 -0
  541. package/dist/types/components/ui/card.d.ts +10 -0
  542. package/dist/types/components/ui/card.d.ts.map +1 -0
  543. package/dist/types/components/ui/checkbox.d.ts +5 -0
  544. package/dist/types/components/ui/checkbox.d.ts.map +1 -0
  545. package/dist/types/components/ui/collapsible.d.ts +6 -0
  546. package/dist/types/components/ui/collapsible.d.ts.map +1 -0
  547. package/dist/types/components/ui/command.d.ts +19 -0
  548. package/dist/types/components/ui/command.d.ts.map +1 -0
  549. package/dist/types/components/ui/confirm-dialog.d.ts +72 -0
  550. package/dist/types/components/ui/confirm-dialog.d.ts.map +1 -0
  551. package/dist/types/components/ui/data-table.d.ts +211 -0
  552. package/dist/types/components/ui/data-table.d.ts.map +1 -0
  553. package/dist/types/components/ui/detail-page.d.ts +119 -0
  554. package/dist/types/components/ui/detail-page.d.ts.map +1 -0
  555. package/dist/types/components/ui/dialog.d.ts +16 -0
  556. package/dist/types/components/ui/dialog.d.ts.map +1 -0
  557. package/dist/types/components/ui/dropdown-menu.d.ts +26 -0
  558. package/dist/types/components/ui/dropdown-menu.d.ts.map +1 -0
  559. package/dist/types/components/ui/empty-state.d.ts +30 -0
  560. package/dist/types/components/ui/empty-state.d.ts.map +1 -0
  561. package/dist/types/components/ui/form-field.d.ts +57 -0
  562. package/dist/types/components/ui/form-field.d.ts.map +1 -0
  563. package/dist/types/components/ui/form.d.ts +185 -0
  564. package/dist/types/components/ui/form.d.ts.map +1 -0
  565. package/dist/types/components/ui/hover-card.d.ts +7 -0
  566. package/dist/types/components/ui/hover-card.d.ts.map +1 -0
  567. package/dist/types/components/ui/input.d.ts +4 -0
  568. package/dist/types/components/ui/input.d.ts.map +1 -0
  569. package/dist/types/components/ui/label.d.ts +5 -0
  570. package/dist/types/components/ui/label.d.ts.map +1 -0
  571. package/dist/types/components/ui/menubar.d.ts +27 -0
  572. package/dist/types/components/ui/menubar.d.ts.map +1 -0
  573. package/dist/types/components/ui/motion.d.ts +130 -0
  574. package/dist/types/components/ui/motion.d.ts.map +1 -0
  575. package/dist/types/components/ui/page-header.d.ts +45 -0
  576. package/dist/types/components/ui/page-header.d.ts.map +1 -0
  577. package/dist/types/components/ui/pagination.d.ts +14 -0
  578. package/dist/types/components/ui/pagination.d.ts.map +1 -0
  579. package/dist/types/components/ui/popover.d.ts +8 -0
  580. package/dist/types/components/ui/popover.d.ts.map +1 -0
  581. package/dist/types/components/ui/progress.d.ts +5 -0
  582. package/dist/types/components/ui/progress.d.ts.map +1 -0
  583. package/dist/types/components/ui/radio-group.d.ts +6 -0
  584. package/dist/types/components/ui/radio-group.d.ts.map +1 -0
  585. package/dist/types/components/ui/select.d.ts +16 -0
  586. package/dist/types/components/ui/select.d.ts.map +1 -0
  587. package/dist/types/components/ui/separator.d.ts +5 -0
  588. package/dist/types/components/ui/separator.d.ts.map +1 -0
  589. package/dist/types/components/ui/sheet.d.ts +14 -0
  590. package/dist/types/components/ui/sheet.d.ts.map +1 -0
  591. package/dist/types/components/ui/skeleton.d.ts +3 -0
  592. package/dist/types/components/ui/skeleton.d.ts.map +1 -0
  593. package/dist/types/components/ui/slider.d.ts +5 -0
  594. package/dist/types/components/ui/slider.d.ts.map +1 -0
  595. package/dist/types/components/ui/sonner.d.ts +4 -0
  596. package/dist/types/components/ui/sonner.d.ts.map +1 -0
  597. package/dist/types/components/ui/switch.d.ts +5 -0
  598. package/dist/types/components/ui/switch.d.ts.map +1 -0
  599. package/dist/types/components/ui/table.d.ts +11 -0
  600. package/dist/types/components/ui/table.d.ts.map +1 -0
  601. package/dist/types/components/ui/tabs.d.ts +8 -0
  602. package/dist/types/components/ui/tabs.d.ts.map +1 -0
  603. package/dist/types/components/ui/textarea.d.ts +4 -0
  604. package/dist/types/components/ui/textarea.d.ts.map +1 -0
  605. package/dist/types/components/ui/toast.d.ts +70 -0
  606. package/dist/types/components/ui/toast.d.ts.map +1 -0
  607. package/dist/types/components/ui/toggle.d.ts +10 -0
  608. package/dist/types/components/ui/toggle.d.ts.map +1 -0
  609. package/dist/types/components/ui/tooltip.d.ts +8 -0
  610. package/dist/types/components/ui/tooltip.d.ts.map +1 -0
  611. package/dist/types/hooks/index.d.ts +14 -0
  612. package/dist/types/hooks/index.d.ts.map +1 -0
  613. package/dist/types/hooks/useApi.d.ts +38 -0
  614. package/dist/types/hooks/useApi.d.ts.map +1 -0
  615. package/dist/types/hooks/useBreakpoint.d.ts +35 -0
  616. package/dist/types/hooks/useBreakpoint.d.ts.map +1 -0
  617. package/dist/types/hooks/useDataTable.d.ts +59 -0
  618. package/dist/types/hooks/useDataTable.d.ts.map +1 -0
  619. package/dist/types/hooks/useMediaQuery.d.ts +12 -0
  620. package/dist/types/hooks/useMediaQuery.d.ts.map +1 -0
  621. package/dist/types/hooks/useStorage.d.ts +35 -0
  622. package/dist/types/hooks/useStorage.d.ts.map +1 -0
  623. package/dist/types/index.d.ts +75 -0
  624. package/dist/types/index.d.ts.map +1 -0
  625. package/dist/types/lib/errors.d.ts +37 -0
  626. package/dist/types/lib/errors.d.ts.map +1 -0
  627. package/dist/types/lib/format.d.ts +80 -0
  628. package/dist/types/lib/format.d.ts.map +1 -0
  629. package/dist/types/lib/fouc.d.ts +64 -0
  630. package/dist/types/lib/fouc.d.ts.map +1 -0
  631. package/dist/types/lib/platform.d.ts +156 -0
  632. package/dist/types/lib/platform.d.ts.map +1 -0
  633. package/dist/types/lib/utils.d.ts +14 -0
  634. package/dist/types/lib/utils.d.ts.map +1 -0
  635. package/dist/types/main.d.ts +2 -0
  636. package/dist/types/main.d.ts.map +1 -0
  637. package/dist/types/themes/index.d.ts +499 -0
  638. package/dist/types/themes/index.d.ts.map +1 -0
  639. package/dist/types/themes/presets/base.d.ts +108 -0
  640. package/dist/types/themes/presets/base.d.ts.map +1 -0
  641. package/dist/types/themes/presets/elegant.d.ts +108 -0
  642. package/dist/types/themes/presets/elegant.d.ts.map +1 -0
  643. package/dist/types/themes/presets/metro.d.ts +114 -0
  644. package/dist/types/themes/presets/metro.d.ts.map +1 -0
  645. package/dist/types/themes/presets/studio.d.ts +115 -0
  646. package/dist/types/themes/presets/studio.d.ts.map +1 -0
  647. package/dist/types/themes/presets/vivid.d.ts +115 -0
  648. package/dist/types/themes/presets/vivid.d.ts.map +1 -0
  649. package/dist/types/themes/theme-provider.d.ts +122 -0
  650. package/dist/types/themes/theme-provider.d.ts.map +1 -0
  651. package/dist/types/types/index.d.ts +813 -0
  652. package/dist/types/types/index.d.ts.map +1 -0
  653. package/dist/uikit.css +1 -0
  654. package/dist/useDataTable-CPiBpEg-.js +254 -0
  655. package/dist/useDataTable-CPiBpEg-.js.map +1 -0
  656. package/dist/utils-CwJPJKOE.js +2278 -0
  657. package/dist/utils-CwJPJKOE.js.map +1 -0
  658. package/dist/utils.js +5 -0
  659. package/dist/utils.js.map +1 -0
  660. package/dist/wrapper.js +13 -0
  661. package/dist/wrapper.js.map +1 -0
  662. package/dist/x-BxwubQiM.js +15 -0
  663. package/dist/x-BxwubQiM.js.map +1 -0
  664. package/examples/README.md +18 -0
  665. package/examples/button.tsx +16 -0
  666. package/examples/confirm-dialog.tsx +44 -0
  667. package/examples/data-table.tsx +35 -0
  668. package/examples/dialog.tsx +34 -0
  669. package/examples/empty-state.tsx +13 -0
  670. package/examples/form-field.tsx +22 -0
  671. package/examples/format.tsx +19 -0
  672. package/examples/page-header.tsx +17 -0
  673. package/examples/skeleton.tsx +12 -0
  674. package/examples/theme-provider.tsx +33 -0
  675. package/examples/toast.tsx +32 -0
  676. package/examples/use-breakpoint.tsx +17 -0
  677. package/llms.txt +1140 -0
  678. package/package.json +430 -0
@@ -0,0 +1,2785 @@
1
+ import { jsx as ne } from "react/jsx-runtime";
2
+ import * as Le from "react";
3
+ import f, { createContext as cn, useContext as un, useCallback as R, useRef as De, useLayoutEffect as dn, useState as Ie, useEffect as ln, useMemo as Ye } from "react";
4
+ import { c as N } from "./utils-CwJPJKOE.js";
5
+ import { buttonVariants as Xe, Button as fn } from "./button.js";
6
+ import { C as hn } from "./chevron-left-C1pkx4AF.js";
7
+ import { C as mn } from "./chevron-right-pz9eCjj-.js";
8
+ import { C as yn } from "./chevron-down-BORJtX8F.js";
9
+ function gn(e, t, n = "long") {
10
+ return new Intl.DateTimeFormat("en-US", {
11
+ // Enforces engine to render the time. Without the option JavaScriptCore omits it.
12
+ hour: "numeric",
13
+ timeZone: e,
14
+ timeZoneName: n
15
+ }).format(t).split(/\s/g).slice(2).join(" ");
16
+ }
17
+ const pn = {}, he = {};
18
+ function oe(e, t) {
19
+ try {
20
+ const r = (pn[e] ||= new Intl.DateTimeFormat("en-US", {
21
+ timeZone: e,
22
+ timeZoneName: "longOffset"
23
+ }).format)(t).split("GMT")[1];
24
+ return r in he ? he[r] : Ue(r, r.split(":"));
25
+ } catch {
26
+ if (e in he) return he[e];
27
+ const n = e?.match(wn);
28
+ return n ? Ue(e, n.slice(1)) : NaN;
29
+ }
30
+ }
31
+ const wn = /([+-]\d\d):?(\d\d)?/;
32
+ function Ue(e, t) {
33
+ const n = +(t[0] || 0), r = +(t[1] || 0), o = +(t[2] || 0) / 60;
34
+ return he[e] = n * 60 + r > 0 ? n * 60 + r + o : n * 60 - r - o;
35
+ }
36
+ class X extends Date {
37
+ //#region static
38
+ constructor(...t) {
39
+ super(), t.length > 1 && typeof t[t.length - 1] == "string" && (this.timeZone = t.pop()), this.internal = /* @__PURE__ */ new Date(), isNaN(oe(this.timeZone, this)) ? this.setTime(NaN) : t.length ? typeof t[0] == "number" && (t.length === 1 || t.length === 2 && typeof t[1] != "number") ? this.setTime(t[0]) : typeof t[0] == "string" ? this.setTime(+new Date(t[0])) : t[0] instanceof Date ? this.setTime(+t[0]) : (this.setTime(+new Date(...t)), ct(this), He(this)) : this.setTime(Date.now());
40
+ }
41
+ static tz(t, ...n) {
42
+ return n.length ? new X(...n, t) : new X(Date.now(), t);
43
+ }
44
+ //#endregion
45
+ //#region time zone
46
+ withTimeZone(t) {
47
+ return new X(+this, t);
48
+ }
49
+ getTimezoneOffset() {
50
+ const t = -oe(this.timeZone, this);
51
+ return t > 0 ? Math.floor(t) : Math.ceil(t);
52
+ }
53
+ //#endregion
54
+ //#region time
55
+ setTime(t) {
56
+ return Date.prototype.setTime.apply(this, arguments), He(this), +this;
57
+ }
58
+ //#endregion
59
+ //#region date-fns integration
60
+ [Symbol.for("constructDateFrom")](t) {
61
+ return new X(+new Date(t), this.timeZone);
62
+ }
63
+ //#endregion
64
+ }
65
+ const Ve = /^(get|set)(?!UTC)/;
66
+ Object.getOwnPropertyNames(Date.prototype).forEach((e) => {
67
+ if (!Ve.test(e)) return;
68
+ const t = e.replace(Ve, "$1UTC");
69
+ X.prototype[t] && (e.startsWith("get") ? X.prototype[e] = function() {
70
+ return this.internal[t]();
71
+ } : (X.prototype[e] = function() {
72
+ return Date.prototype[t].apply(this.internal, arguments), bn(this), +this;
73
+ }, X.prototype[t] = function() {
74
+ return Date.prototype[t].apply(this, arguments), He(this), +this;
75
+ }));
76
+ });
77
+ function He(e) {
78
+ e.internal.setTime(+e), e.internal.setUTCSeconds(e.internal.getUTCSeconds() - Math.round(-oe(e.timeZone, e) * 60));
79
+ }
80
+ function bn(e) {
81
+ Date.prototype.setFullYear.call(e, e.internal.getUTCFullYear(), e.internal.getUTCMonth(), e.internal.getUTCDate()), Date.prototype.setHours.call(e, e.internal.getUTCHours(), e.internal.getUTCMinutes(), e.internal.getUTCSeconds(), e.internal.getUTCMilliseconds()), ct(e);
82
+ }
83
+ function ct(e) {
84
+ const t = oe(e.timeZone, e), n = t > 0 ? Math.floor(t) : Math.ceil(t), r = /* @__PURE__ */ new Date(+e);
85
+ r.setUTCHours(r.getUTCHours() - 1);
86
+ const o = -(/* @__PURE__ */ new Date(+e)).getTimezoneOffset(), s = -(/* @__PURE__ */ new Date(+r)).getTimezoneOffset(), i = o - s, a = Date.prototype.getHours.apply(e) !== e.internal.getUTCHours();
87
+ i && a && e.internal.setUTCMinutes(e.internal.getUTCMinutes() + i);
88
+ const c = o - n;
89
+ c && Date.prototype.setUTCMinutes.call(e, Date.prototype.getUTCMinutes.call(e) + c);
90
+ const d = /* @__PURE__ */ new Date(+e);
91
+ d.setUTCSeconds(0);
92
+ const l = o > 0 ? d.getSeconds() : (d.getSeconds() - 60) % 60, u = Math.round(-(oe(e.timeZone, e) * 60)) % 60;
93
+ (u || l) && (e.internal.setUTCSeconds(e.internal.getUTCSeconds() + u), Date.prototype.setUTCSeconds.call(e, Date.prototype.getUTCSeconds.call(e) + u + l));
94
+ const h = oe(e.timeZone, e), g = h > 0 ? Math.floor(h) : Math.ceil(h), O = -(/* @__PURE__ */ new Date(+e)).getTimezoneOffset() - g, w = g !== n, W = O - c;
95
+ if (w && W) {
96
+ Date.prototype.setUTCMinutes.call(e, Date.prototype.getUTCMinutes.call(e) + W);
97
+ const x = oe(e.timeZone, e), b = x > 0 ? Math.floor(x) : Math.ceil(x), Y = g - b;
98
+ Y && (e.internal.setUTCMinutes(e.internal.getUTCMinutes() + Y), Date.prototype.setUTCMinutes.call(e, Date.prototype.getUTCMinutes.call(e) + Y));
99
+ }
100
+ }
101
+ class H extends X {
102
+ //#region static
103
+ static tz(t, ...n) {
104
+ return n.length ? new H(...n, t) : new H(Date.now(), t);
105
+ }
106
+ //#endregion
107
+ //#region representation
108
+ toISOString() {
109
+ const [t, n, r] = this.tzComponents(), o = `${t}${n}:${r}`;
110
+ return this.internal.toISOString().slice(0, -1) + o;
111
+ }
112
+ toString() {
113
+ return `${this.toDateString()} ${this.toTimeString()}`;
114
+ }
115
+ toDateString() {
116
+ const [t, n, r, o] = this.internal.toUTCString().split(" ");
117
+ return `${t?.slice(0, -1)} ${r} ${n} ${o}`;
118
+ }
119
+ toTimeString() {
120
+ const t = this.internal.toUTCString().split(" ")[4], [n, r, o] = this.tzComponents();
121
+ return `${t} GMT${n}${r}${o} (${gn(this.timeZone, this)})`;
122
+ }
123
+ toLocaleString(t, n) {
124
+ return Date.prototype.toLocaleString.call(this, t, {
125
+ ...n,
126
+ timeZone: n?.timeZone || this.timeZone
127
+ });
128
+ }
129
+ toLocaleDateString(t, n) {
130
+ return Date.prototype.toLocaleDateString.call(this, t, {
131
+ ...n,
132
+ timeZone: n?.timeZone || this.timeZone
133
+ });
134
+ }
135
+ toLocaleTimeString(t, n) {
136
+ return Date.prototype.toLocaleTimeString.call(this, t, {
137
+ ...n,
138
+ timeZone: n?.timeZone || this.timeZone
139
+ });
140
+ }
141
+ //#endregion
142
+ //#region private
143
+ tzComponents() {
144
+ const t = this.getTimezoneOffset(), n = t > 0 ? "-" : "+", r = String(Math.floor(Math.abs(t) / 60)).padStart(2, "0"), o = String(Math.abs(t) % 60).padStart(2, "0");
145
+ return [n, r, o];
146
+ }
147
+ //#endregion
148
+ withTimeZone(t) {
149
+ return new H(+this, t);
150
+ }
151
+ //#region date-fns integration
152
+ [Symbol.for("constructDateFrom")](t) {
153
+ return new H(+new Date(t), this.timeZone);
154
+ }
155
+ //#endregion
156
+ }
157
+ const ut = 6048e5, Mn = 864e5, Ke = Symbol.for("constructDateFrom");
158
+ function B(e, t) {
159
+ return typeof e == "function" ? e(t) : e && typeof e == "object" && Ke in e ? e[Ke](t) : e instanceof Date ? new e.constructor(t) : new Date(t);
160
+ }
161
+ function T(e, t) {
162
+ return B(t || e, e);
163
+ }
164
+ function dt(e, t, n) {
165
+ const r = T(e, n?.in);
166
+ return isNaN(t) ? B(e, NaN) : (t && r.setDate(r.getDate() + t), r);
167
+ }
168
+ function lt(e, t, n) {
169
+ const r = T(e, n?.in);
170
+ if (isNaN(t)) return B(e, NaN);
171
+ if (!t)
172
+ return r;
173
+ const o = r.getDate(), s = B(e, r.getTime());
174
+ s.setMonth(r.getMonth() + t + 1, 0);
175
+ const i = s.getDate();
176
+ return o >= i ? s : (r.setFullYear(
177
+ s.getFullYear(),
178
+ s.getMonth(),
179
+ o
180
+ ), r);
181
+ }
182
+ let kn = {};
183
+ function ge() {
184
+ return kn;
185
+ }
186
+ function ue(e, t) {
187
+ const n = ge(), r = t?.weekStartsOn ?? t?.locale?.options?.weekStartsOn ?? n.weekStartsOn ?? n.locale?.options?.weekStartsOn ?? 0, o = T(e, t?.in), s = o.getDay(), i = (s < r ? 7 : 0) + s - r;
188
+ return o.setDate(o.getDate() - i), o.setHours(0, 0, 0, 0), o;
189
+ }
190
+ function me(e, t) {
191
+ return ue(e, { ...t, weekStartsOn: 1 });
192
+ }
193
+ function ft(e, t) {
194
+ const n = T(e, t?.in), r = n.getFullYear(), o = B(n, 0);
195
+ o.setFullYear(r + 1, 0, 4), o.setHours(0, 0, 0, 0);
196
+ const s = me(o), i = B(n, 0);
197
+ i.setFullYear(r, 0, 4), i.setHours(0, 0, 0, 0);
198
+ const a = me(i);
199
+ return n.getTime() >= s.getTime() ? r + 1 : n.getTime() >= a.getTime() ? r : r - 1;
200
+ }
201
+ function Je(e) {
202
+ const t = T(e), n = new Date(
203
+ Date.UTC(
204
+ t.getFullYear(),
205
+ t.getMonth(),
206
+ t.getDate(),
207
+ t.getHours(),
208
+ t.getMinutes(),
209
+ t.getSeconds(),
210
+ t.getMilliseconds()
211
+ )
212
+ );
213
+ return n.setUTCFullYear(t.getFullYear()), +e - +n;
214
+ }
215
+ function de(e, ...t) {
216
+ const n = B.bind(
217
+ null,
218
+ t.find((r) => typeof r == "object")
219
+ );
220
+ return t.map(n);
221
+ }
222
+ function ye(e, t) {
223
+ const n = T(e, t?.in);
224
+ return n.setHours(0, 0, 0, 0), n;
225
+ }
226
+ function ht(e, t, n) {
227
+ const [r, o] = de(
228
+ n?.in,
229
+ e,
230
+ t
231
+ ), s = ye(r), i = ye(o), a = +s - Je(s), c = +i - Je(i);
232
+ return Math.round((a - c) / Mn);
233
+ }
234
+ function Dn(e, t) {
235
+ const n = ft(e, t), r = B(e, 0);
236
+ return r.setFullYear(n, 0, 4), r.setHours(0, 0, 0, 0), me(r);
237
+ }
238
+ function vn(e, t, n) {
239
+ return dt(e, t * 7, n);
240
+ }
241
+ function On(e, t, n) {
242
+ return lt(e, t * 12, n);
243
+ }
244
+ function Wn(e, t) {
245
+ let n, r = t?.in;
246
+ return e.forEach((o) => {
247
+ !r && typeof o == "object" && (r = B.bind(null, o));
248
+ const s = T(o, r);
249
+ (!n || n < s || isNaN(+s)) && (n = s);
250
+ }), B(r, n || NaN);
251
+ }
252
+ function Sn(e, t) {
253
+ let n, r = t?.in;
254
+ return e.forEach((o) => {
255
+ !r && typeof o == "object" && (r = B.bind(null, o));
256
+ const s = T(o, r);
257
+ (!n || n > s || isNaN(+s)) && (n = s);
258
+ }), B(r, n || NaN);
259
+ }
260
+ function Cn(e, t, n) {
261
+ const [r, o] = de(
262
+ n?.in,
263
+ e,
264
+ t
265
+ );
266
+ return +ye(r) == +ye(o);
267
+ }
268
+ function mt(e) {
269
+ return e instanceof Date || typeof e == "object" && Object.prototype.toString.call(e) === "[object Date]";
270
+ }
271
+ function Nn(e) {
272
+ return !(!mt(e) && typeof e != "number" || isNaN(+T(e)));
273
+ }
274
+ function xn(e, t, n) {
275
+ const [r, o] = de(
276
+ n?.in,
277
+ e,
278
+ t
279
+ ), s = r.getFullYear() - o.getFullYear(), i = r.getMonth() - o.getMonth();
280
+ return s * 12 + i;
281
+ }
282
+ function _n(e, t) {
283
+ const n = T(e, t?.in), r = n.getMonth();
284
+ return n.setFullYear(n.getFullYear(), r + 1, 0), n.setHours(23, 59, 59, 999), n;
285
+ }
286
+ function Tn(e, t) {
287
+ const [n, r] = de(e, t.start, t.end);
288
+ return { start: n, end: r };
289
+ }
290
+ function Yn(e, t) {
291
+ const { start: n, end: r } = Tn(t?.in, e);
292
+ let o = +n > +r;
293
+ const s = o ? +n : +r, i = o ? r : n;
294
+ i.setHours(0, 0, 0, 0), i.setDate(1);
295
+ let a = 1;
296
+ const c = [];
297
+ for (; +i <= s; )
298
+ c.push(B(n, i)), i.setMonth(i.getMonth() + a);
299
+ return o ? c.reverse() : c;
300
+ }
301
+ function En(e, t) {
302
+ const n = T(e, t?.in);
303
+ return n.setDate(1), n.setHours(0, 0, 0, 0), n;
304
+ }
305
+ function Pn(e, t) {
306
+ const n = T(e, t?.in), r = n.getFullYear();
307
+ return n.setFullYear(r + 1, 0, 0), n.setHours(23, 59, 59, 999), n;
308
+ }
309
+ function yt(e, t) {
310
+ const n = T(e, t?.in);
311
+ return n.setFullYear(n.getFullYear(), 0, 1), n.setHours(0, 0, 0, 0), n;
312
+ }
313
+ function gt(e, t) {
314
+ const n = ge(), r = t?.weekStartsOn ?? t?.locale?.options?.weekStartsOn ?? n.weekStartsOn ?? n.locale?.options?.weekStartsOn ?? 0, o = T(e, t?.in), s = o.getDay(), i = (s < r ? -7 : 0) + 6 - (s - r);
315
+ return o.setDate(o.getDate() + i), o.setHours(23, 59, 59, 999), o;
316
+ }
317
+ function Fn(e, t) {
318
+ return gt(e, { ...t, weekStartsOn: 1 });
319
+ }
320
+ const Bn = {
321
+ lessThanXSeconds: {
322
+ one: "less than a second",
323
+ other: "less than {{count}} seconds"
324
+ },
325
+ xSeconds: {
326
+ one: "1 second",
327
+ other: "{{count}} seconds"
328
+ },
329
+ halfAMinute: "half a minute",
330
+ lessThanXMinutes: {
331
+ one: "less than a minute",
332
+ other: "less than {{count}} minutes"
333
+ },
334
+ xMinutes: {
335
+ one: "1 minute",
336
+ other: "{{count}} minutes"
337
+ },
338
+ aboutXHours: {
339
+ one: "about 1 hour",
340
+ other: "about {{count}} hours"
341
+ },
342
+ xHours: {
343
+ one: "1 hour",
344
+ other: "{{count}} hours"
345
+ },
346
+ xDays: {
347
+ one: "1 day",
348
+ other: "{{count}} days"
349
+ },
350
+ aboutXWeeks: {
351
+ one: "about 1 week",
352
+ other: "about {{count}} weeks"
353
+ },
354
+ xWeeks: {
355
+ one: "1 week",
356
+ other: "{{count}} weeks"
357
+ },
358
+ aboutXMonths: {
359
+ one: "about 1 month",
360
+ other: "about {{count}} months"
361
+ },
362
+ xMonths: {
363
+ one: "1 month",
364
+ other: "{{count}} months"
365
+ },
366
+ aboutXYears: {
367
+ one: "about 1 year",
368
+ other: "about {{count}} years"
369
+ },
370
+ xYears: {
371
+ one: "1 year",
372
+ other: "{{count}} years"
373
+ },
374
+ overXYears: {
375
+ one: "over 1 year",
376
+ other: "over {{count}} years"
377
+ },
378
+ almostXYears: {
379
+ one: "almost 1 year",
380
+ other: "almost {{count}} years"
381
+ }
382
+ }, In = (e, t, n) => {
383
+ let r;
384
+ const o = Bn[e];
385
+ return typeof o == "string" ? r = o : t === 1 ? r = o.one : r = o.other.replace("{{count}}", t.toString()), n?.addSuffix ? n.comparison && n.comparison > 0 ? "in " + r : r + " ago" : r;
386
+ };
387
+ function Ee(e) {
388
+ return (t = {}) => {
389
+ const n = t.width ? String(t.width) : e.defaultWidth;
390
+ return e.formats[n] || e.formats[e.defaultWidth];
391
+ };
392
+ }
393
+ const Hn = {
394
+ full: "EEEE, MMMM do, y",
395
+ long: "MMMM do, y",
396
+ medium: "MMM d, y",
397
+ short: "MM/dd/yyyy"
398
+ }, qn = {
399
+ full: "h:mm:ss a zzzz",
400
+ long: "h:mm:ss a z",
401
+ medium: "h:mm:ss a",
402
+ short: "h:mm a"
403
+ }, An = {
404
+ full: "{{date}} 'at' {{time}}",
405
+ long: "{{date}} 'at' {{time}}",
406
+ medium: "{{date}}, {{time}}",
407
+ short: "{{date}}, {{time}}"
408
+ }, jn = {
409
+ date: Ee({
410
+ formats: Hn,
411
+ defaultWidth: "full"
412
+ }),
413
+ time: Ee({
414
+ formats: qn,
415
+ defaultWidth: "full"
416
+ }),
417
+ dateTime: Ee({
418
+ formats: An,
419
+ defaultWidth: "full"
420
+ })
421
+ }, zn = {
422
+ lastWeek: "'last' eeee 'at' p",
423
+ yesterday: "'yesterday at' p",
424
+ today: "'today at' p",
425
+ tomorrow: "'tomorrow at' p",
426
+ nextWeek: "eeee 'at' p",
427
+ other: "P"
428
+ }, Rn = (e, t, n, r) => zn[e];
429
+ function le(e) {
430
+ return (t, n) => {
431
+ const r = n?.context ? String(n.context) : "standalone";
432
+ let o;
433
+ if (r === "formatting" && e.formattingValues) {
434
+ const i = e.defaultFormattingWidth || e.defaultWidth, a = n?.width ? String(n.width) : i;
435
+ o = e.formattingValues[a] || e.formattingValues[i];
436
+ } else {
437
+ const i = e.defaultWidth, a = n?.width ? String(n.width) : e.defaultWidth;
438
+ o = e.values[a] || e.values[i];
439
+ }
440
+ const s = e.argumentCallback ? e.argumentCallback(t) : t;
441
+ return o[s];
442
+ };
443
+ }
444
+ const $n = {
445
+ narrow: ["B", "A"],
446
+ abbreviated: ["BC", "AD"],
447
+ wide: ["Before Christ", "Anno Domini"]
448
+ }, Zn = {
449
+ narrow: ["1", "2", "3", "4"],
450
+ abbreviated: ["Q1", "Q2", "Q3", "Q4"],
451
+ wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"]
452
+ }, Gn = {
453
+ narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
454
+ abbreviated: [
455
+ "Jan",
456
+ "Feb",
457
+ "Mar",
458
+ "Apr",
459
+ "May",
460
+ "Jun",
461
+ "Jul",
462
+ "Aug",
463
+ "Sep",
464
+ "Oct",
465
+ "Nov",
466
+ "Dec"
467
+ ],
468
+ wide: [
469
+ "January",
470
+ "February",
471
+ "March",
472
+ "April",
473
+ "May",
474
+ "June",
475
+ "July",
476
+ "August",
477
+ "September",
478
+ "October",
479
+ "November",
480
+ "December"
481
+ ]
482
+ }, Qn = {
483
+ narrow: ["S", "M", "T", "W", "T", "F", "S"],
484
+ short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
485
+ abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
486
+ wide: [
487
+ "Sunday",
488
+ "Monday",
489
+ "Tuesday",
490
+ "Wednesday",
491
+ "Thursday",
492
+ "Friday",
493
+ "Saturday"
494
+ ]
495
+ }, Ln = {
496
+ narrow: {
497
+ am: "a",
498
+ pm: "p",
499
+ midnight: "mi",
500
+ noon: "n",
501
+ morning: "morning",
502
+ afternoon: "afternoon",
503
+ evening: "evening",
504
+ night: "night"
505
+ },
506
+ abbreviated: {
507
+ am: "AM",
508
+ pm: "PM",
509
+ midnight: "midnight",
510
+ noon: "noon",
511
+ morning: "morning",
512
+ afternoon: "afternoon",
513
+ evening: "evening",
514
+ night: "night"
515
+ },
516
+ wide: {
517
+ am: "a.m.",
518
+ pm: "p.m.",
519
+ midnight: "midnight",
520
+ noon: "noon",
521
+ morning: "morning",
522
+ afternoon: "afternoon",
523
+ evening: "evening",
524
+ night: "night"
525
+ }
526
+ }, Xn = {
527
+ narrow: {
528
+ am: "a",
529
+ pm: "p",
530
+ midnight: "mi",
531
+ noon: "n",
532
+ morning: "in the morning",
533
+ afternoon: "in the afternoon",
534
+ evening: "in the evening",
535
+ night: "at night"
536
+ },
537
+ abbreviated: {
538
+ am: "AM",
539
+ pm: "PM",
540
+ midnight: "midnight",
541
+ noon: "noon",
542
+ morning: "in the morning",
543
+ afternoon: "in the afternoon",
544
+ evening: "in the evening",
545
+ night: "at night"
546
+ },
547
+ wide: {
548
+ am: "a.m.",
549
+ pm: "p.m.",
550
+ midnight: "midnight",
551
+ noon: "noon",
552
+ morning: "in the morning",
553
+ afternoon: "in the afternoon",
554
+ evening: "in the evening",
555
+ night: "at night"
556
+ }
557
+ }, Un = (e, t) => {
558
+ const n = Number(e), r = n % 100;
559
+ if (r > 20 || r < 10)
560
+ switch (r % 10) {
561
+ case 1:
562
+ return n + "st";
563
+ case 2:
564
+ return n + "nd";
565
+ case 3:
566
+ return n + "rd";
567
+ }
568
+ return n + "th";
569
+ }, Vn = {
570
+ ordinalNumber: Un,
571
+ era: le({
572
+ values: $n,
573
+ defaultWidth: "wide"
574
+ }),
575
+ quarter: le({
576
+ values: Zn,
577
+ defaultWidth: "wide",
578
+ argumentCallback: (e) => e - 1
579
+ }),
580
+ month: le({
581
+ values: Gn,
582
+ defaultWidth: "wide"
583
+ }),
584
+ day: le({
585
+ values: Qn,
586
+ defaultWidth: "wide"
587
+ }),
588
+ dayPeriod: le({
589
+ values: Ln,
590
+ defaultWidth: "wide",
591
+ formattingValues: Xn,
592
+ defaultFormattingWidth: "wide"
593
+ })
594
+ };
595
+ function fe(e) {
596
+ return (t, n = {}) => {
597
+ const r = n.width, o = r && e.matchPatterns[r] || e.matchPatterns[e.defaultMatchWidth], s = t.match(o);
598
+ if (!s)
599
+ return null;
600
+ const i = s[0], a = r && e.parsePatterns[r] || e.parsePatterns[e.defaultParseWidth], c = Array.isArray(a) ? Jn(a, (u) => u.test(i)) : (
601
+ // [TODO] -- I challenge you to fix the type
602
+ Kn(a, (u) => u.test(i))
603
+ );
604
+ let d;
605
+ d = e.valueCallback ? e.valueCallback(c) : c, d = n.valueCallback ? (
606
+ // [TODO] -- I challenge you to fix the type
607
+ n.valueCallback(d)
608
+ ) : d;
609
+ const l = t.slice(i.length);
610
+ return { value: d, rest: l };
611
+ };
612
+ }
613
+ function Kn(e, t) {
614
+ for (const n in e)
615
+ if (Object.prototype.hasOwnProperty.call(e, n) && t(e[n]))
616
+ return n;
617
+ }
618
+ function Jn(e, t) {
619
+ for (let n = 0; n < e.length; n++)
620
+ if (t(e[n]))
621
+ return n;
622
+ }
623
+ function er(e) {
624
+ return (t, n = {}) => {
625
+ const r = t.match(e.matchPattern);
626
+ if (!r) return null;
627
+ const o = r[0], s = t.match(e.parsePattern);
628
+ if (!s) return null;
629
+ let i = e.valueCallback ? e.valueCallback(s[0]) : s[0];
630
+ i = n.valueCallback ? n.valueCallback(i) : i;
631
+ const a = t.slice(o.length);
632
+ return { value: i, rest: a };
633
+ };
634
+ }
635
+ const tr = /^(\d+)(th|st|nd|rd)?/i, nr = /\d+/i, rr = {
636
+ narrow: /^(b|a)/i,
637
+ abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
638
+ wide: /^(before christ|before common era|anno domini|common era)/i
639
+ }, or = {
640
+ any: [/^b/i, /^(a|c)/i]
641
+ }, sr = {
642
+ narrow: /^[1234]/i,
643
+ abbreviated: /^q[1234]/i,
644
+ wide: /^[1234](th|st|nd|rd)? quarter/i
645
+ }, ar = {
646
+ any: [/1/i, /2/i, /3/i, /4/i]
647
+ }, ir = {
648
+ narrow: /^[jfmasond]/i,
649
+ abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
650
+ wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
651
+ }, cr = {
652
+ narrow: [
653
+ /^j/i,
654
+ /^f/i,
655
+ /^m/i,
656
+ /^a/i,
657
+ /^m/i,
658
+ /^j/i,
659
+ /^j/i,
660
+ /^a/i,
661
+ /^s/i,
662
+ /^o/i,
663
+ /^n/i,
664
+ /^d/i
665
+ ],
666
+ any: [
667
+ /^ja/i,
668
+ /^f/i,
669
+ /^mar/i,
670
+ /^ap/i,
671
+ /^may/i,
672
+ /^jun/i,
673
+ /^jul/i,
674
+ /^au/i,
675
+ /^s/i,
676
+ /^o/i,
677
+ /^n/i,
678
+ /^d/i
679
+ ]
680
+ }, ur = {
681
+ narrow: /^[smtwf]/i,
682
+ short: /^(su|mo|tu|we|th|fr|sa)/i,
683
+ abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
684
+ wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
685
+ }, dr = {
686
+ narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
687
+ any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
688
+ }, lr = {
689
+ narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
690
+ any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
691
+ }, fr = {
692
+ any: {
693
+ am: /^a/i,
694
+ pm: /^p/i,
695
+ midnight: /^mi/i,
696
+ noon: /^no/i,
697
+ morning: /morning/i,
698
+ afternoon: /afternoon/i,
699
+ evening: /evening/i,
700
+ night: /night/i
701
+ }
702
+ }, hr = {
703
+ ordinalNumber: er({
704
+ matchPattern: tr,
705
+ parsePattern: nr,
706
+ valueCallback: (e) => parseInt(e, 10)
707
+ }),
708
+ era: fe({
709
+ matchPatterns: rr,
710
+ defaultMatchWidth: "wide",
711
+ parsePatterns: or,
712
+ defaultParseWidth: "any"
713
+ }),
714
+ quarter: fe({
715
+ matchPatterns: sr,
716
+ defaultMatchWidth: "wide",
717
+ parsePatterns: ar,
718
+ defaultParseWidth: "any",
719
+ valueCallback: (e) => e + 1
720
+ }),
721
+ month: fe({
722
+ matchPatterns: ir,
723
+ defaultMatchWidth: "wide",
724
+ parsePatterns: cr,
725
+ defaultParseWidth: "any"
726
+ }),
727
+ day: fe({
728
+ matchPatterns: ur,
729
+ defaultMatchWidth: "wide",
730
+ parsePatterns: dr,
731
+ defaultParseWidth: "any"
732
+ }),
733
+ dayPeriod: fe({
734
+ matchPatterns: lr,
735
+ defaultMatchWidth: "any",
736
+ parsePatterns: fr,
737
+ defaultParseWidth: "any"
738
+ })
739
+ }, qe = {
740
+ code: "en-US",
741
+ formatDistance: In,
742
+ formatLong: jn,
743
+ formatRelative: Rn,
744
+ localize: Vn,
745
+ match: hr,
746
+ options: {
747
+ weekStartsOn: 0,
748
+ firstWeekContainsDate: 1
749
+ }
750
+ };
751
+ function mr(e, t) {
752
+ const n = T(e, t?.in);
753
+ return ht(n, yt(n)) + 1;
754
+ }
755
+ function pt(e, t) {
756
+ const n = T(e, t?.in), r = +me(n) - +Dn(n);
757
+ return Math.round(r / ut) + 1;
758
+ }
759
+ function wt(e, t) {
760
+ const n = T(e, t?.in), r = n.getFullYear(), o = ge(), s = t?.firstWeekContainsDate ?? t?.locale?.options?.firstWeekContainsDate ?? o.firstWeekContainsDate ?? o.locale?.options?.firstWeekContainsDate ?? 1, i = B(t?.in || e, 0);
761
+ i.setFullYear(r + 1, 0, s), i.setHours(0, 0, 0, 0);
762
+ const a = ue(i, t), c = B(t?.in || e, 0);
763
+ c.setFullYear(r, 0, s), c.setHours(0, 0, 0, 0);
764
+ const d = ue(c, t);
765
+ return +n >= +a ? r + 1 : +n >= +d ? r : r - 1;
766
+ }
767
+ function yr(e, t) {
768
+ const n = ge(), r = t?.firstWeekContainsDate ?? t?.locale?.options?.firstWeekContainsDate ?? n.firstWeekContainsDate ?? n.locale?.options?.firstWeekContainsDate ?? 1, o = wt(e, t), s = B(t?.in || e, 0);
769
+ return s.setFullYear(o, 0, r), s.setHours(0, 0, 0, 0), ue(s, t);
770
+ }
771
+ function bt(e, t) {
772
+ const n = T(e, t?.in), r = +ue(n, t) - +yr(n, t);
773
+ return Math.round(r / ut) + 1;
774
+ }
775
+ function _(e, t) {
776
+ const n = e < 0 ? "-" : "", r = Math.abs(e).toString().padStart(t, "0");
777
+ return n + r;
778
+ }
779
+ const te = {
780
+ // Year
781
+ y(e, t) {
782
+ const n = e.getFullYear(), r = n > 0 ? n : 1 - n;
783
+ return _(t === "yy" ? r % 100 : r, t.length);
784
+ },
785
+ // Month
786
+ M(e, t) {
787
+ const n = e.getMonth();
788
+ return t === "M" ? String(n + 1) : _(n + 1, 2);
789
+ },
790
+ // Day of the month
791
+ d(e, t) {
792
+ return _(e.getDate(), t.length);
793
+ },
794
+ // AM or PM
795
+ a(e, t) {
796
+ const n = e.getHours() / 12 >= 1 ? "pm" : "am";
797
+ switch (t) {
798
+ case "a":
799
+ case "aa":
800
+ return n.toUpperCase();
801
+ case "aaa":
802
+ return n;
803
+ case "aaaaa":
804
+ return n[0];
805
+ case "aaaa":
806
+ default:
807
+ return n === "am" ? "a.m." : "p.m.";
808
+ }
809
+ },
810
+ // Hour [1-12]
811
+ h(e, t) {
812
+ return _(e.getHours() % 12 || 12, t.length);
813
+ },
814
+ // Hour [0-23]
815
+ H(e, t) {
816
+ return _(e.getHours(), t.length);
817
+ },
818
+ // Minute
819
+ m(e, t) {
820
+ return _(e.getMinutes(), t.length);
821
+ },
822
+ // Second
823
+ s(e, t) {
824
+ return _(e.getSeconds(), t.length);
825
+ },
826
+ // Fraction of second
827
+ S(e, t) {
828
+ const n = t.length, r = e.getMilliseconds(), o = Math.trunc(
829
+ r * Math.pow(10, n - 3)
830
+ );
831
+ return _(o, t.length);
832
+ }
833
+ }, ce = {
834
+ midnight: "midnight",
835
+ noon: "noon",
836
+ morning: "morning",
837
+ afternoon: "afternoon",
838
+ evening: "evening",
839
+ night: "night"
840
+ }, et = {
841
+ // Era
842
+ G: function(e, t, n) {
843
+ const r = e.getFullYear() > 0 ? 1 : 0;
844
+ switch (t) {
845
+ // AD, BC
846
+ case "G":
847
+ case "GG":
848
+ case "GGG":
849
+ return n.era(r, { width: "abbreviated" });
850
+ // A, B
851
+ case "GGGGG":
852
+ return n.era(r, { width: "narrow" });
853
+ // Anno Domini, Before Christ
854
+ case "GGGG":
855
+ default:
856
+ return n.era(r, { width: "wide" });
857
+ }
858
+ },
859
+ // Year
860
+ y: function(e, t, n) {
861
+ if (t === "yo") {
862
+ const r = e.getFullYear(), o = r > 0 ? r : 1 - r;
863
+ return n.ordinalNumber(o, { unit: "year" });
864
+ }
865
+ return te.y(e, t);
866
+ },
867
+ // Local week-numbering year
868
+ Y: function(e, t, n, r) {
869
+ const o = wt(e, r), s = o > 0 ? o : 1 - o;
870
+ if (t === "YY") {
871
+ const i = s % 100;
872
+ return _(i, 2);
873
+ }
874
+ return t === "Yo" ? n.ordinalNumber(s, { unit: "year" }) : _(s, t.length);
875
+ },
876
+ // ISO week-numbering year
877
+ R: function(e, t) {
878
+ const n = ft(e);
879
+ return _(n, t.length);
880
+ },
881
+ // Extended year. This is a single number designating the year of this calendar system.
882
+ // The main difference between `y` and `u` localizers are B.C. years:
883
+ // | Year | `y` | `u` |
884
+ // |------|-----|-----|
885
+ // | AC 1 | 1 | 1 |
886
+ // | BC 1 | 1 | 0 |
887
+ // | BC 2 | 2 | -1 |
888
+ // Also `yy` always returns the last two digits of a year,
889
+ // while `uu` pads single digit years to 2 characters and returns other years unchanged.
890
+ u: function(e, t) {
891
+ const n = e.getFullYear();
892
+ return _(n, t.length);
893
+ },
894
+ // Quarter
895
+ Q: function(e, t, n) {
896
+ const r = Math.ceil((e.getMonth() + 1) / 3);
897
+ switch (t) {
898
+ // 1, 2, 3, 4
899
+ case "Q":
900
+ return String(r);
901
+ // 01, 02, 03, 04
902
+ case "QQ":
903
+ return _(r, 2);
904
+ // 1st, 2nd, 3rd, 4th
905
+ case "Qo":
906
+ return n.ordinalNumber(r, { unit: "quarter" });
907
+ // Q1, Q2, Q3, Q4
908
+ case "QQQ":
909
+ return n.quarter(r, {
910
+ width: "abbreviated",
911
+ context: "formatting"
912
+ });
913
+ // 1, 2, 3, 4 (narrow quarter; could be not numerical)
914
+ case "QQQQQ":
915
+ return n.quarter(r, {
916
+ width: "narrow",
917
+ context: "formatting"
918
+ });
919
+ // 1st quarter, 2nd quarter, ...
920
+ case "QQQQ":
921
+ default:
922
+ return n.quarter(r, {
923
+ width: "wide",
924
+ context: "formatting"
925
+ });
926
+ }
927
+ },
928
+ // Stand-alone quarter
929
+ q: function(e, t, n) {
930
+ const r = Math.ceil((e.getMonth() + 1) / 3);
931
+ switch (t) {
932
+ // 1, 2, 3, 4
933
+ case "q":
934
+ return String(r);
935
+ // 01, 02, 03, 04
936
+ case "qq":
937
+ return _(r, 2);
938
+ // 1st, 2nd, 3rd, 4th
939
+ case "qo":
940
+ return n.ordinalNumber(r, { unit: "quarter" });
941
+ // Q1, Q2, Q3, Q4
942
+ case "qqq":
943
+ return n.quarter(r, {
944
+ width: "abbreviated",
945
+ context: "standalone"
946
+ });
947
+ // 1, 2, 3, 4 (narrow quarter; could be not numerical)
948
+ case "qqqqq":
949
+ return n.quarter(r, {
950
+ width: "narrow",
951
+ context: "standalone"
952
+ });
953
+ // 1st quarter, 2nd quarter, ...
954
+ case "qqqq":
955
+ default:
956
+ return n.quarter(r, {
957
+ width: "wide",
958
+ context: "standalone"
959
+ });
960
+ }
961
+ },
962
+ // Month
963
+ M: function(e, t, n) {
964
+ const r = e.getMonth();
965
+ switch (t) {
966
+ case "M":
967
+ case "MM":
968
+ return te.M(e, t);
969
+ // 1st, 2nd, ..., 12th
970
+ case "Mo":
971
+ return n.ordinalNumber(r + 1, { unit: "month" });
972
+ // Jan, Feb, ..., Dec
973
+ case "MMM":
974
+ return n.month(r, {
975
+ width: "abbreviated",
976
+ context: "formatting"
977
+ });
978
+ // J, F, ..., D
979
+ case "MMMMM":
980
+ return n.month(r, {
981
+ width: "narrow",
982
+ context: "formatting"
983
+ });
984
+ // January, February, ..., December
985
+ case "MMMM":
986
+ default:
987
+ return n.month(r, { width: "wide", context: "formatting" });
988
+ }
989
+ },
990
+ // Stand-alone month
991
+ L: function(e, t, n) {
992
+ const r = e.getMonth();
993
+ switch (t) {
994
+ // 1, 2, ..., 12
995
+ case "L":
996
+ return String(r + 1);
997
+ // 01, 02, ..., 12
998
+ case "LL":
999
+ return _(r + 1, 2);
1000
+ // 1st, 2nd, ..., 12th
1001
+ case "Lo":
1002
+ return n.ordinalNumber(r + 1, { unit: "month" });
1003
+ // Jan, Feb, ..., Dec
1004
+ case "LLL":
1005
+ return n.month(r, {
1006
+ width: "abbreviated",
1007
+ context: "standalone"
1008
+ });
1009
+ // J, F, ..., D
1010
+ case "LLLLL":
1011
+ return n.month(r, {
1012
+ width: "narrow",
1013
+ context: "standalone"
1014
+ });
1015
+ // January, February, ..., December
1016
+ case "LLLL":
1017
+ default:
1018
+ return n.month(r, { width: "wide", context: "standalone" });
1019
+ }
1020
+ },
1021
+ // Local week of year
1022
+ w: function(e, t, n, r) {
1023
+ const o = bt(e, r);
1024
+ return t === "wo" ? n.ordinalNumber(o, { unit: "week" }) : _(o, t.length);
1025
+ },
1026
+ // ISO week of year
1027
+ I: function(e, t, n) {
1028
+ const r = pt(e);
1029
+ return t === "Io" ? n.ordinalNumber(r, { unit: "week" }) : _(r, t.length);
1030
+ },
1031
+ // Day of the month
1032
+ d: function(e, t, n) {
1033
+ return t === "do" ? n.ordinalNumber(e.getDate(), { unit: "date" }) : te.d(e, t);
1034
+ },
1035
+ // Day of year
1036
+ D: function(e, t, n) {
1037
+ const r = mr(e);
1038
+ return t === "Do" ? n.ordinalNumber(r, { unit: "dayOfYear" }) : _(r, t.length);
1039
+ },
1040
+ // Day of week
1041
+ E: function(e, t, n) {
1042
+ const r = e.getDay();
1043
+ switch (t) {
1044
+ // Tue
1045
+ case "E":
1046
+ case "EE":
1047
+ case "EEE":
1048
+ return n.day(r, {
1049
+ width: "abbreviated",
1050
+ context: "formatting"
1051
+ });
1052
+ // T
1053
+ case "EEEEE":
1054
+ return n.day(r, {
1055
+ width: "narrow",
1056
+ context: "formatting"
1057
+ });
1058
+ // Tu
1059
+ case "EEEEEE":
1060
+ return n.day(r, {
1061
+ width: "short",
1062
+ context: "formatting"
1063
+ });
1064
+ // Tuesday
1065
+ case "EEEE":
1066
+ default:
1067
+ return n.day(r, {
1068
+ width: "wide",
1069
+ context: "formatting"
1070
+ });
1071
+ }
1072
+ },
1073
+ // Local day of week
1074
+ e: function(e, t, n, r) {
1075
+ const o = e.getDay(), s = (o - r.weekStartsOn + 8) % 7 || 7;
1076
+ switch (t) {
1077
+ // Numerical value (Nth day of week with current locale or weekStartsOn)
1078
+ case "e":
1079
+ return String(s);
1080
+ // Padded numerical value
1081
+ case "ee":
1082
+ return _(s, 2);
1083
+ // 1st, 2nd, ..., 7th
1084
+ case "eo":
1085
+ return n.ordinalNumber(s, { unit: "day" });
1086
+ case "eee":
1087
+ return n.day(o, {
1088
+ width: "abbreviated",
1089
+ context: "formatting"
1090
+ });
1091
+ // T
1092
+ case "eeeee":
1093
+ return n.day(o, {
1094
+ width: "narrow",
1095
+ context: "formatting"
1096
+ });
1097
+ // Tu
1098
+ case "eeeeee":
1099
+ return n.day(o, {
1100
+ width: "short",
1101
+ context: "formatting"
1102
+ });
1103
+ // Tuesday
1104
+ case "eeee":
1105
+ default:
1106
+ return n.day(o, {
1107
+ width: "wide",
1108
+ context: "formatting"
1109
+ });
1110
+ }
1111
+ },
1112
+ // Stand-alone local day of week
1113
+ c: function(e, t, n, r) {
1114
+ const o = e.getDay(), s = (o - r.weekStartsOn + 8) % 7 || 7;
1115
+ switch (t) {
1116
+ // Numerical value (same as in `e`)
1117
+ case "c":
1118
+ return String(s);
1119
+ // Padded numerical value
1120
+ case "cc":
1121
+ return _(s, t.length);
1122
+ // 1st, 2nd, ..., 7th
1123
+ case "co":
1124
+ return n.ordinalNumber(s, { unit: "day" });
1125
+ case "ccc":
1126
+ return n.day(o, {
1127
+ width: "abbreviated",
1128
+ context: "standalone"
1129
+ });
1130
+ // T
1131
+ case "ccccc":
1132
+ return n.day(o, {
1133
+ width: "narrow",
1134
+ context: "standalone"
1135
+ });
1136
+ // Tu
1137
+ case "cccccc":
1138
+ return n.day(o, {
1139
+ width: "short",
1140
+ context: "standalone"
1141
+ });
1142
+ // Tuesday
1143
+ case "cccc":
1144
+ default:
1145
+ return n.day(o, {
1146
+ width: "wide",
1147
+ context: "standalone"
1148
+ });
1149
+ }
1150
+ },
1151
+ // ISO day of week
1152
+ i: function(e, t, n) {
1153
+ const r = e.getDay(), o = r === 0 ? 7 : r;
1154
+ switch (t) {
1155
+ // 2
1156
+ case "i":
1157
+ return String(o);
1158
+ // 02
1159
+ case "ii":
1160
+ return _(o, t.length);
1161
+ // 2nd
1162
+ case "io":
1163
+ return n.ordinalNumber(o, { unit: "day" });
1164
+ // Tue
1165
+ case "iii":
1166
+ return n.day(r, {
1167
+ width: "abbreviated",
1168
+ context: "formatting"
1169
+ });
1170
+ // T
1171
+ case "iiiii":
1172
+ return n.day(r, {
1173
+ width: "narrow",
1174
+ context: "formatting"
1175
+ });
1176
+ // Tu
1177
+ case "iiiiii":
1178
+ return n.day(r, {
1179
+ width: "short",
1180
+ context: "formatting"
1181
+ });
1182
+ // Tuesday
1183
+ case "iiii":
1184
+ default:
1185
+ return n.day(r, {
1186
+ width: "wide",
1187
+ context: "formatting"
1188
+ });
1189
+ }
1190
+ },
1191
+ // AM or PM
1192
+ a: function(e, t, n) {
1193
+ const o = e.getHours() / 12 >= 1 ? "pm" : "am";
1194
+ switch (t) {
1195
+ case "a":
1196
+ case "aa":
1197
+ return n.dayPeriod(o, {
1198
+ width: "abbreviated",
1199
+ context: "formatting"
1200
+ });
1201
+ case "aaa":
1202
+ return n.dayPeriod(o, {
1203
+ width: "abbreviated",
1204
+ context: "formatting"
1205
+ }).toLowerCase();
1206
+ case "aaaaa":
1207
+ return n.dayPeriod(o, {
1208
+ width: "narrow",
1209
+ context: "formatting"
1210
+ });
1211
+ case "aaaa":
1212
+ default:
1213
+ return n.dayPeriod(o, {
1214
+ width: "wide",
1215
+ context: "formatting"
1216
+ });
1217
+ }
1218
+ },
1219
+ // AM, PM, midnight, noon
1220
+ b: function(e, t, n) {
1221
+ const r = e.getHours();
1222
+ let o;
1223
+ switch (r === 12 ? o = ce.noon : r === 0 ? o = ce.midnight : o = r / 12 >= 1 ? "pm" : "am", t) {
1224
+ case "b":
1225
+ case "bb":
1226
+ return n.dayPeriod(o, {
1227
+ width: "abbreviated",
1228
+ context: "formatting"
1229
+ });
1230
+ case "bbb":
1231
+ return n.dayPeriod(o, {
1232
+ width: "abbreviated",
1233
+ context: "formatting"
1234
+ }).toLowerCase();
1235
+ case "bbbbb":
1236
+ return n.dayPeriod(o, {
1237
+ width: "narrow",
1238
+ context: "formatting"
1239
+ });
1240
+ case "bbbb":
1241
+ default:
1242
+ return n.dayPeriod(o, {
1243
+ width: "wide",
1244
+ context: "formatting"
1245
+ });
1246
+ }
1247
+ },
1248
+ // in the morning, in the afternoon, in the evening, at night
1249
+ B: function(e, t, n) {
1250
+ const r = e.getHours();
1251
+ let o;
1252
+ switch (r >= 17 ? o = ce.evening : r >= 12 ? o = ce.afternoon : r >= 4 ? o = ce.morning : o = ce.night, t) {
1253
+ case "B":
1254
+ case "BB":
1255
+ case "BBB":
1256
+ return n.dayPeriod(o, {
1257
+ width: "abbreviated",
1258
+ context: "formatting"
1259
+ });
1260
+ case "BBBBB":
1261
+ return n.dayPeriod(o, {
1262
+ width: "narrow",
1263
+ context: "formatting"
1264
+ });
1265
+ case "BBBB":
1266
+ default:
1267
+ return n.dayPeriod(o, {
1268
+ width: "wide",
1269
+ context: "formatting"
1270
+ });
1271
+ }
1272
+ },
1273
+ // Hour [1-12]
1274
+ h: function(e, t, n) {
1275
+ if (t === "ho") {
1276
+ let r = e.getHours() % 12;
1277
+ return r === 0 && (r = 12), n.ordinalNumber(r, { unit: "hour" });
1278
+ }
1279
+ return te.h(e, t);
1280
+ },
1281
+ // Hour [0-23]
1282
+ H: function(e, t, n) {
1283
+ return t === "Ho" ? n.ordinalNumber(e.getHours(), { unit: "hour" }) : te.H(e, t);
1284
+ },
1285
+ // Hour [0-11]
1286
+ K: function(e, t, n) {
1287
+ const r = e.getHours() % 12;
1288
+ return t === "Ko" ? n.ordinalNumber(r, { unit: "hour" }) : _(r, t.length);
1289
+ },
1290
+ // Hour [1-24]
1291
+ k: function(e, t, n) {
1292
+ let r = e.getHours();
1293
+ return r === 0 && (r = 24), t === "ko" ? n.ordinalNumber(r, { unit: "hour" }) : _(r, t.length);
1294
+ },
1295
+ // Minute
1296
+ m: function(e, t, n) {
1297
+ return t === "mo" ? n.ordinalNumber(e.getMinutes(), { unit: "minute" }) : te.m(e, t);
1298
+ },
1299
+ // Second
1300
+ s: function(e, t, n) {
1301
+ return t === "so" ? n.ordinalNumber(e.getSeconds(), { unit: "second" }) : te.s(e, t);
1302
+ },
1303
+ // Fraction of second
1304
+ S: function(e, t) {
1305
+ return te.S(e, t);
1306
+ },
1307
+ // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)
1308
+ X: function(e, t, n) {
1309
+ const r = e.getTimezoneOffset();
1310
+ if (r === 0)
1311
+ return "Z";
1312
+ switch (t) {
1313
+ // Hours and optional minutes
1314
+ case "X":
1315
+ return nt(r);
1316
+ // Hours, minutes and optional seconds without `:` delimiter
1317
+ // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
1318
+ // so this token always has the same output as `XX`
1319
+ case "XXXX":
1320
+ case "XX":
1321
+ return re(r);
1322
+ // Hours, minutes and optional seconds with `:` delimiter
1323
+ // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
1324
+ // so this token always has the same output as `XXX`
1325
+ case "XXXXX":
1326
+ case "XXX":
1327
+ // Hours and minutes with `:` delimiter
1328
+ default:
1329
+ return re(r, ":");
1330
+ }
1331
+ },
1332
+ // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)
1333
+ x: function(e, t, n) {
1334
+ const r = e.getTimezoneOffset();
1335
+ switch (t) {
1336
+ // Hours and optional minutes
1337
+ case "x":
1338
+ return nt(r);
1339
+ // Hours, minutes and optional seconds without `:` delimiter
1340
+ // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
1341
+ // so this token always has the same output as `xx`
1342
+ case "xxxx":
1343
+ case "xx":
1344
+ return re(r);
1345
+ // Hours, minutes and optional seconds with `:` delimiter
1346
+ // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
1347
+ // so this token always has the same output as `xxx`
1348
+ case "xxxxx":
1349
+ case "xxx":
1350
+ // Hours and minutes with `:` delimiter
1351
+ default:
1352
+ return re(r, ":");
1353
+ }
1354
+ },
1355
+ // Timezone (GMT)
1356
+ O: function(e, t, n) {
1357
+ const r = e.getTimezoneOffset();
1358
+ switch (t) {
1359
+ // Short
1360
+ case "O":
1361
+ case "OO":
1362
+ case "OOO":
1363
+ return "GMT" + tt(r, ":");
1364
+ // Long
1365
+ case "OOOO":
1366
+ default:
1367
+ return "GMT" + re(r, ":");
1368
+ }
1369
+ },
1370
+ // Timezone (specific non-location)
1371
+ z: function(e, t, n) {
1372
+ const r = e.getTimezoneOffset();
1373
+ switch (t) {
1374
+ // Short
1375
+ case "z":
1376
+ case "zz":
1377
+ case "zzz":
1378
+ return "GMT" + tt(r, ":");
1379
+ // Long
1380
+ case "zzzz":
1381
+ default:
1382
+ return "GMT" + re(r, ":");
1383
+ }
1384
+ },
1385
+ // Seconds timestamp
1386
+ t: function(e, t, n) {
1387
+ const r = Math.trunc(+e / 1e3);
1388
+ return _(r, t.length);
1389
+ },
1390
+ // Milliseconds timestamp
1391
+ T: function(e, t, n) {
1392
+ return _(+e, t.length);
1393
+ }
1394
+ };
1395
+ function tt(e, t = "") {
1396
+ const n = e > 0 ? "-" : "+", r = Math.abs(e), o = Math.trunc(r / 60), s = r % 60;
1397
+ return s === 0 ? n + String(o) : n + String(o) + t + _(s, 2);
1398
+ }
1399
+ function nt(e, t) {
1400
+ return e % 60 === 0 ? (e > 0 ? "-" : "+") + _(Math.abs(e) / 60, 2) : re(e, t);
1401
+ }
1402
+ function re(e, t = "") {
1403
+ const n = e > 0 ? "-" : "+", r = Math.abs(e), o = _(Math.trunc(r / 60), 2), s = _(r % 60, 2);
1404
+ return n + o + t + s;
1405
+ }
1406
+ const rt = (e, t) => {
1407
+ switch (e) {
1408
+ case "P":
1409
+ return t.date({ width: "short" });
1410
+ case "PP":
1411
+ return t.date({ width: "medium" });
1412
+ case "PPP":
1413
+ return t.date({ width: "long" });
1414
+ case "PPPP":
1415
+ default:
1416
+ return t.date({ width: "full" });
1417
+ }
1418
+ }, Mt = (e, t) => {
1419
+ switch (e) {
1420
+ case "p":
1421
+ return t.time({ width: "short" });
1422
+ case "pp":
1423
+ return t.time({ width: "medium" });
1424
+ case "ppp":
1425
+ return t.time({ width: "long" });
1426
+ case "pppp":
1427
+ default:
1428
+ return t.time({ width: "full" });
1429
+ }
1430
+ }, gr = (e, t) => {
1431
+ const n = e.match(/(P+)(p+)?/) || [], r = n[1], o = n[2];
1432
+ if (!o)
1433
+ return rt(e, t);
1434
+ let s;
1435
+ switch (r) {
1436
+ case "P":
1437
+ s = t.dateTime({ width: "short" });
1438
+ break;
1439
+ case "PP":
1440
+ s = t.dateTime({ width: "medium" });
1441
+ break;
1442
+ case "PPP":
1443
+ s = t.dateTime({ width: "long" });
1444
+ break;
1445
+ case "PPPP":
1446
+ default:
1447
+ s = t.dateTime({ width: "full" });
1448
+ break;
1449
+ }
1450
+ return s.replace("{{date}}", rt(r, t)).replace("{{time}}", Mt(o, t));
1451
+ }, pr = {
1452
+ p: Mt,
1453
+ P: gr
1454
+ }, wr = /^D+$/, br = /^Y+$/, Mr = ["D", "DD", "YY", "YYYY"];
1455
+ function kr(e) {
1456
+ return wr.test(e);
1457
+ }
1458
+ function Dr(e) {
1459
+ return br.test(e);
1460
+ }
1461
+ function vr(e, t, n) {
1462
+ const r = Or(e, t, n);
1463
+ if (console.warn(r), Mr.includes(e)) throw new RangeError(r);
1464
+ }
1465
+ function Or(e, t, n) {
1466
+ const r = e[0] === "Y" ? "years" : "days of the month";
1467
+ return `Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`;
1468
+ }
1469
+ const Wr = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g, Sr = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g, Cr = /^'([^]*?)'?$/, Nr = /''/g, xr = /[a-zA-Z]/;
1470
+ function _r(e, t, n) {
1471
+ const r = ge(), o = n?.locale ?? r.locale ?? qe, s = n?.firstWeekContainsDate ?? n?.locale?.options?.firstWeekContainsDate ?? r.firstWeekContainsDate ?? r.locale?.options?.firstWeekContainsDate ?? 1, i = n?.weekStartsOn ?? n?.locale?.options?.weekStartsOn ?? r.weekStartsOn ?? r.locale?.options?.weekStartsOn ?? 0, a = T(e, n?.in);
1472
+ if (!Nn(a))
1473
+ throw new RangeError("Invalid time value");
1474
+ let c = t.match(Sr).map((l) => {
1475
+ const u = l[0];
1476
+ if (u === "p" || u === "P") {
1477
+ const h = pr[u];
1478
+ return h(l, o.formatLong);
1479
+ }
1480
+ return l;
1481
+ }).join("").match(Wr).map((l) => {
1482
+ if (l === "''")
1483
+ return { isToken: !1, value: "'" };
1484
+ const u = l[0];
1485
+ if (u === "'")
1486
+ return { isToken: !1, value: Tr(l) };
1487
+ if (et[u])
1488
+ return { isToken: !0, value: l };
1489
+ if (u.match(xr))
1490
+ throw new RangeError(
1491
+ "Format string contains an unescaped latin alphabet character `" + u + "`"
1492
+ );
1493
+ return { isToken: !1, value: l };
1494
+ });
1495
+ o.localize.preprocessor && (c = o.localize.preprocessor(a, c));
1496
+ const d = {
1497
+ firstWeekContainsDate: s,
1498
+ weekStartsOn: i,
1499
+ locale: o
1500
+ };
1501
+ return c.map((l) => {
1502
+ if (!l.isToken) return l.value;
1503
+ const u = l.value;
1504
+ (!n?.useAdditionalWeekYearTokens && Dr(u) || !n?.useAdditionalDayOfYearTokens && kr(u)) && vr(u, t, String(e));
1505
+ const h = et[u[0]];
1506
+ return h(a, u, o.localize, d);
1507
+ }).join("");
1508
+ }
1509
+ function Tr(e) {
1510
+ const t = e.match(Cr);
1511
+ return t ? t[1].replace(Nr, "'") : e;
1512
+ }
1513
+ function Yr(e, t) {
1514
+ const n = T(e, t?.in), r = n.getFullYear(), o = n.getMonth(), s = B(n, 0);
1515
+ return s.setFullYear(r, o + 1, 0), s.setHours(0, 0, 0, 0), s.getDate();
1516
+ }
1517
+ function Er(e, t) {
1518
+ return T(e, t?.in).getMonth();
1519
+ }
1520
+ function Pr(e, t) {
1521
+ return T(e, t?.in).getFullYear();
1522
+ }
1523
+ function Fr(e, t) {
1524
+ return +T(e) > +T(t);
1525
+ }
1526
+ function Br(e, t) {
1527
+ return +T(e) < +T(t);
1528
+ }
1529
+ function Ir(e, t, n) {
1530
+ const [r, o] = de(
1531
+ n?.in,
1532
+ e,
1533
+ t
1534
+ );
1535
+ return r.getFullYear() === o.getFullYear() && r.getMonth() === o.getMonth();
1536
+ }
1537
+ function Hr(e, t, n) {
1538
+ const [r, o] = de(
1539
+ n?.in,
1540
+ e,
1541
+ t
1542
+ );
1543
+ return r.getFullYear() === o.getFullYear();
1544
+ }
1545
+ function qr(e, t, n) {
1546
+ const r = T(e, n?.in), o = r.getFullYear(), s = r.getDate(), i = B(e, 0);
1547
+ i.setFullYear(o, t, 15), i.setHours(0, 0, 0, 0);
1548
+ const a = Yr(i);
1549
+ return r.setMonth(t, Math.min(s, a)), r;
1550
+ }
1551
+ function Ar(e, t, n) {
1552
+ const r = T(e, n?.in);
1553
+ return isNaN(+r) ? B(e, NaN) : (r.setFullYear(t), r);
1554
+ }
1555
+ const ot = 5, jr = 4;
1556
+ function zr(e, t) {
1557
+ const n = t.startOfMonth(e), r = n.getDay() > 0 ? n.getDay() : 7, o = t.addDays(e, -r + 1), s = t.addDays(o, ot * 7 - 1);
1558
+ return t.getMonth(e) === t.getMonth(s) ? ot : jr;
1559
+ }
1560
+ function kt(e, t) {
1561
+ const n = t.startOfMonth(e), r = n.getDay();
1562
+ return r === 1 ? n : r === 0 ? t.addDays(n, -6) : t.addDays(n, -1 * (r - 1));
1563
+ }
1564
+ function Rr(e, t) {
1565
+ const n = kt(e, t), r = zr(e, t);
1566
+ return t.addDays(n, r * 7 - 1);
1567
+ }
1568
+ class ee {
1569
+ /**
1570
+ * Creates an instance of `DateLib`.
1571
+ *
1572
+ * @param options Configuration options for the date library.
1573
+ * @param overrides Custom overrides for the date library functions.
1574
+ */
1575
+ constructor(t, n) {
1576
+ this.Date = Date, this.today = () => this.overrides?.today ? this.overrides.today() : this.options.timeZone ? H.tz(this.options.timeZone) : new this.Date(), this.newDate = (r, o, s) => this.overrides?.newDate ? this.overrides.newDate(r, o, s) : this.options.timeZone ? new H(r, o, s, this.options.timeZone) : new Date(r, o, s), this.addDays = (r, o) => this.overrides?.addDays ? this.overrides.addDays(r, o) : dt(r, o), this.addMonths = (r, o) => this.overrides?.addMonths ? this.overrides.addMonths(r, o) : lt(r, o), this.addWeeks = (r, o) => this.overrides?.addWeeks ? this.overrides.addWeeks(r, o) : vn(r, o), this.addYears = (r, o) => this.overrides?.addYears ? this.overrides.addYears(r, o) : On(r, o), this.differenceInCalendarDays = (r, o) => this.overrides?.differenceInCalendarDays ? this.overrides.differenceInCalendarDays(r, o) : ht(r, o), this.differenceInCalendarMonths = (r, o) => this.overrides?.differenceInCalendarMonths ? this.overrides.differenceInCalendarMonths(r, o) : xn(r, o), this.eachMonthOfInterval = (r) => this.overrides?.eachMonthOfInterval ? this.overrides.eachMonthOfInterval(r) : Yn(r), this.endOfBroadcastWeek = (r) => this.overrides?.endOfBroadcastWeek ? this.overrides.endOfBroadcastWeek(r) : Rr(r, this), this.endOfISOWeek = (r) => this.overrides?.endOfISOWeek ? this.overrides.endOfISOWeek(r) : Fn(r), this.endOfMonth = (r) => this.overrides?.endOfMonth ? this.overrides.endOfMonth(r) : _n(r), this.endOfWeek = (r, o) => this.overrides?.endOfWeek ? this.overrides.endOfWeek(r, o) : gt(r, this.options), this.endOfYear = (r) => this.overrides?.endOfYear ? this.overrides.endOfYear(r) : Pn(r), this.format = (r, o, s) => {
1577
+ const i = this.overrides?.format ? this.overrides.format(r, o, this.options) : _r(r, o, this.options);
1578
+ return this.options.numerals && this.options.numerals !== "latn" ? this.replaceDigits(i) : i;
1579
+ }, this.getISOWeek = (r) => this.overrides?.getISOWeek ? this.overrides.getISOWeek(r) : pt(r), this.getMonth = (r, o) => this.overrides?.getMonth ? this.overrides.getMonth(r, this.options) : Er(r, this.options), this.getYear = (r, o) => this.overrides?.getYear ? this.overrides.getYear(r, this.options) : Pr(r, this.options), this.getWeek = (r, o) => this.overrides?.getWeek ? this.overrides.getWeek(r, this.options) : bt(r, this.options), this.isAfter = (r, o) => this.overrides?.isAfter ? this.overrides.isAfter(r, o) : Fr(r, o), this.isBefore = (r, o) => this.overrides?.isBefore ? this.overrides.isBefore(r, o) : Br(r, o), this.isDate = (r) => this.overrides?.isDate ? this.overrides.isDate(r) : mt(r), this.isSameDay = (r, o) => this.overrides?.isSameDay ? this.overrides.isSameDay(r, o) : Cn(r, o), this.isSameMonth = (r, o) => this.overrides?.isSameMonth ? this.overrides.isSameMonth(r, o) : Ir(r, o), this.isSameYear = (r, o) => this.overrides?.isSameYear ? this.overrides.isSameYear(r, o) : Hr(r, o), this.max = (r) => this.overrides?.max ? this.overrides.max(r) : Wn(r), this.min = (r) => this.overrides?.min ? this.overrides.min(r) : Sn(r), this.setMonth = (r, o) => this.overrides?.setMonth ? this.overrides.setMonth(r, o) : qr(r, o), this.setYear = (r, o) => this.overrides?.setYear ? this.overrides.setYear(r, o) : Ar(r, o), this.startOfBroadcastWeek = (r, o) => this.overrides?.startOfBroadcastWeek ? this.overrides.startOfBroadcastWeek(r, this) : kt(r, this), this.startOfDay = (r) => this.overrides?.startOfDay ? this.overrides.startOfDay(r) : ye(r), this.startOfISOWeek = (r) => this.overrides?.startOfISOWeek ? this.overrides.startOfISOWeek(r) : me(r), this.startOfMonth = (r) => this.overrides?.startOfMonth ? this.overrides.startOfMonth(r) : En(r), this.startOfWeek = (r, o) => this.overrides?.startOfWeek ? this.overrides.startOfWeek(r, this.options) : ue(r, this.options), this.startOfYear = (r) => this.overrides?.startOfYear ? this.overrides.startOfYear(r) : yt(r), this.options = { locale: qe, ...t }, this.overrides = n;
1580
+ }
1581
+ /**
1582
+ * Generates a mapping of Arabic digits (0-9) to the target numbering system
1583
+ * digits.
1584
+ *
1585
+ * @since 9.5.0
1586
+ * @returns A record mapping Arabic digits to the target numerals.
1587
+ */
1588
+ getDigitMap() {
1589
+ const { numerals: t = "latn" } = this.options, n = new Intl.NumberFormat("en-US", {
1590
+ numberingSystem: t
1591
+ }), r = {};
1592
+ for (let o = 0; o < 10; o++)
1593
+ r[o.toString()] = n.format(o);
1594
+ return r;
1595
+ }
1596
+ /**
1597
+ * Replaces Arabic digits in a string with the target numbering system digits.
1598
+ *
1599
+ * @since 9.5.0
1600
+ * @param input The string containing Arabic digits.
1601
+ * @returns The string with digits replaced.
1602
+ */
1603
+ replaceDigits(t) {
1604
+ const n = this.getDigitMap();
1605
+ return t.replace(/\d/g, (r) => n[r] || r);
1606
+ }
1607
+ /**
1608
+ * Formats a number using the configured numbering system.
1609
+ *
1610
+ * @since 9.5.0
1611
+ * @param value The number to format.
1612
+ * @returns The formatted number as a string.
1613
+ */
1614
+ formatNumber(t) {
1615
+ return this.replaceDigits(t.toString());
1616
+ }
1617
+ }
1618
+ const U = new ee();
1619
+ class Dt {
1620
+ constructor(t, n, r = U) {
1621
+ this.date = t, this.displayMonth = n, this.outside = !!(n && !r.isSameMonth(t, n)), this.dateLib = r;
1622
+ }
1623
+ /**
1624
+ * Checks if this day is equal to another `CalendarDay`, considering both the
1625
+ * date and the displayed month.
1626
+ *
1627
+ * @param day The `CalendarDay` to compare with.
1628
+ * @returns `true` if the days are equal, otherwise `false`.
1629
+ */
1630
+ isEqualTo(t) {
1631
+ return this.dateLib.isSameDay(t.date, this.date) && this.dateLib.isSameMonth(t.displayMonth, this.displayMonth);
1632
+ }
1633
+ }
1634
+ class $r {
1635
+ constructor(t, n) {
1636
+ this.date = t, this.weeks = n;
1637
+ }
1638
+ }
1639
+ class Zr {
1640
+ constructor(t, n) {
1641
+ this.days = n, this.weekNumber = t;
1642
+ }
1643
+ }
1644
+ function Gr(e) {
1645
+ return f.createElement("button", { ...e });
1646
+ }
1647
+ function Qr(e) {
1648
+ return f.createElement("span", { ...e });
1649
+ }
1650
+ function Lr(e) {
1651
+ const { size: t = 24, orientation: n = "left", className: r } = e;
1652
+ return (
1653
+ // biome-ignore lint/a11y/noSvgWithoutTitle: handled by the parent component
1654
+ f.createElement(
1655
+ "svg",
1656
+ { className: r, width: t, height: t, viewBox: "0 0 24 24" },
1657
+ n === "up" && f.createElement("polygon", { points: "6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28" }),
1658
+ n === "down" && f.createElement("polygon", { points: "6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72" }),
1659
+ n === "left" && f.createElement("polygon", { points: "16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20" }),
1660
+ n === "right" && f.createElement("polygon", { points: "8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20" })
1661
+ )
1662
+ );
1663
+ }
1664
+ function Xr(e) {
1665
+ const { day: t, modifiers: n, ...r } = e;
1666
+ return f.createElement("td", { ...r });
1667
+ }
1668
+ function Ur(e) {
1669
+ const { day: t, modifiers: n, ...r } = e, o = f.useRef(null);
1670
+ return f.useEffect(() => {
1671
+ n.focused && o.current?.focus();
1672
+ }, [n.focused]), f.createElement("button", { ref: o, ...r });
1673
+ }
1674
+ var m;
1675
+ (function(e) {
1676
+ e.Root = "root", e.Chevron = "chevron", e.Day = "day", e.DayButton = "day_button", e.CaptionLabel = "caption_label", e.Dropdowns = "dropdowns", e.Dropdown = "dropdown", e.DropdownRoot = "dropdown_root", e.Footer = "footer", e.MonthGrid = "month_grid", e.MonthCaption = "month_caption", e.MonthsDropdown = "months_dropdown", e.Month = "month", e.Months = "months", e.Nav = "nav", e.NextMonthButton = "button_next", e.PreviousMonthButton = "button_previous", e.Week = "week", e.Weeks = "weeks", e.Weekday = "weekday", e.Weekdays = "weekdays", e.WeekNumber = "week_number", e.WeekNumberHeader = "week_number_header", e.YearsDropdown = "years_dropdown";
1677
+ })(m || (m = {}));
1678
+ var F;
1679
+ (function(e) {
1680
+ e.disabled = "disabled", e.hidden = "hidden", e.outside = "outside", e.focused = "focused", e.today = "today";
1681
+ })(F || (F = {}));
1682
+ var Q;
1683
+ (function(e) {
1684
+ e.range_end = "range_end", e.range_middle = "range_middle", e.range_start = "range_start", e.selected = "selected";
1685
+ })(Q || (Q = {}));
1686
+ var j;
1687
+ (function(e) {
1688
+ e.weeks_before_enter = "weeks_before_enter", e.weeks_before_exit = "weeks_before_exit", e.weeks_after_enter = "weeks_after_enter", e.weeks_after_exit = "weeks_after_exit", e.caption_after_enter = "caption_after_enter", e.caption_after_exit = "caption_after_exit", e.caption_before_enter = "caption_before_enter", e.caption_before_exit = "caption_before_exit";
1689
+ })(j || (j = {}));
1690
+ function Vr(e) {
1691
+ const { options: t, className: n, components: r, classNames: o, ...s } = e, i = [o[m.Dropdown], n].join(" "), a = t?.find(({ value: c }) => c === s.value);
1692
+ return f.createElement(
1693
+ "span",
1694
+ { "data-disabled": s.disabled, className: o[m.DropdownRoot] },
1695
+ f.createElement(r.Select, { className: i, ...s }, t?.map(({ value: c, label: d, disabled: l }) => f.createElement(r.Option, { key: c, value: c, disabled: l }, d))),
1696
+ f.createElement(
1697
+ "span",
1698
+ { className: o[m.CaptionLabel], "aria-hidden": !0 },
1699
+ a?.label,
1700
+ f.createElement(r.Chevron, { orientation: "down", size: 18, className: o[m.Chevron] })
1701
+ )
1702
+ );
1703
+ }
1704
+ function Kr(e) {
1705
+ return f.createElement("div", { ...e });
1706
+ }
1707
+ function Jr(e) {
1708
+ return f.createElement("div", { ...e });
1709
+ }
1710
+ function eo(e) {
1711
+ const { calendarMonth: t, displayIndex: n, ...r } = e;
1712
+ return f.createElement("div", { ...r }, e.children);
1713
+ }
1714
+ function to(e) {
1715
+ const { calendarMonth: t, displayIndex: n, ...r } = e;
1716
+ return f.createElement("div", { ...r });
1717
+ }
1718
+ function no(e) {
1719
+ return f.createElement("table", { ...e });
1720
+ }
1721
+ function ro(e) {
1722
+ return f.createElement("div", { ...e });
1723
+ }
1724
+ const vt = cn(void 0);
1725
+ function pe() {
1726
+ const e = un(vt);
1727
+ if (e === void 0)
1728
+ throw new Error("useDayPicker() must be used within a custom component.");
1729
+ return e;
1730
+ }
1731
+ function oo(e) {
1732
+ const { components: t } = pe();
1733
+ return f.createElement(t.Dropdown, { ...e });
1734
+ }
1735
+ function so(e) {
1736
+ const { onPreviousClick: t, onNextClick: n, previousMonth: r, nextMonth: o, ...s } = e, { components: i, classNames: a, labels: { labelPrevious: c, labelNext: d } } = pe(), l = R((h) => {
1737
+ o && n?.(h);
1738
+ }, [o, n]), u = R((h) => {
1739
+ r && t?.(h);
1740
+ }, [r, t]);
1741
+ return f.createElement(
1742
+ "nav",
1743
+ { ...s },
1744
+ f.createElement(
1745
+ i.PreviousMonthButton,
1746
+ { type: "button", className: a[m.PreviousMonthButton], tabIndex: r ? void 0 : -1, "aria-disabled": r ? void 0 : !0, "aria-label": c(r), onClick: u },
1747
+ f.createElement(i.Chevron, { disabled: r ? void 0 : !0, className: a[m.Chevron], orientation: "left" })
1748
+ ),
1749
+ f.createElement(
1750
+ i.NextMonthButton,
1751
+ { type: "button", className: a[m.NextMonthButton], tabIndex: o ? void 0 : -1, "aria-disabled": o ? void 0 : !0, "aria-label": d(o), onClick: l },
1752
+ f.createElement(i.Chevron, { disabled: o ? void 0 : !0, orientation: "right", className: a[m.Chevron] })
1753
+ )
1754
+ );
1755
+ }
1756
+ function ao(e) {
1757
+ const { components: t } = pe();
1758
+ return f.createElement(t.Button, { ...e });
1759
+ }
1760
+ function io(e) {
1761
+ return f.createElement("option", { ...e });
1762
+ }
1763
+ function co(e) {
1764
+ const { components: t } = pe();
1765
+ return f.createElement(t.Button, { ...e });
1766
+ }
1767
+ function uo(e) {
1768
+ const { rootRef: t, ...n } = e;
1769
+ return f.createElement("div", { ...n, ref: t });
1770
+ }
1771
+ function lo(e) {
1772
+ return f.createElement("select", { ...e });
1773
+ }
1774
+ function fo(e) {
1775
+ const { week: t, ...n } = e;
1776
+ return f.createElement("tr", { ...n });
1777
+ }
1778
+ function ho(e) {
1779
+ return f.createElement("th", { ...e });
1780
+ }
1781
+ function mo(e) {
1782
+ return f.createElement(
1783
+ "thead",
1784
+ { "aria-hidden": !0 },
1785
+ f.createElement("tr", { ...e })
1786
+ );
1787
+ }
1788
+ function yo(e) {
1789
+ const { week: t, ...n } = e;
1790
+ return f.createElement("th", { ...n });
1791
+ }
1792
+ function go(e) {
1793
+ return f.createElement("th", { ...e });
1794
+ }
1795
+ function po(e) {
1796
+ return f.createElement("tbody", { ...e });
1797
+ }
1798
+ function wo(e) {
1799
+ const { components: t } = pe();
1800
+ return f.createElement(t.Dropdown, { ...e });
1801
+ }
1802
+ const bo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1803
+ __proto__: null,
1804
+ Button: Gr,
1805
+ CaptionLabel: Qr,
1806
+ Chevron: Lr,
1807
+ Day: Xr,
1808
+ DayButton: Ur,
1809
+ Dropdown: Vr,
1810
+ DropdownNav: Kr,
1811
+ Footer: Jr,
1812
+ Month: eo,
1813
+ MonthCaption: to,
1814
+ MonthGrid: no,
1815
+ Months: ro,
1816
+ MonthsDropdown: oo,
1817
+ Nav: so,
1818
+ NextMonthButton: ao,
1819
+ Option: io,
1820
+ PreviousMonthButton: co,
1821
+ Root: uo,
1822
+ Select: lo,
1823
+ Week: fo,
1824
+ WeekNumber: yo,
1825
+ WeekNumberHeader: go,
1826
+ Weekday: ho,
1827
+ Weekdays: mo,
1828
+ Weeks: po,
1829
+ YearsDropdown: wo
1830
+ }, Symbol.toStringTag, { value: "Module" }));
1831
+ function K(e, t, n = !1, r = U) {
1832
+ let { from: o, to: s } = e;
1833
+ const { differenceInCalendarDays: i, isSameDay: a } = r;
1834
+ return o && s ? (i(s, o) < 0 && ([o, s] = [s, o]), i(t, o) >= (n ? 1 : 0) && i(s, t) >= (n ? 1 : 0)) : !n && s ? a(s, t) : !n && o ? a(o, t) : !1;
1835
+ }
1836
+ function Ot(e) {
1837
+ return !!(e && typeof e == "object" && "before" in e && "after" in e);
1838
+ }
1839
+ function Ae(e) {
1840
+ return !!(e && typeof e == "object" && "from" in e);
1841
+ }
1842
+ function Wt(e) {
1843
+ return !!(e && typeof e == "object" && "after" in e);
1844
+ }
1845
+ function St(e) {
1846
+ return !!(e && typeof e == "object" && "before" in e);
1847
+ }
1848
+ function Ct(e) {
1849
+ return !!(e && typeof e == "object" && "dayOfWeek" in e);
1850
+ }
1851
+ function Nt(e, t) {
1852
+ return Array.isArray(e) && e.every(t.isDate);
1853
+ }
1854
+ function J(e, t, n = U) {
1855
+ const r = Array.isArray(t) ? t : [t], { isSameDay: o, differenceInCalendarDays: s, isAfter: i } = n;
1856
+ return r.some((a) => {
1857
+ if (typeof a == "boolean")
1858
+ return a;
1859
+ if (n.isDate(a))
1860
+ return o(e, a);
1861
+ if (Nt(a, n))
1862
+ return a.includes(e);
1863
+ if (Ae(a))
1864
+ return K(a, e, !1, n);
1865
+ if (Ct(a))
1866
+ return Array.isArray(a.dayOfWeek) ? a.dayOfWeek.includes(e.getDay()) : a.dayOfWeek === e.getDay();
1867
+ if (Ot(a)) {
1868
+ const c = s(a.before, e), d = s(a.after, e), l = c > 0, u = d < 0;
1869
+ return i(a.before, a.after) ? u && l : l || u;
1870
+ }
1871
+ return Wt(a) ? s(e, a.after) > 0 : St(a) ? s(a.before, e) > 0 : typeof a == "function" ? a(e) : !1;
1872
+ });
1873
+ }
1874
+ function Mo(e, t, n, r, o) {
1875
+ const { disabled: s, hidden: i, modifiers: a, showOutsideDays: c, broadcastCalendar: d, today: l } = t, { isSameDay: u, isSameMonth: h, startOfMonth: g, isBefore: p, endOfMonth: O, isAfter: w } = o, W = n && g(n), x = r && O(r), b = {
1876
+ [F.focused]: [],
1877
+ [F.outside]: [],
1878
+ [F.disabled]: [],
1879
+ [F.hidden]: [],
1880
+ [F.today]: []
1881
+ }, Y = {};
1882
+ for (const y of e) {
1883
+ const { date: k, displayMonth: M } = y, C = !!(M && !h(k, M)), I = !!(W && p(k, W)), q = !!(x && w(k, x)), A = !!(s && J(k, s, o)), $ = !!(i && J(k, i, o)) || I || q || // Broadcast calendar will show outside days as default
1884
+ !d && !c && C || d && c === !1 && C, se = u(k, l ?? o.today());
1885
+ C && b.outside.push(y), A && b.disabled.push(y), $ && b.hidden.push(y), se && b.today.push(y), a && Object.keys(a).forEach((ae) => {
1886
+ const ie = a?.[ae];
1887
+ ie && J(k, ie, o) && (Y[ae] ? Y[ae].push(y) : Y[ae] = [y]);
1888
+ });
1889
+ }
1890
+ return (y) => {
1891
+ const k = {
1892
+ [F.focused]: !1,
1893
+ [F.disabled]: !1,
1894
+ [F.hidden]: !1,
1895
+ [F.outside]: !1,
1896
+ [F.today]: !1
1897
+ }, M = {};
1898
+ for (const C in b) {
1899
+ const I = b[C];
1900
+ k[C] = I.some((q) => q === y);
1901
+ }
1902
+ for (const C in Y)
1903
+ M[C] = Y[C].some((I) => I === y);
1904
+ return {
1905
+ ...k,
1906
+ // custom modifiers should override all the previous ones
1907
+ ...M
1908
+ };
1909
+ };
1910
+ }
1911
+ function ko(e, t, n = {}) {
1912
+ return Object.entries(e).filter(([, o]) => o === !0).reduce((o, [s]) => (n[s] ? o.push(n[s]) : t[F[s]] ? o.push(t[F[s]]) : t[Q[s]] && o.push(t[Q[s]]), o), [t[m.Day]]);
1913
+ }
1914
+ function Do(e) {
1915
+ return {
1916
+ ...bo,
1917
+ ...e
1918
+ };
1919
+ }
1920
+ function vo(e) {
1921
+ const t = {
1922
+ "data-mode": e.mode ?? void 0,
1923
+ "data-required": "required" in e ? e.required : void 0,
1924
+ "data-multiple-months": e.numberOfMonths && e.numberOfMonths > 1 || void 0,
1925
+ "data-week-numbers": e.showWeekNumber || void 0,
1926
+ "data-broadcast-calendar": e.broadcastCalendar || void 0,
1927
+ "data-nav-layout": e.navLayout || void 0
1928
+ };
1929
+ return Object.entries(e).forEach(([n, r]) => {
1930
+ n.startsWith("data-") && (t[n] = r);
1931
+ }), t;
1932
+ }
1933
+ function je() {
1934
+ const e = {};
1935
+ for (const t in m)
1936
+ e[m[t]] = `rdp-${m[t]}`;
1937
+ for (const t in F)
1938
+ e[F[t]] = `rdp-${F[t]}`;
1939
+ for (const t in Q)
1940
+ e[Q[t]] = `rdp-${Q[t]}`;
1941
+ for (const t in j)
1942
+ e[j[t]] = `rdp-${j[t]}`;
1943
+ return e;
1944
+ }
1945
+ function xt(e, t, n) {
1946
+ return (n ?? new ee(t)).format(e, "LLLL y");
1947
+ }
1948
+ const Oo = xt;
1949
+ function Wo(e, t, n) {
1950
+ return (n ?? new ee(t)).format(e, "d");
1951
+ }
1952
+ function So(e, t = U) {
1953
+ return t.format(e, "LLLL");
1954
+ }
1955
+ function Co(e, t, n) {
1956
+ return (n ?? new ee(t)).format(e, "cccccc");
1957
+ }
1958
+ function No(e, t = U) {
1959
+ return e < 10 ? t.formatNumber(`0${e.toLocaleString()}`) : t.formatNumber(`${e.toLocaleString()}`);
1960
+ }
1961
+ function xo() {
1962
+ return "";
1963
+ }
1964
+ function _t(e, t = U) {
1965
+ return t.format(e, "yyyy");
1966
+ }
1967
+ const _o = _t, To = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1968
+ __proto__: null,
1969
+ formatCaption: xt,
1970
+ formatDay: Wo,
1971
+ formatMonthCaption: Oo,
1972
+ formatMonthDropdown: So,
1973
+ formatWeekNumber: No,
1974
+ formatWeekNumberHeader: xo,
1975
+ formatWeekdayName: Co,
1976
+ formatYearCaption: _o,
1977
+ formatYearDropdown: _t
1978
+ }, Symbol.toStringTag, { value: "Module" }));
1979
+ function Yo(e) {
1980
+ return e?.formatMonthCaption && !e.formatCaption && (e.formatCaption = e.formatMonthCaption), e?.formatYearCaption && !e.formatYearDropdown && (e.formatYearDropdown = e.formatYearCaption), {
1981
+ ...To,
1982
+ ...e
1983
+ };
1984
+ }
1985
+ function Eo(e, t, n, r, o) {
1986
+ const { startOfMonth: s, startOfYear: i, endOfYear: a, eachMonthOfInterval: c, getMonth: d } = o;
1987
+ return c({
1988
+ start: i(e),
1989
+ end: a(e)
1990
+ }).map((h) => {
1991
+ const g = r.formatMonthDropdown(h, o), p = d(h), O = t && h < s(t) || n && h > s(n) || !1;
1992
+ return { value: p, label: g, disabled: O };
1993
+ });
1994
+ }
1995
+ function Po(e, t = {}, n = {}) {
1996
+ let r = { ...t?.[m.Day] };
1997
+ return Object.entries(e).filter(([, o]) => o === !0).forEach(([o]) => {
1998
+ r = {
1999
+ ...r,
2000
+ ...n?.[o]
2001
+ };
2002
+ }), r;
2003
+ }
2004
+ function Fo(e, t, n) {
2005
+ const r = e.today(), o = t ? e.startOfISOWeek(r) : e.startOfWeek(r), s = [];
2006
+ for (let i = 0; i < 7; i++) {
2007
+ const a = e.addDays(o, i);
2008
+ s.push(a);
2009
+ }
2010
+ return s;
2011
+ }
2012
+ function Bo(e, t, n, r, o = !1) {
2013
+ if (!e || !t)
2014
+ return;
2015
+ const { startOfYear: s, endOfYear: i, addYears: a, getYear: c, isBefore: d, isSameYear: l } = r, u = s(e), h = i(t), g = [];
2016
+ let p = u;
2017
+ for (; d(p, h) || l(p, h); )
2018
+ g.push(p), p = a(p, 1);
2019
+ return o && g.reverse(), g.map((O) => {
2020
+ const w = n.formatYearDropdown(O, r);
2021
+ return {
2022
+ value: c(O),
2023
+ label: w,
2024
+ disabled: !1
2025
+ };
2026
+ });
2027
+ }
2028
+ function Tt(e, t, n, r) {
2029
+ let o = (r ?? new ee(n)).format(e, "PPPP");
2030
+ return t.today && (o = `Today, ${o}`), t.selected && (o = `${o}, selected`), o;
2031
+ }
2032
+ const Io = Tt;
2033
+ function Yt(e, t, n) {
2034
+ return (n ?? new ee(t)).format(e, "LLLL y");
2035
+ }
2036
+ const Ho = Yt;
2037
+ function qo(e, t, n, r) {
2038
+ let o = (r ?? new ee(n)).format(e, "PPPP");
2039
+ return t?.today && (o = `Today, ${o}`), o;
2040
+ }
2041
+ function Ao(e) {
2042
+ return "Choose the Month";
2043
+ }
2044
+ function jo() {
2045
+ return "";
2046
+ }
2047
+ function zo(e) {
2048
+ return "Go to the Next Month";
2049
+ }
2050
+ function Ro(e) {
2051
+ return "Go to the Previous Month";
2052
+ }
2053
+ function $o(e, t, n) {
2054
+ return (n ?? new ee(t)).format(e, "cccc");
2055
+ }
2056
+ function Zo(e, t) {
2057
+ return `Week ${e}`;
2058
+ }
2059
+ function Go(e) {
2060
+ return "Week Number";
2061
+ }
2062
+ function Qo(e) {
2063
+ return "Choose the Year";
2064
+ }
2065
+ const Lo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2066
+ __proto__: null,
2067
+ labelCaption: Ho,
2068
+ labelDay: Io,
2069
+ labelDayButton: Tt,
2070
+ labelGrid: Yt,
2071
+ labelGridcell: qo,
2072
+ labelMonthDropdown: Ao,
2073
+ labelNav: jo,
2074
+ labelNext: zo,
2075
+ labelPrevious: Ro,
2076
+ labelWeekNumber: Zo,
2077
+ labelWeekNumberHeader: Go,
2078
+ labelWeekday: $o,
2079
+ labelYearDropdown: Qo
2080
+ }, Symbol.toStringTag, { value: "Module" })), we = (e) => e instanceof HTMLElement ? e : null, Pe = (e) => [
2081
+ ...e.querySelectorAll("[data-animated-month]") ?? []
2082
+ ], Xo = (e) => we(e.querySelector("[data-animated-month]")), Fe = (e) => we(e.querySelector("[data-animated-caption]")), Be = (e) => we(e.querySelector("[data-animated-weeks]")), Uo = (e) => we(e.querySelector("[data-animated-nav]")), Vo = (e) => we(e.querySelector("[data-animated-weekdays]"));
2083
+ function Ko(e, t, { classNames: n, months: r, focused: o, dateLib: s }) {
2084
+ const i = De(null), a = De(r), c = De(!1);
2085
+ dn(() => {
2086
+ const d = a.current;
2087
+ if (a.current = r, !t || !e.current || // safety check because the ref can be set to anything by consumers
2088
+ !(e.current instanceof HTMLElement) || // validation required for the animation to work as expected
2089
+ r.length === 0 || d.length === 0 || r.length !== d.length)
2090
+ return;
2091
+ const l = s.isSameMonth(r[0].date, d[0].date), u = s.isAfter(r[0].date, d[0].date), h = u ? n[j.caption_after_enter] : n[j.caption_before_enter], g = u ? n[j.weeks_after_enter] : n[j.weeks_before_enter], p = i.current, O = e.current.cloneNode(!0);
2092
+ if (O instanceof HTMLElement ? (Pe(O).forEach((b) => {
2093
+ if (!(b instanceof HTMLElement))
2094
+ return;
2095
+ const Y = Xo(b);
2096
+ Y && b.contains(Y) && b.removeChild(Y);
2097
+ const y = Fe(b);
2098
+ y && y.classList.remove(h);
2099
+ const k = Be(b);
2100
+ k && k.classList.remove(g);
2101
+ }), i.current = O) : i.current = null, c.current || l || // skip animation if a day is focused because it can cause issues to the animation and is better for a11y
2102
+ o)
2103
+ return;
2104
+ const w = p instanceof HTMLElement ? Pe(p) : [], W = Pe(e.current);
2105
+ if (W?.every((x) => x instanceof HTMLElement) && w && w.every((x) => x instanceof HTMLElement)) {
2106
+ c.current = !0, e.current.style.isolation = "isolate";
2107
+ const x = Uo(e.current);
2108
+ x && (x.style.zIndex = "1"), W.forEach((b, Y) => {
2109
+ const y = w[Y];
2110
+ if (!y)
2111
+ return;
2112
+ b.style.position = "relative", b.style.overflow = "hidden";
2113
+ const k = Fe(b);
2114
+ k && k.classList.add(h);
2115
+ const M = Be(b);
2116
+ M && M.classList.add(g);
2117
+ const C = () => {
2118
+ c.current = !1, e.current && (e.current.style.isolation = ""), x && (x.style.zIndex = ""), k && k.classList.remove(h), M && M.classList.remove(g), b.style.position = "", b.style.overflow = "", b.contains(y) && b.removeChild(y);
2119
+ };
2120
+ y.style.pointerEvents = "none", y.style.position = "absolute", y.style.overflow = "hidden", y.setAttribute("aria-hidden", "true");
2121
+ const I = Vo(y);
2122
+ I && (I.style.opacity = "0");
2123
+ const q = Fe(y);
2124
+ q && (q.classList.add(u ? n[j.caption_before_exit] : n[j.caption_after_exit]), q.addEventListener("animationend", C));
2125
+ const A = Be(y);
2126
+ A && A.classList.add(u ? n[j.weeks_before_exit] : n[j.weeks_after_exit]), b.insertBefore(y, b.firstChild);
2127
+ });
2128
+ }
2129
+ });
2130
+ }
2131
+ function Jo(e, t, n, r) {
2132
+ const o = e[0], s = e[e.length - 1], { ISOWeek: i, fixedWeeks: a, broadcastCalendar: c } = n ?? {}, { addDays: d, differenceInCalendarDays: l, differenceInCalendarMonths: u, endOfBroadcastWeek: h, endOfISOWeek: g, endOfMonth: p, endOfWeek: O, isAfter: w, startOfBroadcastWeek: W, startOfISOWeek: x, startOfWeek: b } = r, Y = c ? W(o, r) : i ? x(o) : b(o), y = c ? h(s) : i ? g(p(s)) : O(p(s)), k = l(y, Y), M = u(s, o) + 1, C = [];
2133
+ for (let A = 0; A <= k; A++) {
2134
+ const $ = d(Y, A);
2135
+ if (t && w($, t))
2136
+ break;
2137
+ C.push($);
2138
+ }
2139
+ const q = (c ? 35 : 42) * M;
2140
+ if (a && C.length < q) {
2141
+ const A = q - C.length;
2142
+ for (let $ = 0; $ < A; $++) {
2143
+ const se = d(C[C.length - 1], 1);
2144
+ C.push(se);
2145
+ }
2146
+ }
2147
+ return C;
2148
+ }
2149
+ function es(e) {
2150
+ const t = [];
2151
+ return e.reduce((n, r) => {
2152
+ const o = r.weeks.reduce((s, i) => s.concat(i.days.slice()), t.slice());
2153
+ return n.concat(o.slice());
2154
+ }, t.slice());
2155
+ }
2156
+ function ts(e, t, n, r) {
2157
+ const { numberOfMonths: o = 1 } = n, s = [];
2158
+ for (let i = 0; i < o; i++) {
2159
+ const a = r.addMonths(e, i);
2160
+ if (t && a > t)
2161
+ break;
2162
+ s.push(a);
2163
+ }
2164
+ return s;
2165
+ }
2166
+ function st(e, t, n, r) {
2167
+ const { month: o, defaultMonth: s, today: i = r.today(), numberOfMonths: a = 1 } = e;
2168
+ let c = o || s || i;
2169
+ const { differenceInCalendarMonths: d, addMonths: l, startOfMonth: u } = r;
2170
+ if (n && d(n, c) < a - 1) {
2171
+ const h = -1 * (a - 1);
2172
+ c = l(n, h);
2173
+ }
2174
+ return t && d(c, t) < 0 && (c = t), u(c);
2175
+ }
2176
+ function ns(e, t, n, r) {
2177
+ const { addDays: o, endOfBroadcastWeek: s, endOfISOWeek: i, endOfMonth: a, endOfWeek: c, getISOWeek: d, getWeek: l, startOfBroadcastWeek: u, startOfISOWeek: h, startOfWeek: g } = r, p = e.reduce((O, w) => {
2178
+ const W = n.broadcastCalendar ? u(w, r) : n.ISOWeek ? h(w) : g(w), x = n.broadcastCalendar ? s(w) : n.ISOWeek ? i(a(w)) : c(a(w)), b = t.filter((M) => M >= W && M <= x), Y = n.broadcastCalendar ? 35 : 42;
2179
+ if (n.fixedWeeks && b.length < Y) {
2180
+ const M = t.filter((C) => {
2181
+ const I = Y - b.length;
2182
+ return C > x && C <= o(x, I);
2183
+ });
2184
+ b.push(...M);
2185
+ }
2186
+ const y = b.reduce((M, C) => {
2187
+ const I = n.ISOWeek ? d(C) : l(C), q = M.find(($) => $.weekNumber === I), A = new Dt(C, w, r);
2188
+ return q ? q.days.push(A) : M.push(new Zr(I, [A])), M;
2189
+ }, []), k = new $r(w, y);
2190
+ return O.push(k), O;
2191
+ }, []);
2192
+ return n.reverseMonths ? p.reverse() : p;
2193
+ }
2194
+ function rs(e, t) {
2195
+ let { startMonth: n, endMonth: r } = e;
2196
+ const { startOfYear: o, startOfDay: s, startOfMonth: i, endOfMonth: a, addYears: c, endOfYear: d, newDate: l, today: u } = t, { fromYear: h, toYear: g, fromMonth: p, toMonth: O } = e;
2197
+ !n && p && (n = p), !n && h && (n = t.newDate(h, 0, 1)), !r && O && (r = O), !r && g && (r = l(g, 11, 31));
2198
+ const w = e.captionLayout === "dropdown" || e.captionLayout === "dropdown-years";
2199
+ return n ? n = i(n) : h ? n = l(h, 0, 1) : !n && w && (n = o(c(e.today ?? u(), -100))), r ? r = a(r) : g ? r = l(g, 11, 31) : !r && w && (r = d(e.today ?? u())), [
2200
+ n && s(n),
2201
+ r && s(r)
2202
+ ];
2203
+ }
2204
+ function os(e, t, n, r) {
2205
+ if (n.disableNavigation)
2206
+ return;
2207
+ const { pagedNavigation: o, numberOfMonths: s = 1 } = n, { startOfMonth: i, addMonths: a, differenceInCalendarMonths: c } = r, d = o ? s : 1, l = i(e);
2208
+ if (!t)
2209
+ return a(l, d);
2210
+ if (!(c(t, e) < s))
2211
+ return a(l, d);
2212
+ }
2213
+ function ss(e, t, n, r) {
2214
+ if (n.disableNavigation)
2215
+ return;
2216
+ const { pagedNavigation: o, numberOfMonths: s } = n, { startOfMonth: i, addMonths: a, differenceInCalendarMonths: c } = r, d = o ? s ?? 1 : 1, l = i(e);
2217
+ if (!t)
2218
+ return a(l, -d);
2219
+ if (!(c(l, t) <= 0))
2220
+ return a(l, -d);
2221
+ }
2222
+ function as(e) {
2223
+ const t = [];
2224
+ return e.reduce((n, r) => n.concat(r.weeks.slice()), t.slice());
2225
+ }
2226
+ function ve(e, t) {
2227
+ const [n, r] = Ie(e);
2228
+ return [t === void 0 ? n : t, r];
2229
+ }
2230
+ function is(e, t) {
2231
+ const [n, r] = rs(e, t), { startOfMonth: o, endOfMonth: s } = t, i = st(e, n, r, t), [a, c] = ve(
2232
+ i,
2233
+ // initialMonth is always computed from props.month if provided
2234
+ e.month ? i : void 0
2235
+ );
2236
+ ln(() => {
2237
+ const k = st(e, n, r, t);
2238
+ c(k);
2239
+ }, [e.timeZone]);
2240
+ const d = ts(a, r, e, t), l = Jo(d, e.endMonth ? s(e.endMonth) : void 0, e, t), u = ns(d, l, e, t), h = as(u), g = es(u), p = ss(a, n, e, t), O = os(a, r, e, t), { disableNavigation: w, onMonthChange: W } = e, x = (k) => h.some((M) => M.days.some((C) => C.isEqualTo(k))), b = (k) => {
2241
+ if (w)
2242
+ return;
2243
+ let M = o(k);
2244
+ n && M < o(n) && (M = o(n)), r && M > o(r) && (M = o(r)), c(M), W?.(M);
2245
+ };
2246
+ return {
2247
+ months: u,
2248
+ weeks: h,
2249
+ days: g,
2250
+ navStart: n,
2251
+ navEnd: r,
2252
+ previousMonth: p,
2253
+ nextMonth: O,
2254
+ goToMonth: b,
2255
+ goToDay: (k) => {
2256
+ x(k) || b(k.date);
2257
+ }
2258
+ };
2259
+ }
2260
+ var L;
2261
+ (function(e) {
2262
+ e[e.Today = 0] = "Today", e[e.Selected = 1] = "Selected", e[e.LastFocused = 2] = "LastFocused", e[e.FocusedModifier = 3] = "FocusedModifier";
2263
+ })(L || (L = {}));
2264
+ function at(e) {
2265
+ return !e[F.disabled] && !e[F.hidden] && !e[F.outside];
2266
+ }
2267
+ function cs(e, t, n, r) {
2268
+ let o, s = -1;
2269
+ for (const i of e) {
2270
+ const a = t(i);
2271
+ at(a) && (a[F.focused] && s < L.FocusedModifier ? (o = i, s = L.FocusedModifier) : r?.isEqualTo(i) && s < L.LastFocused ? (o = i, s = L.LastFocused) : n(i.date) && s < L.Selected ? (o = i, s = L.Selected) : a[F.today] && s < L.Today && (o = i, s = L.Today));
2272
+ }
2273
+ return o || (o = e.find((i) => at(t(i)))), o;
2274
+ }
2275
+ function us(e, t, n, r, o, s, i) {
2276
+ const { ISOWeek: a, broadcastCalendar: c } = s, { addDays: d, addMonths: l, addWeeks: u, addYears: h, endOfBroadcastWeek: g, endOfISOWeek: p, endOfWeek: O, max: w, min: W, startOfBroadcastWeek: x, startOfISOWeek: b, startOfWeek: Y } = i;
2277
+ let k = {
2278
+ day: d,
2279
+ week: u,
2280
+ month: l,
2281
+ year: h,
2282
+ startOfWeek: (M) => c ? x(M, i) : a ? b(M) : Y(M),
2283
+ endOfWeek: (M) => c ? g(M) : a ? p(M) : O(M)
2284
+ }[e](n, t === "after" ? 1 : -1);
2285
+ return t === "before" && r ? k = w([r, k]) : t === "after" && o && (k = W([o, k])), k;
2286
+ }
2287
+ function Et(e, t, n, r, o, s, i, a = 0) {
2288
+ if (a > 365)
2289
+ return;
2290
+ const c = us(e, t, n.date, r, o, s, i), d = !!(s.disabled && J(c, s.disabled, i)), l = !!(s.hidden && J(c, s.hidden, i)), u = c, h = new Dt(c, u, i);
2291
+ return !d && !l ? h : Et(e, t, h, r, o, s, i, a + 1);
2292
+ }
2293
+ function ds(e, t, n, r, o) {
2294
+ const { autoFocus: s } = e, [i, a] = Ie(), c = cs(t.days, n, r || (() => !1), i), [d, l] = Ie(s ? c : void 0);
2295
+ return {
2296
+ isFocusTarget: (O) => !!c?.isEqualTo(O),
2297
+ setFocused: l,
2298
+ focused: d,
2299
+ blur: () => {
2300
+ a(d), l(void 0);
2301
+ },
2302
+ moveFocus: (O, w) => {
2303
+ if (!d)
2304
+ return;
2305
+ const W = Et(O, w, d, t.navStart, t.navEnd, e, o);
2306
+ W && (t.goToDay(W), l(W));
2307
+ }
2308
+ };
2309
+ }
2310
+ function ls(e, t) {
2311
+ const { selected: n, required: r, onSelect: o } = e, [s, i] = ve(n, o ? n : void 0), a = o ? n : s, { isSameDay: c } = t, d = (g) => a?.some((p) => c(p, g)) ?? !1, { min: l, max: u } = e;
2312
+ return {
2313
+ selected: a,
2314
+ select: (g, p, O) => {
2315
+ let w = [...a ?? []];
2316
+ if (d(g)) {
2317
+ if (a?.length === l || r && a?.length === 1)
2318
+ return;
2319
+ w = a?.filter((W) => !c(W, g));
2320
+ } else
2321
+ a?.length === u ? w = [g] : w = [...w, g];
2322
+ return o || i(w), o?.(w, g, p, O), w;
2323
+ },
2324
+ isSelected: d
2325
+ };
2326
+ }
2327
+ function fs(e, t, n = 0, r = 0, o = !1, s = U) {
2328
+ const { from: i, to: a } = t || {}, { isSameDay: c, isAfter: d, isBefore: l } = s;
2329
+ let u;
2330
+ if (!i && !a)
2331
+ u = { from: e, to: n > 0 ? void 0 : e };
2332
+ else if (i && !a)
2333
+ c(i, e) ? n === 0 ? u = { from: i, to: e } : o ? u = { from: i, to: void 0 } : u = void 0 : l(e, i) ? u = { from: e, to: i } : u = { from: i, to: e };
2334
+ else if (i && a)
2335
+ if (c(i, e) && c(a, e))
2336
+ o ? u = { from: i, to: a } : u = void 0;
2337
+ else if (c(i, e))
2338
+ u = { from: i, to: n > 0 ? void 0 : e };
2339
+ else if (c(a, e))
2340
+ u = { from: e, to: n > 0 ? void 0 : e };
2341
+ else if (l(e, i))
2342
+ u = { from: e, to: a };
2343
+ else if (d(e, i))
2344
+ u = { from: i, to: e };
2345
+ else if (d(e, a))
2346
+ u = { from: i, to: e };
2347
+ else
2348
+ throw new Error("Invalid range");
2349
+ if (u?.from && u?.to) {
2350
+ const h = s.differenceInCalendarDays(u.to, u.from);
2351
+ r > 0 && h > r ? u = { from: e, to: void 0 } : n > 1 && h < n && (u = { from: e, to: void 0 });
2352
+ }
2353
+ return u;
2354
+ }
2355
+ function hs(e, t, n = U) {
2356
+ const r = Array.isArray(t) ? t : [t];
2357
+ let o = e.from;
2358
+ const s = n.differenceInCalendarDays(e.to, e.from), i = Math.min(s, 6);
2359
+ for (let a = 0; a <= i; a++) {
2360
+ if (r.includes(o.getDay()))
2361
+ return !0;
2362
+ o = n.addDays(o, 1);
2363
+ }
2364
+ return !1;
2365
+ }
2366
+ function it(e, t, n = U) {
2367
+ return K(e, t.from, !1, n) || K(e, t.to, !1, n) || K(t, e.from, !1, n) || K(t, e.to, !1, n);
2368
+ }
2369
+ function ms(e, t, n = U) {
2370
+ const r = Array.isArray(t) ? t : [t];
2371
+ if (r.filter((a) => typeof a != "function").some((a) => typeof a == "boolean" ? a : n.isDate(a) ? K(e, a, !1, n) : Nt(a, n) ? a.some((c) => K(e, c, !1, n)) : Ae(a) ? a.from && a.to ? it(e, { from: a.from, to: a.to }, n) : !1 : Ct(a) ? hs(e, a.dayOfWeek, n) : Ot(a) ? n.isAfter(a.before, a.after) ? it(e, {
2372
+ from: n.addDays(a.after, 1),
2373
+ to: n.addDays(a.before, -1)
2374
+ }, n) : J(e.from, a, n) || J(e.to, a, n) : Wt(a) || St(a) ? J(e.from, a, n) || J(e.to, a, n) : !1))
2375
+ return !0;
2376
+ const i = r.filter((a) => typeof a == "function");
2377
+ if (i.length) {
2378
+ let a = e.from;
2379
+ const c = n.differenceInCalendarDays(e.to, e.from);
2380
+ for (let d = 0; d <= c; d++) {
2381
+ if (i.some((l) => l(a)))
2382
+ return !0;
2383
+ a = n.addDays(a, 1);
2384
+ }
2385
+ }
2386
+ return !1;
2387
+ }
2388
+ function ys(e, t) {
2389
+ const { disabled: n, excludeDisabled: r, selected: o, required: s, onSelect: i } = e, [a, c] = ve(o, i ? o : void 0), d = i ? o : a;
2390
+ return {
2391
+ selected: d,
2392
+ select: (h, g, p) => {
2393
+ const { min: O, max: w } = e, W = h ? fs(h, d, O, w, s, t) : void 0;
2394
+ return r && n && W?.from && W.to && ms({ from: W.from, to: W.to }, n, t) && (W.from = h, W.to = void 0), i || c(W), i?.(W, h, g, p), W;
2395
+ },
2396
+ isSelected: (h) => d && K(d, h, !1, t)
2397
+ };
2398
+ }
2399
+ function gs(e, t) {
2400
+ const { selected: n, required: r, onSelect: o } = e, [s, i] = ve(n, o ? n : void 0), a = o ? n : s, { isSameDay: c } = t;
2401
+ return {
2402
+ selected: a,
2403
+ select: (u, h, g) => {
2404
+ let p = u;
2405
+ return !r && a && a && c(u, a) && (p = void 0), o || i(p), o?.(p, u, h, g), p;
2406
+ },
2407
+ isSelected: (u) => a ? c(a, u) : !1
2408
+ };
2409
+ }
2410
+ function ps(e, t) {
2411
+ const n = gs(e, t), r = ls(e, t), o = ys(e, t);
2412
+ switch (e.mode) {
2413
+ case "single":
2414
+ return n;
2415
+ case "multiple":
2416
+ return r;
2417
+ case "range":
2418
+ return o;
2419
+ default:
2420
+ return;
2421
+ }
2422
+ }
2423
+ function ws(e) {
2424
+ let t = e;
2425
+ t.timeZone && (t = {
2426
+ ...e
2427
+ }, t.today && (t.today = new H(t.today, t.timeZone)), t.month && (t.month = new H(t.month, t.timeZone)), t.defaultMonth && (t.defaultMonth = new H(t.defaultMonth, t.timeZone)), t.startMonth && (t.startMonth = new H(t.startMonth, t.timeZone)), t.endMonth && (t.endMonth = new H(t.endMonth, t.timeZone)), t.mode === "single" && t.selected ? t.selected = new H(t.selected, t.timeZone) : t.mode === "multiple" && t.selected ? t.selected = t.selected?.map((v) => new H(v, t.timeZone)) : t.mode === "range" && t.selected && (t.selected = {
2428
+ from: t.selected.from ? new H(t.selected.from, t.timeZone) : void 0,
2429
+ to: t.selected.to ? new H(t.selected.to, t.timeZone) : void 0
2430
+ }));
2431
+ const { components: n, formatters: r, labels: o, dateLib: s, locale: i, classNames: a } = Ye(() => {
2432
+ const v = { ...qe, ...t.locale };
2433
+ return {
2434
+ dateLib: new ee({
2435
+ locale: v,
2436
+ weekStartsOn: t.broadcastCalendar ? 1 : t.weekStartsOn,
2437
+ firstWeekContainsDate: t.firstWeekContainsDate,
2438
+ useAdditionalWeekYearTokens: t.useAdditionalWeekYearTokens,
2439
+ useAdditionalDayOfYearTokens: t.useAdditionalDayOfYearTokens,
2440
+ timeZone: t.timeZone,
2441
+ numerals: t.numerals
2442
+ }, t.dateLib),
2443
+ components: Do(t.components),
2444
+ formatters: Yo(t.formatters),
2445
+ labels: { ...Lo, ...t.labels },
2446
+ locale: v,
2447
+ classNames: { ...je(), ...t.classNames }
2448
+ };
2449
+ }, [
2450
+ t.locale,
2451
+ t.broadcastCalendar,
2452
+ t.weekStartsOn,
2453
+ t.firstWeekContainsDate,
2454
+ t.useAdditionalWeekYearTokens,
2455
+ t.useAdditionalDayOfYearTokens,
2456
+ t.timeZone,
2457
+ t.numerals,
2458
+ t.dateLib,
2459
+ t.components,
2460
+ t.formatters,
2461
+ t.labels,
2462
+ t.classNames
2463
+ ]), { captionLayout: c, mode: d, navLayout: l, numberOfMonths: u = 1, onDayBlur: h, onDayClick: g, onDayFocus: p, onDayKeyDown: O, onDayMouseEnter: w, onDayMouseLeave: W, onNextClick: x, onPrevClick: b, showWeekNumber: Y, styles: y } = t, { formatCaption: k, formatDay: M, formatMonthDropdown: C, formatWeekNumber: I, formatWeekNumberHeader: q, formatWeekdayName: A, formatYearDropdown: $ } = r, se = is(t, s), { days: ae, months: ie, navStart: be, navEnd: Oe, previousMonth: Z, nextMonth: G, goToMonth: V } = se, We = Mo(ae, t, be, Oe, s), { isSelected: Se, select: Ce, selected: Me } = ps(t, s) ?? {}, { blur: ze, focused: Re, isFocusTarget: Pt, moveFocus: $e, setFocused: ke } = ds(t, se, We, Se ?? (() => !1), s), { labelDayButton: Ft, labelGridcell: Bt, labelGrid: It, labelMonthDropdown: Ht, labelNav: Ze, labelPrevious: qt, labelNext: At, labelWeekday: jt, labelWeekNumber: zt, labelWeekNumberHeader: Rt, labelYearDropdown: $t } = o, Zt = Ye(() => Fo(s, t.ISOWeek), [s, t.ISOWeek]), Ge = d !== void 0 || g !== void 0, Ne = R(() => {
2464
+ Z && (V(Z), b?.(Z));
2465
+ }, [Z, V, b]), xe = R(() => {
2466
+ G && (V(G), x?.(G));
2467
+ }, [V, G, x]), Gt = R((v, E) => (D) => {
2468
+ D.preventDefault(), D.stopPropagation(), ke(v), Ce?.(v.date, E, D), g?.(v.date, E, D);
2469
+ }, [Ce, g, ke]), Qt = R((v, E) => (D) => {
2470
+ ke(v), p?.(v.date, E, D);
2471
+ }, [p, ke]), Lt = R((v, E) => (D) => {
2472
+ ze(), h?.(v.date, E, D);
2473
+ }, [ze, h]), Xt = R((v, E) => (D) => {
2474
+ const P = {
2475
+ ArrowLeft: [
2476
+ D.shiftKey ? "month" : "day",
2477
+ t.dir === "rtl" ? "after" : "before"
2478
+ ],
2479
+ ArrowRight: [
2480
+ D.shiftKey ? "month" : "day",
2481
+ t.dir === "rtl" ? "before" : "after"
2482
+ ],
2483
+ ArrowDown: [D.shiftKey ? "year" : "week", "after"],
2484
+ ArrowUp: [D.shiftKey ? "year" : "week", "before"],
2485
+ PageUp: [D.shiftKey ? "year" : "month", "before"],
2486
+ PageDown: [D.shiftKey ? "year" : "month", "after"],
2487
+ Home: ["startOfWeek", "before"],
2488
+ End: ["endOfWeek", "after"]
2489
+ };
2490
+ if (P[D.key]) {
2491
+ D.preventDefault(), D.stopPropagation();
2492
+ const [z, S] = P[D.key];
2493
+ $e(z, S);
2494
+ }
2495
+ O?.(v.date, E, D);
2496
+ }, [$e, O, t.dir]), Ut = R((v, E) => (D) => {
2497
+ w?.(v.date, E, D);
2498
+ }, [w]), Vt = R((v, E) => (D) => {
2499
+ W?.(v.date, E, D);
2500
+ }, [W]), Kt = R((v) => (E) => {
2501
+ const D = Number(E.target.value), P = s.setMonth(s.startOfMonth(v), D);
2502
+ V(P);
2503
+ }, [s, V]), Jt = R((v) => (E) => {
2504
+ const D = Number(E.target.value), P = s.setYear(s.startOfMonth(v), D);
2505
+ V(P);
2506
+ }, [s, V]), { className: en, style: tn } = Ye(() => ({
2507
+ className: [a[m.Root], t.className].filter(Boolean).join(" "),
2508
+ style: { ...y?.[m.Root], ...t.style }
2509
+ }), [a, t.className, t.style, y]), nn = vo(t), Qe = De(null);
2510
+ Ko(Qe, !!t.animate, {
2511
+ classNames: a,
2512
+ months: ie,
2513
+ focused: Re,
2514
+ dateLib: s
2515
+ });
2516
+ const rn = {
2517
+ dayPickerProps: t,
2518
+ selected: Me,
2519
+ select: Ce,
2520
+ isSelected: Se,
2521
+ months: ie,
2522
+ nextMonth: G,
2523
+ previousMonth: Z,
2524
+ goToMonth: V,
2525
+ getModifiers: We,
2526
+ components: n,
2527
+ classNames: a,
2528
+ styles: y,
2529
+ labels: o,
2530
+ formatters: r
2531
+ };
2532
+ return f.createElement(
2533
+ vt.Provider,
2534
+ { value: rn },
2535
+ f.createElement(
2536
+ n.Root,
2537
+ { rootRef: t.animate ? Qe : void 0, className: en, style: tn, dir: t.dir, id: t.id, lang: t.lang, nonce: t.nonce, title: t.title, role: t.role, "aria-label": t["aria-label"], ...nn },
2538
+ f.createElement(
2539
+ n.Months,
2540
+ { className: a[m.Months], style: y?.[m.Months] },
2541
+ !t.hideNavigation && !l && f.createElement(n.Nav, { "data-animated-nav": t.animate ? "true" : void 0, className: a[m.Nav], style: y?.[m.Nav], "aria-label": Ze(), onPreviousClick: Ne, onNextClick: xe, previousMonth: Z, nextMonth: G }),
2542
+ ie.map((v, E) => f.createElement(
2543
+ n.Month,
2544
+ {
2545
+ "data-animated-month": t.animate ? "true" : void 0,
2546
+ className: a[m.Month],
2547
+ style: y?.[m.Month],
2548
+ // biome-ignore lint/suspicious/noArrayIndexKey: breaks animation
2549
+ key: E,
2550
+ displayIndex: E,
2551
+ calendarMonth: v
2552
+ },
2553
+ l === "around" && !t.hideNavigation && E === 0 && f.createElement(
2554
+ n.PreviousMonthButton,
2555
+ { type: "button", className: a[m.PreviousMonthButton], tabIndex: Z ? void 0 : -1, "aria-disabled": Z ? void 0 : !0, "aria-label": qt(Z), onClick: Ne, "data-animated-button": t.animate ? "true" : void 0 },
2556
+ f.createElement(n.Chevron, { disabled: Z ? void 0 : !0, className: a[m.Chevron], orientation: t.dir === "rtl" ? "right" : "left" })
2557
+ ),
2558
+ f.createElement(n.MonthCaption, { "data-animated-caption": t.animate ? "true" : void 0, className: a[m.MonthCaption], style: y?.[m.MonthCaption], calendarMonth: v, displayIndex: E }, c?.startsWith("dropdown") ? f.createElement(
2559
+ n.DropdownNav,
2560
+ { className: a[m.Dropdowns], style: y?.[m.Dropdowns] },
2561
+ c === "dropdown" || c === "dropdown-months" ? f.createElement(n.MonthsDropdown, { className: a[m.MonthsDropdown], "aria-label": Ht(), classNames: a, components: n, disabled: !!t.disableNavigation, onChange: Kt(v.date), options: Eo(v.date, be, Oe, r, s), style: y?.[m.Dropdown], value: s.getMonth(v.date) }) : f.createElement("span", null, C(v.date, s)),
2562
+ c === "dropdown" || c === "dropdown-years" ? f.createElement(n.YearsDropdown, { className: a[m.YearsDropdown], "aria-label": $t(s.options), classNames: a, components: n, disabled: !!t.disableNavigation, onChange: Jt(v.date), options: Bo(be, Oe, r, s, !!t.reverseYears), style: y?.[m.Dropdown], value: s.getYear(v.date) }) : f.createElement("span", null, $(v.date, s)),
2563
+ f.createElement("span", { role: "status", "aria-live": "polite", style: {
2564
+ border: 0,
2565
+ clip: "rect(0 0 0 0)",
2566
+ height: "1px",
2567
+ margin: "-1px",
2568
+ overflow: "hidden",
2569
+ padding: 0,
2570
+ position: "absolute",
2571
+ width: "1px",
2572
+ whiteSpace: "nowrap",
2573
+ wordWrap: "normal"
2574
+ } }, k(v.date, s.options, s))
2575
+ ) : (
2576
+ // biome-ignore lint/a11y/useSemanticElements: breaking change
2577
+ f.createElement(n.CaptionLabel, { className: a[m.CaptionLabel], role: "status", "aria-live": "polite" }, k(v.date, s.options, s))
2578
+ )),
2579
+ l === "around" && !t.hideNavigation && E === u - 1 && f.createElement(
2580
+ n.NextMonthButton,
2581
+ { type: "button", className: a[m.NextMonthButton], tabIndex: G ? void 0 : -1, "aria-disabled": G ? void 0 : !0, "aria-label": At(G), onClick: xe, "data-animated-button": t.animate ? "true" : void 0 },
2582
+ f.createElement(n.Chevron, { disabled: G ? void 0 : !0, className: a[m.Chevron], orientation: t.dir === "rtl" ? "left" : "right" })
2583
+ ),
2584
+ E === u - 1 && l === "after" && !t.hideNavigation && f.createElement(n.Nav, { "data-animated-nav": t.animate ? "true" : void 0, className: a[m.Nav], style: y?.[m.Nav], "aria-label": Ze(), onPreviousClick: Ne, onNextClick: xe, previousMonth: Z, nextMonth: G }),
2585
+ f.createElement(
2586
+ n.MonthGrid,
2587
+ { role: "grid", "aria-multiselectable": d === "multiple" || d === "range", "aria-label": It(v.date, s.options, s) || void 0, className: a[m.MonthGrid], style: y?.[m.MonthGrid] },
2588
+ !t.hideWeekdays && f.createElement(
2589
+ n.Weekdays,
2590
+ { "data-animated-weekdays": t.animate ? "true" : void 0, className: a[m.Weekdays], style: y?.[m.Weekdays] },
2591
+ Y && f.createElement(n.WeekNumberHeader, { "aria-label": Rt(s.options), className: a[m.WeekNumberHeader], style: y?.[m.WeekNumberHeader], scope: "col" }, q()),
2592
+ Zt.map((D) => f.createElement(n.Weekday, { "aria-label": jt(D, s.options, s), className: a[m.Weekday], key: String(D), style: y?.[m.Weekday], scope: "col" }, A(D, s.options, s)))
2593
+ ),
2594
+ f.createElement(n.Weeks, { "data-animated-weeks": t.animate ? "true" : void 0, className: a[m.Weeks], style: y?.[m.Weeks] }, v.weeks.map((D) => f.createElement(
2595
+ n.Week,
2596
+ { className: a[m.Week], key: D.weekNumber, style: y?.[m.Week], week: D },
2597
+ Y && // biome-ignore lint/a11y/useSemanticElements: react component
2598
+ f.createElement(n.WeekNumber, { week: D, style: y?.[m.WeekNumber], "aria-label": zt(D.weekNumber, {
2599
+ locale: i
2600
+ }), className: a[m.WeekNumber], scope: "row", role: "rowheader" }, I(D.weekNumber, s)),
2601
+ D.days.map((P) => {
2602
+ const { date: z } = P, S = We(P);
2603
+ if (S[F.focused] = !S.hidden && !!Re?.isEqualTo(P), S[Q.selected] = Se?.(z) || S.selected, Ae(Me)) {
2604
+ const { from: _e, to: Te } = Me;
2605
+ S[Q.range_start] = !!(_e && Te && s.isSameDay(z, _e)), S[Q.range_end] = !!(_e && Te && s.isSameDay(z, Te)), S[Q.range_middle] = K(Me, z, !0, s);
2606
+ }
2607
+ const on = Po(S, y, t.modifiersStyles), sn = ko(S, a, t.modifiersClassNames), an = !Ge && !S.hidden ? Bt(z, S, s.options, s) : void 0;
2608
+ return (
2609
+ // biome-ignore lint/a11y/useSemanticElements: react component
2610
+ f.createElement(n.Day, { key: `${s.format(z, "yyyy-MM-dd")}_${s.format(P.displayMonth, "yyyy-MM")}`, day: P, modifiers: S, className: sn.join(" "), style: on, role: "gridcell", "aria-selected": S.selected || void 0, "aria-label": an, "data-day": s.format(z, "yyyy-MM-dd"), "data-month": P.outside ? s.format(z, "yyyy-MM") : void 0, "data-selected": S.selected || void 0, "data-disabled": S.disabled || void 0, "data-hidden": S.hidden || void 0, "data-outside": P.outside || void 0, "data-focused": S.focused || void 0, "data-today": S.today || void 0 }, !S.hidden && Ge ? f.createElement(n.DayButton, { className: a[m.DayButton], style: y?.[m.DayButton], type: "button", day: P, modifiers: S, disabled: S.disabled || void 0, tabIndex: Pt(P) ? 0 : -1, "aria-label": Ft(z, S, s.options, s), onClick: Gt(P, S), onBlur: Lt(P, S), onFocus: Qt(P, S), onKeyDown: Xt(P, S), onMouseEnter: Ut(P, S), onMouseLeave: Vt(P, S) }, M(z, s.options, s)) : !S.hidden && M(P.date, s.options, s))
2611
+ );
2612
+ })
2613
+ )))
2614
+ )
2615
+ ))
2616
+ ),
2617
+ t.footer && // biome-ignore lint/a11y/useSemanticElements: react component
2618
+ f.createElement(n.Footer, { className: a[m.Footer], style: y?.[m.Footer], role: "status", "aria-live": "polite" }, t.footer)
2619
+ )
2620
+ );
2621
+ }
2622
+ function Cs({
2623
+ className: e,
2624
+ classNames: t,
2625
+ showOutsideDays: n = !0,
2626
+ captionLayout: r = "label",
2627
+ buttonVariant: o = "ghost",
2628
+ formatters: s,
2629
+ components: i,
2630
+ ...a
2631
+ }) {
2632
+ const c = je();
2633
+ return /* @__PURE__ */ ne(
2634
+ ws,
2635
+ {
2636
+ showOutsideDays: n,
2637
+ className: N(
2638
+ "bg-background group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",
2639
+ String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,
2640
+ String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,
2641
+ e
2642
+ ),
2643
+ captionLayout: r,
2644
+ formatters: {
2645
+ formatMonthDropdown: (d) => d.toLocaleString("default", { month: "short" }),
2646
+ ...s
2647
+ },
2648
+ classNames: {
2649
+ root: N("w-fit", c.root),
2650
+ months: N(
2651
+ "flex gap-4 flex-col md:flex-row relative",
2652
+ c.months
2653
+ ),
2654
+ month: N("flex flex-col w-full gap-4", c.month),
2655
+ nav: N(
2656
+ "flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",
2657
+ c.nav
2658
+ ),
2659
+ button_previous: N(
2660
+ Xe({ variant: o }),
2661
+ "size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",
2662
+ c.button_previous
2663
+ ),
2664
+ button_next: N(
2665
+ Xe({ variant: o }),
2666
+ "size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",
2667
+ c.button_next
2668
+ ),
2669
+ month_caption: N(
2670
+ "flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",
2671
+ c.month_caption
2672
+ ),
2673
+ dropdowns: N(
2674
+ "w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",
2675
+ c.dropdowns
2676
+ ),
2677
+ dropdown_root: N(
2678
+ "relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md",
2679
+ c.dropdown_root
2680
+ ),
2681
+ dropdown: N("absolute inset-0 opacity-0", c.dropdown),
2682
+ caption_label: N(
2683
+ "select-none font-medium",
2684
+ r === "label" ? "text-sm" : "rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5",
2685
+ c.caption_label
2686
+ ),
2687
+ table: "w-full border-collapse",
2688
+ weekdays: N("flex", c.weekdays),
2689
+ weekday: N(
2690
+ "text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none",
2691
+ c.weekday
2692
+ ),
2693
+ week: N("flex w-full mt-2", c.week),
2694
+ week_number_header: N(
2695
+ "select-none w-(--cell-size)",
2696
+ c.week_number_header
2697
+ ),
2698
+ week_number: N(
2699
+ "text-[0.8rem] select-none text-muted-foreground",
2700
+ c.week_number
2701
+ ),
2702
+ day: N(
2703
+ "relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",
2704
+ c.day
2705
+ ),
2706
+ range_start: N(
2707
+ "rounded-l-md bg-accent",
2708
+ c.range_start
2709
+ ),
2710
+ range_middle: N("rounded-none", c.range_middle),
2711
+ range_end: N("rounded-r-md bg-accent", c.range_end),
2712
+ today: N(
2713
+ "bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",
2714
+ c.today
2715
+ ),
2716
+ outside: N(
2717
+ "text-muted-foreground aria-selected:text-muted-foreground",
2718
+ c.outside
2719
+ ),
2720
+ disabled: N(
2721
+ "text-muted-foreground opacity-50",
2722
+ c.disabled
2723
+ ),
2724
+ hidden: N("invisible", c.hidden),
2725
+ ...t
2726
+ },
2727
+ components: {
2728
+ Root: ({ className: d, rootRef: l, ...u }) => /* @__PURE__ */ ne(
2729
+ "div",
2730
+ {
2731
+ "data-slot": "calendar",
2732
+ ref: l,
2733
+ className: N(d),
2734
+ ...u
2735
+ }
2736
+ ),
2737
+ Chevron: ({ className: d, orientation: l, ...u }) => l === "left" ? /* @__PURE__ */ ne(hn, { className: N("size-4", d), ...u }) : l === "right" ? /* @__PURE__ */ ne(
2738
+ mn,
2739
+ {
2740
+ className: N("size-4", d),
2741
+ ...u
2742
+ }
2743
+ ) : /* @__PURE__ */ ne(yn, { className: N("size-4", d), ...u }),
2744
+ DayButton: bs,
2745
+ WeekNumber: ({ children: d, ...l }) => /* @__PURE__ */ ne("td", { ...l, children: /* @__PURE__ */ ne("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children: d }) }),
2746
+ ...i
2747
+ },
2748
+ ...a
2749
+ }
2750
+ );
2751
+ }
2752
+ function bs({
2753
+ className: e,
2754
+ day: t,
2755
+ modifiers: n,
2756
+ ...r
2757
+ }) {
2758
+ const o = je(), s = Le.useRef(null);
2759
+ return Le.useEffect(() => {
2760
+ n.focused && s.current?.focus();
2761
+ }, [n.focused]), /* @__PURE__ */ ne(
2762
+ fn,
2763
+ {
2764
+ ref: s,
2765
+ variant: "ghost",
2766
+ size: "icon",
2767
+ "data-day": t.date.toLocaleDateString(),
2768
+ "data-selected-single": n.selected && !n.range_start && !n.range_end && !n.range_middle,
2769
+ "data-range-start": n.range_start,
2770
+ "data-range-end": n.range_end,
2771
+ "data-range-middle": n.range_middle,
2772
+ className: N(
2773
+ "data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70",
2774
+ o.day,
2775
+ e
2776
+ ),
2777
+ ...r
2778
+ }
2779
+ );
2780
+ }
2781
+ export {
2782
+ Cs as Calendar,
2783
+ bs as CalendarDayButton
2784
+ };
2785
+ //# sourceMappingURL=calendar.js.map