@xenition/ui 0.1.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 (975) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +495 -0
  3. package/dist/booking/BookingCalendar.d.ts +37 -0
  4. package/dist/booking/BookingCalendar.d.ts.map +1 -0
  5. package/dist/booking/BookingCalendar.js +186 -0
  6. package/dist/booking/BookingCalendar.js.map +1 -0
  7. package/dist/booking/BookingSummary.d.ts +25 -0
  8. package/dist/booking/BookingSummary.d.ts.map +1 -0
  9. package/dist/booking/BookingSummary.js +69 -0
  10. package/dist/booking/BookingSummary.js.map +1 -0
  11. package/dist/booking/SlotPicker.d.ts +28 -0
  12. package/dist/booking/SlotPicker.d.ts.map +1 -0
  13. package/dist/booking/SlotPicker.js +65 -0
  14. package/dist/booking/SlotPicker.js.map +1 -0
  15. package/dist/booking/datetime.d.ts +27 -0
  16. package/dist/booking/datetime.d.ts.map +1 -0
  17. package/dist/booking/datetime.js +81 -0
  18. package/dist/booking/datetime.js.map +1 -0
  19. package/dist/booking/index.d.ts +18 -0
  20. package/dist/booking/index.d.ts.map +1 -0
  21. package/dist/booking/index.js +27 -0
  22. package/dist/booking/index.js.map +1 -0
  23. package/dist/booking/types.d.ts +23 -0
  24. package/dist/booking/types.d.ts.map +1 -0
  25. package/dist/booking/types.js +9 -0
  26. package/dist/booking/types.js.map +1 -0
  27. package/dist/commerce/CartLineItem.d.ts +39 -0
  28. package/dist/commerce/CartLineItem.d.ts.map +1 -0
  29. package/dist/commerce/CartLineItem.js +52 -0
  30. package/dist/commerce/CartLineItem.js.map +1 -0
  31. package/dist/commerce/CartSummary.d.ts +29 -0
  32. package/dist/commerce/CartSummary.d.ts.map +1 -0
  33. package/dist/commerce/CartSummary.js +55 -0
  34. package/dist/commerce/CartSummary.js.map +1 -0
  35. package/dist/commerce/EmptyState.d.ts +18 -0
  36. package/dist/commerce/EmptyState.d.ts.map +1 -0
  37. package/dist/commerce/EmptyState.js +48 -0
  38. package/dist/commerce/EmptyState.js.map +1 -0
  39. package/dist/commerce/OrderSummary.d.ts +44 -0
  40. package/dist/commerce/OrderSummary.d.ts.map +1 -0
  41. package/dist/commerce/OrderSummary.js +55 -0
  42. package/dist/commerce/OrderSummary.js.map +1 -0
  43. package/dist/commerce/PriceTag.d.ts +22 -0
  44. package/dist/commerce/PriceTag.d.ts.map +1 -0
  45. package/dist/commerce/PriceTag.js +56 -0
  46. package/dist/commerce/PriceTag.js.map +1 -0
  47. package/dist/commerce/ProductCard.d.ts +34 -0
  48. package/dist/commerce/ProductCard.d.ts.map +1 -0
  49. package/dist/commerce/ProductCard.js +54 -0
  50. package/dist/commerce/ProductCard.js.map +1 -0
  51. package/dist/commerce/ProductGrid.d.ts +11 -0
  52. package/dist/commerce/ProductGrid.d.ts.map +1 -0
  53. package/dist/commerce/ProductGrid.js +53 -0
  54. package/dist/commerce/ProductGrid.js.map +1 -0
  55. package/dist/commerce/QuantityStepper.d.ts +29 -0
  56. package/dist/commerce/QuantityStepper.d.ts.map +1 -0
  57. package/dist/commerce/QuantityStepper.js +60 -0
  58. package/dist/commerce/QuantityStepper.js.map +1 -0
  59. package/dist/commerce/StatusBadge.d.ts +14 -0
  60. package/dist/commerce/StatusBadge.d.ts.map +1 -0
  61. package/dist/commerce/StatusBadge.js +61 -0
  62. package/dist/commerce/StatusBadge.js.map +1 -0
  63. package/dist/commerce/index.d.ts +31 -0
  64. package/dist/commerce/index.d.ts.map +1 -0
  65. package/dist/commerce/index.js +35 -0
  66. package/dist/commerce/index.js.map +1 -0
  67. package/dist/commerce/money.d.ts +26 -0
  68. package/dist/commerce/money.d.ts.map +1 -0
  69. package/dist/commerce/money.js +33 -0
  70. package/dist/commerce/money.js.map +1 -0
  71. package/dist/data/Resource.d.ts +31 -0
  72. package/dist/data/Resource.d.ts.map +1 -0
  73. package/dist/data/Resource.js +31 -0
  74. package/dist/data/Resource.js.map +1 -0
  75. package/dist/data/index.d.ts +14 -0
  76. package/dist/data/index.d.ts.map +1 -0
  77. package/dist/data/index.js +18 -0
  78. package/dist/data/index.js.map +1 -0
  79. package/dist/data/use-resource.d.ts +28 -0
  80. package/dist/data/use-resource.d.ts.map +1 -0
  81. package/dist/data/use-resource.js +84 -0
  82. package/dist/data/use-resource.js.map +1 -0
  83. package/dist/index.d.ts +26 -0
  84. package/dist/index.d.ts.map +1 -0
  85. package/dist/index.js +45 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/marketing/AnnouncementBar.d.ts +19 -0
  88. package/dist/marketing/AnnouncementBar.d.ts.map +1 -0
  89. package/dist/marketing/AnnouncementBar.js +55 -0
  90. package/dist/marketing/AnnouncementBar.js.map +1 -0
  91. package/dist/marketing/AuroraBackground.d.ts +25 -0
  92. package/dist/marketing/AuroraBackground.d.ts.map +1 -0
  93. package/dist/marketing/AuroraBackground.js +153 -0
  94. package/dist/marketing/AuroraBackground.js.map +1 -0
  95. package/dist/marketing/Bento.d.ts +40 -0
  96. package/dist/marketing/Bento.d.ts.map +1 -0
  97. package/dist/marketing/Bento.js +130 -0
  98. package/dist/marketing/Bento.js.map +1 -0
  99. package/dist/marketing/CTABanner.d.ts +20 -0
  100. package/dist/marketing/CTABanner.d.ts.map +1 -0
  101. package/dist/marketing/CTABanner.js +48 -0
  102. package/dist/marketing/CTABanner.js.map +1 -0
  103. package/dist/marketing/Carousel.d.ts +21 -0
  104. package/dist/marketing/Carousel.d.ts.map +1 -0
  105. package/dist/marketing/Carousel.js +106 -0
  106. package/dist/marketing/Carousel.js.map +1 -0
  107. package/dist/marketing/ComparisonTable.d.ts +30 -0
  108. package/dist/marketing/ComparisonTable.d.ts.map +1 -0
  109. package/dist/marketing/ComparisonTable.js +57 -0
  110. package/dist/marketing/ComparisonTable.js.map +1 -0
  111. package/dist/marketing/Countdown.d.ts +17 -0
  112. package/dist/marketing/Countdown.d.ts.map +1 -0
  113. package/dist/marketing/Countdown.js +81 -0
  114. package/dist/marketing/Countdown.js.map +1 -0
  115. package/dist/marketing/CoverGallery.d.ts +39 -0
  116. package/dist/marketing/CoverGallery.d.ts.map +1 -0
  117. package/dist/marketing/CoverGallery.js +61 -0
  118. package/dist/marketing/CoverGallery.js.map +1 -0
  119. package/dist/marketing/EditorialGrid.d.ts +45 -0
  120. package/dist/marketing/EditorialGrid.d.ts.map +1 -0
  121. package/dist/marketing/EditorialGrid.js +105 -0
  122. package/dist/marketing/EditorialGrid.js.map +1 -0
  123. package/dist/marketing/EntityCard.d.ts +46 -0
  124. package/dist/marketing/EntityCard.d.ts.map +1 -0
  125. package/dist/marketing/EntityCard.js +61 -0
  126. package/dist/marketing/EntityCard.js.map +1 -0
  127. package/dist/marketing/FAQ.d.ts +18 -0
  128. package/dist/marketing/FAQ.d.ts.map +1 -0
  129. package/dist/marketing/FAQ.js +62 -0
  130. package/dist/marketing/FAQ.js.map +1 -0
  131. package/dist/marketing/FeatureGrid.d.ts +17 -0
  132. package/dist/marketing/FeatureGrid.d.ts.map +1 -0
  133. package/dist/marketing/FeatureGrid.js +53 -0
  134. package/dist/marketing/FeatureGrid.js.map +1 -0
  135. package/dist/marketing/FeatureSplit.d.ts +20 -0
  136. package/dist/marketing/FeatureSplit.d.ts.map +1 -0
  137. package/dist/marketing/FeatureSplit.js +47 -0
  138. package/dist/marketing/FeatureSplit.js.map +1 -0
  139. package/dist/marketing/Footer.d.ts +19 -0
  140. package/dist/marketing/Footer.d.ts.map +1 -0
  141. package/dist/marketing/Footer.js +51 -0
  142. package/dist/marketing/Footer.js.map +1 -0
  143. package/dist/marketing/GenerativeCover.d.ts +37 -0
  144. package/dist/marketing/GenerativeCover.d.ts.map +1 -0
  145. package/dist/marketing/GenerativeCover.js +163 -0
  146. package/dist/marketing/GenerativeCover.js.map +1 -0
  147. package/dist/marketing/GradientHero.d.ts +29 -0
  148. package/dist/marketing/GradientHero.d.ts.map +1 -0
  149. package/dist/marketing/GradientHero.js +50 -0
  150. package/dist/marketing/GradientHero.js.map +1 -0
  151. package/dist/marketing/LocationBlock.d.ts +26 -0
  152. package/dist/marketing/LocationBlock.d.ts.map +1 -0
  153. package/dist/marketing/LocationBlock.js +45 -0
  154. package/dist/marketing/LocationBlock.js.map +1 -0
  155. package/dist/marketing/LogoCloud.d.ts +12 -0
  156. package/dist/marketing/LogoCloud.d.ts.map +1 -0
  157. package/dist/marketing/LogoCloud.js +49 -0
  158. package/dist/marketing/LogoCloud.js.map +1 -0
  159. package/dist/marketing/Navbar.d.ts +20 -0
  160. package/dist/marketing/Navbar.d.ts.map +1 -0
  161. package/dist/marketing/Navbar.js +72 -0
  162. package/dist/marketing/Navbar.js.map +1 -0
  163. package/dist/marketing/NewsletterSignup.d.ts +29 -0
  164. package/dist/marketing/NewsletterSignup.d.ts.map +1 -0
  165. package/dist/marketing/NewsletterSignup.js +77 -0
  166. package/dist/marketing/NewsletterSignup.js.map +1 -0
  167. package/dist/marketing/OrnamentRule.d.ts +17 -0
  168. package/dist/marketing/OrnamentRule.d.ts.map +1 -0
  169. package/dist/marketing/OrnamentRule.js +87 -0
  170. package/dist/marketing/OrnamentRule.js.map +1 -0
  171. package/dist/marketing/ParticleField.d.ts +42 -0
  172. package/dist/marketing/ParticleField.d.ts.map +1 -0
  173. package/dist/marketing/ParticleField.js +176 -0
  174. package/dist/marketing/ParticleField.js.map +1 -0
  175. package/dist/marketing/PointerHalo.d.ts +28 -0
  176. package/dist/marketing/PointerHalo.d.ts.map +1 -0
  177. package/dist/marketing/PointerHalo.js +153 -0
  178. package/dist/marketing/PointerHalo.js.map +1 -0
  179. package/dist/marketing/PriceList.d.ts +30 -0
  180. package/dist/marketing/PriceList.d.ts.map +1 -0
  181. package/dist/marketing/PriceList.js +72 -0
  182. package/dist/marketing/PriceList.js.map +1 -0
  183. package/dist/marketing/PricingTable.d.ts +25 -0
  184. package/dist/marketing/PricingTable.d.ts.map +1 -0
  185. package/dist/marketing/PricingTable.js +51 -0
  186. package/dist/marketing/PricingTable.js.map +1 -0
  187. package/dist/marketing/PricingToggle.d.ts +26 -0
  188. package/dist/marketing/PricingToggle.d.ts.map +1 -0
  189. package/dist/marketing/PricingToggle.js +53 -0
  190. package/dist/marketing/PricingToggle.js.map +1 -0
  191. package/dist/marketing/ProcessSteps.d.ts +16 -0
  192. package/dist/marketing/ProcessSteps.d.ts.map +1 -0
  193. package/dist/marketing/ProcessSteps.js +47 -0
  194. package/dist/marketing/ProcessSteps.js.map +1 -0
  195. package/dist/marketing/ProductMock.d.ts +46 -0
  196. package/dist/marketing/ProductMock.d.ts.map +1 -0
  197. package/dist/marketing/ProductMock.js +276 -0
  198. package/dist/marketing/ProductMock.js.map +1 -0
  199. package/dist/marketing/SectionDivider.d.ts +29 -0
  200. package/dist/marketing/SectionDivider.d.ts.map +1 -0
  201. package/dist/marketing/SectionDivider.js +65 -0
  202. package/dist/marketing/SectionDivider.js.map +1 -0
  203. package/dist/marketing/SectionHeading.d.ts +15 -0
  204. package/dist/marketing/SectionHeading.d.ts.map +1 -0
  205. package/dist/marketing/SectionHeading.js +44 -0
  206. package/dist/marketing/SectionHeading.js.map +1 -0
  207. package/dist/marketing/StatBar.d.ts +21 -0
  208. package/dist/marketing/StatBar.d.ts.map +1 -0
  209. package/dist/marketing/StatBar.js +49 -0
  210. package/dist/marketing/StatBar.js.map +1 -0
  211. package/dist/marketing/TeamGrid.d.ts +26 -0
  212. package/dist/marketing/TeamGrid.d.ts.map +1 -0
  213. package/dist/marketing/TeamGrid.js +50 -0
  214. package/dist/marketing/TeamGrid.js.map +1 -0
  215. package/dist/marketing/Testimonials.d.ts +22 -0
  216. package/dist/marketing/Testimonials.d.ts.map +1 -0
  217. package/dist/marketing/Testimonials.js +64 -0
  218. package/dist/marketing/Testimonials.js.map +1 -0
  219. package/dist/marketing/VideoEmbed.d.ts +14 -0
  220. package/dist/marketing/VideoEmbed.d.ts.map +1 -0
  221. package/dist/marketing/VideoEmbed.js +49 -0
  222. package/dist/marketing/VideoEmbed.js.map +1 -0
  223. package/dist/marketing/index.d.ts +76 -0
  224. package/dist/marketing/index.d.ts.map +1 -0
  225. package/dist/marketing/index.js +94 -0
  226. package/dist/marketing/index.js.map +1 -0
  227. package/dist/media/Gallery.d.ts +20 -0
  228. package/dist/media/Gallery.d.ts.map +1 -0
  229. package/dist/media/Gallery.js +74 -0
  230. package/dist/media/Gallery.js.map +1 -0
  231. package/dist/media/Lightbox.d.ts +32 -0
  232. package/dist/media/Lightbox.d.ts.map +1 -0
  233. package/dist/media/Lightbox.js +135 -0
  234. package/dist/media/Lightbox.js.map +1 -0
  235. package/dist/media/MediaFigure.d.ts +19 -0
  236. package/dist/media/MediaFigure.d.ts.map +1 -0
  237. package/dist/media/MediaFigure.js +52 -0
  238. package/dist/media/MediaFigure.js.map +1 -0
  239. package/dist/media/aspect.d.ts +9 -0
  240. package/dist/media/aspect.d.ts.map +1 -0
  241. package/dist/media/aspect.js +18 -0
  242. package/dist/media/aspect.js.map +1 -0
  243. package/dist/media/index.d.ts +17 -0
  244. package/dist/media/index.d.ts.map +1 -0
  245. package/dist/media/index.js +19 -0
  246. package/dist/media/index.js.map +1 -0
  247. package/dist/media/types.d.ts +29 -0
  248. package/dist/media/types.d.ts.map +1 -0
  249. package/dist/media/types.js +8 -0
  250. package/dist/media/types.js.map +1 -0
  251. package/dist/motion/AnimatedCounter.d.ts +20 -0
  252. package/dist/motion/AnimatedCounter.d.ts.map +1 -0
  253. package/dist/motion/AnimatedCounter.js +76 -0
  254. package/dist/motion/AnimatedCounter.js.map +1 -0
  255. package/dist/motion/Marquee.d.ts +15 -0
  256. package/dist/motion/Marquee.d.ts.map +1 -0
  257. package/dist/motion/Marquee.js +80 -0
  258. package/dist/motion/Marquee.js.map +1 -0
  259. package/dist/motion/Parallax.d.ts +15 -0
  260. package/dist/motion/Parallax.d.ts.map +1 -0
  261. package/dist/motion/Parallax.js +81 -0
  262. package/dist/motion/Parallax.js.map +1 -0
  263. package/dist/motion/Reveal.d.ts +22 -0
  264. package/dist/motion/Reveal.d.ts.map +1 -0
  265. package/dist/motion/Reveal.js +78 -0
  266. package/dist/motion/Reveal.js.map +1 -0
  267. package/dist/motion/Stagger.d.ts +24 -0
  268. package/dist/motion/Stagger.d.ts.map +1 -0
  269. package/dist/motion/Stagger.js +53 -0
  270. package/dist/motion/Stagger.js.map +1 -0
  271. package/dist/motion/TiltCard.d.ts +12 -0
  272. package/dist/motion/TiltCard.d.ts.map +1 -0
  273. package/dist/motion/TiltCard.js +76 -0
  274. package/dist/motion/TiltCard.js.map +1 -0
  275. package/dist/motion/index.d.ts +22 -0
  276. package/dist/motion/index.d.ts.map +1 -0
  277. package/dist/motion/index.js +26 -0
  278. package/dist/motion/index.js.map +1 -0
  279. package/dist/motion/internal/inject.d.ts +8 -0
  280. package/dist/motion/internal/inject.d.ts.map +1 -0
  281. package/dist/motion/internal/inject.js +20 -0
  282. package/dist/motion/internal/inject.js.map +1 -0
  283. package/dist/motion/internal/reduced-motion.d.ts +8 -0
  284. package/dist/motion/internal/reduced-motion.d.ts.map +1 -0
  285. package/dist/motion/internal/reduced-motion.js +70 -0
  286. package/dist/motion/internal/reduced-motion.js.map +1 -0
  287. package/dist/motion/internal/use-in-view.d.ts +17 -0
  288. package/dist/motion/internal/use-in-view.d.ts.map +1 -0
  289. package/dist/motion/internal/use-in-view.js +71 -0
  290. package/dist/motion/internal/use-in-view.js.map +1 -0
  291. package/dist/native/booking/BookingCalendar.d.ts +44 -0
  292. package/dist/native/booking/BookingCalendar.d.ts.map +1 -0
  293. package/dist/native/booking/BookingCalendar.js +172 -0
  294. package/dist/native/booking/BookingCalendar.js.map +1 -0
  295. package/dist/native/booking/BookingSummary.d.ts +30 -0
  296. package/dist/native/booking/BookingSummary.d.ts.map +1 -0
  297. package/dist/native/booking/BookingSummary.js +59 -0
  298. package/dist/native/booking/BookingSummary.js.map +1 -0
  299. package/dist/native/booking/SlotPicker.d.ts +37 -0
  300. package/dist/native/booking/SlotPicker.d.ts.map +1 -0
  301. package/dist/native/booking/SlotPicker.js +50 -0
  302. package/dist/native/booking/SlotPicker.js.map +1 -0
  303. package/dist/native/booking/index.d.ts +19 -0
  304. package/dist/native/booking/index.d.ts.map +1 -0
  305. package/dist/native/booking/index.js +28 -0
  306. package/dist/native/booking/index.js.map +1 -0
  307. package/dist/native/commerce/CartLineItem.d.ts +42 -0
  308. package/dist/native/commerce/CartLineItem.d.ts.map +1 -0
  309. package/dist/native/commerce/CartLineItem.js +37 -0
  310. package/dist/native/commerce/CartLineItem.js.map +1 -0
  311. package/dist/native/commerce/CartSummary.d.ts +31 -0
  312. package/dist/native/commerce/CartSummary.d.ts.map +1 -0
  313. package/dist/native/commerce/CartSummary.js +37 -0
  314. package/dist/native/commerce/CartSummary.js.map +1 -0
  315. package/dist/native/commerce/EmptyState.d.ts +20 -0
  316. package/dist/native/commerce/EmptyState.d.ts.map +1 -0
  317. package/dist/native/commerce/EmptyState.js +40 -0
  318. package/dist/native/commerce/EmptyState.js.map +1 -0
  319. package/dist/native/commerce/GenerativeCover.d.ts +18 -0
  320. package/dist/native/commerce/GenerativeCover.d.ts.map +1 -0
  321. package/dist/native/commerce/GenerativeCover.js +51 -0
  322. package/dist/native/commerce/GenerativeCover.js.map +1 -0
  323. package/dist/native/commerce/OrderSummary.d.ts +46 -0
  324. package/dist/native/commerce/OrderSummary.d.ts.map +1 -0
  325. package/dist/native/commerce/OrderSummary.js +39 -0
  326. package/dist/native/commerce/OrderSummary.js.map +1 -0
  327. package/dist/native/commerce/PriceTag.d.ts +24 -0
  328. package/dist/native/commerce/PriceTag.d.ts.map +1 -0
  329. package/dist/native/commerce/PriceTag.js +32 -0
  330. package/dist/native/commerce/PriceTag.js.map +1 -0
  331. package/dist/native/commerce/ProductCard.d.ts +36 -0
  332. package/dist/native/commerce/ProductCard.d.ts.map +1 -0
  333. package/dist/native/commerce/ProductCard.js +37 -0
  334. package/dist/native/commerce/ProductCard.js.map +1 -0
  335. package/dist/native/commerce/ProductGrid.d.ts +22 -0
  336. package/dist/native/commerce/ProductGrid.d.ts.map +1 -0
  337. package/dist/native/commerce/ProductGrid.js +52 -0
  338. package/dist/native/commerce/ProductGrid.js.map +1 -0
  339. package/dist/native/commerce/QuantityStepper.d.ts +30 -0
  340. package/dist/native/commerce/QuantityStepper.d.ts.map +1 -0
  341. package/dist/native/commerce/QuantityStepper.js +59 -0
  342. package/dist/native/commerce/QuantityStepper.js.map +1 -0
  343. package/dist/native/commerce/StatusBadge.d.ts +13 -0
  344. package/dist/native/commerce/StatusBadge.d.ts.map +1 -0
  345. package/dist/native/commerce/StatusBadge.js +45 -0
  346. package/dist/native/commerce/StatusBadge.js.map +1 -0
  347. package/dist/native/commerce/index.d.ts +32 -0
  348. package/dist/native/commerce/index.d.ts.map +1 -0
  349. package/dist/native/commerce/index.js +36 -0
  350. package/dist/native/commerce/index.js.map +1 -0
  351. package/dist/native/commerce/internal/Gradient.d.ts +25 -0
  352. package/dist/native/commerce/internal/Gradient.d.ts.map +1 -0
  353. package/dist/native/commerce/internal/Gradient.js +22 -0
  354. package/dist/native/commerce/internal/Gradient.js.map +1 -0
  355. package/dist/native/commerce/money.d.ts +9 -0
  356. package/dist/native/commerce/money.d.ts.map +1 -0
  357. package/dist/native/commerce/money.js +12 -0
  358. package/dist/native/commerce/money.js.map +1 -0
  359. package/dist/native/marketing/CTABanner.d.ts +28 -0
  360. package/dist/native/marketing/CTABanner.d.ts.map +1 -0
  361. package/dist/native/marketing/CTABanner.js +50 -0
  362. package/dist/native/marketing/CTABanner.js.map +1 -0
  363. package/dist/native/marketing/EntityCard.d.ts +40 -0
  364. package/dist/native/marketing/EntityCard.d.ts.map +1 -0
  365. package/dist/native/marketing/EntityCard.js +43 -0
  366. package/dist/native/marketing/EntityCard.js.map +1 -0
  367. package/dist/native/marketing/FAQ.d.ts +26 -0
  368. package/dist/native/marketing/FAQ.d.ts.map +1 -0
  369. package/dist/native/marketing/FAQ.js +84 -0
  370. package/dist/native/marketing/FAQ.js.map +1 -0
  371. package/dist/native/marketing/FeatureGrid.d.ts +25 -0
  372. package/dist/native/marketing/FeatureGrid.d.ts.map +1 -0
  373. package/dist/native/marketing/FeatureGrid.js +34 -0
  374. package/dist/native/marketing/FeatureGrid.js.map +1 -0
  375. package/dist/native/marketing/Footer.d.ts +35 -0
  376. package/dist/native/marketing/Footer.d.ts.map +1 -0
  377. package/dist/native/marketing/Footer.js +53 -0
  378. package/dist/native/marketing/Footer.js.map +1 -0
  379. package/dist/native/marketing/GradientHero.d.ts +30 -0
  380. package/dist/native/marketing/GradientHero.d.ts.map +1 -0
  381. package/dist/native/marketing/GradientHero.js +57 -0
  382. package/dist/native/marketing/GradientHero.js.map +1 -0
  383. package/dist/native/marketing/LogoCloud.d.ts +17 -0
  384. package/dist/native/marketing/LogoCloud.d.ts.map +1 -0
  385. package/dist/native/marketing/LogoCloud.js +33 -0
  386. package/dist/native/marketing/LogoCloud.js.map +1 -0
  387. package/dist/native/marketing/PricingTable.d.ts +37 -0
  388. package/dist/native/marketing/PricingTable.d.ts.map +1 -0
  389. package/dist/native/marketing/PricingTable.js +64 -0
  390. package/dist/native/marketing/PricingTable.js.map +1 -0
  391. package/dist/native/marketing/SectionHeading.d.ts +24 -0
  392. package/dist/native/marketing/SectionHeading.d.ts.map +1 -0
  393. package/dist/native/marketing/SectionHeading.js +33 -0
  394. package/dist/native/marketing/SectionHeading.js.map +1 -0
  395. package/dist/native/marketing/StatBar.d.ts +37 -0
  396. package/dist/native/marketing/StatBar.d.ts.map +1 -0
  397. package/dist/native/marketing/StatBar.js +93 -0
  398. package/dist/native/marketing/StatBar.js.map +1 -0
  399. package/dist/native/marketing/Testimonials.d.ts +28 -0
  400. package/dist/native/marketing/Testimonials.d.ts.map +1 -0
  401. package/dist/native/marketing/Testimonials.js +50 -0
  402. package/dist/native/marketing/Testimonials.js.map +1 -0
  403. package/dist/native/marketing/index.d.ts +30 -0
  404. package/dist/native/marketing/index.d.ts.map +1 -0
  405. package/dist/native/marketing/index.js +36 -0
  406. package/dist/native/marketing/index.js.map +1 -0
  407. package/dist/native/media/Gallery.d.ts +28 -0
  408. package/dist/native/media/Gallery.d.ts.map +1 -0
  409. package/dist/native/media/Gallery.js +37 -0
  410. package/dist/native/media/Gallery.js.map +1 -0
  411. package/dist/native/media/Lightbox.d.ts +33 -0
  412. package/dist/native/media/Lightbox.d.ts.map +1 -0
  413. package/dist/native/media/Lightbox.js +108 -0
  414. package/dist/native/media/Lightbox.js.map +1 -0
  415. package/dist/native/media/MediaFigure.d.ts +21 -0
  416. package/dist/native/media/MediaFigure.d.ts.map +1 -0
  417. package/dist/native/media/MediaFigure.js +27 -0
  418. package/dist/native/media/MediaFigure.js.map +1 -0
  419. package/dist/native/media/index.d.ts +18 -0
  420. package/dist/native/media/index.d.ts.map +1 -0
  421. package/dist/native/media/index.js +20 -0
  422. package/dist/native/media/index.js.map +1 -0
  423. package/dist/native/motion/Reveal.d.ts +30 -0
  424. package/dist/native/motion/Reveal.d.ts.map +1 -0
  425. package/dist/native/motion/Reveal.js +90 -0
  426. package/dist/native/motion/Reveal.js.map +1 -0
  427. package/dist/native/motion/Stagger.d.ts +30 -0
  428. package/dist/native/motion/Stagger.d.ts.map +1 -0
  429. package/dist/native/motion/Stagger.js +57 -0
  430. package/dist/native/motion/Stagger.js.map +1 -0
  431. package/dist/native/motion/index.d.ts +19 -0
  432. package/dist/native/motion/index.d.ts.map +1 -0
  433. package/dist/native/motion/index.js +23 -0
  434. package/dist/native/motion/index.js.map +1 -0
  435. package/dist/native/primitives/Accordion.d.ts +23 -0
  436. package/dist/native/primitives/Accordion.d.ts.map +1 -0
  437. package/dist/native/primitives/Accordion.js +81 -0
  438. package/dist/native/primitives/Accordion.js.map +1 -0
  439. package/dist/native/primitives/Alert.d.ts +24 -0
  440. package/dist/native/primitives/Alert.d.ts.map +1 -0
  441. package/dist/native/primitives/Alert.js +43 -0
  442. package/dist/native/primitives/Alert.js.map +1 -0
  443. package/dist/native/primitives/AppShell.d.ts +23 -0
  444. package/dist/native/primitives/AppShell.d.ts.map +1 -0
  445. package/dist/native/primitives/AppShell.js +72 -0
  446. package/dist/native/primitives/AppShell.js.map +1 -0
  447. package/dist/native/primitives/AuthCard.d.ts +18 -0
  448. package/dist/native/primitives/AuthCard.d.ts.map +1 -0
  449. package/dist/native/primitives/AuthCard.js +22 -0
  450. package/dist/native/primitives/AuthCard.js.map +1 -0
  451. package/dist/native/primitives/Avatar.d.ts +16 -0
  452. package/dist/native/primitives/Avatar.d.ts.map +1 -0
  453. package/dist/native/primitives/Avatar.js +39 -0
  454. package/dist/native/primitives/Avatar.js.map +1 -0
  455. package/dist/native/primitives/AvatarGroup.d.ts +20 -0
  456. package/dist/native/primitives/AvatarGroup.d.ts.map +1 -0
  457. package/dist/native/primitives/AvatarGroup.js +33 -0
  458. package/dist/native/primitives/AvatarGroup.js.map +1 -0
  459. package/dist/native/primitives/Badge.d.ts +14 -0
  460. package/dist/native/primitives/Badge.d.ts.map +1 -0
  461. package/dist/native/primitives/Badge.js +36 -0
  462. package/dist/native/primitives/Badge.js.map +1 -0
  463. package/dist/native/primitives/Breadcrumb.d.ts +18 -0
  464. package/dist/native/primitives/Breadcrumb.d.ts.map +1 -0
  465. package/dist/native/primitives/Breadcrumb.js +59 -0
  466. package/dist/native/primitives/Breadcrumb.js.map +1 -0
  467. package/dist/native/primitives/Button.d.ts +24 -0
  468. package/dist/native/primitives/Button.d.ts.map +1 -0
  469. package/dist/native/primitives/Button.js +52 -0
  470. package/dist/native/primitives/Button.js.map +1 -0
  471. package/dist/native/primitives/Card.d.ts +12 -0
  472. package/dist/native/primitives/Card.d.ts.map +1 -0
  473. package/dist/native/primitives/Card.js +24 -0
  474. package/dist/native/primitives/Card.js.map +1 -0
  475. package/dist/native/primitives/ChatBubble.d.ts +16 -0
  476. package/dist/native/primitives/ChatBubble.d.ts.map +1 -0
  477. package/dist/native/primitives/ChatBubble.js +27 -0
  478. package/dist/native/primitives/ChatBubble.js.map +1 -0
  479. package/dist/native/primitives/Checkbox.d.ts +22 -0
  480. package/dist/native/primitives/Checkbox.d.ts.map +1 -0
  481. package/dist/native/primitives/Checkbox.js +30 -0
  482. package/dist/native/primitives/Checkbox.js.map +1 -0
  483. package/dist/native/primitives/Combobox.d.ts +32 -0
  484. package/dist/native/primitives/Combobox.d.ts.map +1 -0
  485. package/dist/native/primitives/Combobox.js +128 -0
  486. package/dist/native/primitives/Combobox.js.map +1 -0
  487. package/dist/native/primitives/CrudTable.d.ts +43 -0
  488. package/dist/native/primitives/CrudTable.d.ts.map +1 -0
  489. package/dist/native/primitives/CrudTable.js +128 -0
  490. package/dist/native/primitives/CrudTable.js.map +1 -0
  491. package/dist/native/primitives/DataTable.d.ts +36 -0
  492. package/dist/native/primitives/DataTable.d.ts.map +1 -0
  493. package/dist/native/primitives/DataTable.js +131 -0
  494. package/dist/native/primitives/DataTable.js.map +1 -0
  495. package/dist/native/primitives/DatePicker.d.ts +32 -0
  496. package/dist/native/primitives/DatePicker.d.ts.map +1 -0
  497. package/dist/native/primitives/DatePicker.js +219 -0
  498. package/dist/native/primitives/DatePicker.js.map +1 -0
  499. package/dist/native/primitives/Descriptions.d.ts +18 -0
  500. package/dist/native/primitives/Descriptions.d.ts.map +1 -0
  501. package/dist/native/primitives/Descriptions.js +30 -0
  502. package/dist/native/primitives/Descriptions.js.map +1 -0
  503. package/dist/native/primitives/Drawer.d.ts +21 -0
  504. package/dist/native/primitives/Drawer.d.ts.map +1 -0
  505. package/dist/native/primitives/Drawer.js +93 -0
  506. package/dist/native/primitives/Drawer.js.map +1 -0
  507. package/dist/native/primitives/Eyebrow.d.ts +21 -0
  508. package/dist/native/primitives/Eyebrow.d.ts.map +1 -0
  509. package/dist/native/primitives/Eyebrow.js +33 -0
  510. package/dist/native/primitives/Eyebrow.js.map +1 -0
  511. package/dist/native/primitives/Field.d.ts +21 -0
  512. package/dist/native/primitives/Field.d.ts.map +1 -0
  513. package/dist/native/primitives/Field.js +17 -0
  514. package/dist/native/primitives/Field.js.map +1 -0
  515. package/dist/native/primitives/ForgotPasswordForm.d.ts +14 -0
  516. package/dist/native/primitives/ForgotPasswordForm.d.ts.map +1 -0
  517. package/dist/native/primitives/ForgotPasswordForm.js +73 -0
  518. package/dist/native/primitives/ForgotPasswordForm.js.map +1 -0
  519. package/dist/native/primitives/Form.d.ts +16 -0
  520. package/dist/native/primitives/Form.d.ts.map +1 -0
  521. package/dist/native/primitives/Form.js +23 -0
  522. package/dist/native/primitives/Form.js.map +1 -0
  523. package/dist/native/primitives/GlassPanel.d.ts +25 -0
  524. package/dist/native/primitives/GlassPanel.d.ts.map +1 -0
  525. package/dist/native/primitives/GlassPanel.js +35 -0
  526. package/dist/native/primitives/GlassPanel.js.map +1 -0
  527. package/dist/native/primitives/GradientText.d.ts +29 -0
  528. package/dist/native/primitives/GradientText.d.ts.map +1 -0
  529. package/dist/native/primitives/GradientText.js +27 -0
  530. package/dist/native/primitives/GradientText.js.map +1 -0
  531. package/dist/native/primitives/Input.d.ts +20 -0
  532. package/dist/native/primitives/Input.d.ts.map +1 -0
  533. package/dist/native/primitives/Input.js +30 -0
  534. package/dist/native/primitives/Input.js.map +1 -0
  535. package/dist/native/primitives/Label.d.ts +10 -0
  536. package/dist/native/primitives/Label.d.ts.map +1 -0
  537. package/dist/native/primitives/Label.js +15 -0
  538. package/dist/native/primitives/Label.js.map +1 -0
  539. package/dist/native/primitives/List.d.ts +23 -0
  540. package/dist/native/primitives/List.d.ts.map +1 -0
  541. package/dist/native/primitives/List.js +37 -0
  542. package/dist/native/primitives/List.js.map +1 -0
  543. package/dist/native/primitives/LoginForm.d.ts +20 -0
  544. package/dist/native/primitives/LoginForm.d.ts.map +1 -0
  545. package/dist/native/primitives/LoginForm.js +78 -0
  546. package/dist/native/primitives/LoginForm.js.map +1 -0
  547. package/dist/native/primitives/Menu.d.ts +25 -0
  548. package/dist/native/primitives/Menu.d.ts.map +1 -0
  549. package/dist/native/primitives/Menu.js +88 -0
  550. package/dist/native/primitives/Menu.js.map +1 -0
  551. package/dist/native/primitives/MessageList.d.ts +12 -0
  552. package/dist/native/primitives/MessageList.d.ts.map +1 -0
  553. package/dist/native/primitives/MessageList.js +15 -0
  554. package/dist/native/primitives/MessageList.js.map +1 -0
  555. package/dist/native/primitives/Modal.d.ts +14 -0
  556. package/dist/native/primitives/Modal.d.ts.map +1 -0
  557. package/dist/native/primitives/Modal.js +36 -0
  558. package/dist/native/primitives/Modal.js.map +1 -0
  559. package/dist/native/primitives/NumberInput.d.ts +19 -0
  560. package/dist/native/primitives/NumberInput.d.ts.map +1 -0
  561. package/dist/native/primitives/NumberInput.js +58 -0
  562. package/dist/native/primitives/NumberInput.js.map +1 -0
  563. package/dist/native/primitives/Pagination.d.ts +19 -0
  564. package/dist/native/primitives/Pagination.d.ts.map +1 -0
  565. package/dist/native/primitives/Pagination.js +45 -0
  566. package/dist/native/primitives/Pagination.js.map +1 -0
  567. package/dist/native/primitives/PinInput.d.ts +17 -0
  568. package/dist/native/primitives/PinInput.d.ts.map +1 -0
  569. package/dist/native/primitives/PinInput.js +77 -0
  570. package/dist/native/primitives/PinInput.js.map +1 -0
  571. package/dist/native/primitives/Popconfirm.d.ts +20 -0
  572. package/dist/native/primitives/Popconfirm.d.ts.map +1 -0
  573. package/dist/native/primitives/Popconfirm.js +85 -0
  574. package/dist/native/primitives/Popconfirm.js.map +1 -0
  575. package/dist/native/primitives/Popover.d.ts +23 -0
  576. package/dist/native/primitives/Popover.d.ts.map +1 -0
  577. package/dist/native/primitives/Popover.js +80 -0
  578. package/dist/native/primitives/Popover.js.map +1 -0
  579. package/dist/native/primitives/Progress.d.ts +22 -0
  580. package/dist/native/primitives/Progress.d.ts.map +1 -0
  581. package/dist/native/primitives/Progress.js +40 -0
  582. package/dist/native/primitives/Progress.js.map +1 -0
  583. package/dist/native/primitives/RadioGroup.d.ts +26 -0
  584. package/dist/native/primitives/RadioGroup.d.ts.map +1 -0
  585. package/dist/native/primitives/RadioGroup.js +47 -0
  586. package/dist/native/primitives/RadioGroup.js.map +1 -0
  587. package/dist/native/primitives/Rating.d.ts +28 -0
  588. package/dist/native/primitives/Rating.d.ts.map +1 -0
  589. package/dist/native/primitives/Rating.js +39 -0
  590. package/dist/native/primitives/Rating.js.map +1 -0
  591. package/dist/native/primitives/Segmented.d.ts +19 -0
  592. package/dist/native/primitives/Segmented.d.ts.map +1 -0
  593. package/dist/native/primitives/Segmented.js +38 -0
  594. package/dist/native/primitives/Segmented.js.map +1 -0
  595. package/dist/native/primitives/Select.d.ts +29 -0
  596. package/dist/native/primitives/Select.d.ts.map +1 -0
  597. package/dist/native/primitives/Select.js +100 -0
  598. package/dist/native/primitives/Select.js.map +1 -0
  599. package/dist/native/primitives/Sidebar.d.ts +36 -0
  600. package/dist/native/primitives/Sidebar.d.ts.map +1 -0
  601. package/dist/native/primitives/Sidebar.js +48 -0
  602. package/dist/native/primitives/Sidebar.js.map +1 -0
  603. package/dist/native/primitives/SignupForm.d.ts +20 -0
  604. package/dist/native/primitives/SignupForm.d.ts.map +1 -0
  605. package/dist/native/primitives/SignupForm.js +78 -0
  606. package/dist/native/primitives/SignupForm.js.map +1 -0
  607. package/dist/native/primitives/Skeleton.d.ts +21 -0
  608. package/dist/native/primitives/Skeleton.d.ts.map +1 -0
  609. package/dist/native/primitives/Skeleton.js +65 -0
  610. package/dist/native/primitives/Skeleton.js.map +1 -0
  611. package/dist/native/primitives/Slider.d.ts +20 -0
  612. package/dist/native/primitives/Slider.d.ts.map +1 -0
  613. package/dist/native/primitives/Slider.js +102 -0
  614. package/dist/native/primitives/Slider.js.map +1 -0
  615. package/dist/native/primitives/Spinner.d.ts +13 -0
  616. package/dist/native/primitives/Spinner.d.ts.map +1 -0
  617. package/dist/native/primitives/Spinner.js +16 -0
  618. package/dist/native/primitives/Spinner.js.map +1 -0
  619. package/dist/native/primitives/Stack.d.ts +24 -0
  620. package/dist/native/primitives/Stack.d.ts.map +1 -0
  621. package/dist/native/primitives/Stack.js +37 -0
  622. package/dist/native/primitives/Stack.js.map +1 -0
  623. package/dist/native/primitives/StatusDot.d.ts +25 -0
  624. package/dist/native/primitives/StatusDot.d.ts.map +1 -0
  625. package/dist/native/primitives/StatusDot.js +81 -0
  626. package/dist/native/primitives/StatusDot.js.map +1 -0
  627. package/dist/native/primitives/StatusMessage.d.ts +20 -0
  628. package/dist/native/primitives/StatusMessage.d.ts.map +1 -0
  629. package/dist/native/primitives/StatusMessage.js +39 -0
  630. package/dist/native/primitives/StatusMessage.js.map +1 -0
  631. package/dist/native/primitives/Steps.d.ts +19 -0
  632. package/dist/native/primitives/Steps.d.ts.map +1 -0
  633. package/dist/native/primitives/Steps.js +38 -0
  634. package/dist/native/primitives/Steps.js.map +1 -0
  635. package/dist/native/primitives/Switch.d.ts +17 -0
  636. package/dist/native/primitives/Switch.d.ts.map +1 -0
  637. package/dist/native/primitives/Switch.js +83 -0
  638. package/dist/native/primitives/Switch.js.map +1 -0
  639. package/dist/native/primitives/Table.d.ts +21 -0
  640. package/dist/native/primitives/Table.d.ts.map +1 -0
  641. package/dist/native/primitives/Table.js +41 -0
  642. package/dist/native/primitives/Table.js.map +1 -0
  643. package/dist/native/primitives/Tabs.d.ts +19 -0
  644. package/dist/native/primitives/Tabs.d.ts.map +1 -0
  645. package/dist/native/primitives/Tabs.js +32 -0
  646. package/dist/native/primitives/Tabs.js.map +1 -0
  647. package/dist/native/primitives/Tag.d.ts +17 -0
  648. package/dist/native/primitives/Tag.d.ts.map +1 -0
  649. package/dist/native/primitives/Tag.js +37 -0
  650. package/dist/native/primitives/Tag.js.map +1 -0
  651. package/dist/native/primitives/Textarea.d.ts +23 -0
  652. package/dist/native/primitives/Textarea.d.ts.map +1 -0
  653. package/dist/native/primitives/Textarea.js +33 -0
  654. package/dist/native/primitives/Textarea.js.map +1 -0
  655. package/dist/native/primitives/Timeline.d.ts +20 -0
  656. package/dist/native/primitives/Timeline.d.ts.map +1 -0
  657. package/dist/native/primitives/Timeline.js +33 -0
  658. package/dist/native/primitives/Timeline.js.map +1 -0
  659. package/dist/native/primitives/Toast.d.ts +28 -0
  660. package/dist/native/primitives/Toast.d.ts.map +1 -0
  661. package/dist/native/primitives/Toast.js +121 -0
  662. package/dist/native/primitives/Toast.js.map +1 -0
  663. package/dist/native/primitives/Tooltip.d.ts +19 -0
  664. package/dist/native/primitives/Tooltip.d.ts.map +1 -0
  665. package/dist/native/primitives/Tooltip.js +67 -0
  666. package/dist/native/primitives/Tooltip.js.map +1 -0
  667. package/dist/native/primitives/Upload.d.ts +51 -0
  668. package/dist/native/primitives/Upload.d.ts.map +1 -0
  669. package/dist/native/primitives/Upload.js +86 -0
  670. package/dist/native/primitives/Upload.js.map +1 -0
  671. package/dist/native/primitives/XenitionUIProvider.d.ts +24 -0
  672. package/dist/native/primitives/XenitionUIProvider.d.ts.map +1 -0
  673. package/dist/native/primitives/XenitionUIProvider.js +20 -0
  674. package/dist/native/primitives/XenitionUIProvider.js.map +1 -0
  675. package/dist/native/primitives/index.d.ts +137 -0
  676. package/dist/native/primitives/index.d.ts.map +1 -0
  677. package/dist/native/primitives/index.js +157 -0
  678. package/dist/native/primitives/index.js.map +1 -0
  679. package/dist/native/primitives/internal/color.d.ts +15 -0
  680. package/dist/native/primitives/internal/color.d.ts.map +1 -0
  681. package/dist/native/primitives/internal/color.js +32 -0
  682. package/dist/native/primitives/internal/color.js.map +1 -0
  683. package/dist/native/primitives/internal/useReducedMotion.d.ts +2 -0
  684. package/dist/native/primitives/internal/useReducedMotion.d.ts.map +1 -0
  685. package/dist/native/primitives/internal/useReducedMotion.js +34 -0
  686. package/dist/native/primitives/internal/useReducedMotion.js.map +1 -0
  687. package/dist/native/theme/index.d.ts +51 -0
  688. package/dist/native/theme/index.d.ts.map +1 -0
  689. package/dist/native/theme/index.js +90 -0
  690. package/dist/native/theme/index.js.map +1 -0
  691. package/dist/primitives/Accordion.d.ts +17 -0
  692. package/dist/primitives/Accordion.d.ts.map +1 -0
  693. package/dist/primitives/Accordion.js +49 -0
  694. package/dist/primitives/Accordion.js.map +1 -0
  695. package/dist/primitives/Alert.d.ts +14 -0
  696. package/dist/primitives/Alert.d.ts.map +1 -0
  697. package/dist/primitives/Alert.js +50 -0
  698. package/dist/primitives/Alert.js.map +1 -0
  699. package/dist/primitives/AppShell.d.ts +22 -0
  700. package/dist/primitives/AppShell.d.ts.map +1 -0
  701. package/dist/primitives/AppShell.js +52 -0
  702. package/dist/primitives/AppShell.js.map +1 -0
  703. package/dist/primitives/AuthCard.d.ts +11 -0
  704. package/dist/primitives/AuthCard.d.ts.map +1 -0
  705. package/dist/primitives/AuthCard.js +11 -0
  706. package/dist/primitives/AuthCard.js.map +1 -0
  707. package/dist/primitives/Avatar.d.ts +12 -0
  708. package/dist/primitives/Avatar.d.ts.map +1 -0
  709. package/dist/primitives/Avatar.js +55 -0
  710. package/dist/primitives/Avatar.js.map +1 -0
  711. package/dist/primitives/AvatarGroup.d.ts +15 -0
  712. package/dist/primitives/AvatarGroup.d.ts.map +1 -0
  713. package/dist/primitives/AvatarGroup.js +18 -0
  714. package/dist/primitives/AvatarGroup.js.map +1 -0
  715. package/dist/primitives/Badge.d.ts +8 -0
  716. package/dist/primitives/Badge.d.ts.map +1 -0
  717. package/dist/primitives/Badge.js +52 -0
  718. package/dist/primitives/Badge.js.map +1 -0
  719. package/dist/primitives/Breadcrumb.d.ts +14 -0
  720. package/dist/primitives/Breadcrumb.d.ts.map +1 -0
  721. package/dist/primitives/Breadcrumb.js +47 -0
  722. package/dist/primitives/Breadcrumb.js.map +1 -0
  723. package/dist/primitives/Button.d.ts +27 -0
  724. package/dist/primitives/Button.d.ts.map +1 -0
  725. package/dist/primitives/Button.js +69 -0
  726. package/dist/primitives/Button.js.map +1 -0
  727. package/dist/primitives/Card.d.ts +5 -0
  728. package/dist/primitives/Card.d.ts.map +1 -0
  729. package/dist/primitives/Card.js +44 -0
  730. package/dist/primitives/Card.js.map +1 -0
  731. package/dist/primitives/ChatBubble.d.ts +10 -0
  732. package/dist/primitives/ChatBubble.d.ts.map +1 -0
  733. package/dist/primitives/ChatBubble.js +45 -0
  734. package/dist/primitives/ChatBubble.js.map +1 -0
  735. package/dist/primitives/Checkbox.d.ts +8 -0
  736. package/dist/primitives/Checkbox.d.ts.map +1 -0
  737. package/dist/primitives/Checkbox.js +44 -0
  738. package/dist/primitives/Checkbox.js.map +1 -0
  739. package/dist/primitives/Combobox.d.ts +15 -0
  740. package/dist/primitives/Combobox.d.ts.map +1 -0
  741. package/dist/primitives/Combobox.js +57 -0
  742. package/dist/primitives/Combobox.js.map +1 -0
  743. package/dist/primitives/CrudTable.d.ts +41 -0
  744. package/dist/primitives/CrudTable.d.ts.map +1 -0
  745. package/dist/primitives/CrudTable.js +109 -0
  746. package/dist/primitives/CrudTable.js.map +1 -0
  747. package/dist/primitives/DataTable.d.ts +30 -0
  748. package/dist/primitives/DataTable.d.ts.map +1 -0
  749. package/dist/primitives/DataTable.js +88 -0
  750. package/dist/primitives/DataTable.js.map +1 -0
  751. package/dist/primitives/DatePicker.d.ts +14 -0
  752. package/dist/primitives/DatePicker.d.ts.map +1 -0
  753. package/dist/primitives/DatePicker.js +12 -0
  754. package/dist/primitives/DatePicker.js.map +1 -0
  755. package/dist/primitives/Descriptions.d.ts +13 -0
  756. package/dist/primitives/Descriptions.d.ts.map +1 -0
  757. package/dist/primitives/Descriptions.js +10 -0
  758. package/dist/primitives/Descriptions.js.map +1 -0
  759. package/dist/primitives/Drawer.d.ts +13 -0
  760. package/dist/primitives/Drawer.d.ts.map +1 -0
  761. package/dist/primitives/Drawer.js +63 -0
  762. package/dist/primitives/Drawer.js.map +1 -0
  763. package/dist/primitives/Eyebrow.d.ts +19 -0
  764. package/dist/primitives/Eyebrow.d.ts.map +1 -0
  765. package/dist/primitives/Eyebrow.js +55 -0
  766. package/dist/primitives/Eyebrow.js.map +1 -0
  767. package/dist/primitives/Field.d.ts +19 -0
  768. package/dist/primitives/Field.d.ts.map +1 -0
  769. package/dist/primitives/Field.js +48 -0
  770. package/dist/primitives/Field.js.map +1 -0
  771. package/dist/primitives/ForgotPasswordForm.d.ts +10 -0
  772. package/dist/primitives/ForgotPasswordForm.d.ts.map +1 -0
  773. package/dist/primitives/ForgotPasswordForm.js +67 -0
  774. package/dist/primitives/ForgotPasswordForm.js.map +1 -0
  775. package/dist/primitives/Form.d.ts +8 -0
  776. package/dist/primitives/Form.d.ts.map +1 -0
  777. package/dist/primitives/Form.js +47 -0
  778. package/dist/primitives/Form.js.map +1 -0
  779. package/dist/primitives/GlassPanel.d.ts +20 -0
  780. package/dist/primitives/GlassPanel.d.ts.map +1 -0
  781. package/dist/primitives/GlassPanel.js +66 -0
  782. package/dist/primitives/GlassPanel.js.map +1 -0
  783. package/dist/primitives/GradientText.d.ts +26 -0
  784. package/dist/primitives/GradientText.d.ts.map +1 -0
  785. package/dist/primitives/GradientText.js +79 -0
  786. package/dist/primitives/GradientText.js.map +1 -0
  787. package/dist/primitives/Input.d.ts +8 -0
  788. package/dist/primitives/Input.d.ts.map +1 -0
  789. package/dist/primitives/Input.js +46 -0
  790. package/dist/primitives/Input.js.map +1 -0
  791. package/dist/primitives/Label.d.ts +8 -0
  792. package/dist/primitives/Label.d.ts.map +1 -0
  793. package/dist/primitives/Label.js +44 -0
  794. package/dist/primitives/Label.js.map +1 -0
  795. package/dist/primitives/List.d.ts +18 -0
  796. package/dist/primitives/List.d.ts.map +1 -0
  797. package/dist/primitives/List.js +13 -0
  798. package/dist/primitives/List.js.map +1 -0
  799. package/dist/primitives/LoginForm.d.ts +19 -0
  800. package/dist/primitives/LoginForm.d.ts.map +1 -0
  801. package/dist/primitives/LoginForm.js +75 -0
  802. package/dist/primitives/LoginForm.js.map +1 -0
  803. package/dist/primitives/Menu.d.ts +18 -0
  804. package/dist/primitives/Menu.d.ts.map +1 -0
  805. package/dist/primitives/Menu.js +50 -0
  806. package/dist/primitives/Menu.js.map +1 -0
  807. package/dist/primitives/MessageList.d.ts +5 -0
  808. package/dist/primitives/MessageList.d.ts.map +1 -0
  809. package/dist/primitives/MessageList.js +44 -0
  810. package/dist/primitives/MessageList.js.map +1 -0
  811. package/dist/primitives/Modal.d.ts +11 -0
  812. package/dist/primitives/Modal.d.ts.map +1 -0
  813. package/dist/primitives/Modal.js +56 -0
  814. package/dist/primitives/Modal.js.map +1 -0
  815. package/dist/primitives/NumberInput.d.ts +13 -0
  816. package/dist/primitives/NumberInput.d.ts.map +1 -0
  817. package/dist/primitives/NumberInput.js +13 -0
  818. package/dist/primitives/NumberInput.js.map +1 -0
  819. package/dist/primitives/Pagination.d.ts +14 -0
  820. package/dist/primitives/Pagination.d.ts.map +1 -0
  821. package/dist/primitives/Pagination.js +28 -0
  822. package/dist/primitives/Pagination.js.map +1 -0
  823. package/dist/primitives/PinInput.d.ts +11 -0
  824. package/dist/primitives/PinInput.d.ts.map +1 -0
  825. package/dist/primitives/PinInput.js +59 -0
  826. package/dist/primitives/PinInput.js.map +1 -0
  827. package/dist/primitives/Popconfirm.d.ts +12 -0
  828. package/dist/primitives/Popconfirm.d.ts.map +1 -0
  829. package/dist/primitives/Popconfirm.js +49 -0
  830. package/dist/primitives/Popconfirm.js.map +1 -0
  831. package/dist/primitives/Popover.d.ts +11 -0
  832. package/dist/primitives/Popover.d.ts.map +1 -0
  833. package/dist/primitives/Popover.js +48 -0
  834. package/dist/primitives/Popover.js.map +1 -0
  835. package/dist/primitives/Progress.d.ts +14 -0
  836. package/dist/primitives/Progress.d.ts.map +1 -0
  837. package/dist/primitives/Progress.js +51 -0
  838. package/dist/primitives/Progress.js.map +1 -0
  839. package/dist/primitives/RadioGroup.d.ts +17 -0
  840. package/dist/primitives/RadioGroup.d.ts.map +1 -0
  841. package/dist/primitives/RadioGroup.js +10 -0
  842. package/dist/primitives/RadioGroup.js.map +1 -0
  843. package/dist/primitives/Rating.d.ts +27 -0
  844. package/dist/primitives/Rating.d.ts.map +1 -0
  845. package/dist/primitives/Rating.js +59 -0
  846. package/dist/primitives/Rating.js.map +1 -0
  847. package/dist/primitives/Segmented.d.ts +14 -0
  848. package/dist/primitives/Segmented.d.ts.map +1 -0
  849. package/dist/primitives/Segmented.js +13 -0
  850. package/dist/primitives/Segmented.js.map +1 -0
  851. package/dist/primitives/Select.d.ts +12 -0
  852. package/dist/primitives/Select.d.ts.map +1 -0
  853. package/dist/primitives/Select.js +50 -0
  854. package/dist/primitives/Select.js.map +1 -0
  855. package/dist/primitives/Sidebar.d.ts +37 -0
  856. package/dist/primitives/Sidebar.d.ts.map +1 -0
  857. package/dist/primitives/Sidebar.js +62 -0
  858. package/dist/primitives/Sidebar.js.map +1 -0
  859. package/dist/primitives/SignupForm.d.ts +17 -0
  860. package/dist/primitives/SignupForm.d.ts.map +1 -0
  861. package/dist/primitives/SignupForm.js +73 -0
  862. package/dist/primitives/SignupForm.js.map +1 -0
  863. package/dist/primitives/Skeleton.d.ts +14 -0
  864. package/dist/primitives/Skeleton.d.ts.map +1 -0
  865. package/dist/primitives/Skeleton.js +53 -0
  866. package/dist/primitives/Skeleton.js.map +1 -0
  867. package/dist/primitives/Slider.d.ts +13 -0
  868. package/dist/primitives/Slider.d.ts.map +1 -0
  869. package/dist/primitives/Slider.js +10 -0
  870. package/dist/primitives/Slider.js.map +1 -0
  871. package/dist/primitives/Spinner.d.ts +8 -0
  872. package/dist/primitives/Spinner.d.ts.map +1 -0
  873. package/dist/primitives/Spinner.js +49 -0
  874. package/dist/primitives/Spinner.js.map +1 -0
  875. package/dist/primitives/Stack.d.ts +14 -0
  876. package/dist/primitives/Stack.d.ts.map +1 -0
  877. package/dist/primitives/Stack.js +66 -0
  878. package/dist/primitives/Stack.js.map +1 -0
  879. package/dist/primitives/StatusDot.d.ts +21 -0
  880. package/dist/primitives/StatusDot.d.ts.map +1 -0
  881. package/dist/primitives/StatusDot.js +76 -0
  882. package/dist/primitives/StatusDot.js.map +1 -0
  883. package/dist/primitives/StatusMessage.d.ts +17 -0
  884. package/dist/primitives/StatusMessage.d.ts.map +1 -0
  885. package/dist/primitives/StatusMessage.js +80 -0
  886. package/dist/primitives/StatusMessage.js.map +1 -0
  887. package/dist/primitives/Steps.d.ts +14 -0
  888. package/dist/primitives/Steps.d.ts.map +1 -0
  889. package/dist/primitives/Steps.js +18 -0
  890. package/dist/primitives/Steps.js.map +1 -0
  891. package/dist/primitives/Switch.d.ts +8 -0
  892. package/dist/primitives/Switch.d.ts.map +1 -0
  893. package/dist/primitives/Switch.js +44 -0
  894. package/dist/primitives/Switch.js.map +1 -0
  895. package/dist/primitives/Table.d.ts +21 -0
  896. package/dist/primitives/Table.d.ts.map +1 -0
  897. package/dist/primitives/Table.js +11 -0
  898. package/dist/primitives/Table.js.map +1 -0
  899. package/dist/primitives/Tabs.d.ts +13 -0
  900. package/dist/primitives/Tabs.d.ts.map +1 -0
  901. package/dist/primitives/Tabs.js +49 -0
  902. package/dist/primitives/Tabs.js.map +1 -0
  903. package/dist/primitives/Tag.d.ts +10 -0
  904. package/dist/primitives/Tag.d.ts.map +1 -0
  905. package/dist/primitives/Tag.js +51 -0
  906. package/dist/primitives/Tag.js.map +1 -0
  907. package/dist/primitives/Textarea.d.ts +8 -0
  908. package/dist/primitives/Textarea.d.ts.map +1 -0
  909. package/dist/primitives/Textarea.js +46 -0
  910. package/dist/primitives/Textarea.js.map +1 -0
  911. package/dist/primitives/Timeline.d.ts +15 -0
  912. package/dist/primitives/Timeline.d.ts.map +1 -0
  913. package/dist/primitives/Timeline.js +20 -0
  914. package/dist/primitives/Timeline.js.map +1 -0
  915. package/dist/primitives/Toast.d.ts +25 -0
  916. package/dist/primitives/Toast.d.ts.map +1 -0
  917. package/dist/primitives/Toast.js +79 -0
  918. package/dist/primitives/Toast.js.map +1 -0
  919. package/dist/primitives/Tooltip.d.ts +12 -0
  920. package/dist/primitives/Tooltip.d.ts.map +1 -0
  921. package/dist/primitives/Tooltip.js +51 -0
  922. package/dist/primitives/Tooltip.js.map +1 -0
  923. package/dist/primitives/Upload.d.ts +12 -0
  924. package/dist/primitives/Upload.d.ts.map +1 -0
  925. package/dist/primitives/Upload.js +60 -0
  926. package/dist/primitives/Upload.js.map +1 -0
  927. package/dist/primitives/Wordmark.d.ts +20 -0
  928. package/dist/primitives/Wordmark.d.ts.map +1 -0
  929. package/dist/primitives/Wordmark.js +55 -0
  930. package/dist/primitives/Wordmark.js.map +1 -0
  931. package/dist/primitives/cn.d.ts +3 -0
  932. package/dist/primitives/cn.d.ts.map +1 -0
  933. package/dist/primitives/cn.js +8 -0
  934. package/dist/primitives/cn.js.map +1 -0
  935. package/dist/primitives/index.d.ts +129 -0
  936. package/dist/primitives/index.d.ts.map +1 -0
  937. package/dist/primitives/index.js +137 -0
  938. package/dist/primitives/index.js.map +1 -0
  939. package/dist/primitives/useDismiss.d.ts +8 -0
  940. package/dist/primitives/useDismiss.d.ts.map +1 -0
  941. package/dist/primitives/useDismiss.js +65 -0
  942. package/dist/primitives/useDismiss.js.map +1 -0
  943. package/dist/primitives/useForm.d.ts +24 -0
  944. package/dist/primitives/useForm.d.ts.map +1 -0
  945. package/dist/primitives/useForm.js +66 -0
  946. package/dist/primitives/useForm.js.map +1 -0
  947. package/dist/provider.d.ts +27 -0
  948. package/dist/provider.d.ts.map +1 -0
  949. package/dist/provider.js +70 -0
  950. package/dist/provider.js.map +1 -0
  951. package/dist/tailwind-preset/index.d.ts +20 -0
  952. package/dist/tailwind-preset/index.d.ts.map +1 -0
  953. package/dist/tailwind-preset/index.js +24 -0
  954. package/dist/tailwind-preset/index.js.map +1 -0
  955. package/dist/theme/color.d.ts +54 -0
  956. package/dist/theme/color.d.ts.map +1 -0
  957. package/dist/theme/color.js +161 -0
  958. package/dist/theme/color.js.map +1 -0
  959. package/dist/theme/compile.d.ts +23 -0
  960. package/dist/theme/compile.d.ts.map +1 -0
  961. package/dist/theme/compile.js +174 -0
  962. package/dist/theme/compile.js.map +1 -0
  963. package/dist/theme/index.d.ts +23 -0
  964. package/dist/theme/index.d.ts.map +1 -0
  965. package/dist/theme/index.js +53 -0
  966. package/dist/theme/index.js.map +1 -0
  967. package/dist/theme/outputs.d.ts +62 -0
  968. package/dist/theme/outputs.d.ts.map +1 -0
  969. package/dist/theme/outputs.js +198 -0
  970. package/dist/theme/outputs.js.map +1 -0
  971. package/dist/theme/types.d.ts +111 -0
  972. package/dist/theme/types.d.ts.map +1 -0
  973. package/dist/theme/types.js +14 -0
  974. package/dist/theme/types.js.map +1 -0
  975. package/package.json +161 -0
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.BookingCalendar = void 0;
37
+ const jsx_runtime_1 = require("react/jsx-runtime");
38
+ const React = __importStar(require("react"));
39
+ const cn_1 = require("../primitives/cn");
40
+ const datetime_1 = require("./datetime");
41
+ const WEEKDAY_KEYS = [
42
+ '2023-01-01', // Sun
43
+ '2023-01-02',
44
+ '2023-01-03',
45
+ '2023-01-04',
46
+ '2023-01-05',
47
+ '2023-01-06',
48
+ '2023-01-07', // Sat
49
+ ];
50
+ function weekdayLabels(weekStartsOn, locale) {
51
+ const fmt = new Intl.DateTimeFormat(locale, { weekday: 'short' });
52
+ const labels = WEEKDAY_KEYS.map((k) => fmt.format(new Date(`${k}T12:00:00`)));
53
+ return [...labels.slice(weekStartsOn), ...labels.slice(0, weekStartsOn)];
54
+ }
55
+ function buildAvailability(slots, availability, timezone) {
56
+ const map = new Map();
57
+ if (availability) {
58
+ for (const a of availability)
59
+ map.set(a.date, a.count);
60
+ return map;
61
+ }
62
+ for (const slot of slots ?? []) {
63
+ if (slot.spotsLeft <= 0)
64
+ continue;
65
+ const key = (0, datetime_1.dayKeyInTz)(slot.startsAt, timezone);
66
+ map.set(key, (map.get(key) ?? 0) + 1);
67
+ }
68
+ return map;
69
+ }
70
+ /**
71
+ * Month- or week-view date picker that highlights days with availability. Real
72
+ * `<button>` grid cells (roving `tabindex`) with full keyboard support — arrow
73
+ * keys move focus (wrapping across weeks/months), Home/End jump to the week
74
+ * ends, PageUp/PageDown change month, Enter/Space select — inside an ARIA
75
+ * `grid`. Token-only; availability is a dot + `aria-label` suffix, never color
76
+ * alone. Presentational: availability comes in as props (`slots` or a per-day
77
+ * `availability` summary); nothing is fetched.
78
+ */
79
+ exports.BookingCalendar = React.forwardRef(function BookingCalendar({ slots, availability, selectedDate, onSelectDate, timezone, view = 'month', weekStartsOn = 0, locale, className, ...rest }, ref) {
80
+ const availabilityMap = React.useMemo(() => buildAvailability(slots, availability, timezone), [slots, availability, timezone]);
81
+ const anchor = selectedDate ?? new Date();
82
+ const [viewDate, setViewDate] = React.useState(() => (0, datetime_1.startOfMonth)(anchor));
83
+ const [focusKey, setFocusKey] = React.useState(() => (0, datetime_1.toDayKey)(anchor));
84
+ const cellRefs = React.useRef(new Map());
85
+ const pendingFocus = React.useRef(null);
86
+ React.useEffect(() => {
87
+ if (pendingFocus.current) {
88
+ cellRefs.current.get(pendingFocus.current)?.focus();
89
+ pendingFocus.current = null;
90
+ }
91
+ });
92
+ const weeks = view === 'week'
93
+ ? [(0, datetime_1.weekRow)(selectedDate ?? viewDate, weekStartsOn)]
94
+ : (0, datetime_1.monthMatrix)(viewDate, weekStartsOn);
95
+ const labels = weekdayLabels(weekStartsOn, locale);
96
+ const monthLabel = new Intl.DateTimeFormat(locale, {
97
+ month: 'long',
98
+ year: 'numeric',
99
+ }).format(viewDate);
100
+ const longDate = new Intl.DateTimeFormat(locale, {
101
+ weekday: 'long',
102
+ month: 'long',
103
+ day: 'numeric',
104
+ year: 'numeric',
105
+ });
106
+ const shiftView = (months) => setViewDate((d) => new Date(d.getFullYear(), d.getMonth() + months, 1));
107
+ const moveFocus = (from, delta) => {
108
+ const target = (0, datetime_1.addDays)(from, delta);
109
+ const key = (0, datetime_1.toDayKey)(target);
110
+ setFocusKey(key);
111
+ pendingFocus.current = key;
112
+ if (view === 'month' && target.getMonth() !== viewDate.getMonth()) {
113
+ setViewDate((0, datetime_1.startOfMonth)(target));
114
+ }
115
+ };
116
+ const onKeyDown = (e, date) => {
117
+ switch (e.key) {
118
+ case 'ArrowLeft':
119
+ e.preventDefault();
120
+ moveFocus(date, -1);
121
+ break;
122
+ case 'ArrowRight':
123
+ e.preventDefault();
124
+ moveFocus(date, 1);
125
+ break;
126
+ case 'ArrowUp':
127
+ e.preventDefault();
128
+ moveFocus(date, -7);
129
+ break;
130
+ case 'ArrowDown':
131
+ e.preventDefault();
132
+ moveFocus(date, 7);
133
+ break;
134
+ case 'Home':
135
+ e.preventDefault();
136
+ moveFocus(date, -((date.getDay() - weekStartsOn + 7) % 7));
137
+ break;
138
+ case 'End':
139
+ e.preventDefault();
140
+ moveFocus(date, 6 - ((date.getDay() - weekStartsOn + 7) % 7));
141
+ break;
142
+ case 'PageUp':
143
+ e.preventDefault();
144
+ shiftView(-1);
145
+ break;
146
+ case 'PageDown':
147
+ e.preventDefault();
148
+ shiftView(1);
149
+ break;
150
+ case 'Enter':
151
+ case ' ':
152
+ e.preventDefault();
153
+ onSelectDate?.(date);
154
+ break;
155
+ default:
156
+ break;
157
+ }
158
+ };
159
+ const selectedKey = selectedDate ? (0, datetime_1.toDayKey)(selectedDate) : null;
160
+ // Ensure the roving-tabindex target actually exists in the rendered grid.
161
+ const renderedKeys = new Set(weeks.flat().map(datetime_1.toDayKey));
162
+ const activeKey = renderedKeys.has(focusKey)
163
+ ? focusKey
164
+ : (0, datetime_1.toDayKey)(weeks[0]?.find((d) => d.getMonth() === viewDate.getMonth()) ?? weeks[0][0]);
165
+ return ((0, jsx_runtime_1.jsxs)("div", { ref: ref, "data-xen-booking-calendar": view, className: (0, cn_1.cn)('inline-flex flex-col gap-[var(--xen-space-sm)] rounded-[var(--xen-radius-lg)] border border-border bg-surface p-[var(--xen-space-md)]', className), ...rest, children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between gap-[var(--xen-space-md)]", children: [(0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Previous month", onClick: () => shiftView(-1), className: "inline-flex h-8 w-8 items-center justify-center rounded-[var(--xen-radius-sm)] text-on-surface hover:bg-neutral-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-300", children: (0, jsx_runtime_1.jsx)("svg", { "aria-hidden": "true", width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: (0, jsx_runtime_1.jsx)("path", { d: "M10 3L5 8l5 5" }) }) }), (0, jsx_runtime_1.jsx)("div", { "data-xen-calendar-label": "", className: "font-heading text-sm font-semibold text-on-surface", children: monthLabel }), (0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Next month", onClick: () => shiftView(1), className: "inline-flex h-8 w-8 items-center justify-center rounded-[var(--xen-radius-sm)] text-on-surface hover:bg-neutral-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-300", children: (0, jsx_runtime_1.jsx)("svg", { "aria-hidden": "true", width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: (0, jsx_runtime_1.jsx)("path", { d: "M6 3l5 5-5 5" }) }) })] }), (0, jsx_runtime_1.jsxs)("div", { role: "grid", "aria-label": `Choose a date — ${monthLabel}`, children: [(0, jsx_runtime_1.jsx)("div", { role: "row", className: "grid grid-cols-7", children: labels.map((label) => ((0, jsx_runtime_1.jsx)("div", { role: "columnheader", "aria-label": label, className: "py-[var(--xen-space-xs)] text-center text-xs font-medium text-muted", children: label }, label))) }), weeks.map((row, wi) => ((0, jsx_runtime_1.jsx)("div", { role: "row", className: "grid grid-cols-7", children: row.map((date) => {
166
+ const key = (0, datetime_1.toDayKey)(date);
167
+ const inMonth = view === 'week' || date.getMonth() === viewDate.getMonth();
168
+ const count = availabilityMap.get(key) ?? 0;
169
+ const hasAvail = count > 0;
170
+ const isSelected = selectedKey === key;
171
+ const isFocusTarget = activeKey === key;
172
+ const ariaSuffix = hasAvail ? ', available' : ', no availability';
173
+ return ((0, jsx_runtime_1.jsx)("div", { role: "gridcell", className: "p-0.5", children: (0, jsx_runtime_1.jsxs)("button", { ref: (el) => {
174
+ if (el)
175
+ cellRefs.current.set(key, el);
176
+ else
177
+ cellRefs.current.delete(key);
178
+ }, type: "button", "data-xen-calendar-day": "", "data-available": hasAvail ? 'true' : 'false', "data-outside": inMonth ? 'false' : 'true', tabIndex: isFocusTarget ? 0 : -1, "aria-pressed": isSelected, "aria-label": longDate.format(date) + ariaSuffix, onClick: () => {
179
+ setFocusKey(key);
180
+ onSelectDate?.(date);
181
+ }, onFocus: () => setFocusKey(key), onKeyDown: (e) => onKeyDown(e, date), className: (0, cn_1.cn)('relative flex h-9 w-9 flex-col items-center justify-center rounded-[var(--xen-radius-md)] text-sm transition-colors', 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-300', !inMonth && 'text-muted', isSelected
182
+ ? 'bg-primary text-on-primary'
183
+ : (0, cn_1.cn)('text-on-surface hover:bg-neutral-100', hasAvail && 'font-semibold')), children: [(0, jsx_runtime_1.jsx)("span", { children: date.getDate() }), hasAvail ? ((0, jsx_runtime_1.jsx)("span", { "data-xen-calendar-dot": "", "aria-hidden": "true", className: (0, cn_1.cn)('absolute bottom-1 h-1 w-1 rounded-full', isSelected ? 'bg-on-primary' : 'bg-primary') })) : null] }) }, key));
184
+ }) }, wi)))] })] }));
185
+ });
186
+ //# sourceMappingURL=BookingCalendar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookingCalendar.js","sourceRoot":"","sources":["../../src/booking/BookingCalendar.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import * as React from 'react';
2
+ import { BookingResource, BookingSlot } from './types';
3
+ export interface BookingSummaryProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'slot' | 'title' | 'resource'> {
4
+ /** The chosen resource (staff member, room, …). */
5
+ resource?: BookingResource;
6
+ /** The chosen time slot. */
7
+ slot?: BookingSlot | null;
8
+ /** IANA timezone for rendering (falls back to `resource.timezone`). */
9
+ timeZone?: string;
10
+ /** Render the date line. Defaults to a localized long date. */
11
+ formatDate?: (iso: string) => string;
12
+ /** Render a time. Defaults to timezone-aware `h:mm a`. */
13
+ formatTime?: (iso: string) => string;
14
+ /** Trailing action slot (e.g. a confirm button). */
15
+ action?: React.ReactNode;
16
+ /** Heading text (default `Your booking`). */
17
+ title?: React.ReactNode;
18
+ }
19
+ /**
20
+ * Read-only recap of a chosen resource + slot: who/what, the date, the time
21
+ * range, and the timezone. Token-only. Pairs with a `BookingCalendar` +
22
+ * `SlotPicker` flow as the confirmation step.
23
+ */
24
+ export declare const BookingSummary: React.ForwardRefExoticComponent<BookingSummaryProps & React.RefAttributes<HTMLDivElement>>;
25
+ //# sourceMappingURL=BookingSummary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookingSummary.d.ts","sourceRoot":"","sources":["../../src/booking/BookingSummary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGvD,MAAM,WAAW,mBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;IACjF,mDAAmD;IACnD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,4BAA4B;IAC5B,IAAI,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,0DAA0D;IAC1D,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,oDAAoD;IACpD,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB;AAcD;;;;GAIG;AACH,eAAO,MAAM,cAAc,4FA+C1B,CAAC"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.BookingSummary = void 0;
37
+ const jsx_runtime_1 = require("react/jsx-runtime");
38
+ const React = __importStar(require("react"));
39
+ const cn_1 = require("../primitives/cn");
40
+ const datetime_1 = require("./datetime");
41
+ const defaultFormatDate = (iso, timeZone) => {
42
+ const d = new Date(iso);
43
+ if (Number.isNaN(d.getTime()))
44
+ return '';
45
+ return new Intl.DateTimeFormat(undefined, {
46
+ timeZone,
47
+ weekday: 'long',
48
+ month: 'long',
49
+ day: 'numeric',
50
+ year: 'numeric',
51
+ }).format(d);
52
+ };
53
+ /**
54
+ * Read-only recap of a chosen resource + slot: who/what, the date, the time
55
+ * range, and the timezone. Token-only. Pairs with a `BookingCalendar` +
56
+ * `SlotPicker` flow as the confirmation step.
57
+ */
58
+ exports.BookingSummary = React.forwardRef(function BookingSummary({ resource, slot, timeZone, formatDate, formatTime, action, title = 'Your booking', className, ...rest }, ref) {
59
+ const tz = timeZone ?? resource?.timezone;
60
+ const fmtDate = formatDate ?? ((iso) => defaultFormatDate(iso, tz));
61
+ const fmtTime = formatTime ?? ((iso) => (0, datetime_1.formatTimeInTz)(iso, tz));
62
+ const line = (label, value, key) => ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-baseline justify-between gap-[var(--xen-space-md)] text-sm", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-muted", children: label }), (0, jsx_runtime_1.jsx)("span", { className: "text-right text-on-surface", children: value })] }, key));
63
+ return ((0, jsx_runtime_1.jsxs)("div", { ref: ref, "data-xen-booking-summary": "", className: (0, cn_1.cn)('flex flex-col gap-[var(--xen-space-md)] rounded-[var(--xen-radius-lg)] border border-border bg-surface p-[var(--xen-space-lg)]', className), ...rest, children: [(0, jsx_runtime_1.jsx)("h3", { className: "font-heading text-base font-semibold text-on-surface", children: title }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col gap-[var(--xen-space-sm)]", children: [resource ? line('With', resource.name, 'resource') : null, slot ? line('Date', fmtDate(slot.startsAt), 'date') : null, slot
64
+ ? line('Time', `${fmtTime(slot.startsAt)} – ${fmtTime(slot.endsAt)}`, 'time')
65
+ : null, resource?.slotMinutes
66
+ ? line('Duration', `${resource.slotMinutes} min`, 'duration')
67
+ : null, tz ? line('Timezone', tz, 'tz') : null, !slot && !resource ? ((0, jsx_runtime_1.jsx)("p", { "data-xen-booking-empty": "", className: "text-sm text-muted", children: "Nothing selected yet." })) : null] }), action ? (0, jsx_runtime_1.jsx)("div", { children: action }) : null] }));
68
+ });
69
+ //# sourceMappingURL=BookingSummary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookingSummary.js","sourceRoot":"","sources":["../../src/booking/BookingSummary.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import * as React from 'react';
2
+ import { BookingSlot } from './types';
3
+ export interface SlotPickerProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
4
+ /** Bookable time slots for the chosen day. */
5
+ slots: BookingSlot[];
6
+ /** Called with the slot when a bookable time is picked. */
7
+ onPick?: (slot: BookingSlot) => void;
8
+ /** Currently selected slot (or its `startsAt` for matching). */
9
+ selected?: BookingSlot | string | null;
10
+ /** Render a slot's local time. Defaults to a timezone-aware `h:mm a`. */
11
+ formatTime?: (iso: string) => string;
12
+ /** IANA timezone used by the default `formatTime`. */
13
+ timeZone?: string;
14
+ /** Columns at the widest breakpoint (default 3). */
15
+ columns?: 2 | 3 | 4;
16
+ /** Show the remaining-spots hint only when `spotsLeft <= this` (default 3). */
17
+ lowSpotsThreshold?: number;
18
+ /** Label shown on a full (spotsLeft === 0) slot (default `Full`). */
19
+ fullLabel?: string;
20
+ }
21
+ /**
22
+ * Grid of bookable times for one day. Each slot is a real `<button>`; a full
23
+ * slot (`spotsLeft === 0`) is disabled, and low remaining capacity surfaces a
24
+ * "{n} left" hint. The selected slot is marked `aria-pressed`. Local times come
25
+ * from the `formatTime` prop (default: timezone-aware). Token-only.
26
+ */
27
+ export declare const SlotPicker: React.ForwardRefExoticComponent<SlotPickerProps & React.RefAttributes<HTMLDivElement>>;
28
+ //# sourceMappingURL=SlotPicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlotPicker.d.ts","sourceRoot":"","sources":["../../src/booking/SlotPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IAC7F,8CAA8C;IAC9C,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IACrC,gEAAgE;IAChE,QAAQ,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC;IACvC,yEAAyE;IACzE,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAWD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,wFA4DrB,CAAC"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.SlotPicker = void 0;
37
+ const jsx_runtime_1 = require("react/jsx-runtime");
38
+ const React = __importStar(require("react"));
39
+ const cn_1 = require("../primitives/cn");
40
+ const datetime_1 = require("./datetime");
41
+ const COLUMN_CLASSES = {
42
+ 2: 'grid-cols-2',
43
+ 3: 'grid-cols-2 sm:grid-cols-3',
44
+ 4: 'grid-cols-2 sm:grid-cols-4',
45
+ };
46
+ const startOf = (s) => s == null ? null : typeof s === 'string' ? s : s.startsAt;
47
+ /**
48
+ * Grid of bookable times for one day. Each slot is a real `<button>`; a full
49
+ * slot (`spotsLeft === 0`) is disabled, and low remaining capacity surfaces a
50
+ * "{n} left" hint. The selected slot is marked `aria-pressed`. Local times come
51
+ * from the `formatTime` prop (default: timezone-aware). Token-only.
52
+ */
53
+ exports.SlotPicker = React.forwardRef(function SlotPicker({ slots, onPick, selected, formatTime, timeZone, columns = 3, lowSpotsThreshold = 3, fullLabel = 'Full', className, ...rest }, ref) {
54
+ const format = formatTime ?? ((iso) => (0, datetime_1.formatTimeInTz)(iso, timeZone));
55
+ const selectedStart = startOf(selected);
56
+ return ((0, jsx_runtime_1.jsx)("div", { ref: ref, role: "group", "data-xen-slot-picker": "", className: (0, cn_1.cn)('grid gap-[var(--xen-space-sm)]', COLUMN_CLASSES[columns], className), ...rest, children: slots.map((slot) => {
57
+ const full = slot.spotsLeft <= 0;
58
+ const isSelected = selectedStart === slot.startsAt;
59
+ const low = !full && slot.spotsLeft <= lowSpotsThreshold;
60
+ return ((0, jsx_runtime_1.jsxs)("button", { type: "button", "data-xen-slot": "", "data-full": full ? 'true' : 'false', "aria-pressed": isSelected, disabled: full, onClick: () => onPick?.(slot), className: (0, cn_1.cn)('flex flex-col items-center rounded-[var(--xen-radius-md)] border px-[var(--xen-space-sm)] py-[var(--xen-space-sm)] text-sm transition-colors', 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-300', 'disabled:cursor-not-allowed disabled:opacity-50', isSelected
61
+ ? 'border-primary bg-primary text-on-primary'
62
+ : 'border-border bg-surface text-on-surface hover:border-primary hover:bg-primary-50'), children: [(0, jsx_runtime_1.jsx)("span", { className: "font-medium tabular-nums", children: format(slot.startsAt) }), (0, jsx_runtime_1.jsx)("span", { "data-xen-slot-spots": "", className: (0, cn_1.cn)('text-xs', isSelected ? 'text-on-primary' : 'text-muted'), children: full ? fullLabel : low ? `${slot.spotsLeft} left` : `${slot.spotsLeft} open` })] }, slot.startsAt));
63
+ }) }));
64
+ });
65
+ //# sourceMappingURL=SlotPicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlotPicker.js","sourceRoot":"","sources":["../../src/booking/SlotPicker.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,yCAAsC;AAEtC,yCAA4C;AAqB5C,MAAM,cAAc,GAA4D;IAC9E,CAAC,EAAE,aAAa;IAChB,CAAC,EAAE,4BAA4B;IAC/B,CAAC,EAAE,4BAA4B;CAChC,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,CAA8B,EAAiB,EAAE,CAChE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AAE5D;;;;;GAKG;AACU,QAAA,UAAU,GAAG,KAAK,CAAC,UAAU,CAAkC,SAAS,UAAU,CAC7F,EACE,KAAK,EACL,MAAM,EACN,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,OAAO,GAAG,CAAC,EACX,iBAAiB,GAAG,CAAC,EACrB,SAAS,GAAG,MAAM,EAClB,SAAS,EACT,GAAG,IAAI,EACR,EACD,GAAG;IAEH,MAAM,MAAM,GAAG,UAAU,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,IAAA,yBAAc,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC9E,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAExC,OAAO,CACL,gCACE,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,OAAO,0BACS,EAAE,EACvB,SAAS,EAAE,IAAA,OAAE,EAAC,gCAAgC,EAAE,cAAc,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,KAC/E,IAAI,YAEP,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;YACjC,MAAM,UAAU,GAAG,aAAa,KAAK,IAAI,CAAC,QAAQ,CAAC;YACnD,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,IAAI,iBAAiB,CAAC;YACzD,OAAO,CACL,oCAEE,IAAI,EAAC,QAAQ,mBACC,EAAE,eACL,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,kBACpB,UAAU,EACxB,QAAQ,EAAE,IAAI,EACd,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAC7B,SAAS,EAAE,IAAA,OAAE,EACX,8IAA8I,EAC9I,gFAAgF,EAChF,iDAAiD,EACjD,UAAU;oBACR,CAAC,CAAC,2CAA2C;oBAC7C,CAAC,CAAC,mFAAmF,CACxF,aAED,iCAAM,SAAS,EAAC,0BAA0B,YAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAQ,EACzE,wDACsB,EAAE,EACtB,SAAS,EAAE,IAAA,OAAE,EAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC,YAEtE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,OAAO,GACxE,KAtBF,IAAI,CAAC,QAAQ,CAuBX,CACV,CAAC;QACJ,CAAC,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Small, dependency-free date helpers shared by the booking components. All
3
+ * "civil day" keys are `YYYY-MM-DD` strings so availability (derived from slot
4
+ * instants in the resource timezone) and calendar cells (civil dates) compare
5
+ * as plain strings.
6
+ */
7
+ /** `YYYY-MM-DD` from a civil (local) Date's calendar fields. */
8
+ export declare function toDayKey(date: Date): string;
9
+ /**
10
+ * `YYYY-MM-DD` for an ISO instant, evaluated in `timeZone` (default: runtime
11
+ * zone). Uses `en-CA` which formats as ISO-order `YYYY-MM-DD`.
12
+ */
13
+ export declare function dayKeyInTz(iso: string, timeZone?: string): string;
14
+ /** Localized time-of-day for an ISO instant (default `9:00 AM` style). */
15
+ export declare function formatTimeInTz(iso: string, timeZone?: string): string;
16
+ /** Add `days` to a date, returning a new Date (no mutation). */
17
+ export declare function addDays(date: Date, days: number): Date;
18
+ /** First day of the month for `date`. */
19
+ export declare function startOfMonth(date: Date): Date;
20
+ /**
21
+ * The 6×7 (or fewer) grid of civil dates covering the weeks that intersect
22
+ * `month`, starting each week on `weekStartsOn` (0 = Sunday).
23
+ */
24
+ export declare function monthMatrix(month: Date, weekStartsOn?: number): Date[][];
25
+ /** The 7 civil dates of the week containing `date`. */
26
+ export declare function weekRow(date: Date, weekStartsOn?: number): Date[];
27
+ //# sourceMappingURL=datetime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datetime.d.ts","sourceRoot":"","sources":["../../src/booking/datetime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,gEAAgE;AAChE,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAE3C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CASjE;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAQrE;AAED,gEAAgE;AAChE,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAItD;AAED,yCAAyC;AACzC,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAE7C;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,SAAI,GAAG,IAAI,EAAE,EAAE,CAanE;AAED,uDAAuD;AACvD,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,SAAI,GAAG,IAAI,EAAE,CAI5D"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ /**
3
+ * Small, dependency-free date helpers shared by the booking components. All
4
+ * "civil day" keys are `YYYY-MM-DD` strings so availability (derived from slot
5
+ * instants in the resource timezone) and calendar cells (civil dates) compare
6
+ * as plain strings.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.toDayKey = toDayKey;
10
+ exports.dayKeyInTz = dayKeyInTz;
11
+ exports.formatTimeInTz = formatTimeInTz;
12
+ exports.addDays = addDays;
13
+ exports.startOfMonth = startOfMonth;
14
+ exports.monthMatrix = monthMatrix;
15
+ exports.weekRow = weekRow;
16
+ const pad = (n) => String(n).padStart(2, '0');
17
+ /** `YYYY-MM-DD` from a civil (local) Date's calendar fields. */
18
+ function toDayKey(date) {
19
+ return `${date.getFullYear()}-${pad(date.getMonth() + 1)}-${pad(date.getDate())}`;
20
+ }
21
+ /**
22
+ * `YYYY-MM-DD` for an ISO instant, evaluated in `timeZone` (default: runtime
23
+ * zone). Uses `en-CA` which formats as ISO-order `YYYY-MM-DD`.
24
+ */
25
+ function dayKeyInTz(iso, timeZone) {
26
+ const d = new Date(iso);
27
+ if (Number.isNaN(d.getTime()))
28
+ return '';
29
+ return new Intl.DateTimeFormat('en-CA', {
30
+ timeZone,
31
+ year: 'numeric',
32
+ month: '2-digit',
33
+ day: '2-digit',
34
+ }).format(d);
35
+ }
36
+ /** Localized time-of-day for an ISO instant (default `9:00 AM` style). */
37
+ function formatTimeInTz(iso, timeZone) {
38
+ const d = new Date(iso);
39
+ if (Number.isNaN(d.getTime()))
40
+ return '';
41
+ return new Intl.DateTimeFormat(undefined, {
42
+ timeZone,
43
+ hour: 'numeric',
44
+ minute: '2-digit',
45
+ }).format(d);
46
+ }
47
+ /** Add `days` to a date, returning a new Date (no mutation). */
48
+ function addDays(date, days) {
49
+ const next = new Date(date);
50
+ next.setDate(next.getDate() + days);
51
+ return next;
52
+ }
53
+ /** First day of the month for `date`. */
54
+ function startOfMonth(date) {
55
+ return new Date(date.getFullYear(), date.getMonth(), 1);
56
+ }
57
+ /**
58
+ * The 6×7 (or fewer) grid of civil dates covering the weeks that intersect
59
+ * `month`, starting each week on `weekStartsOn` (0 = Sunday).
60
+ */
61
+ function monthMatrix(month, weekStartsOn = 0) {
62
+ const first = startOfMonth(month);
63
+ const offset = (first.getDay() - weekStartsOn + 7) % 7;
64
+ const gridStart = addDays(first, -offset);
65
+ const weeks = [];
66
+ for (let w = 0; w < 6; w += 1) {
67
+ const row = [];
68
+ for (let d = 0; d < 7; d += 1) {
69
+ row.push(addDays(gridStart, w * 7 + d));
70
+ }
71
+ weeks.push(row);
72
+ }
73
+ return weeks;
74
+ }
75
+ /** The 7 civil dates of the week containing `date`. */
76
+ function weekRow(date, weekStartsOn = 0) {
77
+ const offset = (date.getDay() - weekStartsOn + 7) % 7;
78
+ const start = addDays(date, -offset);
79
+ return Array.from({ length: 7 }, (_, i) => addDays(start, i));
80
+ }
81
+ //# sourceMappingURL=datetime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datetime.js","sourceRoot":"","sources":["../../src/booking/datetime.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAKH,4BAEC;AAMD,gCASC;AAGD,wCAQC;AAGD,0BAIC;AAGD,oCAEC;AAMD,kCAaC;AAGD,0BAIC;AArED,MAAM,GAAG,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAE9D,gEAAgE;AAChE,SAAgB,QAAQ,CAAC,IAAU;IACjC,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;AACpF,CAAC;AAED;;;GAGG;AACH,SAAgB,UAAU,CAAC,GAAW,EAAE,QAAiB;IACvD,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;QACtC,QAAQ;QACR,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,SAAS;KACf,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACf,CAAC;AAED,0EAA0E;AAC1E,SAAgB,cAAc,CAAC,GAAW,EAAE,QAAiB;IAC3D,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE;QACxC,QAAQ;QACR,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACf,CAAC;AAED,gEAAgE;AAChE,SAAgB,OAAO,CAAC,IAAU,EAAE,IAAY;IAC9C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,yCAAyC;AACzC,SAAgB,YAAY,CAAC,IAAU;IACrC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,KAAW,EAAE,YAAY,GAAG,CAAC;IACvD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAW,EAAE,CAAC;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,uDAAuD;AACvD,SAAgB,OAAO,CAAC,IAAU,EAAE,YAAY,GAAG,CAAC;IAClD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * `@xenition/ui/booking` — presentational scheduling components.
3
+ *
4
+ * Props mirror the booking module: a `BookingResource`
5
+ * `{name,timezone,slotMinutes}` and a `BookingSlot` `{startsAt,endsAt,spotsLeft}`
6
+ * (instants are ISO-8601 strings). Nothing fetches — the app passes shaped
7
+ * data — and everything is styled via the `--xen-*` tokens, so a seed change
8
+ * restyles the whole flow (dark mode included). Keyboard + ARIA throughout.
9
+ */
10
+ export { BookingCalendar } from './BookingCalendar';
11
+ export type { BookingCalendarProps, DayAvailability } from './BookingCalendar';
12
+ export { SlotPicker } from './SlotPicker';
13
+ export type { SlotPickerProps } from './SlotPicker';
14
+ export { BookingSummary } from './BookingSummary';
15
+ export type { BookingSummaryProps } from './BookingSummary';
16
+ export type { BookingResource, BookingSlot } from './types';
17
+ export { toDayKey, dayKeyInTz, formatTimeInTz, addDays, startOfMonth, monthMatrix, weekRow, } from './datetime';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/booking/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,EACL,QAAQ,EACR,UAAU,EACV,cAAc,EACd,OAAO,EACP,YAAY,EACZ,WAAW,EACX,OAAO,GACR,MAAM,YAAY,CAAC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ /**
3
+ * `@xenition/ui/booking` — presentational scheduling components.
4
+ *
5
+ * Props mirror the booking module: a `BookingResource`
6
+ * `{name,timezone,slotMinutes}` and a `BookingSlot` `{startsAt,endsAt,spotsLeft}`
7
+ * (instants are ISO-8601 strings). Nothing fetches — the app passes shaped
8
+ * data — and everything is styled via the `--xen-*` tokens, so a seed change
9
+ * restyles the whole flow (dark mode included). Keyboard + ARIA throughout.
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.weekRow = exports.monthMatrix = exports.startOfMonth = exports.addDays = exports.formatTimeInTz = exports.dayKeyInTz = exports.toDayKey = exports.BookingSummary = exports.SlotPicker = exports.BookingCalendar = void 0;
13
+ var BookingCalendar_1 = require("./BookingCalendar");
14
+ Object.defineProperty(exports, "BookingCalendar", { enumerable: true, get: function () { return BookingCalendar_1.BookingCalendar; } });
15
+ var SlotPicker_1 = require("./SlotPicker");
16
+ Object.defineProperty(exports, "SlotPicker", { enumerable: true, get: function () { return SlotPicker_1.SlotPicker; } });
17
+ var BookingSummary_1 = require("./BookingSummary");
18
+ Object.defineProperty(exports, "BookingSummary", { enumerable: true, get: function () { return BookingSummary_1.BookingSummary; } });
19
+ var datetime_1 = require("./datetime");
20
+ Object.defineProperty(exports, "toDayKey", { enumerable: true, get: function () { return datetime_1.toDayKey; } });
21
+ Object.defineProperty(exports, "dayKeyInTz", { enumerable: true, get: function () { return datetime_1.dayKeyInTz; } });
22
+ Object.defineProperty(exports, "formatTimeInTz", { enumerable: true, get: function () { return datetime_1.formatTimeInTz; } });
23
+ Object.defineProperty(exports, "addDays", { enumerable: true, get: function () { return datetime_1.addDays; } });
24
+ Object.defineProperty(exports, "startOfMonth", { enumerable: true, get: function () { return datetime_1.startOfMonth; } });
25
+ Object.defineProperty(exports, "monthMatrix", { enumerable: true, get: function () { return datetime_1.monthMatrix; } });
26
+ Object.defineProperty(exports, "weekRow", { enumerable: true, get: function () { return datetime_1.weekRow; } });
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/booking/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AAExB,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AAEnB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AAGvB,uCAQoB;AAPlB,oGAAA,QAAQ,OAAA;AACR,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,mGAAA,OAAO,OAAA;AACP,wGAAA,YAAY,OAAA;AACZ,uGAAA,WAAW,OAAA;AACX,mGAAA,OAAO,OAAA"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Prop shapes mirror the booking module: a bookable **resource** has a name, a
3
+ * timezone, and a slot length; a **slot** is an instant range with remaining
4
+ * capacity. Instants are ISO-8601 strings (the component never fetches — the
5
+ * app passes already-shaped data).
6
+ */
7
+ export interface BookingResource {
8
+ /** Display name (staff member, room, table, …). */
9
+ name: string;
10
+ /** IANA timezone the resource's availability is expressed in. */
11
+ timezone?: string;
12
+ /** Length of one slot in minutes. */
13
+ slotMinutes?: number;
14
+ }
15
+ export interface BookingSlot {
16
+ /** ISO-8601 start instant. */
17
+ startsAt: string;
18
+ /** ISO-8601 end instant. */
19
+ endsAt: string;
20
+ /** Remaining capacity; `0` means the slot is full. */
21
+ spotsLeft: number;
22
+ }
23
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/booking/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,eAAe;IAC9B,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;CACnB"}