@clubmed/trident-ui 2.0.0-beta.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (486) hide show
  1. package/README.md +8 -0
  2. package/assets/trident-ui.css +3 -0
  3. package/chunks/Backdrop.js +1 -1
  4. package/chunks/Backdrop.js.map +1 -1
  5. package/chunks/Birthdate.js +27 -0
  6. package/chunks/Birthdate.js.map +1 -0
  7. package/chunks/Carousel.context.js +1548 -0
  8. package/chunks/Carousel.context.js.map +1 -0
  9. package/chunks/ChatMessage.js +14395 -0
  10. package/chunks/ChatMessage.js.map +1 -0
  11. package/chunks/CriteriaParticipants.js +415 -0
  12. package/chunks/CriteriaParticipants.js.map +1 -0
  13. package/chunks/DateField.js +196 -136
  14. package/chunks/DateField.js.map +1 -1
  15. package/chunks/Datepicker.js +2039 -0
  16. package/chunks/Datepicker.js.map +1 -0
  17. package/chunks/Day.js +88 -0
  18. package/chunks/Day.js.map +1 -0
  19. package/chunks/Range.js +2 -2
  20. package/chunks/Range.js.map +1 -1
  21. package/chunks/Tooltip.js +4461 -0
  22. package/chunks/Tooltip.js.map +1 -0
  23. package/chunks/addLeadingZeros.js +33 -0
  24. package/chunks/addLeadingZeros.js.map +1 -0
  25. package/chunks/addYears.js +18 -0
  26. package/chunks/addYears.js.map +1 -0
  27. package/chunks/chunk.js +11 -4
  28. package/chunks/client.js +18953 -0
  29. package/chunks/client.js.map +1 -0
  30. package/chunks/endOfMonth.js +17 -0
  31. package/chunks/endOfMonth.js.map +1 -0
  32. package/chunks/format.js +1113 -0
  33. package/chunks/format.js.map +1 -0
  34. package/chunks/formatISO.js +29 -0
  35. package/chunks/formatISO.js.map +1 -0
  36. package/chunks/isAfter.js +9 -0
  37. package/chunks/isAfter.js.map +1 -0
  38. package/chunks/isBefore.js +15 -0
  39. package/chunks/isBefore.js.map +1 -0
  40. package/chunks/normalizeDates.js +10 -0
  41. package/chunks/normalizeDates.js.map +1 -0
  42. package/chunks/subYears.js +9 -0
  43. package/chunks/subYears.js.map +1 -0
  44. package/examples/accordion-demo.d.ts +1 -0
  45. package/examples/accordion-demo.js +79 -0
  46. package/examples/accordion-demo.js.map +1 -0
  47. package/examples/accordion-multiple-demo.d.ts +1 -0
  48. package/examples/accordion-multiple-demo.js +79 -0
  49. package/examples/accordion-multiple-demo.js.map +1 -0
  50. package/examples/accordion-trigger-wrapper-demo.d.ts +1 -0
  51. package/examples/accordion-trigger-wrapper-demo.js +80 -0
  52. package/examples/accordion-trigger-wrapper-demo.js.map +1 -0
  53. package/examples/advanced-toast-demo.js +2 -2
  54. package/examples/advanced-toast-demo.js.map +1 -1
  55. package/examples/advanced-toast-green-demo.js +1 -1
  56. package/examples/advanced-toast-green-demo.js.map +1 -1
  57. package/examples/advanced-toast-no-dismiss-demo.js +1 -1
  58. package/examples/advanced-toast-no-dismiss-demo.js.map +1 -1
  59. package/examples/advanced-toast-red-demo.js +1 -1
  60. package/examples/advanced-toast-red-demo.js.map +1 -1
  61. package/examples/advanced-toast-with-details-demo.js +2 -2
  62. package/examples/advanced-toast-with-details-demo.js.map +1 -1
  63. package/examples/arrow-button-demo.js +2 -1
  64. package/examples/arrow-button-demo.js.map +1 -1
  65. package/examples/arrow-button-disabled-demo.js +2 -1
  66. package/examples/arrow-button-disabled-demo.js.map +1 -1
  67. package/examples/arrow-button-left-demo.js +2 -1
  68. package/examples/arrow-button-left-demo.js.map +1 -1
  69. package/examples/arrow-button-outline-demo.js +2 -1
  70. package/examples/arrow-button-outline-demo.js.map +1 -1
  71. package/examples/arrow-button-tail-demo.js +2 -1
  72. package/examples/arrow-button-tail-demo.js.map +1 -1
  73. package/examples/avatar-demo.js +7 -7
  74. package/examples/button-demo.js +2 -2
  75. package/examples/button-demo.js.map +1 -1
  76. package/examples/card-list-demo.js +10 -10
  77. package/examples/card-no-border-demo.js +7 -7
  78. package/examples/chapters-demo.d.ts +1 -0
  79. package/examples/chapters-demo.js +46 -0
  80. package/examples/chapters-demo.js.map +1 -0
  81. package/examples/chat-button-demo.js +1 -1
  82. package/examples/chat-button-demo.js.map +1 -1
  83. package/examples/chat-button-offset-demo.js +4 -1
  84. package/examples/chat-button-offset-demo.js.map +1 -1
  85. package/examples/chat-input-demo.d.ts +1 -0
  86. package/examples/chat-input-demo.js +22 -0
  87. package/examples/chat-input-demo.js.map +1 -0
  88. package/examples/chat-message-demo.d.ts +1 -0
  89. package/examples/chat-message-demo.js +20 -0
  90. package/examples/chat-message-demo.js.map +1 -0
  91. package/examples/chat-typing-indicator-demo.d.ts +1 -0
  92. package/examples/chat-typing-indicator-demo.js +14 -0
  93. package/examples/chat-typing-indicator-demo.js.map +1 -0
  94. package/examples/chat-window-csat-demo.d.ts +1 -0
  95. package/examples/chat-window-csat-demo.js +69 -0
  96. package/examples/chat-window-csat-demo.js.map +1 -0
  97. package/examples/chat-window-csat-prompt-demo.d.ts +1 -0
  98. package/examples/chat-window-csat-prompt-demo.js +40 -0
  99. package/examples/chat-window-csat-prompt-demo.js.map +1 -0
  100. package/examples/chat-window-demo.d.ts +1 -0
  101. package/examples/chat-window-demo.js +70 -0
  102. package/examples/chat-window-demo.js.map +1 -0
  103. package/examples/chat-window-quote-demo.d.ts +1 -0
  104. package/examples/chat-window-quote-demo.js +47 -0
  105. package/examples/chat-window-quote-demo.js.map +1 -0
  106. package/examples/chat-window-quotes-demo.d.ts +1 -0
  107. package/examples/chat-window-quotes-demo.js +68 -0
  108. package/examples/chat-window-quotes-demo.js.map +1 -0
  109. package/examples/checkbox-demo.js +2 -2
  110. package/examples/checkbox-demo.js.map +1 -1
  111. package/examples/checkbox-select-demo.d.ts +1 -0
  112. package/examples/checkbox-select-demo.js +101 -0
  113. package/examples/checkbox-select-demo.js.map +1 -0
  114. package/examples/checkboxes-demo.js +1 -0
  115. package/examples/checkboxes-demo.js.map +1 -1
  116. package/examples/checkboxes-with-form-control-demo.js +4 -4
  117. package/examples/chip-demo.js +4 -4
  118. package/examples/choice-expander-demo.js +5 -67
  119. package/examples/choice-expander-demo.js.map +1 -1
  120. package/examples/countdown-demo.d.ts +1 -0
  121. package/examples/countdown-demo.js +39 -0
  122. package/examples/countdown-demo.js.map +1 -0
  123. package/examples/criteria-dates-demo.d.ts +1 -0
  124. package/examples/criteria-dates-demo.js +41 -0
  125. package/examples/criteria-dates-demo.js.map +1 -0
  126. package/examples/criteria-participants-demo.d.ts +1 -0
  127. package/examples/criteria-participants-demo.js +77 -0
  128. package/examples/criteria-participants-demo.js.map +1 -0
  129. package/examples/criteria-participants-flow1-demo.d.ts +1 -0
  130. package/examples/criteria-participants-flow1-demo.js +53 -0
  131. package/examples/criteria-participants-flow1-demo.js.map +1 -0
  132. package/examples/criteria-participants-flow2-demo.d.ts +1 -0
  133. package/examples/criteria-participants-flow2-demo.js +61 -0
  134. package/examples/criteria-participants-flow2-demo.js.map +1 -0
  135. package/examples/criteria-participants-flow3-demo.d.ts +1 -0
  136. package/examples/criteria-participants-flow3-demo.js +72 -0
  137. package/examples/criteria-participants-flow3-demo.js.map +1 -0
  138. package/examples/criteria-transports-b2b-demo.d.ts +1 -0
  139. package/examples/criteria-transports-b2b-demo.js +118 -0
  140. package/examples/criteria-transports-b2b-demo.js.map +1 -0
  141. package/examples/criteria-transports-demo.d.ts +1 -0
  142. package/examples/criteria-transports-demo.js +223 -0
  143. package/examples/criteria-transports-demo.js.map +1 -0
  144. package/examples/datepicker-demo.d.ts +1 -0
  145. package/examples/datepicker-demo.js +51 -0
  146. package/examples/datepicker-demo.js.map +1 -0
  147. package/examples/datepicker-disabled-days-demo.d.ts +1 -0
  148. package/examples/datepicker-disabled-days-demo.js +42 -0
  149. package/examples/datepicker-disabled-days-demo.js.map +1 -0
  150. package/examples/datepicker-duration-tooltip-demo.d.ts +1 -0
  151. package/examples/datepicker-duration-tooltip-demo.js +68 -0
  152. package/examples/datepicker-duration-tooltip-demo.js.map +1 -0
  153. package/examples/datepicker-no-prices-demo.d.ts +1 -0
  154. package/examples/datepicker-no-prices-demo.js +42 -0
  155. package/examples/datepicker-no-prices-demo.js.map +1 -0
  156. package/examples/datepicker-preselected-demo.d.ts +1 -0
  157. package/examples/datepicker-preselected-demo.js +77 -0
  158. package/examples/datepicker-preselected-demo.js.map +1 -0
  159. package/examples/dropdown-demo.js +9 -1
  160. package/examples/dropdown-demo.js.map +1 -1
  161. package/examples/expandable-text-demo.d.ts +1 -0
  162. package/examples/expandable-text-demo.js +22 -0
  163. package/examples/expandable-text-demo.js.map +1 -0
  164. package/examples/filter-demo.js +5 -5
  165. package/examples/floating-label-text-field-demo.d.ts +1 -0
  166. package/examples/floating-label-text-field-demo.js +32 -0
  167. package/examples/floating-label-text-field-demo.js.map +1 -0
  168. package/examples/frame-demo.d.ts +1 -0
  169. package/examples/frame-demo.js +36 -0
  170. package/examples/frame-demo.js.map +1 -0
  171. package/examples/frame-horizontal-demo.d.ts +1 -0
  172. package/examples/frame-horizontal-demo.js +44 -0
  173. package/examples/frame-horizontal-demo.js.map +1 -0
  174. package/examples/frame-no-image-demo.d.ts +1 -0
  175. package/examples/frame-no-image-demo.js +47 -0
  176. package/examples/frame-no-image-demo.js.map +1 -0
  177. package/examples/frame-vertical-demo.d.ts +1 -0
  178. package/examples/frame-vertical-demo.js +44 -0
  179. package/examples/frame-vertical-demo.js.map +1 -0
  180. package/examples/frame-with-tag-demo.d.ts +1 -0
  181. package/examples/frame-with-tag-demo.js +48 -0
  182. package/examples/frame-with-tag-demo.js.map +1 -0
  183. package/examples/journey-card-compact-demo.d.ts +1 -0
  184. package/examples/journey-card-compact-demo.js +71 -0
  185. package/examples/journey-card-compact-demo.js.map +1 -0
  186. package/examples/journey-card-demo.d.ts +1 -0
  187. package/examples/journey-card-demo.js +123 -0
  188. package/examples/journey-card-demo.js.map +1 -0
  189. package/examples/page-navigation-demo.d.ts +1 -0
  190. package/examples/page-navigation-demo.js +53 -0
  191. package/examples/page-navigation-demo.js.map +1 -0
  192. package/examples/password-demo.js +1 -0
  193. package/examples/password-demo.js.map +1 -1
  194. package/examples/phone-field-demo.js +6 -2
  195. package/examples/phone-field-demo.js.map +1 -1
  196. package/examples/promises-demo.d.ts +1 -0
  197. package/examples/promises-demo.js +50 -0
  198. package/examples/promises-demo.js.map +1 -0
  199. package/examples/radio-demo.js +3 -3
  200. package/examples/radio-demo.js.map +1 -1
  201. package/examples/radio-select-demo.d.ts +1 -0
  202. package/examples/radio-select-demo.js +100 -0
  203. package/examples/radio-select-demo.js.map +1 -0
  204. package/examples/scrollbar-demo.d.ts +1 -0
  205. package/examples/scrollbar-demo.js +42 -0
  206. package/examples/scrollbar-demo.js.map +1 -0
  207. package/examples/select-demo.js +1 -0
  208. package/examples/select-demo.js.map +1 -1
  209. package/examples/slider-frame-demo.d.ts +1 -0
  210. package/examples/slider-frame-demo.js +39 -0
  211. package/examples/slider-frame-demo.js.map +1 -0
  212. package/examples/slider-frame-with-button-demo.d.ts +1 -0
  213. package/examples/slider-frame-with-button-demo.js +47 -0
  214. package/examples/slider-frame-with-button-demo.js.map +1 -0
  215. package/examples/slider-frame-with-tag-demo.d.ts +1 -0
  216. package/examples/slider-frame-with-tag-demo.js +51 -0
  217. package/examples/slider-frame-with-tag-demo.js.map +1 -0
  218. package/examples/sparkle-wrapper-demo.d.ts +1 -0
  219. package/examples/sparkle-wrapper-demo.js +34 -0
  220. package/examples/sparkle-wrapper-demo.js.map +1 -0
  221. package/examples/switch-demo.js +3 -2
  222. package/examples/switch-demo.js.map +1 -1
  223. package/examples/tabs-demo.js +2 -5
  224. package/examples/tabs-demo.js.map +1 -1
  225. package/examples/tabs-notification-demo.d.ts +1 -0
  226. package/examples/tabs-notification-demo.js +64 -0
  227. package/examples/tabs-notification-demo.js.map +1 -0
  228. package/examples/tabs-with-select-demo.js +1 -0
  229. package/examples/tabs-with-select-demo.js.map +1 -1
  230. package/examples/text-field-demo.js +6 -0
  231. package/examples/text-field-demo.js.map +1 -1
  232. package/examples/toggle-demo.d.ts +1 -0
  233. package/examples/toggle-demo.js +44 -0
  234. package/examples/toggle-demo.js.map +1 -0
  235. package/examples/toggle-small-demo.d.ts +1 -0
  236. package/examples/toggle-small-demo.js +33 -0
  237. package/examples/toggle-small-demo.js.map +1 -0
  238. package/examples/tooltip-demo.d.ts +1 -0
  239. package/examples/tooltip-demo.js +103 -0
  240. package/examples/tooltip-demo.js.map +1 -0
  241. package/package.json +9 -3
  242. package/styles/animate.css +19 -0
  243. package/styles/components.css +97 -4
  244. package/styles/index.css +0 -1
  245. package/styles/theme.css +1 -2
  246. package/styles/ui/button.css +1 -1
  247. package/styles/ui/chat-button.css +68 -1
  248. package/styles/ui/controls.css +11 -58
  249. package/styles/ui/range.css +6 -1
  250. package/styles/ui/tabs.css +0 -19
  251. package/ui/Accordion.d.ts +30 -0
  252. package/ui/Accordion.js +71 -0
  253. package/ui/Accordion.js.map +1 -0
  254. package/ui/AdvancedToast.js +22 -19
  255. package/ui/AdvancedToast.js.map +1 -1
  256. package/ui/Avatar.js +1 -1
  257. package/ui/Avatar.js.map +1 -1
  258. package/ui/BasicToast.js +12 -12
  259. package/ui/BasicToast.js.map +1 -1
  260. package/ui/Breadcrumb.js +7 -6
  261. package/ui/Breadcrumb.js.map +1 -1
  262. package/ui/Chapters/Chapter.d.ts +7 -0
  263. package/ui/Chapters/Chapter.js +36 -0
  264. package/ui/Chapters/Chapter.js.map +1 -0
  265. package/ui/Chapters/ChapterTitle.d.ts +14 -0
  266. package/ui/Chapters/ChapterTitle.js +35 -0
  267. package/ui/Chapters/ChapterTitle.js.map +1 -0
  268. package/ui/Chapters/Chapters.d.ts +15 -0
  269. package/ui/Chapters/Chapters.js +42 -0
  270. package/ui/Chapters/Chapters.js.map +1 -0
  271. package/ui/Chapters/Chapters.themes.d.ts +9 -0
  272. package/ui/Chapters/Chapters.themes.js +65 -0
  273. package/ui/Chapters/Chapters.themes.js.map +1 -0
  274. package/ui/Chapters/ChaptersSummary.d.ts +17 -0
  275. package/ui/Chapters/ChaptersSummary.js +29 -0
  276. package/ui/Chapters/ChaptersSummary.js.map +1 -0
  277. package/ui/ChatButton.js +9 -9
  278. package/ui/ChatButton.js.map +1 -1
  279. package/ui/ChatInput.d.ts +10 -0
  280. package/ui/ChatInput.js +149 -0
  281. package/ui/ChatInput.js.map +1 -0
  282. package/ui/ChatMessage.d.ts +6 -0
  283. package/ui/ChatMessage.js +2 -0
  284. package/ui/ChatTypingIndicator.d.ts +2 -0
  285. package/ui/ChatTypingIndicator.js +30 -0
  286. package/ui/ChatTypingIndicator.js.map +1 -0
  287. package/ui/ChatWindow.d.ts +34 -0
  288. package/ui/ChatWindow.js +142 -0
  289. package/ui/ChatWindow.js.map +1 -0
  290. package/ui/ChatWindowCsatPrompt.d.ts +15 -0
  291. package/ui/ChatWindowCsatPrompt.js +71 -0
  292. package/ui/ChatWindowCsatPrompt.js.map +1 -0
  293. package/ui/ChatWindowCsatThankYou.d.ts +9 -0
  294. package/ui/ChatWindowCsatThankYou.js +29 -0
  295. package/ui/ChatWindowCsatThankYou.js.map +1 -0
  296. package/ui/ChatWindowQuote.d.ts +22 -0
  297. package/ui/ChatWindowQuote.js +141 -0
  298. package/ui/ChatWindowQuote.js.map +1 -0
  299. package/ui/Chip.js +4 -4
  300. package/ui/ChoiceExpander.js +17 -17
  301. package/ui/ChoiceExpander.js.map +1 -1
  302. package/ui/Countdown.d.ts +16 -0
  303. package/ui/Countdown.js +61 -0
  304. package/ui/Countdown.js.map +1 -0
  305. package/ui/Datepicker.d.ts +26 -0
  306. package/ui/Datepicker.js +2 -0
  307. package/ui/Day.d.ts +25 -0
  308. package/ui/Day.js +2 -0
  309. package/ui/Dropdown.d.ts +20 -3
  310. package/ui/Dropdown.js +61 -27
  311. package/ui/Dropdown.js.map +1 -1
  312. package/ui/ElasticHeight.js +1 -0
  313. package/ui/ElasticHeight.js.map +1 -1
  314. package/ui/ExpandableText.d.ts +14 -0
  315. package/ui/ExpandableText.js +40 -0
  316. package/ui/ExpandableText.js.map +1 -0
  317. package/ui/FlipCard.d.ts +7 -0
  318. package/ui/FlipCard.js +59 -0
  319. package/ui/FlipCard.js.map +1 -0
  320. package/ui/HamburgerIcon.js +1 -1
  321. package/ui/HamburgerIcon.js.map +1 -1
  322. package/ui/Link.js +8 -8
  323. package/ui/Link.js.map +1 -1
  324. package/ui/PageNavigation.d.ts +13 -0
  325. package/ui/PageNavigation.js +71 -0
  326. package/ui/PageNavigation.js.map +1 -0
  327. package/ui/Pagination.js +23 -23
  328. package/ui/Pagination.js.map +1 -1
  329. package/ui/Promises/Promises.d.ts +26 -0
  330. package/ui/Promises/Promises.js +42 -0
  331. package/ui/Promises/Promises.js.map +1 -0
  332. package/ui/Promises/PromisesMedia.d.ts +12 -0
  333. package/ui/Promises/PromisesMedia.js +64 -0
  334. package/ui/Promises/PromisesMedia.js.map +1 -0
  335. package/ui/Promises/PromisesMenu.d.ts +11 -0
  336. package/ui/Promises/PromisesMenu.js +154 -0
  337. package/ui/Promises/PromisesMenu.js.map +1 -0
  338. package/ui/Scrollbar.d.ts +14 -0
  339. package/ui/Scrollbar.js +68 -0
  340. package/ui/Scrollbar.js.map +1 -0
  341. package/ui/SidebarLayout.d.ts +3 -1
  342. package/ui/SidebarLayout.js +67 -59
  343. package/ui/SidebarLayout.js.map +1 -1
  344. package/ui/SparkleWrapper.d.ts +5 -0
  345. package/ui/SparkleWrapper.js +56 -0
  346. package/ui/SparkleWrapper.js.map +1 -0
  347. package/ui/Tag.js +6 -6
  348. package/ui/Toggle.d.ts +15 -0
  349. package/ui/Toggle.js +42 -0
  350. package/ui/Toggle.js.map +1 -0
  351. package/ui/Tooltip.d.ts +8 -0
  352. package/ui/Tooltip.js +2 -0
  353. package/ui/buttons/Button.type.d.ts +1 -1
  354. package/ui/buttons/Button.type.js +1 -1
  355. package/ui/buttons/Button.type.js.map +1 -1
  356. package/ui/buttons/ButtonContent.js +3 -3
  357. package/ui/carousel/Carousel.context.d.ts +27 -0
  358. package/ui/carousel/Carousel.context.js +2 -0
  359. package/ui/carousel/Carousel.d.ts +3 -0
  360. package/ui/carousel/Carousel.js +12 -0
  361. package/ui/carousel/Carousel.js.map +1 -0
  362. package/ui/carousel/CarouselBody.d.ts +6 -0
  363. package/ui/carousel/CarouselBody.js +21 -0
  364. package/ui/carousel/CarouselBody.js.map +1 -0
  365. package/ui/carousel/CarouselItem.d.ts +6 -0
  366. package/ui/carousel/CarouselItem.js +21 -0
  367. package/ui/carousel/CarouselItem.js.map +1 -0
  368. package/ui/carousel/CarouselNext.d.ts +8 -0
  369. package/ui/carousel/CarouselNext.js +23 -0
  370. package/ui/carousel/CarouselNext.js.map +1 -0
  371. package/ui/carousel/CarouselPrevious.d.ts +8 -0
  372. package/ui/carousel/CarouselPrevious.js +23 -0
  373. package/ui/carousel/CarouselPrevious.js.map +1 -0
  374. package/ui/contexts/TridentUIConfig.js +1 -1
  375. package/ui/criteria/Birthdate.d.ts +13 -0
  376. package/ui/criteria/Birthdate.js +2 -0
  377. package/ui/criteria/CriteriaDates.d.ts +32 -0
  378. package/ui/criteria/CriteriaDates.js +76 -0
  379. package/ui/criteria/CriteriaDates.js.map +1 -0
  380. package/ui/criteria/CriteriaParticipants.d.ts +106 -0
  381. package/ui/criteria/CriteriaParticipants.js +2 -0
  382. package/ui/criteria/CriteriaSection.d.ts +6 -0
  383. package/ui/criteria/CriteriaSection.js +15 -0
  384. package/ui/criteria/CriteriaSection.js.map +1 -0
  385. package/ui/criteria/CriteriaTransports.d.ts +53 -0
  386. package/ui/criteria/CriteriaTransports.js +274 -0
  387. package/ui/criteria/CriteriaTransports.js.map +1 -0
  388. package/ui/forms/CheckboxSelect.d.ts +31 -0
  389. package/ui/forms/CheckboxSelect.js +119 -0
  390. package/ui/forms/CheckboxSelect.js.map +1 -0
  391. package/ui/forms/Filter.d.ts +3 -1
  392. package/ui/forms/Filter.js +17 -13
  393. package/ui/forms/Filter.js.map +1 -1
  394. package/ui/forms/FloatingLabelTextField.d.ts +12 -0
  395. package/ui/forms/FloatingLabelTextField.js +132 -0
  396. package/ui/forms/FloatingLabelTextField.js.map +1 -0
  397. package/ui/forms/FormControl.d.ts +1 -1
  398. package/ui/forms/FormControl.js.map +1 -1
  399. package/ui/forms/FormControlError.js +4 -4
  400. package/ui/forms/NumberField.d.ts +3 -2
  401. package/ui/forms/NumberField.js +24 -25
  402. package/ui/forms/NumberField.js.map +1 -1
  403. package/ui/forms/PhoneField.d.ts +5 -10
  404. package/ui/forms/PhoneField.js +31 -211
  405. package/ui/forms/PhoneField.js.map +1 -1
  406. package/ui/forms/PhoneFieldFullInput.d.ts +16 -0
  407. package/ui/forms/PhoneFieldFullInput.js +110 -0
  408. package/ui/forms/PhoneFieldFullInput.js.map +1 -0
  409. package/ui/forms/PhoneFieldSplitInput.d.ts +19 -0
  410. package/ui/forms/PhoneFieldSplitInput.js +158 -0
  411. package/ui/forms/PhoneFieldSplitInput.js.map +1 -0
  412. package/ui/forms/RadioSelect.d.ts +31 -0
  413. package/ui/forms/RadioSelect.js +117 -0
  414. package/ui/forms/RadioSelect.js.map +1 -0
  415. package/ui/forms/Range.d.ts +1 -1
  416. package/ui/forms/Select.js +16 -17
  417. package/ui/forms/Select.js.map +1 -1
  418. package/ui/forms/Switch.d.ts +5 -3
  419. package/ui/forms/Switch.js +54 -34
  420. package/ui/forms/Switch.js.map +1 -1
  421. package/ui/forms/TextField.js +33 -24
  422. package/ui/forms/TextField.js.map +1 -1
  423. package/ui/forms/checkboxes/Checkbox.d.ts +3 -1
  424. package/ui/forms/checkboxes/Checkbox.js +21 -17
  425. package/ui/forms/checkboxes/Checkbox.js.map +1 -1
  426. package/ui/forms/checkboxes/Checkboxes.d.ts +5 -0
  427. package/ui/forms/checkboxes/Checkboxes.js +8 -8
  428. package/ui/forms/checkboxes/Checkboxes.js.map +1 -1
  429. package/ui/forms/password/Password.js +19 -20
  430. package/ui/forms/password/Password.js.map +1 -1
  431. package/ui/forms/password/ValidationMessage.js +5 -5
  432. package/ui/forms/radios/Radio.d.ts +2 -1
  433. package/ui/forms/radios/Radio.js +6 -3
  434. package/ui/forms/radios/Radio.js.map +1 -1
  435. package/ui/forms/radios/RadioGroup.js +5 -6
  436. package/ui/forms/radios/RadioGroup.js.map +1 -1
  437. package/ui/frame/Frame.d.ts +8 -0
  438. package/ui/frame/Frame.js +16 -0
  439. package/ui/frame/Frame.js.map +1 -0
  440. package/ui/frame/FrameLabelsWrapper.d.ts +5 -0
  441. package/ui/frame/FrameLabelsWrapper.js +12 -0
  442. package/ui/frame/FrameLabelsWrapper.js.map +1 -0
  443. package/ui/frame/FrameTitle.d.ts +7 -0
  444. package/ui/frame/FrameTitle.js +25 -0
  445. package/ui/frame/FrameTitle.js.map +1 -0
  446. package/ui/frame/FrameWrapper.d.ts +6 -0
  447. package/ui/frame/FrameWrapper.js +14 -0
  448. package/ui/frame/FrameWrapper.js.map +1 -0
  449. package/ui/frame/SliderFrame.d.ts +14 -0
  450. package/ui/frame/SliderFrame.js +50 -0
  451. package/ui/frame/SliderFrame.js.map +1 -0
  452. package/ui/helpers/cn.d.ts +2 -0
  453. package/ui/helpers/cn.js +10 -0
  454. package/ui/helpers/cn.js.map +1 -0
  455. package/ui/helpers/phone/defaultPrefixes.d.ts +1 -0
  456. package/ui/helpers/phone/defaultPrefixes.js +52 -28
  457. package/ui/helpers/phone/defaultPrefixes.js.map +1 -1
  458. package/ui/helpers/phone/formatters.d.ts +11 -0
  459. package/ui/helpers/phone/formatters.js +32 -1
  460. package/ui/helpers/phone/formatters.js.map +1 -1
  461. package/ui/helpers/phone/index.d.ts +1 -1
  462. package/ui/helpers/phone/index.js +3 -3
  463. package/ui/hooks/useIsClient.d.ts +1 -0
  464. package/ui/hooks/useIsClient.js +12 -0
  465. package/ui/hooks/useIsClient.js.map +1 -0
  466. package/ui/hooks/useValue.d.ts +3 -4
  467. package/ui/hooks/useValue.js +11 -11
  468. package/ui/hooks/useValue.js.map +1 -1
  469. package/ui/journey-card/FlightSegmentCard.d.ts +15 -0
  470. package/ui/journey-card/FlightSegmentCard.js +73 -0
  471. package/ui/journey-card/FlightSegmentCard.js.map +1 -0
  472. package/ui/journey-card/FlightTimeline.d.ts +5 -0
  473. package/ui/journey-card/FlightTimeline.js +27 -0
  474. package/ui/journey-card/FlightTimeline.js.map +1 -0
  475. package/ui/journey-card/ItineraryDetails.d.ts +9 -0
  476. package/ui/journey-card/ItineraryDetails.js +40 -0
  477. package/ui/journey-card/ItineraryDetails.js.map +1 -0
  478. package/ui/journey-card/JourneyCard.d.ts +17 -0
  479. package/ui/journey-card/JourneyCard.js +34 -0
  480. package/ui/journey-card/JourneyCard.js.map +1 -0
  481. package/ui/journey-card/JourneyDetails.d.ts +47 -0
  482. package/ui/journey-card/JourneyDetails.js +183 -0
  483. package/ui/journey-card/JourneyDetails.js.map +1 -0
  484. package/ui/tabs/Tabs.d.ts +5 -1
  485. package/ui/tabs/Tabs.js +208 -124
  486. package/ui/tabs/Tabs.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Button.type.js","names":[],"sources":["../../../lib/ui/buttons/Button.type.ts"],"sourcesContent":["import clsx from 'clsx';\n\nimport type { IconicNames } from '@clubmed/trident-icons';\nimport type { Colors } from '../types/Colors';\nimport type { PropsWithChildren } from 'react';\n\nexport interface ButtonProps extends PropsWithChildren {\n color?: Colors;\n icon?: IconicNames;\n iconWidth?: string;\n size?: 'small' | 'medium' | 'large';\n theme?: 'outline' | 'solid';\n variant?: 'circle' | 'pill';\n}\n\ntype Params = {\n color: ButtonProps['color'];\n size: ButtonProps['size'];\n theme: ButtonProps['theme'];\n variant: ButtonProps['variant'];\n};\n\nexport const BUTTON_COLORS = {\n black: 'button-black',\n green: 'button-green',\n lavender: 'button-lavender',\n lightSand: 'button-lightSand',\n marygold: 'button-marygold',\n pearl: 'button-pearl',\n orange: 'button-orange',\n red: 'button-red',\n saffron: 'button-saffron',\n sand: 'button-sand',\n sienna: 'button-sienna',\n ultramarine: 'button-ultramarine',\n verdigris: 'button-verdigris',\n wave: 'button-wave',\n white: 'button-white',\n} as const satisfies Record<string, `button-${string}`>;\n\nconst colorGuard = (color: string | undefined): color is keyof typeof BUTTON_COLORS => {\n return color != undefined && color in BUTTON_COLORS;\n};\n\nconst getButtonColor = (color: string | undefined) => {\n if (colorGuard(color)) {\n return BUTTON_COLORS[color];\n }\n\n return BUTTON_COLORS.saffron;\n};\n\nexport const BUTTON_THEMES = {\n outline: 'button-outline',\n solid: 'button-solid',\n} as const satisfies Record<string, `button-${string}`>;\n\nconst themeGuard = (color: string | undefined): color is keyof typeof BUTTON_THEMES => {\n return color != undefined && color in BUTTON_THEMES;\n};\n\nconst getButtonTheme = (theme: string | undefined) => {\n if (themeGuard(theme)) {\n return BUTTON_THEMES[theme];\n }\n\n return BUTTON_THEMES.solid;\n};\n\nexport const BUTTON_VARIANTS = {\n circle: 'button-circle',\n pill: 'button-pill',\n} as const satisfies Record<string, `button-${string}`>;\n\nconst variantGuard = (color: string | undefined): color is keyof typeof BUTTON_VARIANTS => {\n return color != undefined && color in BUTTON_VARIANTS;\n};\n\nconst getButtonVariant = (variant: string | undefined) => {\n if (variantGuard(variant)) {\n return BUTTON_VARIANTS[variant];\n }\n\n return BUTTON_VARIANTS.pill;\n};\n\nexport const BUTTON_SIZES = {\n small: 'button-small',\n medium: 'button-medium',\n large: 'button-large',\n primary: 'button-medium',\n secondary: 'button-secondary',\n tertiary: 'button-tertiary',\n} as const satisfies Record<string, `button-${string}`>;\n\nconst sizeGuard = (color: string | undefined): color is keyof typeof BUTTON_SIZES => {\n return color != undefined && color in BUTTON_SIZES;\n};\n\nconst getButtonSize = (size: ButtonProps['size']) => {\n if (sizeGuard(size)) {\n return BUTTON_SIZES[size];\n }\n\n return BUTTON_SIZES.medium;\n};\n\nexport const getButtonClasses = ({ color, size, theme, variant }: Params) => {\n /* keep the \"flex\" class outside of \"button-*\" so that it can be overridden in responsive */\n return clsx(\n 'flex',\n 'button',\n getButtonTheme(theme),\n getButtonColor(color),\n getButtonVariant(variant),\n getButtonSize(size),\n );\n};\n"],"mappings":";;AAsBA,IAAa,IAAgB;CAC3B,OAAO;CACP,OAAO;CACP,UAAU;CACV,WAAW;CACX,UAAU;CACV,OAAO;CACP,QAAQ;CACR,KAAK;CACL,SAAS;CACT,MAAM;CACN,QAAQ;CACR,aAAa;CACb,WAAW;CACX,MAAM;CACN,OAAO;CACR,EAEK,KAAc,MACX,KAAS,QAAa,KAAS,GAGlC,KAAkB,MAClB,EAAW,EAAM,GACZ,EAAc,KAGhB,EAAc,SAGV,IAAgB;CAC3B,SAAS;CACT,OAAO;CACR,EAEK,KAAc,MACX,KAAS,QAAa,KAAS,GAGlC,KAAkB,MAClB,EAAW,EAAM,GACZ,EAAc,KAGhB,EAAc,OAGV,IAAkB;CAC7B,QAAQ;CACR,MAAM;CACP,EAEK,KAAgB,MACb,KAAS,QAAa,KAAS,GAGlC,KAAoB,MACpB,EAAa,EAAQ,GAChB,EAAgB,KAGlB,EAAgB,MAGZ,IAAe;CAC1B,OAAO;CACP,QAAQ;CACR,OAAO;CACP,SAAS;CACT,WAAW;CACX,UAAU;CACX,EAEK,KAAa,MACV,KAAS,QAAa,KAAS,GAGlC,KAAiB,MACjB,EAAU,EAAK,GACV,EAAa,KAGf,EAAa,QAGT,KAAoB,EAAE,UAAO,SAAM,UAAO,iBAE9C,EACL,QACA,UACA,EAAe,EAAM,EACrB,EAAe,EAAM,EACrB,EAAiB,EAAQ,EACzB,EAAc,EAAK,CACpB"}
1
+ {"version":3,"file":"Button.type.js","names":[],"sources":["../../../lib/ui/buttons/Button.type.ts"],"sourcesContent":["import clsx from 'clsx';\n\nimport type { IconicNames } from '@clubmed/trident-icons';\nimport type { Colors } from '../types/Colors';\nimport type { PropsWithChildren } from 'react';\n\nexport interface ButtonProps extends PropsWithChildren {\n color?: Colors;\n icon?: IconicNames;\n iconWidth?: string;\n size?: 'small' | 'medium' | 'large' | 'primary' | 'secondary' | 'tertiary';\n theme?: 'outline' | 'solid';\n variant?: 'circle' | 'pill';\n}\n\ntype Params = {\n color: ButtonProps['color'];\n size: ButtonProps['size'];\n theme: ButtonProps['theme'];\n variant: ButtonProps['variant'];\n};\n\nexport const BUTTON_COLORS = {\n black: 'button-black',\n green: 'button-green',\n lavender: 'button-lavender',\n lightSand: 'button-lightSand',\n marygold: 'button-marygold',\n pearl: 'button-pearl',\n orange: 'button-orange',\n red: 'button-red',\n saffron: 'button-saffron',\n sand: 'button-sand',\n sienna: 'button-sienna',\n ultramarine: 'button-ultramarine',\n verdigris: 'button-verdigris',\n wave: 'button-wave',\n white: 'button-white',\n} as const satisfies Record<string, `button-${string}`>;\n\nconst colorGuard = (color: string | undefined): color is keyof typeof BUTTON_COLORS => {\n return color != undefined && color in BUTTON_COLORS;\n};\n\nconst getButtonColor = (color: string | undefined) => {\n if (colorGuard(color)) {\n return BUTTON_COLORS[color];\n }\n\n return BUTTON_COLORS.saffron;\n};\n\nexport const BUTTON_THEMES = {\n outline: 'button-outline',\n solid: 'button-solid',\n} as const satisfies Record<string, `button-${string}`>;\n\nconst themeGuard = (color: string | undefined): color is keyof typeof BUTTON_THEMES => {\n return color != undefined && color in BUTTON_THEMES;\n};\n\nconst getButtonTheme = (theme: string | undefined) => {\n if (themeGuard(theme)) {\n return BUTTON_THEMES[theme];\n }\n\n return BUTTON_THEMES.solid;\n};\n\nexport const BUTTON_VARIANTS = {\n circle: 'button-circle',\n pill: 'button-pill',\n} as const satisfies Record<string, `button-${string}`>;\n\nconst variantGuard = (color: string | undefined): color is keyof typeof BUTTON_VARIANTS => {\n return color != undefined && color in BUTTON_VARIANTS;\n};\n\nconst getButtonVariant = (variant: string | undefined) => {\n if (variantGuard(variant)) {\n return BUTTON_VARIANTS[variant];\n }\n\n return BUTTON_VARIANTS.pill;\n};\n\nexport const BUTTON_SIZES = {\n small: 'button-small',\n medium: 'button-medium',\n large: 'button-large',\n primary: 'button-medium',\n secondary: 'button-secondary',\n tertiary: 'button-tertiary',\n} as const satisfies Record<string, `button-${string}`>;\n\nconst sizeGuard = (color: string | undefined): color is keyof typeof BUTTON_SIZES => {\n return color != undefined && color in BUTTON_SIZES;\n};\n\nconst getButtonSize = (size: ButtonProps['size']) => {\n if (sizeGuard(size)) {\n return BUTTON_SIZES[size];\n }\n\n return BUTTON_SIZES.medium;\n};\n\nexport const getButtonClasses = ({ color, size, theme, variant }: Params) => {\n /* keep the \"flex\" class outside of \"button-*\" so that it can be overridden in responsive */\n return clsx(\n 'flex',\n 'button',\n 'outline-none focus-visible:ring-4 focus-visible:ring-black focus-visible:ring-offset-2',\n getButtonTheme(theme),\n getButtonColor(color),\n getButtonVariant(variant),\n getButtonSize(size),\n );\n};\n"],"mappings":";;AAsBA,IAAa,IAAgB;CAC3B,OAAO;CACP,OAAO;CACP,UAAU;CACV,WAAW;CACX,UAAU;CACV,OAAO;CACP,QAAQ;CACR,KAAK;CACL,SAAS;CACT,MAAM;CACN,QAAQ;CACR,aAAa;CACb,WAAW;CACX,MAAM;CACN,OAAO;CACR,EAEK,KAAc,MACX,KAAS,QAAa,KAAS,GAGlC,KAAkB,MAClB,EAAW,EAAM,GACZ,EAAc,KAGhB,EAAc,SAGV,IAAgB;CAC3B,SAAS;CACT,OAAO;CACR,EAEK,KAAc,MACX,KAAS,QAAa,KAAS,GAGlC,KAAkB,MAClB,EAAW,EAAM,GACZ,EAAc,KAGhB,EAAc,OAGV,IAAkB;CAC7B,QAAQ;CACR,MAAM;CACP,EAEK,KAAgB,MACb,KAAS,QAAa,KAAS,GAGlC,KAAoB,MACpB,EAAa,EAAQ,GAChB,EAAgB,KAGlB,EAAgB,MAGZ,IAAe;CAC1B,OAAO;CACP,QAAQ;CACR,OAAO;CACP,SAAS;CACT,WAAW;CACX,UAAU;CACX,EAEK,KAAa,MACV,KAAS,QAAa,KAAS,GAGlC,KAAiB,MACjB,EAAU,EAAK,GACV,EAAa,KAGf,EAAa,QAGT,KAAoB,EAAE,UAAO,SAAM,UAAO,iBAE9C,EACL,QACA,UACA,0FACA,EAAe,EAAM,EACrB,EAAe,EAAM,EACrB,EAAiB,EAAQ,EACzB,EAAc,EAAK,CACpB"}
@@ -1,7 +1,7 @@
1
- import { Icon as e } from "@clubmed/trident-icons";
2
- import { Fragment as t, jsx as n, jsxs as r } from "react/jsx-runtime";
1
+ import { Fragment as e, jsx as t, jsxs as n } from "react/jsx-runtime";
2
+ import { Icon as r } from "@clubmed/trident-icons";
3
3
  //#region lib/ui/buttons/ButtonContent.tsx
4
- var i = ({ children: i, icon: a, iconType: o, iconWidth: s }) => /* @__PURE__ */ r(t, { children: [i, a && /* @__PURE__ */ n(e, {
4
+ var i = ({ children: i, icon: a, iconType: o, iconWidth: s }) => /* @__PURE__ */ n(e, { children: [i, a && /* @__PURE__ */ t(r, {
5
5
  name: a,
6
6
  width: s ?? "24px",
7
7
  type: o
@@ -0,0 +1,27 @@
1
+ import { default as useEmblaCarousel } from 'embla-carousel-react';
2
+ import { ComponentPropsWithoutRef, FunctionComponent } from 'react';
3
+ type UseCarouselParameters = Parameters<typeof useEmblaCarousel>;
4
+ type CarouselOptions = UseCarouselParameters[0];
5
+ type CarouselPlugins = UseCarouselParameters[1];
6
+ interface CarouselContextProps {
7
+ api: ReturnType<typeof useEmblaCarousel>[1];
8
+ canScrollNext: boolean;
9
+ canScrollPrev: boolean;
10
+ carouselRef: ReturnType<typeof useEmblaCarousel>[0];
11
+ inViews: number[];
12
+ isRTL: boolean;
13
+ items: number;
14
+ options?: CarouselOptions;
15
+ scrollNext: () => void;
16
+ scrollPrev: () => void;
17
+ scrollProgress: number;
18
+ snapped: number[];
19
+ }
20
+ interface CarouselProviderProps extends ComponentPropsWithoutRef<'div'> {
21
+ options?: CarouselOptions;
22
+ plugins?: CarouselPlugins;
23
+ scrollValue?: number;
24
+ }
25
+ export declare const CarouselProvider: FunctionComponent<CarouselProviderProps>;
26
+ export declare const useCarousel: () => CarouselContextProps;
27
+ export {};
@@ -0,0 +1,2 @@
1
+ import { n as e, t } from "../../chunks/Carousel.context.js";
2
+ export { t as CarouselProvider, e as useCarousel };
@@ -0,0 +1,3 @@
1
+ import { ComponentProps, FunctionComponent } from 'react';
2
+ import { CarouselProvider } from './Carousel.context';
3
+ export declare const Carousel: FunctionComponent<ComponentProps<typeof CarouselProvider>>;
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ import { t as e } from "../../chunks/Carousel.context.js";
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ //#region lib/ui/carousel/Carousel.tsx
5
+ var n = ({ children: n, ...r }) => /* @__PURE__ */ t(e, {
6
+ ...r,
7
+ children: n
8
+ });
9
+ //#endregion
10
+ export { n as Carousel };
11
+
12
+ //# sourceMappingURL=Carousel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Carousel.js","names":[],"sources":["../../../lib/ui/carousel/Carousel.tsx"],"sourcesContent":["'use client';\nimport type { ComponentProps, FunctionComponent } from 'react';\n\nimport { CarouselProvider } from './Carousel.context';\n\nexport const Carousel: FunctionComponent<ComponentProps<typeof CarouselProvider>> = ({\n children,\n ...props\n}) => {\n return <CarouselProvider {...props}>{children}</CarouselProvider>;\n};\n"],"mappings":";;;;AAKA,IAAa,KAAwE,EACnF,aACA,GAAG,QAEI,kBAAC,GAAD;CAAkB,GAAI;CAAQ;CAA4B,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { ComponentProps, FunctionComponent } from 'react';
2
+ interface Props extends ComponentProps<'div'> {
3
+ scrollClassName?: string;
4
+ }
5
+ export declare const CarouselBody: FunctionComponent<Props>;
6
+ export {};
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import { t as e } from "../../chunks/clsx.js";
3
+ import { n as t } from "../../chunks/Carousel.context.js";
4
+ import { jsx as n } from "react/jsx-runtime";
5
+ //#region lib/ui/carousel/CarouselBody.tsx
6
+ var r = ({ children: r, className: i, scrollClassName: a, ...o }) => {
7
+ let { canScrollPrev: s, canScrollNext: c, carouselRef: l, options: u } = t(), d = !s && !c;
8
+ return /* @__PURE__ */ n("div", {
9
+ ...o,
10
+ className: e(i, "overflow-hidden"),
11
+ ref: l,
12
+ children: /* @__PURE__ */ n("div", {
13
+ className: e(a, "grid", u?.axis === "y" ? "grid-flow-row" : "grid-flow-col", { "transform-none!": d }),
14
+ children: r
15
+ })
16
+ });
17
+ };
18
+ //#endregion
19
+ export { r as CarouselBody };
20
+
21
+ //# sourceMappingURL=CarouselBody.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CarouselBody.js","names":[],"sources":["../../../lib/ui/carousel/CarouselBody.tsx"],"sourcesContent":["'use client';\nimport clsx from 'clsx';\nimport type { ComponentProps, FunctionComponent } from 'react';\n\nimport { useCarousel } from './Carousel.context';\n\ninterface Props extends ComponentProps<'div'> {\n scrollClassName?: string;\n}\n\nexport const CarouselBody: FunctionComponent<Props> = ({\n children,\n className,\n scrollClassName,\n ...attrs\n}) => {\n const { canScrollPrev, canScrollNext, carouselRef, options } = useCarousel();\n\n const noScroll = !canScrollPrev && !canScrollNext;\n\n return (\n <div {...attrs} className={clsx(className, 'overflow-hidden')} ref={carouselRef}>\n <div\n className={clsx(\n scrollClassName,\n 'grid',\n options?.axis === 'y' ? 'grid-flow-row' : 'grid-flow-col',\n {\n 'transform-none!': noScroll,\n },\n )}\n >\n {children}\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;AAUA,IAAa,KAA0C,EACrD,aACA,cACA,oBACA,GAAG,QACC;CACJ,IAAM,EAAE,kBAAe,kBAAe,gBAAa,eAAY,GAAa,EAEtE,IAAW,CAAC,KAAiB,CAAC;AAEpC,QACE,kBAAC,OAAD;EAAK,GAAI;EAAO,WAAW,EAAK,GAAW,kBAAkB;EAAE,KAAK;YAClE,kBAAC,OAAD;GACE,WAAW,EACT,GACA,QACA,GAAS,SAAS,MAAM,kBAAkB,iBAC1C,EACE,mBAAmB,GACpB,CACF;GAEA;GACG,CAAA;EACF,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { FunctionComponent, PropsWithChildren } from 'react';
2
+ interface Props {
3
+ index: number;
4
+ }
5
+ export declare const CarouselItem: FunctionComponent<PropsWithChildren<Props>>;
6
+ export {};
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import { t as e } from "../../chunks/clsx.js";
3
+ import { n as t } from "../../chunks/Carousel.context.js";
4
+ import { cloneElement as n, isValidElement as r } from "react";
5
+ //#region lib/ui/carousel/CarouselItem.tsx
6
+ var i = ({ children: i, index: a }) => {
7
+ let { canScrollPrev: o, canScrollNext: s, inViews: c = [], snapped: l = [] } = t(), u = c.includes(a), d = l.includes(a), f = r(i) ? {
8
+ "aria-hidden": !u,
9
+ className: e(i?.props?.className, "group/carousel-item", {
10
+ "is-visible": u,
11
+ "is-snapped": d
12
+ }),
13
+ inert: !u,
14
+ tabIndex: o || s ? -1 : void 0
15
+ } : void 0;
16
+ return r(i) ? n(i, f) : i;
17
+ };
18
+ //#endregion
19
+ export { i as CarouselItem };
20
+
21
+ //# sourceMappingURL=CarouselItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CarouselItem.js","names":[],"sources":["../../../lib/ui/carousel/CarouselItem.tsx"],"sourcesContent":["'use client';\nimport clsx from 'clsx';\nimport type { FunctionComponent, PropsWithChildren } from 'react';\nimport { cloneElement, isValidElement } from 'react';\n\nimport { useCarousel } from './Carousel.context';\n\ninterface Props {\n index: number;\n}\n\nexport const CarouselItem: FunctionComponent<PropsWithChildren<Props>> = ({ children, index }) => {\n const { canScrollPrev, canScrollNext, inViews = [], snapped = [] } = useCarousel();\n\n const isVisible = inViews.includes(index);\n const isSnapped = snapped.includes(index);\n\n const props = isValidElement<{ className?: string }>(children)\n ? {\n 'aria-hidden': !isVisible,\n className: clsx(children?.props?.className, 'group/carousel-item', {\n 'is-visible': isVisible,\n 'is-snapped': isSnapped,\n }),\n inert: !isVisible,\n tabIndex: canScrollPrev || canScrollNext ? -1 : undefined,\n }\n : undefined;\n\n return isValidElement(children) ? cloneElement(children, props) : children;\n};\n"],"mappings":";;;;;AAWA,IAAa,KAA6D,EAAE,aAAU,eAAY;CAChG,IAAM,EAAE,kBAAe,kBAAe,aAAU,EAAE,EAAE,aAAU,EAAE,KAAK,GAAa,EAE5E,IAAY,EAAQ,SAAS,EAAM,EACnC,IAAY,EAAQ,SAAS,EAAM,EAEnC,IAAQ,EAAuC,EAAS,GAC1D;EACE,eAAe,CAAC;EAChB,WAAW,EAAK,GAAU,OAAO,WAAW,uBAAuB;GACjE,cAAc;GACd,cAAc;GACf,CAAC;EACF,OAAO,CAAC;EACR,UAAU,KAAiB,IAAgB,KAAK,KAAA;EACjD,GACD,KAAA;AAEJ,QAAO,EAAe,EAAS,GAAG,EAAa,GAAU,EAAM,GAAG"}
@@ -0,0 +1,8 @@
1
+ import { ComponentProps } from 'react';
2
+ import { ArrowButton } from '../buttons/ArrowButton';
3
+ interface Props extends Omit<ComponentProps<typeof ArrowButton>, 'icon'> {
4
+ icon?: ComponentProps<typeof ArrowButton>['icon'];
5
+ label: string;
6
+ }
7
+ export declare const CarouselNext: ({ className, label, onClick, ...props }: Props) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,23 @@
1
+ "use client";
2
+ import { t as e } from "../../chunks/clsx.js";
3
+ import { ArrowButton as t } from "../buttons/ArrowButton.js";
4
+ import { n } from "../../chunks/Carousel.context.js";
5
+ import { jsx as r } from "react/jsx-runtime";
6
+ //#region lib/ui/carousel/CarouselNext.tsx
7
+ var i = ({ className: i, label: a, onClick: o, ...s }) => {
8
+ let { canScrollNext: c, scrollNext: l } = n();
9
+ return /* @__PURE__ */ r(t, {
10
+ icon: "ArrowDefaultRight",
11
+ ...s,
12
+ className: e("pointer-events-auto", i),
13
+ disabled: !c,
14
+ onClick: (e) => {
15
+ l(), o?.(e);
16
+ },
17
+ children: a
18
+ });
19
+ };
20
+ //#endregion
21
+ export { i as CarouselNext };
22
+
23
+ //# sourceMappingURL=CarouselNext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CarouselNext.js","names":[],"sources":["../../../lib/ui/carousel/CarouselNext.tsx"],"sourcesContent":["'use client';\nimport clsx from 'clsx';\nimport type { ComponentProps, MouseEvent } from 'react';\n\nimport { ArrowButton } from '../buttons/ArrowButton';\n\nimport { useCarousel } from './Carousel.context';\n\ninterface Props extends Omit<ComponentProps<typeof ArrowButton>, 'icon'> {\n icon?: ComponentProps<typeof ArrowButton>['icon'];\n label: string;\n}\n\nexport const CarouselNext = ({ className, label, onClick, ...props }: Props) => {\n const { canScrollNext, scrollNext } = useCarousel();\n\n return (\n <ArrowButton\n icon=\"ArrowDefaultRight\"\n {...props}\n className={clsx('pointer-events-auto', className)}\n disabled={!canScrollNext}\n onClick={(e: MouseEvent<HTMLButtonElement>) => {\n scrollNext();\n onClick?.(e as never);\n }}\n >\n {label}\n </ArrowButton>\n );\n};\n"],"mappings":";;;;;;AAaA,IAAa,KAAgB,EAAE,cAAW,UAAO,YAAS,GAAG,QAAmB;CAC9E,IAAM,EAAE,kBAAe,kBAAe,GAAa;AAEnD,QACE,kBAAC,GAAD;EACE,MAAK;EACL,GAAI;EACJ,WAAW,EAAK,uBAAuB,EAAU;EACjD,UAAU,CAAC;EACX,UAAU,MAAqC;AAE7C,GADA,GAAY,EACZ,IAAU,EAAW;;YAGtB;EACW,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { ComponentProps } from 'react';
2
+ import { ArrowButton } from '../buttons/ArrowButton';
3
+ interface Props extends Omit<ComponentProps<typeof ArrowButton>, 'icon'> {
4
+ icon?: ComponentProps<typeof ArrowButton>['icon'];
5
+ label: string;
6
+ }
7
+ export declare const CarouselPrevious: ({ className, label, onClick, ...props }: Props) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,23 @@
1
+ "use client";
2
+ import { t as e } from "../../chunks/clsx.js";
3
+ import { ArrowButton as t } from "../buttons/ArrowButton.js";
4
+ import { n } from "../../chunks/Carousel.context.js";
5
+ import { jsx as r } from "react/jsx-runtime";
6
+ //#region lib/ui/carousel/CarouselPrevious.tsx
7
+ var i = ({ className: i, label: a, onClick: o, ...s }) => {
8
+ let { canScrollPrev: c, scrollPrev: l } = n();
9
+ return /* @__PURE__ */ r(t, {
10
+ icon: "ArrowDefaultLeft",
11
+ ...s,
12
+ className: e("pointer-events-auto", i),
13
+ disabled: !c,
14
+ onClick: (e) => {
15
+ l(), o?.(e);
16
+ },
17
+ children: a
18
+ });
19
+ };
20
+ //#endregion
21
+ export { i as CarouselPrevious };
22
+
23
+ //# sourceMappingURL=CarouselPrevious.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CarouselPrevious.js","names":[],"sources":["../../../lib/ui/carousel/CarouselPrevious.tsx"],"sourcesContent":["'use client';\nimport clsx from 'clsx';\nimport type { ComponentProps, MouseEvent } from 'react';\n\nimport { ArrowButton } from '../buttons/ArrowButton';\n\nimport { useCarousel } from './Carousel.context';\n\ninterface Props extends Omit<ComponentProps<typeof ArrowButton>, 'icon'> {\n icon?: ComponentProps<typeof ArrowButton>['icon'];\n label: string;\n}\n\nexport const CarouselPrevious = ({ className, label, onClick, ...props }: Props) => {\n const { canScrollPrev, scrollPrev } = useCarousel();\n\n return (\n <ArrowButton\n icon=\"ArrowDefaultLeft\"\n {...props}\n className={clsx('pointer-events-auto', className)}\n disabled={!canScrollPrev}\n onClick={(e: MouseEvent<HTMLButtonElement>) => {\n scrollPrev();\n onClick?.(e as never);\n }}\n >\n {label}\n </ArrowButton>\n );\n};\n"],"mappings":";;;;;;AAaA,IAAa,KAAoB,EAAE,cAAW,UAAO,YAAS,GAAG,QAAmB;CAClF,IAAM,EAAE,kBAAe,kBAAe,GAAa;AAEnD,QACE,kBAAC,GAAD;EACE,MAAK;EACL,GAAI;EACJ,WAAW,EAAK,uBAAuB,EAAU;EACjD,UAAU,CAAC;EACX,UAAU,MAAqC;AAE7C,GADA,GAAY,EACZ,IAAU,EAAW;;YAGtB;EACW,CAAA"}
@@ -1,4 +1,4 @@
1
- import { r as e, t } from "../../chunks/chunk.js";
1
+ import { o as e, t } from "../../chunks/chunk.js";
2
2
  import { createContext as n, useContext as r } from "react";
3
3
  import { jsx as i } from "react/jsx-runtime";
4
4
  //#region ../../node_modules/.pnpm/lodash@4.17.23/node_modules/lodash/isArray.js
@@ -0,0 +1,13 @@
1
+ import { FunctionComponent } from 'react';
2
+ interface BirthdateProps {
3
+ label: string;
4
+ invalidDateErrorMessage: string;
5
+ minDateErrorMessage: string;
6
+ maxDateErrorMessage: string;
7
+ min: Date;
8
+ max: Date;
9
+ value: Date | null | undefined;
10
+ onChange: (event: Event, value: Date | null) => void;
11
+ }
12
+ export declare const Birthdate: FunctionComponent<BirthdateProps>;
13
+ export {};
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../../chunks/Birthdate.js";
2
+ export { e as Birthdate };
@@ -0,0 +1,32 @@
1
+ import { ComponentProps, FunctionComponent, PropsWithChildren } from 'react';
2
+ import { Datepicker } from '../Datepicker';
3
+ export interface CriteriaDatesReinsuranceProps {
4
+ className?: string;
5
+ labels: {
6
+ disclaimer: string;
7
+ };
8
+ }
9
+ export declare const CriteriaDatesReinsurance: FunctionComponent<CriteriaDatesReinsuranceProps>;
10
+ interface DatepickerLabels {
11
+ seeNextMonth: string;
12
+ seePreviousMonth: string;
13
+ }
14
+ interface PriceLegendLabels {
15
+ bestPrice: string;
16
+ lastAvailabilities: string;
17
+ notAvailable: string;
18
+ priceLegend: string;
19
+ availableSeason?: string;
20
+ }
21
+ export interface CriteriaDatesLabels extends DatepickerLabels {
22
+ availableSeason?: string;
23
+ }
24
+ export type CriteriaDatesLabelsWithPriceLegend = CriteriaDatesLabels & PriceLegendLabels;
25
+ export interface CriteriaDatesProps extends ComponentProps<typeof Datepicker> {
26
+ className?: string;
27
+ labels: CriteriaDatesLabels | CriteriaDatesLabelsWithPriceLegend;
28
+ showPriceLegend?: boolean;
29
+ title?: string;
30
+ }
31
+ export declare const CriteriaDates: FunctionComponent<PropsWithChildren<CriteriaDatesProps>>;
32
+ export {};
@@ -0,0 +1,76 @@
1
+ "use client";
2
+ import { t as e } from "../../chunks/clsx.js";
3
+ import { Chip as t } from "../Chip.js";
4
+ import { t as n } from "../../chunks/Datepicker.js";
5
+ import { CriteriaSection as r } from "./CriteriaSection.js";
6
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
7
+ //#region lib/ui/criteria/CriteriaDates.tsx
8
+ var o = ({ className: n, labels: r }) => r.disclaimer ? /* @__PURE__ */ a("p", {
9
+ className: e("text-b3 flex items-start justify-center gap-20 text-start text-black md:items-center md:gap-8", n),
10
+ children: [/* @__PURE__ */ i(t, {
11
+ color: "sienna",
12
+ icon: "New",
13
+ size: "size-32",
14
+ theme: "solid"
15
+ }), r.disclaimer]
16
+ }) : null, s = ({ customClass: t, label: n }) => /* @__PURE__ */ a("p", {
17
+ className: "flex items-center gap-4",
18
+ role: "listitem",
19
+ children: [/* @__PURE__ */ i("span", { className: e("size-27", t) }), n]
20
+ }), c = ({ className: t, showPriceLegend: o, labels: c, children: l, title: u, ...d }) => {
21
+ let f = o && "priceLegend" in c, p = f ? {
22
+ green: c.bestPrice,
23
+ orange: c.lastAvailabilities,
24
+ outline: c.availableSeason
25
+ } : void 0, m = f && /* @__PURE__ */ a("div", {
26
+ "aria-labelledby": "price-legend-title",
27
+ className: "text-b4 flex flex-wrap items-center justify-center gap-x-20 gap-y-12",
28
+ role: "region",
29
+ children: [/* @__PURE__ */ i("p", {
30
+ className: "w-full text-center font-semibold md:w-auto",
31
+ id: "price-legend-title",
32
+ children: c.priceLegend
33
+ }), /* @__PURE__ */ a("div", {
34
+ "aria-label": c.priceLegend,
35
+ className: "flex items-center justify-center gap-12",
36
+ role: "list",
37
+ children: [
38
+ /* @__PURE__ */ i(s, {
39
+ customClass: "bg-green rounded-pill",
40
+ label: c.bestPrice
41
+ }),
42
+ /* @__PURE__ */ i(s, {
43
+ customClass: "bg-orange rounded-8",
44
+ label: c.lastAvailabilities
45
+ }),
46
+ /* @__PURE__ */ i(s, {
47
+ customClass: "bg-sand rounded-8 diagonal-line",
48
+ label: c.notAvailable
49
+ }),
50
+ c.availableSeason && /* @__PURE__ */ i(s, {
51
+ customClass: "rounded-8 border border-black",
52
+ label: c.availableSeason
53
+ })
54
+ ]
55
+ })]
56
+ });
57
+ return /* @__PURE__ */ a(r, {
58
+ className: e("!gap-y-12 md:!gap-y-20", t),
59
+ title: u,
60
+ children: [m, /* @__PURE__ */ a("div", {
61
+ className: "flex flex-col",
62
+ children: [/* @__PURE__ */ i(n, {
63
+ ...d,
64
+ labels: {
65
+ seeNextMonth: c.seeNextMonth,
66
+ seePreviousMonth: c.seePreviousMonth
67
+ },
68
+ statusLabels: p
69
+ }), l]
70
+ })]
71
+ });
72
+ };
73
+ //#endregion
74
+ export { c as CriteriaDates, o as CriteriaDatesReinsurance };
75
+
76
+ //# sourceMappingURL=CriteriaDates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CriteriaDates.js","names":[],"sources":["../../../lib/ui/criteria/CriteriaDates.tsx"],"sourcesContent":["'use client';\nimport clsx from 'clsx';\nimport type { ComponentProps, FunctionComponent, PropsWithChildren } from 'react';\n\nimport { Chip } from '../Chip';\nimport { Datepicker } from '../Datepicker';\nimport { CriteriaSection } from './CriteriaSection';\n\nexport interface CriteriaDatesReinsuranceProps {\n className?: string;\n labels: { disclaimer: string };\n}\n\nexport const CriteriaDatesReinsurance: FunctionComponent<CriteriaDatesReinsuranceProps> = ({\n className,\n labels,\n}) => {\n if (!labels.disclaimer) return null;\n\n return (\n <p\n className={clsx(\n 'text-b3 flex items-start justify-center gap-20 text-start text-black md:items-center md:gap-8',\n className,\n )}\n >\n <Chip color=\"sienna\" icon=\"New\" size=\"size-32\" theme=\"solid\" />\n {labels.disclaimer}\n </p>\n );\n};\n\ninterface DatepickerLabels {\n seeNextMonth: string;\n seePreviousMonth: string;\n}\n\ninterface PriceLegendLabels {\n bestPrice: string;\n lastAvailabilities: string;\n notAvailable: string;\n priceLegend: string;\n availableSeason?: string;\n}\n\nexport interface CriteriaDatesLabels extends DatepickerLabels {\n availableSeason?: string;\n}\n\nexport type CriteriaDatesLabelsWithPriceLegend = CriteriaDatesLabels & PriceLegendLabels;\n\nexport interface CriteriaDatesProps extends ComponentProps<typeof Datepicker> {\n className?: string;\n labels: CriteriaDatesLabels | CriteriaDatesLabelsWithPriceLegend;\n showPriceLegend?: boolean;\n title?: string;\n}\n\nconst LegendItem: FunctionComponent<{ customClass: string; label: string }> = ({\n customClass,\n label,\n}) => (\n <p className=\"flex items-center gap-4\" role=\"listitem\">\n <span className={clsx('size-27', customClass)} />\n {label}\n </p>\n);\n\nexport const CriteriaDates: FunctionComponent<PropsWithChildren<CriteriaDatesProps>> = ({\n className,\n showPriceLegend,\n labels,\n children,\n title,\n ...datepickerProps\n}) => {\n const hasPriceLegend = showPriceLegend && 'priceLegend' in labels;\n\n const statusLabels = hasPriceLegend\n ? {\n green: labels.bestPrice,\n orange: labels.lastAvailabilities,\n outline: labels.availableSeason,\n }\n : undefined;\n\n const priceLegend = hasPriceLegend && (\n <div\n aria-labelledby=\"price-legend-title\"\n className=\"text-b4 flex flex-wrap items-center justify-center gap-x-20 gap-y-12\"\n role=\"region\"\n >\n <p className=\"w-full text-center font-semibold md:w-auto\" id=\"price-legend-title\">\n {labels.priceLegend}\n </p>\n <div\n aria-label={labels.priceLegend}\n className=\"flex items-center justify-center gap-12\"\n role=\"list\"\n >\n <LegendItem customClass=\"bg-green rounded-pill\" label={labels.bestPrice} />\n <LegendItem customClass=\"bg-orange rounded-8\" label={labels.lastAvailabilities} />\n <LegendItem customClass=\"bg-sand rounded-8 diagonal-line\" label={labels.notAvailable} />\n {labels.availableSeason && (\n <LegendItem customClass=\"rounded-8 border border-black\" label={labels.availableSeason} />\n )}\n </div>\n </div>\n );\n\n return (\n <CriteriaSection className={clsx('!gap-y-12 md:!gap-y-20', className)} title={title}>\n {priceLegend}\n <div className=\"flex flex-col\">\n <Datepicker\n {...datepickerProps}\n labels={{\n seeNextMonth: labels.seeNextMonth,\n seePreviousMonth: labels.seePreviousMonth,\n }}\n statusLabels={statusLabels}\n />\n {children}\n </div>\n </CriteriaSection>\n );\n};\n"],"mappings":";;;;;;;AAaA,IAAa,KAA8E,EACzF,cACA,gBAEK,EAAO,aAGV,kBAAC,KAAD;CACE,WAAW,EACT,iGACA,EACD;WAJH,CAME,kBAAC,GAAD;EAAM,OAAM;EAAS,MAAK;EAAM,MAAK;EAAU,OAAM;EAAU,CAAA,EAC9D,EAAO,WAAA;KAVmB,MAyC3B,KAAyE,EAC7E,gBACA,eAEA,kBAAC,KAAD;CAAG,WAAU;CAA0B,MAAK;WAA5C,CACE,kBAAC,QAAD,EAAM,WAAW,EAAK,WAAW,EAAY,EAAI,CAAA,EAChD,EAAA;IAIQ,KAA2E,EACtF,cACA,oBACA,WACA,aACA,UACA,GAAG,QACC;CACJ,IAAM,IAAiB,KAAmB,iBAAiB,GAErD,IAAe,IACjB;EACE,OAAO,EAAO;EACd,QAAQ,EAAO;EACf,SAAS,EAAO;EACjB,GACD,KAAA,GAEE,IAAc,KAClB,kBAAC,OAAD;EACE,mBAAgB;EAChB,WAAU;EACV,MAAK;YAHP,CAKE,kBAAC,KAAD;GAAG,WAAU;GAA6C,IAAG;aAC1D,EAAO;GACN,CAAA,EACJ,kBAAC,OAAD;GACE,cAAY,EAAO;GACnB,WAAU;GACV,MAAK;aAHP;IAKE,kBAAC,GAAD;KAAY,aAAY;KAAwB,OAAO,EAAO;KAAa,CAAA;IAC3E,kBAAC,GAAD;KAAY,aAAY;KAAsB,OAAO,EAAO;KAAsB,CAAA;IAClF,kBAAC,GAAD;KAAY,aAAY;KAAkC,OAAO,EAAO;KAAgB,CAAA;IACvF,EAAO,mBACN,kBAAC,GAAD;KAAY,aAAY;KAAgC,OAAO,EAAO;KAAmB,CAAA;;;;AAMjG,QACE,kBAAC,GAAD;EAAiB,WAAW,EAAK,0BAA0B,EAAU;EAAS;YAA9E,CACG,GACD,kBAAC,OAAD;GAAK,WAAU;aAAf,CACE,kBAAC,GAAD;IACE,GAAI;IACJ,QAAQ;KACN,cAAc,EAAO;KACrB,kBAAkB,EAAO;KAC1B;IACa;IACd,CAAA,EACD,EAAA"}
@@ -0,0 +1,106 @@
1
+ import { Dispatch, FunctionComponent } from 'react';
2
+ export interface ParticipantsLimitContact {
3
+ description: string | null;
4
+ href: string;
5
+ icon: string;
6
+ target: string;
7
+ title: string;
8
+ }
9
+ export interface ParticipantsLimitLabels {
10
+ expand: string;
11
+ reduce: string;
12
+ }
13
+ export interface ParticipantsLimit {
14
+ title: string;
15
+ description: string;
16
+ contacts: ParticipantsLimitContact[];
17
+ labels: ParticipantsLimitLabels;
18
+ }
19
+ export interface CriteriaParticipantsLabels {
20
+ addAdult: string;
21
+ addChild: string;
22
+ adults: string;
23
+ adultsDescription?: string | null;
24
+ children: string;
25
+ childrenAgeLimit: string;
26
+ childBirthdate: string;
27
+ childBirthdateInvalidDateError: string;
28
+ childBirthdateMaxAgeError: string;
29
+ childBirthdateMinAgeError: string;
30
+ limit?: ParticipantsLimit;
31
+ removeAdult: string;
32
+ removeChild: string;
33
+ /** Label for the "Enter date of birth" toggle. When omitted the age entry section is hidden. */
34
+ enterDateOfBirth?: string;
35
+ /** Question shown above per-child age inputs in year mode */
36
+ ageQuestion?: string;
37
+ /** "Year" tab label in the year/months toggle */
38
+ ageYear?: string;
39
+ /** "Months" tab label in the year/months toggle */
40
+ ageMonths?: string;
41
+ /** "Apply" button label for confirming a child's age */
42
+ ageApply?: string;
43
+ /** "Participant Details" section title. When omitted the summary section is hidden. */
44
+ participantDetails?: string;
45
+ /** Template for adult chip labels – use {n} for 1-based index, e.g. "Adult {n}" */
46
+ adultLabel?: string;
47
+ /** Template for child chip labels – use {n} for 1-based index, e.g. "Child {n}" */
48
+ childLabel?: string;
49
+ /** aria-label for chip remove buttons */
50
+ removeParticipant?: string;
51
+ /** "Reset" link label */
52
+ reset?: string;
53
+ /** "Continue" button label */
54
+ apply?: string;
55
+ }
56
+ export type CriteriaParticipantsAction = {
57
+ type: 'adultsCount';
58
+ payload: number;
59
+ } | {
60
+ type: 'childrenCount';
61
+ payload: number;
62
+ } | {
63
+ type: 'birthdate';
64
+ payload: {
65
+ date: Date | null;
66
+ index: number;
67
+ };
68
+ } | {
69
+ type: 'childAge';
70
+ payload: {
71
+ index: number;
72
+ value: number | null;
73
+ unit: 'year' | 'month';
74
+ };
75
+ };
76
+ export interface CriteriaParticipantsProps {
77
+ labels: CriteriaParticipantsLabels;
78
+ title?: string;
79
+ /** card (default): white outer card with sand inner. flat: no background, fields rendered directly */
80
+ variant?: 'card' | 'flat';
81
+ adultsCount: number;
82
+ minAdults?: number;
83
+ maxAdults?: number;
84
+ withChildren?: boolean;
85
+ childrenCount: number;
86
+ minChildren?: number;
87
+ maxChildren?: number;
88
+ /** Total adults + children at which the limit banner appears (default 6) */
89
+ maxTotalParticipants?: number;
90
+ minAuthorizedBirthdate?: Date;
91
+ maxAuthorizedBirthdate: Date;
92
+ birthdates: Array<Date | null | undefined>;
93
+ /** Applied child ages for year/month mode. One entry per child. */
94
+ childAges?: Array<{
95
+ value: number;
96
+ unit: 'year' | 'month';
97
+ } | null | undefined>;
98
+ className?: string;
99
+ onChange: Dispatch<CriteriaParticipantsAction>;
100
+ onLimitDisplay?: () => void;
101
+ onReset?: () => void;
102
+ onApply?: () => void;
103
+ /** Controls the children age-entry UX and when onChange fires */
104
+ childrenFlow?: 'birthdate-only' | 'age-or-birthdate' | 'age-or-birthdate-with-apply';
105
+ }
106
+ export declare const CriteriaParticipants: FunctionComponent<CriteriaParticipantsProps>;
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../../chunks/CriteriaParticipants.js";
2
+ export { e as CriteriaParticipants };
@@ -0,0 +1,6 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export interface CriteriaSectionProps {
3
+ className?: string;
4
+ title?: string;
5
+ }
6
+ export declare const CriteriaSection: ({ children, className, title, }: PropsWithChildren<CriteriaSectionProps>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ "use client";
2
+ import { t as e } from "../../chunks/clsx.js";
3
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
4
+ //#region lib/ui/criteria/CriteriaSection.tsx
5
+ var r = ({ children: r, className: i, title: a }) => /* @__PURE__ */ n("div", {
6
+ className: e("rounded-16 bg-lightSand space-y-20 p-20", i),
7
+ children: [a && /* @__PURE__ */ t("p", {
8
+ className: "text-b2 font-semibold",
9
+ children: a
10
+ }), r]
11
+ });
12
+ //#endregion
13
+ export { r as CriteriaSection };
14
+
15
+ //# sourceMappingURL=CriteriaSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CriteriaSection.js","names":[],"sources":["../../../lib/ui/criteria/CriteriaSection.tsx"],"sourcesContent":["'use client';\nimport clsx from 'clsx';\nimport type { PropsWithChildren } from 'react';\n\nexport interface CriteriaSectionProps {\n className?: string;\n title?: string;\n}\n\nexport const CriteriaSection = ({\n children,\n className,\n title,\n}: PropsWithChildren<CriteriaSectionProps>) => (\n <div className={clsx('rounded-16 bg-lightSand space-y-20 p-20', className)}>\n {title && <p className=\"text-b2 font-semibold\">{title}</p>}\n {children}\n </div>\n);\n"],"mappings":";;;;AASA,IAAa,KAAmB,EAC9B,aACA,cACA,eAEA,kBAAC,OAAD;CAAK,WAAW,EAAK,2CAA2C,EAAU;WAA1E,CACG,KAAS,kBAAC,KAAD;EAAG,WAAU;YAAyB;EAAU,CAAA,EACzD,EAAA"}
@@ -0,0 +1,53 @@
1
+ import { FunctionComponent } from 'react';
2
+ import { RadioSelectOption } from '../forms/RadioSelect';
3
+ export interface Airport {
4
+ code: string;
5
+ name: string;
6
+ }
7
+ export interface CriteriaTransportsLabels {
8
+ toggleLabel: string;
9
+ topCitiesLabel: string;
10
+ otherCitiesLabel: string;
11
+ clubMedTransportTitle: string;
12
+ clubMedTransportDescription: string;
13
+ reset?: string;
14
+ apply?: string;
15
+ }
16
+ export interface CriteriaTransportsB2BLabels {
17
+ roundTripLabel: string;
18
+ oneWayLabel: string;
19
+ cabinClassLabel: string;
20
+ departureDateLabel: string;
21
+ }
22
+ export interface CriteriaTransportsProps {
23
+ labels: CriteriaTransportsLabels;
24
+ title?: string;
25
+ /** card (default): white outer card with sand inner. flat: no background, fields rendered directly */
26
+ variant?: 'card' | 'flat';
27
+ /** Switches between B2C (default) and B2B mode. B2B mode adds flight type, cabin class, and departure selectors. */
28
+ mode?: 'b2c' | 'b2b';
29
+ enabled: boolean;
30
+ topCities: Airport[];
31
+ otherCities: Airport[];
32
+ selectedAirportCode?: string | null;
33
+ className?: string;
34
+ onToggle: (enabled: boolean) => void;
35
+ onSelect: (code: string | null) => void;
36
+ onReset?: () => void;
37
+ onApply?: () => void;
38
+ b2bLabels?: CriteriaTransportsB2BLabels;
39
+ /** Currently selected flight type (B2B mode). Defaults to 'roundtrip'. */
40
+ flightType?: 'roundtrip' | 'oneway';
41
+ onFlightTypeChange?: (type: 'roundtrip' | 'oneway') => void;
42
+ /** Currently selected cabin class value (B2B mode). */
43
+ cabinClass?: string;
44
+ /** Options for the cabin class RadioSelect (B2B mode). */
45
+ cabinClassOptions?: RadioSelectOption<string>[];
46
+ onCabinClassChange?: (event: Event, value: string) => void;
47
+ /** Controlled value for the departure airport TextField; also used to filter the airport list. */
48
+ departureQuery?: string;
49
+ onDepartureQueryChange?: (event: Event, value: string) => void;
50
+ /** Error message shown in B2B mode when a prerequisite (e.g. resort selection) is missing. */
51
+ error?: string;
52
+ }
53
+ export declare const CriteriaTransports: FunctionComponent<CriteriaTransportsProps>;