@xploreu/components 0.4.46 → 0.4.47

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 (346) hide show
  1. package/dist/chunk-I7XV55MM.js +2 -0
  2. package/dist/chunk-I7XV55MM.js.map +1 -0
  3. package/dist/composites/index.js +1 -1
  4. package/dist/composites/phone-input.js +1 -1
  5. package/package.json +1 -1
  6. package/dist/chunk-G4DP36RY.js +0 -2
  7. package/dist/chunk-G4DP36RY.js.map +0 -1
  8. package/dist/composites/combobox-chip-outside.d.ts +0 -44
  9. package/dist/composites/combobox-chip.d.ts +0 -47
  10. package/dist/composites/combobox-simple.d.ts +0 -37
  11. package/dist/composites/filter-combobox.d.ts +0 -36
  12. package/dist/composites/index.d.ts +0 -50
  13. package/dist/composites/phone-input.d.ts +0 -9
  14. package/dist/composites/profile-avatar.d.ts +0 -29
  15. package/dist/effects/auto-height.d.ts +0 -13
  16. package/dist/effects/highlight.d.ts +0 -93
  17. package/dist/effects/index.d.ts +0 -5
  18. package/dist/form/form-input.d.ts +0 -19
  19. package/dist/form/form-textarea.d.ts +0 -18
  20. package/dist/form/form.d.ts +0 -44
  21. package/dist/form/index.d.ts +0 -12
  22. package/dist/icons/about-me-icon.d.ts +0 -6
  23. package/dist/icons/academic-cap-dual-tone-icon.d.ts +0 -6
  24. package/dist/icons/academic-cap-icon.d.ts +0 -6
  25. package/dist/icons/activity-on-tab-profile-icon.d.ts +0 -6
  26. package/dist/icons/add-connect-icon.d.ts +0 -6
  27. package/dist/icons/alert-jobs-icon.d.ts +0 -6
  28. package/dist/icons/applicants-icon.d.ts +0 -6
  29. package/dist/icons/application-status-icon.d.ts +0 -6
  30. package/dist/icons/archive-message-icon.d.ts +0 -6
  31. package/dist/icons/arrow-go-to-location-icon.d.ts +0 -6
  32. package/dist/icons/bag-icon.d.ts +0 -6
  33. package/dist/icons/bag2-icon.d.ts +0 -6
  34. package/dist/icons/bag3-icon.d.ts +0 -6
  35. package/dist/icons/bell-icon.d.ts +0 -6
  36. package/dist/icons/birthday-date-icon.d.ts +0 -6
  37. package/dist/icons/book-dual-tone-icon.d.ts +0 -6
  38. package/dist/icons/book-open.d.ts +0 -6
  39. package/dist/icons/bookmark-filled-icon.d.ts +0 -6
  40. package/dist/icons/bookmark-icon.d.ts +0 -6
  41. package/dist/icons/brief-dual-tone-icon.d.ts +0 -6
  42. package/dist/icons/brief-minimalistic-dual-tone-icon.d.ts +0 -6
  43. package/dist/icons/brief-minimalistic-icon.d.ts +0 -6
  44. package/dist/icons/building-dual-tone-icon.d.ts +0 -6
  45. package/dist/icons/building-icon.d.ts +0 -6
  46. package/dist/icons/building-infrastructure-icon.d.ts +0 -6
  47. package/dist/icons/calendar-icon.d.ts +0 -6
  48. package/dist/icons/case-icon.d.ts +0 -6
  49. package/dist/icons/certificate-icon.d.ts +0 -6
  50. package/dist/icons/certificate-on-profile-icon.d.ts +0 -6
  51. package/dist/icons/chart-square-icon.d.ts +0 -6
  52. package/dist/icons/chat-round-dots-icon.d.ts +0 -6
  53. package/dist/icons/check-square-icon.d.ts +0 -6
  54. package/dist/icons/checkbox-base-icon.d.ts +0 -6
  55. package/dist/icons/checkbox-new-icon.d.ts +0 -6
  56. package/dist/icons/checkbox-select-icon.d.ts +0 -6
  57. package/dist/icons/checklist-icon.d.ts +0 -6
  58. package/dist/icons/checklist-minimalist-icon.d.ts +0 -6
  59. package/dist/icons/circle-quarter-icon.d.ts +0 -6
  60. package/dist/icons/city-icon.d.ts +0 -6
  61. package/dist/icons/clear-icon.d.ts +0 -6
  62. package/dist/icons/clipboard-icon.d.ts +0 -6
  63. package/dist/icons/clock-min.d.ts +0 -6
  64. package/dist/icons/clock-plus.d.ts +0 -6
  65. package/dist/icons/close-square-icon.d.ts +0 -6
  66. package/dist/icons/cloud-upload-icon.d.ts +0 -6
  67. package/dist/icons/comment-icon.d.ts +0 -6
  68. package/dist/icons/company-industry-icon.d.ts +0 -6
  69. package/dist/icons/company-on-job-description-icon.d.ts +0 -6
  70. package/dist/icons/company-on-job-preferences-icon.d.ts +0 -6
  71. package/dist/icons/company-post-icon.d.ts +0 -6
  72. package/dist/icons/connection-company-icon.d.ts +0 -6
  73. package/dist/icons/connections-icon.d.ts +0 -6
  74. package/dist/icons/contact-on-settings-icon.d.ts +0 -6
  75. package/dist/icons/copy-icon.d.ts +0 -6
  76. package/dist/icons/course-icon-search-icon.d.ts +0 -6
  77. package/dist/icons/create-free-jobs-with-ai-icon.d.ts +0 -6
  78. package/dist/icons/create-group-message-icon.d.ts +0 -6
  79. package/dist/icons/create-job-icon.d.ts +0 -6
  80. package/dist/icons/danger-triangle-icon.d.ts +0 -6
  81. package/dist/icons/delete-icon.d.ts +0 -6
  82. package/dist/icons/document-add-icon.d.ts +0 -6
  83. package/dist/icons/document-notes-icon.d.ts +0 -6
  84. package/dist/icons/dots-icon.d.ts +0 -6
  85. package/dist/icons/download-cv-icon.d.ts +0 -6
  86. package/dist/icons/download-minimalistic-icon.d.ts +0 -6
  87. package/dist/icons/drive-db.d.ts +0 -6
  88. package/dist/icons/duration-of-work-icon.d.ts +0 -6
  89. package/dist/icons/duration-open-to-offer-icon.d.ts +0 -6
  90. package/dist/icons/edit-icon.d.ts +0 -6
  91. package/dist/icons/edit-on-button-profile-icon.d.ts +0 -6
  92. package/dist/icons/edit-on-section-profile-icon.d.ts +0 -6
  93. package/dist/icons/education-icon.d.ts +0 -6
  94. package/dist/icons/education-on-card-icon.d.ts +0 -6
  95. package/dist/icons/employment-type-on-job-preferences-icon.d.ts +0 -6
  96. package/dist/icons/evaluation-icon.d.ts +0 -6
  97. package/dist/icons/expected-salary-on-job-preferences-icon.d.ts +0 -6
  98. package/dist/icons/experience-icon.d.ts +0 -6
  99. package/dist/icons/female-on-summary-profile-icon.d.ts +0 -6
  100. package/dist/icons/file-default-icon.d.ts +0 -6
  101. package/dist/icons/file-doc-icon.d.ts +0 -6
  102. package/dist/icons/file-docx-icon.d.ts +0 -6
  103. package/dist/icons/file-jpg-icon.d.ts +0 -6
  104. package/dist/icons/file-mkv-icon.d.ts +0 -6
  105. package/dist/icons/file-mov-icon.d.ts +0 -6
  106. package/dist/icons/file-mp4-icon.d.ts +0 -6
  107. package/dist/icons/file-pdf-icon.d.ts +0 -6
  108. package/dist/icons/file-png-icon.d.ts +0 -6
  109. package/dist/icons/file-ppt-icon.d.ts +0 -6
  110. package/dist/icons/file-text-icon.d.ts +0 -6
  111. package/dist/icons/file-video-icon.d.ts +0 -6
  112. package/dist/icons/fire-icon.d.ts +0 -6
  113. package/dist/icons/flag-icon.d.ts +0 -6
  114. package/dist/icons/folder-icon.d.ts +0 -6
  115. package/dist/icons/followers-on-connections-icon.d.ts +0 -6
  116. package/dist/icons/following-on-connections-icon.d.ts +0 -6
  117. package/dist/icons/forward-icon.d.ts +0 -6
  118. package/dist/icons/funnel-icon.d.ts +0 -6
  119. package/dist/icons/gallery-add-icon.d.ts +0 -6
  120. package/dist/icons/gallery-favorite-icon.d.ts +0 -6
  121. package/dist/icons/gallery-icon.d.ts +0 -6
  122. package/dist/icons/general-preference-on-settings-icon.d.ts +0 -6
  123. package/dist/icons/globe-dual-tone-icon.d.ts +0 -6
  124. package/dist/icons/hand-stars-icon.d.ts +0 -6
  125. package/dist/icons/hard-skill-on-profile-icon.d.ts +0 -6
  126. package/dist/icons/help-icon.d.ts +0 -6
  127. package/dist/icons/hidden-icon.d.ts +0 -6
  128. package/dist/icons/hide-passwords-icon.d.ts +0 -6
  129. package/dist/icons/hired-by-others-icon.d.ts +0 -6
  130. package/dist/icons/home-icon.d.ts +0 -6
  131. package/dist/icons/home-smile-icon.d.ts +0 -6
  132. package/dist/icons/home-table.d.ts +0 -6
  133. package/dist/icons/icon-component.d.ts +0 -6
  134. package/dist/icons/image-on-message-icon.d.ts +0 -6
  135. package/dist/icons/index.d.ts +0 -282
  136. package/dist/icons/info-icon.d.ts +0 -6
  137. package/dist/icons/info-square-icon.d.ts +0 -6
  138. package/dist/icons/interested-of-industry-icon.d.ts +0 -6
  139. package/dist/icons/invitations-on-connections-icon.d.ts +0 -6
  140. package/dist/icons/job-description-icon.d.ts +0 -6
  141. package/dist/icons/job-preference-icon.d.ts +0 -6
  142. package/dist/icons/jobs-category-icon.d.ts +0 -6
  143. package/dist/icons/jobseeker-status-on-job-preferences-icon.d.ts +0 -6
  144. package/dist/icons/key-icon.d.ts +0 -6
  145. package/dist/icons/language-on-profile-icon.d.ts +0 -6
  146. package/dist/icons/layers-icon.d.ts +0 -6
  147. package/dist/icons/layout-icon.d.ts +0 -6
  148. package/dist/icons/like-filled-icon.d.ts +0 -6
  149. package/dist/icons/like-icon.d.ts +0 -6
  150. package/dist/icons/link-copy.d.ts +0 -6
  151. package/dist/icons/list-icon.d.ts +0 -6
  152. package/dist/icons/list-option-feedback-icon.d.ts +0 -6
  153. package/dist/icons/living-on-summary-profile-icon.d.ts +0 -6
  154. package/dist/icons/location-company-on-card-icon.d.ts +0 -6
  155. package/dist/icons/location-on-search-icon.d.ts +0 -6
  156. package/dist/icons/lock-icon.d.ts +0 -6
  157. package/dist/icons/logo-icon.d.ts +0 -6
  158. package/dist/icons/logout-icon.d.ts +0 -6
  159. package/dist/icons/lonceng-z-icon.d.ts +0 -6
  160. package/dist/icons/mail-icon.d.ts +0 -6
  161. package/dist/icons/mailbox-icon.d.ts +0 -6
  162. package/dist/icons/male-on-summary-profile-icon.d.ts +0 -6
  163. package/dist/icons/map-cluster-marker-icon.d.ts +0 -6
  164. package/dist/icons/map-marker-icon.d.ts +0 -6
  165. package/dist/icons/map-pin-icon.d.ts +0 -6
  166. package/dist/icons/map-pin-icon2.d.ts +0 -6
  167. package/dist/icons/map-pin2-icon.d.ts +0 -6
  168. package/dist/icons/mark-as-read-icon.d.ts +0 -6
  169. package/dist/icons/media-icon.d.ts +0 -6
  170. package/dist/icons/message-on-card-icon.d.ts +0 -6
  171. package/dist/icons/messages-icon.d.ts +0 -6
  172. package/dist/icons/mic-record-icon.d.ts +0 -6
  173. package/dist/icons/mini-sidebar-icon.d.ts +0 -6
  174. package/dist/icons/money-bill-icon.d.ts +0 -6
  175. package/dist/icons/mute-message-icon.d.ts +0 -6
  176. package/dist/icons/my-connecions-icon.d.ts +0 -6
  177. package/dist/icons/my-connections-on-tab-profile-icon.d.ts +0 -6
  178. package/dist/icons/my-cover-letter-icon.d.ts +0 -6
  179. package/dist/icons/my-dashboard-icon.d.ts +0 -6
  180. package/dist/icons/my-dashboards-icon.d.ts +0 -6
  181. package/dist/icons/my-drive-icon.d.ts +0 -6
  182. package/dist/icons/my-portofolio-icon.d.ts +0 -6
  183. package/dist/icons/my-resume-icon.d.ts +0 -6
  184. package/dist/icons/new-message-icon.d.ts +0 -6
  185. package/dist/icons/new-post-icon.d.ts +0 -6
  186. package/dist/icons/news-icon.d.ts +0 -6
  187. package/dist/icons/notification-icon.d.ts +0 -6
  188. package/dist/icons/notification-on-settings-icon.d.ts +0 -6
  189. package/dist/icons/offered-by-others-icon.d.ts +0 -6
  190. package/dist/icons/office-open-to-offer-icon.d.ts +0 -6
  191. package/dist/icons/office-opent-to-offer-section-icon.d.ts +0 -6
  192. package/dist/icons/open-another-page-icon.d.ts +0 -6
  193. package/dist/icons/open-preview-my-profile-icon.d.ts +0 -6
  194. package/dist/icons/open-to-offer-section-icon.d.ts +0 -6
  195. package/dist/icons/open-to-opportunities-icon.d.ts +0 -6
  196. package/dist/icons/other-job-for-you-icon.d.ts +0 -6
  197. package/dist/icons/other-job-from-this-company-icon.d.ts +0 -6
  198. package/dist/icons/passwords-icon.d.ts +0 -6
  199. package/dist/icons/pdf-on-apply-job-icon.d.ts +0 -6
  200. package/dist/icons/pen-new-square-icon.d.ts +0 -6
  201. package/dist/icons/people-you-may-know-icon.d.ts +0 -6
  202. package/dist/icons/people-your-company-icon.d.ts +0 -6
  203. package/dist/icons/phone-dual-tone-icon.d.ts +0 -6
  204. package/dist/icons/phone-icon.d.ts +0 -6
  205. package/dist/icons/pin-location-new-icon.d.ts +0 -6
  206. package/dist/icons/pin-message-icon.d.ts +0 -6
  207. package/dist/icons/plain-icon.d.ts +0 -6
  208. package/dist/icons/plus-square-icon.d.ts +0 -6
  209. package/dist/icons/posts-icon-search-icon.d.ts +0 -6
  210. package/dist/icons/priority-by-icon.d.ts +0 -6
  211. package/dist/icons/private-post-icon.d.ts +0 -6
  212. package/dist/icons/profile-icon.d.ts +0 -6
  213. package/dist/icons/public-post-icon.d.ts +0 -6
  214. package/dist/icons/public-post-on-card-icon.d.ts +0 -6
  215. package/dist/icons/repeat-icon.d.ts +0 -6
  216. package/dist/icons/reply-icon.d.ts +0 -6
  217. package/dist/icons/report-icon.d.ts +0 -6
  218. package/dist/icons/repost-icon.d.ts +0 -6
  219. package/dist/icons/reposted-icon.d.ts +0 -6
  220. package/dist/icons/save-jobs-icon.d.ts +0 -6
  221. package/dist/icons/save-post-menu-icon.d.ts +0 -6
  222. package/dist/icons/search-bar-icon.d.ts +0 -6
  223. package/dist/icons/search-icon.d.ts +0 -6
  224. package/dist/icons/search-with-date-icon.d.ts +0 -6
  225. package/dist/icons/send-comment-icon.d.ts +0 -6
  226. package/dist/icons/settings-icon.d.ts +0 -6
  227. package/dist/icons/share-circle-icon.d.ts +0 -6
  228. package/dist/icons/share-icon.d.ts +0 -6
  229. package/dist/icons/share-link.d.ts +0 -6
  230. package/dist/icons/shield-dualtone.d.ts +0 -6
  231. package/dist/icons/show-passwords-icon.d.ts +0 -6
  232. package/dist/icons/size-company-icon.d.ts +0 -6
  233. package/dist/icons/skill-on-tab-profile-icon.d.ts +0 -6
  234. package/dist/icons/skills-icon.d.ts +0 -6
  235. package/dist/icons/smile-icon.d.ts +0 -6
  236. package/dist/icons/soft-skill-icon.d.ts +0 -6
  237. package/dist/icons/sort-ascending-icon.d.ts +0 -6
  238. package/dist/icons/sort-by-icon.d.ts +0 -6
  239. package/dist/icons/sort-default-icon.d.ts +0 -6
  240. package/dist/icons/sort-descending-icon.d.ts +0 -6
  241. package/dist/icons/sort-horizontal-icon.d.ts +0 -6
  242. package/dist/icons/sosial-media-section-icon.d.ts +0 -6
  243. package/dist/icons/sparkle-star-icon.d.ts +0 -6
  244. package/dist/icons/sparkles-icon.d.ts +0 -6
  245. package/dist/icons/speech-icon.d.ts +0 -6
  246. package/dist/icons/stacked-layout-dual-tone-icon.d.ts +0 -6
  247. package/dist/icons/star-icon.d.ts +0 -6
  248. package/dist/icons/stars-icon.d.ts +0 -6
  249. package/dist/icons/sugested-company-icon.d.ts +0 -6
  250. package/dist/icons/suitcase-icon.d.ts +0 -6
  251. package/dist/icons/technical-skill-icon.d.ts +0 -6
  252. package/dist/icons/theme-icon.d.ts +0 -6
  253. package/dist/icons/themes-icon.d.ts +0 -6
  254. package/dist/icons/translate-icon.d.ts +0 -6
  255. package/dist/icons/trash-icon.d.ts +0 -6
  256. package/dist/icons/unarchive-message-icon.d.ts +0 -6
  257. package/dist/icons/unfollow-icon.d.ts +0 -6
  258. package/dist/icons/unmute-message-icon.d.ts +0 -6
  259. package/dist/icons/unpin-message-icon.d.ts +0 -6
  260. package/dist/icons/unsave-job-icon.d.ts +0 -6
  261. package/dist/icons/upload-document-icon.d.ts +0 -6
  262. package/dist/icons/upload-document-new-icon.d.ts +0 -6
  263. package/dist/icons/upload-event-icon.d.ts +0 -6
  264. package/dist/icons/upload-file-placeholder-icon.d.ts +0 -6
  265. package/dist/icons/upload-generate-image-icon.d.ts +0 -6
  266. package/dist/icons/upload-generate-post-icon.d.ts +0 -6
  267. package/dist/icons/upload-media-icon.d.ts +0 -6
  268. package/dist/icons/upload-media-new-icon.d.ts +0 -6
  269. package/dist/icons/upload-pictures-on-profile-icon.d.ts +0 -6
  270. package/dist/icons/upload-pollingt-new-icon.d.ts +0 -6
  271. package/dist/icons/upload-pooling-icon.d.ts +0 -6
  272. package/dist/icons/upload-reels-icon.d.ts +0 -6
  273. package/dist/icons/user-check-icon.d.ts +0 -6
  274. package/dist/icons/user-connections.d.ts +0 -6
  275. package/dist/icons/user-dual-tone-icon.d.ts +0 -6
  276. package/dist/icons/user-hands-up.d.ts +0 -6
  277. package/dist/icons/user-heart-rounded.d.ts +0 -6
  278. package/dist/icons/user-icon.d.ts +0 -6
  279. package/dist/icons/user-unfollow.d.ts +0 -6
  280. package/dist/icons/users-dual-tone-icon.d.ts +0 -6
  281. package/dist/icons/users-group-icon.d.ts +0 -6
  282. package/dist/icons/users-group-rounded-icon.d.ts +0 -6
  283. package/dist/icons/users-group-two-rounded-icon.d.ts +0 -6
  284. package/dist/icons/verified-icon.d.ts +0 -6
  285. package/dist/icons/video-on-message-icon.d.ts +0 -6
  286. package/dist/icons/view-grid-row-icon.d.ts +0 -6
  287. package/dist/icons/view-grid1-icon.d.ts +0 -6
  288. package/dist/icons/view-grid2-icon.d.ts +0 -6
  289. package/dist/icons/view-grid3-icon.d.ts +0 -6
  290. package/dist/icons/view-grid4-icon.d.ts +0 -6
  291. package/dist/icons/volume-icon.d.ts +0 -6
  292. package/dist/icons/volume-off-icon.d.ts +0 -6
  293. package/dist/icons/widget-four-icon.d.ts +0 -6
  294. package/dist/icons/widget-icon.d.ts +0 -6
  295. package/dist/icons/working-at-summary-profile-icon.d.ts +0 -6
  296. package/dist/icons/workplace-on-job-preferences-icon.d.ts +0 -6
  297. package/dist/icons/workplace-open-to-offers-icon.d.ts +0 -6
  298. package/dist/icons/x-square-icon.d.ts +0 -6
  299. package/dist/icons/your-summary-profile-icon.d.ts +0 -6
  300. package/dist/primitives/accordion.d.ts +0 -33
  301. package/dist/primitives/alert-dialog.d.ts +0 -34
  302. package/dist/primitives/avatar.d.ts +0 -11
  303. package/dist/primitives/checkbox.d.ts +0 -16
  304. package/dist/primitives/collapsible.d.ts +0 -22
  305. package/dist/primitives/combobox.d.ts +0 -79
  306. package/dist/primitives/dialog.d.ts +0 -34
  307. package/dist/primitives/index.d.ts +0 -47
  308. package/dist/primitives/menu.d.ts +0 -61
  309. package/dist/primitives/popover.d.ts +0 -31
  310. package/dist/primitives/sheet.d.ts +0 -33
  311. package/dist/primitives/slider.d.ts +0 -18
  312. package/dist/primitives/slot.d.ts +0 -19
  313. package/dist/primitives/tabs.d.ts +0 -35
  314. package/dist/primitives/toast.d.ts +0 -27
  315. package/dist/primitives/tooltip.d.ts +0 -32
  316. package/dist/types-BLgXHroz.d.ts +0 -6
  317. package/dist/ui/accordion.d.ts +0 -20
  318. package/dist/ui/alert-dialog.d.ts +0 -39
  319. package/dist/ui/alert.d.ts +0 -19
  320. package/dist/ui/alerter.d.ts +0 -43
  321. package/dist/ui/avatar.d.ts +0 -17
  322. package/dist/ui/badge.d.ts +0 -30
  323. package/dist/ui/button.d.ts +0 -16
  324. package/dist/ui/calendar.d.ts +0 -40
  325. package/dist/ui/carousel.d.ts +0 -35
  326. package/dist/ui/checkbox.d.ts +0 -16
  327. package/dist/ui/collapsible.d.ts +0 -15
  328. package/dist/ui/combobox.d.ts +0 -105
  329. package/dist/ui/date-multiple-picker.d.ts +0 -26
  330. package/dist/ui/date-picker.d.ts +0 -23
  331. package/dist/ui/date-range-picker.d.ts +0 -23
  332. package/dist/ui/dialog.d.ts +0 -40
  333. package/dist/ui/index.d.ts +0 -112
  334. package/dist/ui/infinite-scroll.d.ts +0 -15
  335. package/dist/ui/input.d.ts +0 -17
  336. package/dist/ui/label.d.ts +0 -13
  337. package/dist/ui/menu.d.ts +0 -50
  338. package/dist/ui/pagination.d.ts +0 -15
  339. package/dist/ui/popover.d.ts +0 -26
  340. package/dist/ui/sheet.d.ts +0 -31
  341. package/dist/ui/slider.d.ts +0 -14
  342. package/dist/ui/table.d.ts +0 -27
  343. package/dist/ui/tabs.d.ts +0 -26
  344. package/dist/ui/textarea.d.ts +0 -10
  345. package/dist/ui/toast.d.ts +0 -39
  346. package/dist/ui/tooltip.d.ts +0 -17
@@ -0,0 +1,2 @@
1
+ import {a as a$1,b as b$1,m,e,q,s,w}from'./chunk-SVNG3RLD.js';import {a}from'./chunk-Y6TKCAAJ.js';import*as t from'react';import*as g from'react-phone-number-input';import D from'react-phone-number-input/flags';import {cn}from'@xploreu/lib/cn';import'@base-ui/react/combobox';import {ChevronsUpDownIcon}from'lucide-react';import {jsx,jsxs}from'react/jsx-runtime';var P=t.createContext({size:"md"}),A={"3xs":"h-3 w-4.5","2xs":"h-3.5 w-5",xs:"h-3.5 w-5",sm:"h-4 w-6",md:"h-4 w-6",lg:"h-4 w-6",xl:"h-4.5 w-6.5"},W={"3xs":"size-3","2xs":"size-3",xs:"size-3.5",sm:"size-3.5",md:"size-3.5",lg:"size-4",xl:"size-4"},j={"3xs":"text-label-medium-4","2xs":"text-label-medium-4",xs:"text-body-medium-3",sm:"text-body-medium-3",md:"text-body-medium-3",lg:"text-body-medium-2",xl:"text-body-medium-2"},R=({country:s,countryName:o,className:r})=>{let l=s?D[s]:void 0;return jsx("span",{className:cn("flex h-4 w-6 shrink-0 overflow-hidden rounded-sm bg-fg-quaternary/20 [&_svg:not([class*='size-'])]:size-full",r),children:l&&jsx(l,{title:o})})},b=44,H=288,L=6;function J({disabled:s$1,value:o,options:r,onChange:l}){let{size:u="md"}=t.useContext(P),[C,c]=t.useState(false),[m$1,i]=t.useState(""),[N,z]=t.useState(0),v=t.useRef(null),h=t.useMemo(()=>r.filter(e=>!!e.value),[r]),p=t.useMemo(()=>{let e=m$1.trim().toLowerCase();return e?h.filter(a=>{let x=g.getCountryCallingCode(a.value);return a.label.toLowerCase().includes(e)||a.value.toLowerCase().includes(e)||x.includes(e.replace(/^\+/,""))}):h},[m$1,h]),_=t.useMemo(()=>h.find(e=>e.value===o)??null,[h,o]);t.useEffect(()=>{z(0),v.current&&(v.current.scrollTop=0);},[m$1]);let U=Math.min(p.length*b,H),I=t.useMemo(()=>{let e=Math.floor(N/b),a=Math.max(0,e-L),x=Math.ceil(H/b),w=Math.min(p.length,e+x+L);return {startIndex:a,endIndex:w,items:p.slice(a,w)}},[p,N]),q$1=I.startIndex*b,Y=Math.max(0,(p.length-I.endIndex)*b),B=t.useCallback(e=>{e?.value&&(l(e.value),i(""),c(false));},[l]);return jsxs(a$1,{behavior:"default",disabled:s$1,inputValue:m$1,items:p,open:C,value:_,virtualized:true,filter:null,isItemEqualToValue:(e,a)=>e.value===a.value,openOnInputClick:false,onValueChange:B,onInputValueChange:i,onOpenChange:e=>{c(e),e||i("");},children:[jsx(b$1,{render:jsxs("button",{type:"button",className:cn(a({size:u}),"w-auto shrink-0 justify-between gap-1.5 rounded-r-none border-r-0","hover:bg-bg-primary-hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-brand","disabled:pointer-events-none disabled:opacity-50"),disabled:s$1,children:[jsxs("span",{className:"flex items-center gap-1.5 overflow-hidden",children:[jsx(R,{country:o,countryName:o,className:A[u??"md"]}),o&&jsx("span",{className:cn("text-text-primary",j[u??"md"]??"text-body-medium-3"),children:o})]}),jsx(ChevronsUpDownIcon,{className:cn("shrink-0 text-fg-quaternary",W[u??"md"]??"size-3.5")})]})}),jsxs(m,{className:"w-72",children:[jsx(e,{placeholder:"Search country...","aria-label":"Search country"}),jsx(q,{status:p.length===0?"empty":null}),jsx(s,{ref:v,className:"relative gap-0",style:{height:U},onScroll:e=>z(e.currentTarget.scrollTop),children:jsx("div",{className:"flex w-full shrink-0 flex-col",style:{paddingTop:q$1,paddingBottom:Y},children:I.items.map((e,a)=>{let x=I.startIndex+a;return jsx(w,{index:x,value:e,children:jsxs("div",{className:"flex items-center gap-2 w-full min-w-0",children:[jsx(R,{country:e.value,countryName:e.label}),jsx("span",{className:"flex-1 text-sm truncate",children:e.label}),jsxs("span",{className:"text-sm text-text-tertiary shrink-0",children:["+",g.getCountryCallingCode(e.value)]})]})},e.value)})})})]})]})}var F=t.forwardRef(({className:s,onChange:o,size:r,...l},u)=>{let C=t.useContext(P),c=r??C.size??"md",m=t.useCallback(i=>{i.currentTarget.value==="+"&&(i.currentTarget.value=""),o?.(i);},[o]);return jsx("input",{className:cn(a({size:c}),"flex-1 rounded-l-none focus-visible:z-10",s),ref:u,type:"tel",onChange:m,...l})});F.displayName="InputComponent";var K=t.forwardRef(({className:s,onChange:o,value:r,size:l="md",...u},C)=>jsx(P.Provider,{value:{size:l},children:jsx(g.default,{ref:C,className:cn("flex w-full min-w-0 items-center",s),flagComponent:R,countrySelectComponent:J,inputComponent:F,smartCaret:false,value:r||void 0,onChange:c=>o?.(c||""),...u})}));K.displayName="PhoneInput";export{K as a};//# sourceMappingURL=chunk-I7XV55MM.js.map
2
+ //# sourceMappingURL=chunk-I7XV55MM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/composites/phone-input.tsx"],"names":["PhoneInputContext","phoneInputFlagSizes","phoneInputChevronSizes","phoneInputCountryCodeSizes","FlagComponent","country","countryName","className","Flag","flags","jsx","cn","COUNTRY_ROW_HEIGHT","COUNTRY_LIST_HEIGHT","COUNTRY_OVERSCAN","CountrySelect","disabled","selectedCountry","countryList","onChange","size","open","setOpen","inputValue","setInputValue","scrollTop","setScrollTop","listRef","items","item","filteredItems","search","callingCode","value","listHeight","virtualRange","visibleStartIndex","startIndex","visibleCount","endIndex","paddingTop","paddingBottom","handleValueChange","jsxs","Combobox","a","b","ComboboxTrigger","inputVariants","ChevronsUpDownIcon","ComboboxPopup","ComboboxInput","ComboboxStatus","ComboboxList","event","virtualIndex","index","ComboboxItem","InputComponent","sizeProp","props","ref","context","handleChange","PhoneInput"],"mappings":"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","file":"chunk-I7XV55MM.js","sourcesContent":["\"use client\"\r\n\r\nimport * as React from \"react\"\r\nimport * as RPNInput from \"react-phone-number-input\"\r\nimport flags from \"react-phone-number-input/flags\"\r\n\r\nimport { cn } from \"@xploreu/lib/cn\"\r\nimport { Combobox as ComboboxPrimitive } from \"@base-ui/react/combobox\"\r\nimport {\r\n Combobox,\r\n ComboboxInput,\r\n ComboboxItem,\r\n ComboboxList,\r\n ComboboxPopup,\r\n ComboboxStatus,\r\n ComboboxTrigger,\r\n} from \"../ui/combobox\"\r\nimport { inputVariants } from \"../ui/input\"\r\nimport { ChevronsUpDownIcon } from \"lucide-react\"\r\nimport type { VariantProps } from \"class-variance-authority\"\r\n\r\n// ---------------------------------------------------------------------------\r\n// Types & Context\r\n// ---------------------------------------------------------------------------\r\n\r\ntype PhoneInputSize = VariantProps<typeof inputVariants>[\"size\"]\r\n\r\nconst PhoneInputContext = React.createContext<{ size?: PhoneInputSize }>({\r\n size: \"md\",\r\n})\r\n\r\ntype PhoneInputProps = Omit<\r\n React.ComponentProps<\"input\">,\r\n \"onChange\" | \"value\" | \"ref\" | \"size\"\r\n> &\r\n Omit<RPNInput.Props<typeof RPNInput.default>, \"onChange\" | \"size\"> & {\r\n onChange?: (value: RPNInput.Value) => void\r\n size?: PhoneInputSize\r\n }\r\n\r\nconst phoneInputFlagSizes: Record<string, string> = {\r\n \"3xs\": \"h-3 w-4.5\",\r\n \"2xs\": \"h-3.5 w-5\",\r\n xs: \"h-3.5 w-5\",\r\n sm: \"h-4 w-6\",\r\n md: \"h-4 w-6\",\r\n lg: \"h-4 w-6\",\r\n xl: \"h-4.5 w-6.5\",\r\n}\r\n\r\nconst phoneInputChevronSizes: Record<string, string> = {\r\n \"3xs\": \"size-3\",\r\n \"2xs\": \"size-3\",\r\n xs: \"size-3.5\",\r\n sm: \"size-3.5\",\r\n md: \"size-3.5\",\r\n lg: \"size-4\",\r\n xl: \"size-4\",\r\n}\r\n\r\nconst phoneInputCountryCodeSizes: Record<string, string> = {\r\n \"3xs\": \"text-label-medium-4\",\r\n \"2xs\": \"text-label-medium-4\",\r\n xs: \"text-body-medium-3\",\r\n sm: \"text-body-medium-3\",\r\n md: \"text-body-medium-3\",\r\n lg: \"text-body-medium-2\",\r\n xl: \"text-body-medium-2\",\r\n}\r\n\r\n// ---------------------------------------------------------------------------\r\n// Flag\r\n// ---------------------------------------------------------------------------\r\n\r\ntype FlagComponentProps = RPNInput.FlagProps & {\r\n className?: string\r\n}\r\n\r\nconst FlagComponent = ({ country, countryName, className }: FlagComponentProps) => {\r\n const Flag = country ? flags[country] : undefined\r\n\r\n return (\r\n <span\r\n className={cn(\r\n \"flex h-4 w-6 shrink-0 overflow-hidden rounded-sm bg-fg-quaternary/20 [&_svg:not([class*='size-'])]:size-full\",\r\n className\r\n )}\r\n >\r\n {Flag && <Flag title={countryName} />}\r\n </span>\r\n )\r\n}\r\n\r\n// ---------------------------------------------------------------------------\r\n// Country Select — uses base-ui Combobox\r\n// ---------------------------------------------------------------------------\r\n\r\ntype CountryEntry = { label: string; value: RPNInput.Country | undefined }\r\ntype CountryItem = { label: string; value: RPNInput.Country }\r\n\r\nconst COUNTRY_ROW_HEIGHT = 44\r\nconst COUNTRY_LIST_HEIGHT = 288\r\nconst COUNTRY_OVERSCAN = 6\r\n\r\ntype CountrySelectProps = {\r\n disabled?: boolean\r\n value: RPNInput.Country\r\n options: CountryEntry[]\r\n onChange: (country: RPNInput.Country) => void\r\n}\r\n\r\nfunction CountrySelect({\r\n disabled,\r\n value: selectedCountry,\r\n options: countryList,\r\n onChange,\r\n}: CountrySelectProps) {\r\n const { size = \"md\" } = React.useContext(PhoneInputContext)\r\n const [open, setOpen] = React.useState(false)\r\n const [inputValue, setInputValue] = React.useState(\"\")\r\n const [scrollTop, setScrollTop] = React.useState(0)\r\n const listRef = React.useRef<HTMLDivElement>(null)\r\n\r\n const items = React.useMemo(\r\n () => countryList.filter((item): item is CountryItem => Boolean(item.value)),\r\n [countryList]\r\n )\r\n\r\n const filteredItems = React.useMemo(() => {\r\n const search = inputValue.trim().toLowerCase()\r\n\r\n if (!search) return items\r\n\r\n return items.filter((item) => {\r\n const callingCode = RPNInput.getCountryCallingCode(item.value)\r\n\r\n return item.label.toLowerCase().includes(search)\r\n || item.value.toLowerCase().includes(search)\r\n || callingCode.includes(search.replace(/^\\+/, \"\"))\r\n })\r\n }, [inputValue, items])\r\n\r\n const value = React.useMemo(\r\n () => items.find((item) => item.value === selectedCountry) ?? null,\r\n [items, selectedCountry]\r\n )\r\n\r\n React.useEffect(() => {\r\n setScrollTop(0)\r\n if (listRef.current) listRef.current.scrollTop = 0\r\n }, [inputValue])\r\n\r\n const listHeight = Math.min(\r\n filteredItems.length * COUNTRY_ROW_HEIGHT,\r\n COUNTRY_LIST_HEIGHT\r\n )\r\n\r\n const virtualRange = React.useMemo(() => {\r\n const visibleStartIndex = Math.floor(scrollTop / COUNTRY_ROW_HEIGHT)\r\n const startIndex = Math.max(\r\n 0,\r\n visibleStartIndex - COUNTRY_OVERSCAN\r\n )\r\n const visibleCount = Math.ceil(COUNTRY_LIST_HEIGHT / COUNTRY_ROW_HEIGHT)\r\n const endIndex = Math.min(\r\n filteredItems.length,\r\n visibleStartIndex + visibleCount + COUNTRY_OVERSCAN\r\n )\r\n\r\n return {\r\n startIndex,\r\n endIndex,\r\n items: filteredItems.slice(startIndex, endIndex),\r\n }\r\n }, [filteredItems, scrollTop])\r\n\r\n const paddingTop = virtualRange.startIndex * COUNTRY_ROW_HEIGHT\r\n const paddingBottom = Math.max(\r\n 0,\r\n (filteredItems.length - virtualRange.endIndex) * COUNTRY_ROW_HEIGHT\r\n )\r\n\r\n const handleValueChange = React.useCallback(\r\n (item: CountryItem | null) => {\r\n if (!item?.value) return\r\n\r\n onChange(item.value)\r\n setInputValue(\"\")\r\n setOpen(false)\r\n },\r\n [onChange]\r\n )\r\n\r\n return (\r\n <Combobox\r\n behavior=\"default\"\r\n disabled={disabled}\r\n inputValue={inputValue}\r\n items={filteredItems}\r\n open={open}\r\n value={value}\r\n virtualized\r\n filter={null}\r\n isItemEqualToValue={(a, b) => a.value === b.value}\r\n openOnInputClick={false}\r\n onValueChange={handleValueChange}\r\n onInputValueChange={setInputValue}\r\n onOpenChange={(open) => {\r\n setOpen(open)\r\n if (!open) setInputValue(\"\")\r\n }}\r\n >\r\n {/* Visible trigger button styled as part of the input */}\r\n <ComboboxTrigger\r\n render={\r\n <button\r\n type=\"button\"\r\n className={cn(\r\n inputVariants({ size }),\r\n \"w-auto shrink-0 justify-between gap-1.5 rounded-r-none border-r-0\",\r\n \"hover:bg-bg-primary-hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-brand\",\r\n \"disabled:pointer-events-none disabled:opacity-50\"\r\n )}\r\n disabled={disabled}\r\n >\r\n <span className=\"flex items-center gap-1.5 overflow-hidden\">\r\n <FlagComponent\r\n country={selectedCountry}\r\n countryName={selectedCountry}\r\n className={phoneInputFlagSizes[size ?? \"md\"]}\r\n />\r\n {selectedCountry && (\r\n <span\r\n className={cn(\r\n \"text-text-primary\",\r\n phoneInputCountryCodeSizes[size ?? \"md\"] ?? \"text-body-medium-3\"\r\n )}\r\n >\r\n {selectedCountry}\r\n </span>\r\n )}\r\n </span>\r\n <ChevronsUpDownIcon\r\n className={cn(\r\n \"shrink-0 text-fg-quaternary\",\r\n phoneInputChevronSizes[size ?? \"md\"] ?? \"size-3.5\"\r\n )}\r\n />\r\n </button>\r\n }\r\n />\r\n\r\n {/* Dropdown content */}\r\n <ComboboxPopup className=\"w-72\">\r\n <ComboboxInput\r\n placeholder=\"Search country...\"\r\n aria-label=\"Search country\"\r\n />\r\n <ComboboxStatus status={filteredItems.length === 0 ? \"empty\" : null} />\r\n <ComboboxList\r\n ref={listRef}\r\n className=\"relative gap-0\"\r\n style={{ height: listHeight }}\r\n onScroll={(event) => setScrollTop(event.currentTarget.scrollTop)}\r\n >\r\n <div\r\n className=\"flex w-full shrink-0 flex-col\"\r\n style={{ paddingTop, paddingBottom }}\r\n >\r\n {virtualRange.items.map((item, virtualIndex) => {\r\n const index = virtualRange.startIndex + virtualIndex\r\n\r\n return (\r\n <ComboboxItem\r\n key={item.value}\r\n index={index}\r\n value={item}\r\n >\r\n <div className=\"flex items-center gap-2 w-full min-w-0\">\r\n <FlagComponent country={item.value} countryName={item.label} />\r\n <span className=\"flex-1 text-sm truncate\">{item.label}</span>\r\n <span className=\"text-sm text-text-tertiary shrink-0\">\r\n +{RPNInput.getCountryCallingCode(item.value)}\r\n </span>\r\n </div>\r\n </ComboboxItem>\r\n )\r\n })}\r\n </div>\r\n </ComboboxList>\r\n </ComboboxPopup>\r\n </Combobox >\r\n )\r\n}\r\n\r\n// ---------------------------------------------------------------------------\r\n// Input Component\r\n// ---------------------------------------------------------------------------\r\n\r\nconst InputComponent = React.forwardRef<\r\n HTMLInputElement,\r\n React.ComponentProps<\"input\"> & { size?: PhoneInputSize }\r\n>(({ className, onChange, size: sizeProp, ...props }, ref) => {\r\n const context = React.useContext(PhoneInputContext)\r\n const size = sizeProp ?? context.size ?? \"md\"\r\n\r\n const handleChange = React.useCallback(\r\n (event: React.ChangeEvent<HTMLInputElement>) => {\r\n if (event.currentTarget.value === \"+\") {\r\n event.currentTarget.value = \"\"\r\n }\r\n\r\n onChange?.(event)\r\n },\r\n [onChange]\r\n )\r\n\r\n return (\r\n <input\r\n className={cn(\r\n inputVariants({ size }),\r\n \"flex-1 rounded-l-none focus-visible:z-10\",\r\n className\r\n )}\r\n ref={ref}\r\n type=\"tel\"\r\n onChange={handleChange}\r\n {...props}\r\n />\r\n )\r\n})\r\nInputComponent.displayName = \"InputComponent\"\r\n\r\n// ---------------------------------------------------------------------------\r\n// Phone Input\r\n// ---------------------------------------------------------------------------\r\n\r\nconst PhoneInput: React.ForwardRefExoticComponent<PhoneInputProps> =\r\n React.forwardRef<\r\n React.ElementRef<typeof RPNInput.default>,\r\n PhoneInputProps\r\n >(({\r\n className,\r\n onChange,\r\n value,\r\n size = \"md\",\r\n ...props\r\n }, ref) => {\r\n return (\r\n <PhoneInputContext.Provider value={{ size }}>\r\n <RPNInput.default\r\n ref={ref}\r\n className={cn(\r\n \"flex w-full min-w-0 items-center\",\r\n className\r\n )}\r\n flagComponent={FlagComponent}\r\n countrySelectComponent={CountrySelect}\r\n inputComponent={InputComponent}\r\n smartCaret={false}\r\n value={value || undefined}\r\n onChange={(value) => onChange?.(value || (\"\" as RPNInput.Value))}\r\n {...props}\r\n />\r\n </PhoneInputContext.Provider>\r\n )\r\n })\r\nPhoneInput.displayName = \"PhoneInput\"\r\n\r\nexport { PhoneInput, type PhoneInputProps }\r\n"]}
@@ -1,2 +1,2 @@
1
- export{a as ComboboxSimple}from'../chunk-M63WCJ22.js';import {a}from'../chunk-6QWQDSWL.js';export{a as FilterCombobox}from'../chunk-6QWQDSWL.js';export{a as PhoneInput}from'../chunk-G4DP36RY.js';export{a as ComboboxChipOutside}from'../chunk-C5HZCXIB.js';export{a as ComboboxChip}from'../chunk-Y2HN4RSA.js';import'../chunk-V2PW53KI.js';import'../chunk-IFBRARGK.js';import'../chunk-4IAMLCAM.js';import'../chunk-S4L5WILL.js';import'../chunk-MO7LQLS4.js';import'../chunk-A5644ETE.js';import'../chunk-DL6MI55G.js';import'../chunk-OHLNKXSV.js';import'../chunk-DNAWFZ7O.js';import'../chunk-BRZUHQYB.js';import'../chunk-NKQ3MFRE.js';import'../chunk-B5LYJTBB.js';import'../chunk-NBM4LIT4.js';import'../chunk-YHY3VXCO.js';import'../chunk-QIP6KFG2.js';import'../chunk-FIDOWSDH.js';import'../chunk-RH7BQGTL.js';import'../chunk-G2GFDTP5.js';import'../chunk-OBS7TDVV.js';import'../chunk-WYVGUIHL.js';import'../chunk-66IVKVY6.js';import'../chunk-HRY64DNE.js';import'../chunk-NGSCUYDU.js';import'../chunk-Y6JASO6W.js';import'../chunk-2XAHWERG.js';import'../chunk-JYFVQ5NY.js';import'../chunk-7EXEQDMX.js';import'../chunk-6OC5NZB6.js';import'../chunk-ZVME3JB3.js';import'../chunk-2TUGHMFW.js';import'../chunk-2RHSXF3X.js';import'../chunk-DX767LBV.js';import'../chunk-RN6CYJKG.js';import'../chunk-TES3PKRE.js';import'../chunk-BX7TD4RH.js';import'../chunk-YKX7SKZA.js';import'../chunk-DQGZIFNP.js';import'../chunk-SVNG3RLD.js';import'../chunk-HHG7BSWN.js';import'../chunk-TED2PUK6.js';import {b}from'../chunk-Y6TKCAAJ.js';import'../chunk-7P4PFMCM.js';import'../chunk-W7E2VPJN.js';import'../chunk-2URFXFQC.js';import'../chunk-XG3W7QMP.js';import'../chunk-DCH35MB4.js';import'../chunk-3SORJB7P.js';export{a as ProfileAvatar}from'../chunk-3733D5Y7.js';import'../chunk-EIYPBVAD.js';import'../chunk-OLX4O5PI.js';import'../chunk-322IBGFZ.js';import'../chunk-QDCD6MNO.js';import'../chunk-LFQAJN4H.js';import'../chunk-BEJ2SIQP.js';import'../chunk-4PD3DZE6.js';import'../chunk-3RJED3RZ.js';import'../chunk-FKOYTHRM.js';import'../chunk-GJ5F6YBZ.js';import'../chunk-4D2HXXN3.js';import'../chunk-S7ZMBRYT.js';import'../chunk-TIVYCE4X.js';import'../chunk-RCP2CZRA.js';import'../chunk-AGKZWMW5.js';import'../chunk-YWG6HJAX.js';import'../chunk-NHQA6KSU.js';import'../chunk-DDCGJBN7.js';import'../chunk-SGJYHWYM.js';import'../chunk-QYGN3VYS.js';import'../chunk-ADC7WDF4.js';import'../chunk-ICQEZHVV.js';import'../chunk-PSHB2EQA.js';import'../chunk-JVBWH3DS.js';import'../chunk-EHRGIXKH.js';import'../chunk-CQC2IBSD.js';import'../chunk-CKVTRZ3S.js';import'../chunk-YSG3MHTX.js';import'../chunk-4EYPU56T.js';import'../chunk-2JHFRTOZ.js';import'../chunk-FJTQQ4SC.js';import'../chunk-W2HFGSVH.js';import'../chunk-2GABMQSA.js';import'../chunk-7ECOWHUV.js';import'../chunk-IUPJTP3B.js';import'../chunk-LUQVFKR7.js';import'../chunk-PEHI6LCP.js';import'../chunk-3HUMZKFZ.js';import'../chunk-U5N2WWD3.js';import'../chunk-F2D445K4.js';import'../chunk-NUCPKDK5.js';import'../chunk-2IOTGL4J.js';import'../chunk-NASTZUK6.js';import'../chunk-ZSYQCIYS.js';import'../chunk-4NU44YPN.js';import'../chunk-3SQB2TJB.js';import'../chunk-L5AG5DTS.js';import'../chunk-EAF4H4YJ.js';import'../chunk-5TKGJK3A.js';import'../chunk-XH22TH7N.js';import'../chunk-7LF2CJ3L.js';import'../chunk-KO4EAVJY.js';import'../chunk-U6W5PRLZ.js';import'../chunk-D45GNYVU.js';import'../chunk-JXTOUSXQ.js';import'../chunk-DRYKJQ72.js';import'../chunk-46KQF4UN.js';import'../chunk-556ANF7Z.js';import'../chunk-UKXYDUDY.js';import'../chunk-7YXRTIXL.js';import'../chunk-5KMCPFGM.js';import'../chunk-6I4GG756.js';import'../chunk-4UC2VYI5.js';import'../chunk-UCCQUPMT.js';import'../chunk-TMDCYGCN.js';import'../chunk-5ETIHFSE.js';import'../chunk-XJTOYNCA.js';import'../chunk-BZGVXBP3.js';import'../chunk-LSW5TIYQ.js';import'../chunk-5YFGDOSH.js';import'../chunk-3NFGWKSO.js';import'../chunk-L73GMVVO.js';import'../chunk-OL4WHG4U.js';import'../chunk-V5WX4TSN.js';import'../chunk-Z22ALCLD.js';import'../chunk-IHTB4XCP.js';import'../chunk-ECVIBKDN.js';import'../chunk-MPD36YFP.js';import'../chunk-Z5GMQ477.js';import'../chunk-6FL6AY4D.js';import'../chunk-3376QA4Q.js';import'../chunk-PDZ7VJPX.js';import'../chunk-Y72C3IVO.js';import'../chunk-5OQVCPXP.js';import'../chunk-LN37WPV7.js';import'../chunk-5NAO3POG.js';import'../chunk-JWAU7A2Q.js';import'../chunk-YFCBMUPK.js';import'../chunk-SLLTAQ22.js';import'../chunk-WMUM5NGX.js';import'../chunk-A2U6VIQW.js';import'../chunk-VZMFSH37.js';import'../chunk-NREZRMEX.js';import'../chunk-3SKJUZ5H.js';import'../chunk-EDXV6BE6.js';import'../chunk-HM2QBLIL.js';import'../chunk-6IKHZM3V.js';import'../chunk-ZVCIT3QN.js';import'../chunk-UACQQO3I.js';import'../chunk-IHLMMP5Q.js';import'../chunk-HSTY767P.js';import'../chunk-BKWINCGB.js';import'../chunk-VOTCMLJE.js';import'../chunk-ZKFUHFBC.js';import'../chunk-CEYIRTZQ.js';import'../chunk-TORDOY73.js';import'../chunk-CAK44O3E.js';import'../chunk-MTWFWU3I.js';import'../chunk-GDU3OVET.js';import'../chunk-3EU5QGAN.js';import'../chunk-6EMNBLEM.js';import'../chunk-4CBZOTZR.js';import'../chunk-XY4CWRWG.js';import'../chunk-2FGDZ6WR.js';import'../chunk-KHCZBVOK.js';import'../chunk-2TO4PAQM.js';import'../chunk-6KFTNJLJ.js';import'../chunk-C7GZULSV.js';import'../chunk-GGD2FGWK.js';import'../chunk-AI5FYYCO.js';import'../chunk-UCQKCAYY.js';import'../chunk-HL32HBMO.js';import'../chunk-K7EZKYBC.js';import'../chunk-FIXJ55FT.js';import'../chunk-JCFEHT75.js';import'../chunk-5I545S2U.js';import'../chunk-V6YCCR75.js';import'../chunk-NYSABCPP.js';import'../chunk-M5IVXDZ4.js';import'../chunk-2ZG2WNSI.js';import'../chunk-FBKS63GQ.js';import'../chunk-NUGYUIN6.js';import'../chunk-TTZ2UE5L.js';import'../chunk-JZJHLBOV.js';import'../chunk-L6ZGEGUV.js';import'../chunk-DQSDZXTX.js';import'../chunk-R33XCP5H.js';import'../chunk-SDKXW3R4.js';import'../chunk-EJ5XTT5H.js';import'../chunk-6FEBVO2P.js';import'../chunk-Z7IOYXOK.js';import'../chunk-X2VRJLPR.js';import'../chunk-KPA4J3CC.js';import'../chunk-4JEHGT2R.js';import'../chunk-QNEJRZ4U.js';import'../chunk-SCPA3CM2.js';import'../chunk-2PQUW476.js';import'../chunk-HEKI5WR2.js';import'../chunk-SR76VRAC.js';import'../chunk-4GMRFP6B.js';import'../chunk-F5FFAJ6B.js';import'../chunk-5FALHJEA.js';import'../chunk-ICHHISXQ.js';import'../chunk-EERDL5XC.js';import'../chunk-GE3TPDYX.js';import'../chunk-RMGJAA2L.js';import'../chunk-PCUUUW7T.js';import'../chunk-FELUIC3Z.js';import'../chunk-BKBLZKQ7.js';import'../chunk-3Q72MLBZ.js';import'../chunk-ZWZZVZOP.js';import'../chunk-VLSPFIZU.js';import'../chunk-H56Z2DPY.js';import'../chunk-BGSHHAM2.js';import'../chunk-X2J6MJ6Y.js';import'../chunk-KCSDB6W4.js';import'../chunk-3N22A4KQ.js';import'../chunk-F7KNYOYR.js';import'../chunk-IRRA2OTH.js';import'../chunk-QM2KF35E.js';import'../chunk-WI5V5Z76.js';import'../chunk-OREIXD3L.js';import'../chunk-EYH5SNDK.js';import'../chunk-RUTYHOHT.js';import'../chunk-4FH2LYOC.js';import'../chunk-U27RVBYT.js';import'../chunk-SX54FORI.js';import'../chunk-XOIZGRZ6.js';import'../chunk-EY3W3WZX.js';import'../chunk-75BEGXGF.js';import'../chunk-CP6DGMEP.js';import'../chunk-7TNSQNT7.js';import'../chunk-YTN4DVWB.js';import'../chunk-XNDNAHCC.js';import'../chunk-UESMX3LA.js';import'../chunk-33MUUBSB.js';import'../chunk-VK62KNI7.js';import'../chunk-X5TJ3Z24.js';import'../chunk-J64EBQ23.js';import'../chunk-PFSN7DQX.js';import'../chunk-Y2R7ZZYY.js';import'../chunk-LYV7R7DB.js';import'../chunk-EKS6U6XR.js';import'../chunk-5LAJMBKN.js';import'../chunk-ZEONZS5N.js';import'../chunk-MHRHCLIU.js';import'../chunk-V4VKQ2QF.js';import'../chunk-NVVCGBML.js';import'../chunk-ZTCAXM77.js';import'../chunk-UVYYUEHO.js';import'../chunk-FFYGBVMN.js';import'../chunk-HJJ2VCYO.js';import'../chunk-KZMULPFK.js';import'../chunk-MYGQXM66.js';import'../chunk-ZY5FUK37.js';import'../chunk-DNIYW2WB.js';import'../chunk-DVXIIACM.js';import'../chunk-ZPPUEK2E.js';import'../chunk-GOXCPAUM.js';import'../chunk-6L6HTR6E.js';import'../chunk-4VQUQ3NT.js';import'../chunk-4S6MFDRP.js';import'../chunk-OE7VPOT4.js';import'../chunk-LHVBJHQZ.js';import'../chunk-2V46QEC7.js';import'../chunk-TJNOFRWB.js';import'../chunk-Y2TTBBRP.js';import'../chunk-NYQJHUKD.js';import'../chunk-6NPT5BJ7.js';import'../chunk-TJFA5O6Z.js';import'../chunk-KCCBSGT3.js';import'../chunk-QWFECUYL.js';import'../chunk-IPTGAZ37.js';import'../chunk-DEFVXH3J.js';import'../chunk-Y56EKYRN.js';import'../chunk-IW6VX3I7.js';import'../chunk-QWCYJC3T.js';import'../chunk-4WDDWMBW.js';import'../chunk-24ZESL25.js';import'../chunk-QH67MZKV.js';import'../chunk-O5CSN63E.js';import'../chunk-I2K2QQOA.js';import'../chunk-ZPKZLDR2.js';import'../chunk-EBXTHJF5.js';import'../chunk-ZXSIHT6V.js';import'../chunk-JSE2CMYN.js';import'../chunk-WSMQZH5E.js';import'../chunk-CEY3P2QK.js';import'../chunk-E6ZLTD7K.js';import'../chunk-YWDIILO5.js';import'../chunk-WVOOXXON.js';import'../chunk-YRO736RI.js';import'../chunk-QBNIE5KZ.js';import'../chunk-UJRREWOA.js';import'../chunk-3KSOBU4X.js';import'../chunk-ZMNFPSA3.js';import'../chunk-6C2TVGCV.js';import'../chunk-ZQWDYX2E.js';import'../chunk-JUM5W2FF.js';import'../chunk-MOH4SNJJ.js';import'../chunk-YFZPYFTS.js';import'../chunk-WYRCNM2M.js';import'../chunk-EYKDAQEG.js';import'../chunk-K3RU27VR.js';import'../chunk-CFKH5BM3.js';import'../chunk-OEEQX3JR.js';import'../chunk-ZT35KBQN.js';import'../chunk-T7HRX3EC.js';import'../chunk-C4ELFIL6.js';import'../chunk-CHPQMJNP.js';import'../chunk-CJSVB5XT.js';import'../chunk-XFY6L3B6.js';import'../chunk-BNOMWF6G.js';import'../chunk-XQ5APSL5.js';import'../chunk-6UJXNDLR.js';import'../chunk-HG6NCRSN.js';import'../chunk-4TNLRALG.js';import'../chunk-BM65PK4H.js';import'../chunk-3Q67KQWC.js';import'../chunk-A4G246BH.js';import'../chunk-WUGIELON.js';import'../chunk-GYYQR6WJ.js';import'../chunk-PEAZKA47.js';import'../chunk-XU65MB53.js';import'../chunk-JUY2JZGK.js';import'../chunk-NTXAFTKR.js';import'../chunk-MFV4KTCM.js';import'../chunk-I56A4HTS.js';import'../chunk-BES6JPWQ.js';import'../chunk-HVR2PWQX.js';import'../chunk-JLZNZFOO.js';import'../chunk-ICOPUH6U.js';import*as g from'react';import {XIcon,SearchIcon}from'lucide-react';import {useControlledState}from'@xploreu/hooks/use-controlled-state';import {cn}from'@xploreu/lib/cn';import {jsx,jsxs}from'react/jsx-runtime';function E({className:r,value:n,defaultValue:a="",onValueChange:i,onChange:b$1,onClear:s,icon:c,disabled:m,...f}){let[o,p]=useControlledState({value:n,defaultValue:a,onChange:i}),x=!!(o&&o.length>0),e=t=>{p(t.target.value),b$1?.(t);},l=t=>{t.preventDefault(),t.stopPropagation(),p(""),s?.();};return jsx(b,{disabled:m,value:o,onChange:e,className:cn("text-body-medium-3 pl-8.5 pr-8.5",r),startContent:c??jsx(SearchIcon,{}),size:"xs",endContent:x&&!m?jsx("button",{type:"button","aria-label":"Clear search",onClick:l,tabIndex:-1,children:jsx(XIcon,{})}):void 0,...f})}function M({options:r,value:n,defaultValue:a$1,onValueChange:i,showLabel:b=true,label:s="Sort by:",className:c,triggerClassName:m,disabled:f}){let o=g.useMemo(()=>r.map(e=>({label:typeof e.content=="string"?e.content:e.label??e.value,value:e.value})),[r]),p=g.useMemo(()=>{let e=n!==void 0?n:a$1;if(e===void 0)return o[0]??null;if(!e)return null;let l=typeof e=="string"?e:e.value;return o.find(t=>t.value===l)??null},[o,n,a$1]),x=e=>{if(!e){i?.(null);return}let l=r.find(t=>t.value===e.value)??{content:e.label,label:e.label,value:e.value};i?.(l);};return jsxs("div",{className:cn("flex items-center gap-xp-md",c),children:[b&&s&&jsx("span",{className:"shrink-0 text-label-medium-3 text-text-secondary",children:s}),jsx(a,{items:o,triggerClassName:cn("w-auto min-w-37 justify-between !border-border-primary !bg-bg-primary !text-text-secondary hover:!bg-bg-primary-hover","[&_svg]:!text-fg-quaternary",m),value:p,onValueChange:x,disabled:f})]})}export{E as FilterSearch,M as FilterSort};//# sourceMappingURL=index.js.map
1
+ export{a as ComboboxSimple}from'../chunk-M63WCJ22.js';import {a}from'../chunk-6QWQDSWL.js';export{a as FilterCombobox}from'../chunk-6QWQDSWL.js';export{a as PhoneInput}from'../chunk-I7XV55MM.js';export{a as ComboboxChipOutside}from'../chunk-C5HZCXIB.js';export{a as ComboboxChip}from'../chunk-Y2HN4RSA.js';import'../chunk-V2PW53KI.js';import'../chunk-IFBRARGK.js';import'../chunk-4IAMLCAM.js';import'../chunk-S4L5WILL.js';import'../chunk-MO7LQLS4.js';import'../chunk-A5644ETE.js';import'../chunk-DL6MI55G.js';import'../chunk-OHLNKXSV.js';import'../chunk-DNAWFZ7O.js';import'../chunk-BRZUHQYB.js';import'../chunk-NKQ3MFRE.js';import'../chunk-B5LYJTBB.js';import'../chunk-NBM4LIT4.js';import'../chunk-YHY3VXCO.js';import'../chunk-QIP6KFG2.js';import'../chunk-FIDOWSDH.js';import'../chunk-RH7BQGTL.js';import'../chunk-G2GFDTP5.js';import'../chunk-OBS7TDVV.js';import'../chunk-WYVGUIHL.js';import'../chunk-66IVKVY6.js';import'../chunk-HRY64DNE.js';import'../chunk-NGSCUYDU.js';import'../chunk-Y6JASO6W.js';import'../chunk-2XAHWERG.js';import'../chunk-JYFVQ5NY.js';import'../chunk-7EXEQDMX.js';import'../chunk-6OC5NZB6.js';import'../chunk-ZVME3JB3.js';import'../chunk-2TUGHMFW.js';import'../chunk-2RHSXF3X.js';import'../chunk-DX767LBV.js';import'../chunk-RN6CYJKG.js';import'../chunk-TES3PKRE.js';import'../chunk-BX7TD4RH.js';import'../chunk-YKX7SKZA.js';import'../chunk-DQGZIFNP.js';import'../chunk-SVNG3RLD.js';import'../chunk-HHG7BSWN.js';import'../chunk-TED2PUK6.js';import {b}from'../chunk-Y6TKCAAJ.js';import'../chunk-7P4PFMCM.js';import'../chunk-W7E2VPJN.js';import'../chunk-2URFXFQC.js';import'../chunk-XG3W7QMP.js';import'../chunk-DCH35MB4.js';import'../chunk-3SORJB7P.js';export{a as ProfileAvatar}from'../chunk-3733D5Y7.js';import'../chunk-EIYPBVAD.js';import'../chunk-OLX4O5PI.js';import'../chunk-322IBGFZ.js';import'../chunk-QDCD6MNO.js';import'../chunk-LFQAJN4H.js';import'../chunk-BEJ2SIQP.js';import'../chunk-4PD3DZE6.js';import'../chunk-3RJED3RZ.js';import'../chunk-FKOYTHRM.js';import'../chunk-GJ5F6YBZ.js';import'../chunk-4D2HXXN3.js';import'../chunk-S7ZMBRYT.js';import'../chunk-TIVYCE4X.js';import'../chunk-RCP2CZRA.js';import'../chunk-AGKZWMW5.js';import'../chunk-YWG6HJAX.js';import'../chunk-NHQA6KSU.js';import'../chunk-DDCGJBN7.js';import'../chunk-SGJYHWYM.js';import'../chunk-QYGN3VYS.js';import'../chunk-ADC7WDF4.js';import'../chunk-ICQEZHVV.js';import'../chunk-PSHB2EQA.js';import'../chunk-JVBWH3DS.js';import'../chunk-EHRGIXKH.js';import'../chunk-CQC2IBSD.js';import'../chunk-CKVTRZ3S.js';import'../chunk-YSG3MHTX.js';import'../chunk-4EYPU56T.js';import'../chunk-2JHFRTOZ.js';import'../chunk-FJTQQ4SC.js';import'../chunk-W2HFGSVH.js';import'../chunk-2GABMQSA.js';import'../chunk-7ECOWHUV.js';import'../chunk-IUPJTP3B.js';import'../chunk-LUQVFKR7.js';import'../chunk-PEHI6LCP.js';import'../chunk-3HUMZKFZ.js';import'../chunk-U5N2WWD3.js';import'../chunk-F2D445K4.js';import'../chunk-NUCPKDK5.js';import'../chunk-2IOTGL4J.js';import'../chunk-NASTZUK6.js';import'../chunk-ZSYQCIYS.js';import'../chunk-4NU44YPN.js';import'../chunk-3SQB2TJB.js';import'../chunk-L5AG5DTS.js';import'../chunk-EAF4H4YJ.js';import'../chunk-5TKGJK3A.js';import'../chunk-XH22TH7N.js';import'../chunk-7LF2CJ3L.js';import'../chunk-KO4EAVJY.js';import'../chunk-U6W5PRLZ.js';import'../chunk-D45GNYVU.js';import'../chunk-JXTOUSXQ.js';import'../chunk-DRYKJQ72.js';import'../chunk-46KQF4UN.js';import'../chunk-556ANF7Z.js';import'../chunk-UKXYDUDY.js';import'../chunk-7YXRTIXL.js';import'../chunk-5KMCPFGM.js';import'../chunk-6I4GG756.js';import'../chunk-4UC2VYI5.js';import'../chunk-UCCQUPMT.js';import'../chunk-TMDCYGCN.js';import'../chunk-5ETIHFSE.js';import'../chunk-XJTOYNCA.js';import'../chunk-BZGVXBP3.js';import'../chunk-LSW5TIYQ.js';import'../chunk-5YFGDOSH.js';import'../chunk-3NFGWKSO.js';import'../chunk-L73GMVVO.js';import'../chunk-OL4WHG4U.js';import'../chunk-V5WX4TSN.js';import'../chunk-Z22ALCLD.js';import'../chunk-IHTB4XCP.js';import'../chunk-ECVIBKDN.js';import'../chunk-MPD36YFP.js';import'../chunk-Z5GMQ477.js';import'../chunk-6FL6AY4D.js';import'../chunk-3376QA4Q.js';import'../chunk-PDZ7VJPX.js';import'../chunk-Y72C3IVO.js';import'../chunk-5OQVCPXP.js';import'../chunk-LN37WPV7.js';import'../chunk-5NAO3POG.js';import'../chunk-JWAU7A2Q.js';import'../chunk-YFCBMUPK.js';import'../chunk-SLLTAQ22.js';import'../chunk-WMUM5NGX.js';import'../chunk-A2U6VIQW.js';import'../chunk-VZMFSH37.js';import'../chunk-NREZRMEX.js';import'../chunk-3SKJUZ5H.js';import'../chunk-EDXV6BE6.js';import'../chunk-HM2QBLIL.js';import'../chunk-6IKHZM3V.js';import'../chunk-ZVCIT3QN.js';import'../chunk-UACQQO3I.js';import'../chunk-IHLMMP5Q.js';import'../chunk-HSTY767P.js';import'../chunk-BKWINCGB.js';import'../chunk-VOTCMLJE.js';import'../chunk-ZKFUHFBC.js';import'../chunk-CEYIRTZQ.js';import'../chunk-TORDOY73.js';import'../chunk-CAK44O3E.js';import'../chunk-MTWFWU3I.js';import'../chunk-GDU3OVET.js';import'../chunk-3EU5QGAN.js';import'../chunk-6EMNBLEM.js';import'../chunk-4CBZOTZR.js';import'../chunk-XY4CWRWG.js';import'../chunk-2FGDZ6WR.js';import'../chunk-KHCZBVOK.js';import'../chunk-2TO4PAQM.js';import'../chunk-6KFTNJLJ.js';import'../chunk-C7GZULSV.js';import'../chunk-GGD2FGWK.js';import'../chunk-AI5FYYCO.js';import'../chunk-UCQKCAYY.js';import'../chunk-HL32HBMO.js';import'../chunk-K7EZKYBC.js';import'../chunk-FIXJ55FT.js';import'../chunk-JCFEHT75.js';import'../chunk-5I545S2U.js';import'../chunk-V6YCCR75.js';import'../chunk-NYSABCPP.js';import'../chunk-M5IVXDZ4.js';import'../chunk-2ZG2WNSI.js';import'../chunk-FBKS63GQ.js';import'../chunk-NUGYUIN6.js';import'../chunk-TTZ2UE5L.js';import'../chunk-JZJHLBOV.js';import'../chunk-L6ZGEGUV.js';import'../chunk-DQSDZXTX.js';import'../chunk-R33XCP5H.js';import'../chunk-SDKXW3R4.js';import'../chunk-EJ5XTT5H.js';import'../chunk-6FEBVO2P.js';import'../chunk-Z7IOYXOK.js';import'../chunk-X2VRJLPR.js';import'../chunk-KPA4J3CC.js';import'../chunk-4JEHGT2R.js';import'../chunk-QNEJRZ4U.js';import'../chunk-SCPA3CM2.js';import'../chunk-2PQUW476.js';import'../chunk-HEKI5WR2.js';import'../chunk-SR76VRAC.js';import'../chunk-4GMRFP6B.js';import'../chunk-F5FFAJ6B.js';import'../chunk-5FALHJEA.js';import'../chunk-ICHHISXQ.js';import'../chunk-EERDL5XC.js';import'../chunk-GE3TPDYX.js';import'../chunk-RMGJAA2L.js';import'../chunk-PCUUUW7T.js';import'../chunk-FELUIC3Z.js';import'../chunk-BKBLZKQ7.js';import'../chunk-3Q72MLBZ.js';import'../chunk-ZWZZVZOP.js';import'../chunk-VLSPFIZU.js';import'../chunk-H56Z2DPY.js';import'../chunk-BGSHHAM2.js';import'../chunk-X2J6MJ6Y.js';import'../chunk-KCSDB6W4.js';import'../chunk-3N22A4KQ.js';import'../chunk-F7KNYOYR.js';import'../chunk-IRRA2OTH.js';import'../chunk-QM2KF35E.js';import'../chunk-WI5V5Z76.js';import'../chunk-OREIXD3L.js';import'../chunk-EYH5SNDK.js';import'../chunk-RUTYHOHT.js';import'../chunk-4FH2LYOC.js';import'../chunk-U27RVBYT.js';import'../chunk-SX54FORI.js';import'../chunk-XOIZGRZ6.js';import'../chunk-EY3W3WZX.js';import'../chunk-75BEGXGF.js';import'../chunk-CP6DGMEP.js';import'../chunk-7TNSQNT7.js';import'../chunk-YTN4DVWB.js';import'../chunk-XNDNAHCC.js';import'../chunk-UESMX3LA.js';import'../chunk-33MUUBSB.js';import'../chunk-VK62KNI7.js';import'../chunk-X5TJ3Z24.js';import'../chunk-J64EBQ23.js';import'../chunk-PFSN7DQX.js';import'../chunk-Y2R7ZZYY.js';import'../chunk-LYV7R7DB.js';import'../chunk-EKS6U6XR.js';import'../chunk-5LAJMBKN.js';import'../chunk-ZEONZS5N.js';import'../chunk-MHRHCLIU.js';import'../chunk-V4VKQ2QF.js';import'../chunk-NVVCGBML.js';import'../chunk-ZTCAXM77.js';import'../chunk-UVYYUEHO.js';import'../chunk-FFYGBVMN.js';import'../chunk-HJJ2VCYO.js';import'../chunk-KZMULPFK.js';import'../chunk-MYGQXM66.js';import'../chunk-ZY5FUK37.js';import'../chunk-DNIYW2WB.js';import'../chunk-DVXIIACM.js';import'../chunk-ZPPUEK2E.js';import'../chunk-GOXCPAUM.js';import'../chunk-6L6HTR6E.js';import'../chunk-4VQUQ3NT.js';import'../chunk-4S6MFDRP.js';import'../chunk-OE7VPOT4.js';import'../chunk-LHVBJHQZ.js';import'../chunk-2V46QEC7.js';import'../chunk-TJNOFRWB.js';import'../chunk-Y2TTBBRP.js';import'../chunk-NYQJHUKD.js';import'../chunk-6NPT5BJ7.js';import'../chunk-TJFA5O6Z.js';import'../chunk-KCCBSGT3.js';import'../chunk-QWFECUYL.js';import'../chunk-IPTGAZ37.js';import'../chunk-DEFVXH3J.js';import'../chunk-Y56EKYRN.js';import'../chunk-IW6VX3I7.js';import'../chunk-QWCYJC3T.js';import'../chunk-4WDDWMBW.js';import'../chunk-24ZESL25.js';import'../chunk-QH67MZKV.js';import'../chunk-O5CSN63E.js';import'../chunk-I2K2QQOA.js';import'../chunk-ZPKZLDR2.js';import'../chunk-EBXTHJF5.js';import'../chunk-ZXSIHT6V.js';import'../chunk-JSE2CMYN.js';import'../chunk-WSMQZH5E.js';import'../chunk-CEY3P2QK.js';import'../chunk-E6ZLTD7K.js';import'../chunk-YWDIILO5.js';import'../chunk-WVOOXXON.js';import'../chunk-YRO736RI.js';import'../chunk-QBNIE5KZ.js';import'../chunk-UJRREWOA.js';import'../chunk-3KSOBU4X.js';import'../chunk-ZMNFPSA3.js';import'../chunk-6C2TVGCV.js';import'../chunk-ZQWDYX2E.js';import'../chunk-JUM5W2FF.js';import'../chunk-MOH4SNJJ.js';import'../chunk-YFZPYFTS.js';import'../chunk-WYRCNM2M.js';import'../chunk-EYKDAQEG.js';import'../chunk-K3RU27VR.js';import'../chunk-CFKH5BM3.js';import'../chunk-OEEQX3JR.js';import'../chunk-ZT35KBQN.js';import'../chunk-T7HRX3EC.js';import'../chunk-C4ELFIL6.js';import'../chunk-CHPQMJNP.js';import'../chunk-CJSVB5XT.js';import'../chunk-XFY6L3B6.js';import'../chunk-BNOMWF6G.js';import'../chunk-XQ5APSL5.js';import'../chunk-6UJXNDLR.js';import'../chunk-HG6NCRSN.js';import'../chunk-4TNLRALG.js';import'../chunk-BM65PK4H.js';import'../chunk-3Q67KQWC.js';import'../chunk-A4G246BH.js';import'../chunk-WUGIELON.js';import'../chunk-GYYQR6WJ.js';import'../chunk-PEAZKA47.js';import'../chunk-XU65MB53.js';import'../chunk-JUY2JZGK.js';import'../chunk-NTXAFTKR.js';import'../chunk-MFV4KTCM.js';import'../chunk-I56A4HTS.js';import'../chunk-BES6JPWQ.js';import'../chunk-HVR2PWQX.js';import'../chunk-JLZNZFOO.js';import'../chunk-ICOPUH6U.js';import*as g from'react';import {XIcon,SearchIcon}from'lucide-react';import {useControlledState}from'@xploreu/hooks/use-controlled-state';import {cn}from'@xploreu/lib/cn';import {jsx,jsxs}from'react/jsx-runtime';function E({className:r,value:n,defaultValue:a="",onValueChange:i,onChange:b$1,onClear:s,icon:c,disabled:m,...f}){let[o,p]=useControlledState({value:n,defaultValue:a,onChange:i}),x=!!(o&&o.length>0),e=t=>{p(t.target.value),b$1?.(t);},l=t=>{t.preventDefault(),t.stopPropagation(),p(""),s?.();};return jsx(b,{disabled:m,value:o,onChange:e,className:cn("text-body-medium-3 pl-8.5 pr-8.5",r),startContent:c??jsx(SearchIcon,{}),size:"xs",endContent:x&&!m?jsx("button",{type:"button","aria-label":"Clear search",onClick:l,tabIndex:-1,children:jsx(XIcon,{})}):void 0,...f})}function M({options:r,value:n,defaultValue:a$1,onValueChange:i,showLabel:b=true,label:s="Sort by:",className:c,triggerClassName:m,disabled:f}){let o=g.useMemo(()=>r.map(e=>({label:typeof e.content=="string"?e.content:e.label??e.value,value:e.value})),[r]),p=g.useMemo(()=>{let e=n!==void 0?n:a$1;if(e===void 0)return o[0]??null;if(!e)return null;let l=typeof e=="string"?e:e.value;return o.find(t=>t.value===l)??null},[o,n,a$1]),x=e=>{if(!e){i?.(null);return}let l=r.find(t=>t.value===e.value)??{content:e.label,label:e.label,value:e.value};i?.(l);};return jsxs("div",{className:cn("flex items-center gap-xp-md",c),children:[b&&s&&jsx("span",{className:"shrink-0 text-label-medium-3 text-text-secondary",children:s}),jsx(a,{items:o,triggerClassName:cn("w-auto min-w-37 justify-between !border-border-primary !bg-bg-primary !text-text-secondary hover:!bg-bg-primary-hover","[&_svg]:!text-fg-quaternary",m),value:p,onValueChange:x,disabled:f})]})}export{E as FilterSearch,M as FilterSort};//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- export{a as PhoneInput}from'../chunk-G4DP36RY.js';import'../chunk-SVNG3RLD.js';import'../chunk-HHG7BSWN.js';import'../chunk-TED2PUK6.js';import'../chunk-Y6TKCAAJ.js';import'../chunk-7P4PFMCM.js';import'../chunk-W7E2VPJN.js';import'../chunk-2URFXFQC.js';import'../chunk-XG3W7QMP.js';import'../chunk-DCH35MB4.js';import'../chunk-OLX4O5PI.js';import'../chunk-322IBGFZ.js';import'../chunk-QDCD6MNO.js';import'../chunk-LFQAJN4H.js';import'../chunk-BEJ2SIQP.js';import'../chunk-4PD3DZE6.js';import'../chunk-3RJED3RZ.js';import'../chunk-FKOYTHRM.js';import'../chunk-GJ5F6YBZ.js';import'../chunk-4D2HXXN3.js';import'../chunk-S7ZMBRYT.js';import'../chunk-TIVYCE4X.js';import'../chunk-RCP2CZRA.js';import'../chunk-AGKZWMW5.js';import'../chunk-YWG6HJAX.js';import'../chunk-NHQA6KSU.js';import'../chunk-DDCGJBN7.js';import'../chunk-SGJYHWYM.js';import'../chunk-QYGN3VYS.js';import'../chunk-ADC7WDF4.js';import'../chunk-ICQEZHVV.js';import'../chunk-PSHB2EQA.js';import'../chunk-JVBWH3DS.js';import'../chunk-EHRGIXKH.js';import'../chunk-CQC2IBSD.js';import'../chunk-CKVTRZ3S.js';import'../chunk-YSG3MHTX.js';import'../chunk-4EYPU56T.js';import'../chunk-2JHFRTOZ.js';import'../chunk-FJTQQ4SC.js';import'../chunk-W2HFGSVH.js';import'../chunk-2GABMQSA.js';import'../chunk-7ECOWHUV.js';import'../chunk-IUPJTP3B.js';import'../chunk-LUQVFKR7.js';import'../chunk-PEHI6LCP.js';import'../chunk-3HUMZKFZ.js';import'../chunk-U5N2WWD3.js';import'../chunk-F2D445K4.js';import'../chunk-NUCPKDK5.js';import'../chunk-2IOTGL4J.js';import'../chunk-NASTZUK6.js';import'../chunk-ZSYQCIYS.js';import'../chunk-4NU44YPN.js';import'../chunk-3SQB2TJB.js';import'../chunk-L5AG5DTS.js';import'../chunk-EAF4H4YJ.js';import'../chunk-5TKGJK3A.js';import'../chunk-XH22TH7N.js';import'../chunk-7LF2CJ3L.js';import'../chunk-KO4EAVJY.js';import'../chunk-U6W5PRLZ.js';import'../chunk-D45GNYVU.js';import'../chunk-JXTOUSXQ.js';import'../chunk-DRYKJQ72.js';import'../chunk-46KQF4UN.js';import'../chunk-556ANF7Z.js';import'../chunk-UKXYDUDY.js';import'../chunk-7YXRTIXL.js';import'../chunk-5KMCPFGM.js';import'../chunk-6I4GG756.js';import'../chunk-4UC2VYI5.js';import'../chunk-UCCQUPMT.js';import'../chunk-TMDCYGCN.js';import'../chunk-5ETIHFSE.js';import'../chunk-XJTOYNCA.js';import'../chunk-BZGVXBP3.js';import'../chunk-LSW5TIYQ.js';import'../chunk-5YFGDOSH.js';import'../chunk-3NFGWKSO.js';import'../chunk-L73GMVVO.js';import'../chunk-OL4WHG4U.js';import'../chunk-V5WX4TSN.js';import'../chunk-Z22ALCLD.js';import'../chunk-IHTB4XCP.js';import'../chunk-ECVIBKDN.js';import'../chunk-MPD36YFP.js';import'../chunk-Z5GMQ477.js';import'../chunk-6FL6AY4D.js';import'../chunk-3376QA4Q.js';import'../chunk-PDZ7VJPX.js';import'../chunk-Y72C3IVO.js';import'../chunk-5OQVCPXP.js';import'../chunk-LN37WPV7.js';import'../chunk-5NAO3POG.js';import'../chunk-JWAU7A2Q.js';import'../chunk-YFCBMUPK.js';import'../chunk-SLLTAQ22.js';import'../chunk-WMUM5NGX.js';import'../chunk-A2U6VIQW.js';import'../chunk-VZMFSH37.js';import'../chunk-NREZRMEX.js';import'../chunk-3SKJUZ5H.js';import'../chunk-EDXV6BE6.js';import'../chunk-HM2QBLIL.js';import'../chunk-6IKHZM3V.js';import'../chunk-ZVCIT3QN.js';import'../chunk-UACQQO3I.js';import'../chunk-IHLMMP5Q.js';import'../chunk-HSTY767P.js';import'../chunk-BKWINCGB.js';import'../chunk-VOTCMLJE.js';import'../chunk-ZKFUHFBC.js';import'../chunk-CEYIRTZQ.js';import'../chunk-TORDOY73.js';import'../chunk-CAK44O3E.js';import'../chunk-MTWFWU3I.js';import'../chunk-GDU3OVET.js';import'../chunk-3EU5QGAN.js';import'../chunk-6EMNBLEM.js';import'../chunk-4CBZOTZR.js';import'../chunk-XY4CWRWG.js';import'../chunk-2FGDZ6WR.js';import'../chunk-KHCZBVOK.js';import'../chunk-2TO4PAQM.js';import'../chunk-6KFTNJLJ.js';import'../chunk-C7GZULSV.js';import'../chunk-GGD2FGWK.js';import'../chunk-AI5FYYCO.js';import'../chunk-UCQKCAYY.js';import'../chunk-HL32HBMO.js';import'../chunk-K7EZKYBC.js';import'../chunk-FIXJ55FT.js';import'../chunk-JCFEHT75.js';import'../chunk-5I545S2U.js';import'../chunk-V6YCCR75.js';import'../chunk-NYSABCPP.js';import'../chunk-M5IVXDZ4.js';import'../chunk-2ZG2WNSI.js';import'../chunk-FBKS63GQ.js';import'../chunk-NUGYUIN6.js';import'../chunk-TTZ2UE5L.js';import'../chunk-JZJHLBOV.js';import'../chunk-L6ZGEGUV.js';import'../chunk-DQSDZXTX.js';import'../chunk-R33XCP5H.js';import'../chunk-SDKXW3R4.js';import'../chunk-EJ5XTT5H.js';import'../chunk-6FEBVO2P.js';import'../chunk-Z7IOYXOK.js';import'../chunk-X2VRJLPR.js';import'../chunk-KPA4J3CC.js';import'../chunk-4JEHGT2R.js';import'../chunk-QNEJRZ4U.js';import'../chunk-SCPA3CM2.js';import'../chunk-2PQUW476.js';import'../chunk-HEKI5WR2.js';import'../chunk-SR76VRAC.js';import'../chunk-4GMRFP6B.js';import'../chunk-F5FFAJ6B.js';import'../chunk-5FALHJEA.js';import'../chunk-ICHHISXQ.js';import'../chunk-EERDL5XC.js';import'../chunk-GE3TPDYX.js';import'../chunk-RMGJAA2L.js';import'../chunk-PCUUUW7T.js';import'../chunk-FELUIC3Z.js';import'../chunk-BKBLZKQ7.js';import'../chunk-3Q72MLBZ.js';import'../chunk-ZWZZVZOP.js';import'../chunk-VLSPFIZU.js';import'../chunk-H56Z2DPY.js';import'../chunk-BGSHHAM2.js';import'../chunk-X2J6MJ6Y.js';import'../chunk-KCSDB6W4.js';import'../chunk-3N22A4KQ.js';import'../chunk-F7KNYOYR.js';import'../chunk-IRRA2OTH.js';import'../chunk-QM2KF35E.js';import'../chunk-WI5V5Z76.js';import'../chunk-OREIXD3L.js';import'../chunk-EYH5SNDK.js';import'../chunk-RUTYHOHT.js';import'../chunk-4FH2LYOC.js';import'../chunk-U27RVBYT.js';import'../chunk-SX54FORI.js';import'../chunk-XOIZGRZ6.js';import'../chunk-EY3W3WZX.js';import'../chunk-75BEGXGF.js';import'../chunk-CP6DGMEP.js';import'../chunk-7TNSQNT7.js';import'../chunk-YTN4DVWB.js';import'../chunk-XNDNAHCC.js';import'../chunk-UESMX3LA.js';import'../chunk-33MUUBSB.js';import'../chunk-VK62KNI7.js';import'../chunk-X5TJ3Z24.js';import'../chunk-J64EBQ23.js';import'../chunk-PFSN7DQX.js';import'../chunk-Y2R7ZZYY.js';import'../chunk-LYV7R7DB.js';import'../chunk-EKS6U6XR.js';import'../chunk-5LAJMBKN.js';import'../chunk-ZEONZS5N.js';import'../chunk-MHRHCLIU.js';import'../chunk-V4VKQ2QF.js';import'../chunk-NVVCGBML.js';import'../chunk-ZTCAXM77.js';import'../chunk-UVYYUEHO.js';import'../chunk-FFYGBVMN.js';import'../chunk-HJJ2VCYO.js';import'../chunk-KZMULPFK.js';import'../chunk-MYGQXM66.js';import'../chunk-ZY5FUK37.js';import'../chunk-DNIYW2WB.js';import'../chunk-DVXIIACM.js';import'../chunk-ZPPUEK2E.js';import'../chunk-GOXCPAUM.js';import'../chunk-6L6HTR6E.js';import'../chunk-4VQUQ3NT.js';import'../chunk-4S6MFDRP.js';import'../chunk-OE7VPOT4.js';import'../chunk-LHVBJHQZ.js';import'../chunk-2V46QEC7.js';import'../chunk-TJNOFRWB.js';import'../chunk-Y2TTBBRP.js';import'../chunk-NYQJHUKD.js';import'../chunk-6NPT5BJ7.js';import'../chunk-TJFA5O6Z.js';import'../chunk-KCCBSGT3.js';import'../chunk-QWFECUYL.js';import'../chunk-IPTGAZ37.js';import'../chunk-DEFVXH3J.js';import'../chunk-Y56EKYRN.js';import'../chunk-IW6VX3I7.js';import'../chunk-QWCYJC3T.js';import'../chunk-4WDDWMBW.js';import'../chunk-24ZESL25.js';import'../chunk-QH67MZKV.js';import'../chunk-O5CSN63E.js';import'../chunk-I2K2QQOA.js';import'../chunk-ZPKZLDR2.js';import'../chunk-EBXTHJF5.js';import'../chunk-ZXSIHT6V.js';import'../chunk-JSE2CMYN.js';import'../chunk-WSMQZH5E.js';import'../chunk-CEY3P2QK.js';import'../chunk-E6ZLTD7K.js';import'../chunk-YWDIILO5.js';import'../chunk-WVOOXXON.js';import'../chunk-YRO736RI.js';import'../chunk-QBNIE5KZ.js';import'../chunk-UJRREWOA.js';import'../chunk-3KSOBU4X.js';import'../chunk-ZMNFPSA3.js';import'../chunk-6C2TVGCV.js';import'../chunk-ZQWDYX2E.js';import'../chunk-JUM5W2FF.js';import'../chunk-MOH4SNJJ.js';import'../chunk-YFZPYFTS.js';import'../chunk-WYRCNM2M.js';import'../chunk-EYKDAQEG.js';import'../chunk-K3RU27VR.js';import'../chunk-CFKH5BM3.js';import'../chunk-OEEQX3JR.js';import'../chunk-ZT35KBQN.js';import'../chunk-T7HRX3EC.js';import'../chunk-C4ELFIL6.js';import'../chunk-CHPQMJNP.js';import'../chunk-CJSVB5XT.js';import'../chunk-XFY6L3B6.js';import'../chunk-BNOMWF6G.js';import'../chunk-XQ5APSL5.js';import'../chunk-6UJXNDLR.js';import'../chunk-HG6NCRSN.js';import'../chunk-4TNLRALG.js';import'../chunk-BM65PK4H.js';import'../chunk-3Q67KQWC.js';import'../chunk-A4G246BH.js';import'../chunk-WUGIELON.js';import'../chunk-GYYQR6WJ.js';import'../chunk-PEAZKA47.js';import'../chunk-XU65MB53.js';import'../chunk-JUY2JZGK.js';import'../chunk-NTXAFTKR.js';import'../chunk-MFV4KTCM.js';import'../chunk-I56A4HTS.js';import'../chunk-BES6JPWQ.js';import'../chunk-HVR2PWQX.js';import'../chunk-JLZNZFOO.js';//# sourceMappingURL=phone-input.js.map
1
+ export{a as PhoneInput}from'../chunk-I7XV55MM.js';import'../chunk-SVNG3RLD.js';import'../chunk-HHG7BSWN.js';import'../chunk-TED2PUK6.js';import'../chunk-Y6TKCAAJ.js';import'../chunk-7P4PFMCM.js';import'../chunk-W7E2VPJN.js';import'../chunk-2URFXFQC.js';import'../chunk-XG3W7QMP.js';import'../chunk-DCH35MB4.js';import'../chunk-OLX4O5PI.js';import'../chunk-322IBGFZ.js';import'../chunk-QDCD6MNO.js';import'../chunk-LFQAJN4H.js';import'../chunk-BEJ2SIQP.js';import'../chunk-4PD3DZE6.js';import'../chunk-3RJED3RZ.js';import'../chunk-FKOYTHRM.js';import'../chunk-GJ5F6YBZ.js';import'../chunk-4D2HXXN3.js';import'../chunk-S7ZMBRYT.js';import'../chunk-TIVYCE4X.js';import'../chunk-RCP2CZRA.js';import'../chunk-AGKZWMW5.js';import'../chunk-YWG6HJAX.js';import'../chunk-NHQA6KSU.js';import'../chunk-DDCGJBN7.js';import'../chunk-SGJYHWYM.js';import'../chunk-QYGN3VYS.js';import'../chunk-ADC7WDF4.js';import'../chunk-ICQEZHVV.js';import'../chunk-PSHB2EQA.js';import'../chunk-JVBWH3DS.js';import'../chunk-EHRGIXKH.js';import'../chunk-CQC2IBSD.js';import'../chunk-CKVTRZ3S.js';import'../chunk-YSG3MHTX.js';import'../chunk-4EYPU56T.js';import'../chunk-2JHFRTOZ.js';import'../chunk-FJTQQ4SC.js';import'../chunk-W2HFGSVH.js';import'../chunk-2GABMQSA.js';import'../chunk-7ECOWHUV.js';import'../chunk-IUPJTP3B.js';import'../chunk-LUQVFKR7.js';import'../chunk-PEHI6LCP.js';import'../chunk-3HUMZKFZ.js';import'../chunk-U5N2WWD3.js';import'../chunk-F2D445K4.js';import'../chunk-NUCPKDK5.js';import'../chunk-2IOTGL4J.js';import'../chunk-NASTZUK6.js';import'../chunk-ZSYQCIYS.js';import'../chunk-4NU44YPN.js';import'../chunk-3SQB2TJB.js';import'../chunk-L5AG5DTS.js';import'../chunk-EAF4H4YJ.js';import'../chunk-5TKGJK3A.js';import'../chunk-XH22TH7N.js';import'../chunk-7LF2CJ3L.js';import'../chunk-KO4EAVJY.js';import'../chunk-U6W5PRLZ.js';import'../chunk-D45GNYVU.js';import'../chunk-JXTOUSXQ.js';import'../chunk-DRYKJQ72.js';import'../chunk-46KQF4UN.js';import'../chunk-556ANF7Z.js';import'../chunk-UKXYDUDY.js';import'../chunk-7YXRTIXL.js';import'../chunk-5KMCPFGM.js';import'../chunk-6I4GG756.js';import'../chunk-4UC2VYI5.js';import'../chunk-UCCQUPMT.js';import'../chunk-TMDCYGCN.js';import'../chunk-5ETIHFSE.js';import'../chunk-XJTOYNCA.js';import'../chunk-BZGVXBP3.js';import'../chunk-LSW5TIYQ.js';import'../chunk-5YFGDOSH.js';import'../chunk-3NFGWKSO.js';import'../chunk-L73GMVVO.js';import'../chunk-OL4WHG4U.js';import'../chunk-V5WX4TSN.js';import'../chunk-Z22ALCLD.js';import'../chunk-IHTB4XCP.js';import'../chunk-ECVIBKDN.js';import'../chunk-MPD36YFP.js';import'../chunk-Z5GMQ477.js';import'../chunk-6FL6AY4D.js';import'../chunk-3376QA4Q.js';import'../chunk-PDZ7VJPX.js';import'../chunk-Y72C3IVO.js';import'../chunk-5OQVCPXP.js';import'../chunk-LN37WPV7.js';import'../chunk-5NAO3POG.js';import'../chunk-JWAU7A2Q.js';import'../chunk-YFCBMUPK.js';import'../chunk-SLLTAQ22.js';import'../chunk-WMUM5NGX.js';import'../chunk-A2U6VIQW.js';import'../chunk-VZMFSH37.js';import'../chunk-NREZRMEX.js';import'../chunk-3SKJUZ5H.js';import'../chunk-EDXV6BE6.js';import'../chunk-HM2QBLIL.js';import'../chunk-6IKHZM3V.js';import'../chunk-ZVCIT3QN.js';import'../chunk-UACQQO3I.js';import'../chunk-IHLMMP5Q.js';import'../chunk-HSTY767P.js';import'../chunk-BKWINCGB.js';import'../chunk-VOTCMLJE.js';import'../chunk-ZKFUHFBC.js';import'../chunk-CEYIRTZQ.js';import'../chunk-TORDOY73.js';import'../chunk-CAK44O3E.js';import'../chunk-MTWFWU3I.js';import'../chunk-GDU3OVET.js';import'../chunk-3EU5QGAN.js';import'../chunk-6EMNBLEM.js';import'../chunk-4CBZOTZR.js';import'../chunk-XY4CWRWG.js';import'../chunk-2FGDZ6WR.js';import'../chunk-KHCZBVOK.js';import'../chunk-2TO4PAQM.js';import'../chunk-6KFTNJLJ.js';import'../chunk-C7GZULSV.js';import'../chunk-GGD2FGWK.js';import'../chunk-AI5FYYCO.js';import'../chunk-UCQKCAYY.js';import'../chunk-HL32HBMO.js';import'../chunk-K7EZKYBC.js';import'../chunk-FIXJ55FT.js';import'../chunk-JCFEHT75.js';import'../chunk-5I545S2U.js';import'../chunk-V6YCCR75.js';import'../chunk-NYSABCPP.js';import'../chunk-M5IVXDZ4.js';import'../chunk-2ZG2WNSI.js';import'../chunk-FBKS63GQ.js';import'../chunk-NUGYUIN6.js';import'../chunk-TTZ2UE5L.js';import'../chunk-JZJHLBOV.js';import'../chunk-L6ZGEGUV.js';import'../chunk-DQSDZXTX.js';import'../chunk-R33XCP5H.js';import'../chunk-SDKXW3R4.js';import'../chunk-EJ5XTT5H.js';import'../chunk-6FEBVO2P.js';import'../chunk-Z7IOYXOK.js';import'../chunk-X2VRJLPR.js';import'../chunk-KPA4J3CC.js';import'../chunk-4JEHGT2R.js';import'../chunk-QNEJRZ4U.js';import'../chunk-SCPA3CM2.js';import'../chunk-2PQUW476.js';import'../chunk-HEKI5WR2.js';import'../chunk-SR76VRAC.js';import'../chunk-4GMRFP6B.js';import'../chunk-F5FFAJ6B.js';import'../chunk-5FALHJEA.js';import'../chunk-ICHHISXQ.js';import'../chunk-EERDL5XC.js';import'../chunk-GE3TPDYX.js';import'../chunk-RMGJAA2L.js';import'../chunk-PCUUUW7T.js';import'../chunk-FELUIC3Z.js';import'../chunk-BKBLZKQ7.js';import'../chunk-3Q72MLBZ.js';import'../chunk-ZWZZVZOP.js';import'../chunk-VLSPFIZU.js';import'../chunk-H56Z2DPY.js';import'../chunk-BGSHHAM2.js';import'../chunk-X2J6MJ6Y.js';import'../chunk-KCSDB6W4.js';import'../chunk-3N22A4KQ.js';import'../chunk-F7KNYOYR.js';import'../chunk-IRRA2OTH.js';import'../chunk-QM2KF35E.js';import'../chunk-WI5V5Z76.js';import'../chunk-OREIXD3L.js';import'../chunk-EYH5SNDK.js';import'../chunk-RUTYHOHT.js';import'../chunk-4FH2LYOC.js';import'../chunk-U27RVBYT.js';import'../chunk-SX54FORI.js';import'../chunk-XOIZGRZ6.js';import'../chunk-EY3W3WZX.js';import'../chunk-75BEGXGF.js';import'../chunk-CP6DGMEP.js';import'../chunk-7TNSQNT7.js';import'../chunk-YTN4DVWB.js';import'../chunk-XNDNAHCC.js';import'../chunk-UESMX3LA.js';import'../chunk-33MUUBSB.js';import'../chunk-VK62KNI7.js';import'../chunk-X5TJ3Z24.js';import'../chunk-J64EBQ23.js';import'../chunk-PFSN7DQX.js';import'../chunk-Y2R7ZZYY.js';import'../chunk-LYV7R7DB.js';import'../chunk-EKS6U6XR.js';import'../chunk-5LAJMBKN.js';import'../chunk-ZEONZS5N.js';import'../chunk-MHRHCLIU.js';import'../chunk-V4VKQ2QF.js';import'../chunk-NVVCGBML.js';import'../chunk-ZTCAXM77.js';import'../chunk-UVYYUEHO.js';import'../chunk-FFYGBVMN.js';import'../chunk-HJJ2VCYO.js';import'../chunk-KZMULPFK.js';import'../chunk-MYGQXM66.js';import'../chunk-ZY5FUK37.js';import'../chunk-DNIYW2WB.js';import'../chunk-DVXIIACM.js';import'../chunk-ZPPUEK2E.js';import'../chunk-GOXCPAUM.js';import'../chunk-6L6HTR6E.js';import'../chunk-4VQUQ3NT.js';import'../chunk-4S6MFDRP.js';import'../chunk-OE7VPOT4.js';import'../chunk-LHVBJHQZ.js';import'../chunk-2V46QEC7.js';import'../chunk-TJNOFRWB.js';import'../chunk-Y2TTBBRP.js';import'../chunk-NYQJHUKD.js';import'../chunk-6NPT5BJ7.js';import'../chunk-TJFA5O6Z.js';import'../chunk-KCCBSGT3.js';import'../chunk-QWFECUYL.js';import'../chunk-IPTGAZ37.js';import'../chunk-DEFVXH3J.js';import'../chunk-Y56EKYRN.js';import'../chunk-IW6VX3I7.js';import'../chunk-QWCYJC3T.js';import'../chunk-4WDDWMBW.js';import'../chunk-24ZESL25.js';import'../chunk-QH67MZKV.js';import'../chunk-O5CSN63E.js';import'../chunk-I2K2QQOA.js';import'../chunk-ZPKZLDR2.js';import'../chunk-EBXTHJF5.js';import'../chunk-ZXSIHT6V.js';import'../chunk-JSE2CMYN.js';import'../chunk-WSMQZH5E.js';import'../chunk-CEY3P2QK.js';import'../chunk-E6ZLTD7K.js';import'../chunk-YWDIILO5.js';import'../chunk-WVOOXXON.js';import'../chunk-YRO736RI.js';import'../chunk-QBNIE5KZ.js';import'../chunk-UJRREWOA.js';import'../chunk-3KSOBU4X.js';import'../chunk-ZMNFPSA3.js';import'../chunk-6C2TVGCV.js';import'../chunk-ZQWDYX2E.js';import'../chunk-JUM5W2FF.js';import'../chunk-MOH4SNJJ.js';import'../chunk-YFZPYFTS.js';import'../chunk-WYRCNM2M.js';import'../chunk-EYKDAQEG.js';import'../chunk-K3RU27VR.js';import'../chunk-CFKH5BM3.js';import'../chunk-OEEQX3JR.js';import'../chunk-ZT35KBQN.js';import'../chunk-T7HRX3EC.js';import'../chunk-C4ELFIL6.js';import'../chunk-CHPQMJNP.js';import'../chunk-CJSVB5XT.js';import'../chunk-XFY6L3B6.js';import'../chunk-BNOMWF6G.js';import'../chunk-XQ5APSL5.js';import'../chunk-6UJXNDLR.js';import'../chunk-HG6NCRSN.js';import'../chunk-4TNLRALG.js';import'../chunk-BM65PK4H.js';import'../chunk-3Q67KQWC.js';import'../chunk-A4G246BH.js';import'../chunk-WUGIELON.js';import'../chunk-GYYQR6WJ.js';import'../chunk-PEAZKA47.js';import'../chunk-XU65MB53.js';import'../chunk-JUY2JZGK.js';import'../chunk-NTXAFTKR.js';import'../chunk-MFV4KTCM.js';import'../chunk-I56A4HTS.js';import'../chunk-BES6JPWQ.js';import'../chunk-HVR2PWQX.js';import'../chunk-JLZNZFOO.js';//# sourceMappingURL=phone-input.js.map
2
2
  //# sourceMappingURL=phone-input.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xploreu/components",
3
- "version": "0.4.46",
3
+ "version": "0.4.47",
4
4
  "description": "Shared UI components for XploreU apps",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -1,2 +0,0 @@
1
- import {a as a$1,b,m,e,q,s,w}from'./chunk-SVNG3RLD.js';import {a}from'./chunk-Y6TKCAAJ.js';import*as t from'react';import*as C from'react-phone-number-input';import Y from'react-phone-number-input/flags';import {cn}from'@xploreu/lib/cn';import'@base-ui/react/combobox';import {ChevronsUpDownIcon}from'lucide-react';import {jsx,jsxs}from'react/jsx-runtime';var R=({country:l,countryName:o})=>{let s=l?Y[l]:void 0;return jsx("span",{className:"flex h-4 w-6 shrink-0 overflow-hidden rounded-sm bg-fg-quaternary/20 [&_svg:not([class*='size-'])]:size-full",children:s&&jsx(s,{title:o})})},d=44,k=288,H=6;function D({disabled:l,value:o,options:s$1,onChange:i}){let[c,r]=t.useState(false),[b$1,g]=t.useState(""),[y,N]=t.useState(0),v=t.useRef(null),m$1=t.useMemo(()=>s$1.filter(e=>!!e.value),[s$1]),u=t.useMemo(()=>{let e=b$1.trim().toLowerCase();return e?m$1.filter(a=>{let f=C.getCountryCallingCode(a.value);return a.label.toLowerCase().includes(e)||a.value.toLowerCase().includes(e)||f.includes(e.replace(/^\+/,""))}):m$1},[b$1,m$1]),_=t.useMemo(()=>m$1.find(e=>e.value===o)??null,[m$1,o]);t.useEffect(()=>{N(0),v.current&&(v.current.scrollTop=0);},[b$1]);let z=Math.min(u.length*d,k),h=t.useMemo(()=>{let e=Math.floor(y/d),a=Math.max(0,e-H),f=Math.ceil(k/d),P=Math.min(u.length,e+f+H);return {startIndex:a,endIndex:P,items:u.slice(a,P)}},[u,y]),F=h.startIndex*d,U=Math.max(0,(u.length-h.endIndex)*d),q$1=t.useCallback(e=>{e?.value&&(i(e.value),g(""),r(false));},[i]);return jsxs(a$1,{behavior:"default",disabled:l,inputValue:b$1,items:u,open:c,value:_,virtualized:true,filter:null,isItemEqualToValue:(e,a)=>e.value===a.value,openOnInputClick:false,onValueChange:q$1,onInputValueChange:g,onOpenChange:e=>{r(e),e||g("");},children:[jsx(b,{render:jsxs("button",{type:"button",className:cn(a(),"h-11 w-18 shrink-0 justify-between gap-1 rounded-r-none border-r-0 px-3","hover:bg-bg-primary-hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-brand","disabled:pointer-events-none disabled:opacity-50"),disabled:l,children:[jsxs("span",{className:"flex items-center gap-1.5 overflow-hidden",children:[jsx(R,{country:o,countryName:o}),o&&jsx("span",{className:"text-body-medium-3 text-text-primary",children:o})]}),jsx(ChevronsUpDownIcon,{className:"size-3.5 shrink-0 text-fg-quaternary"})]})}),jsxs(m,{className:"w-72",children:[jsx(e,{placeholder:"Search country...","aria-label":"Search country"}),jsx(q,{status:u.length===0?"empty":null}),jsx(s,{ref:v,className:"relative gap-0",style:{height:z},onScroll:e=>N(e.currentTarget.scrollTop),children:jsx("div",{className:"flex w-full shrink-0 flex-col",style:{paddingTop:F,paddingBottom:U},children:h.items.map((e,a)=>{let f=h.startIndex+a;return jsx(w,{index:f,value:e,children:jsxs("div",{className:"flex items-center gap-2 w-full min-w-0",children:[jsx(R,{country:e.value,countryName:e.label}),jsx("span",{className:"flex-1 text-sm truncate",children:e.label}),jsxs("span",{className:"text-sm text-text-tertiary shrink-0",children:["+",C.getCountryCallingCode(e.value)]})]})},e.value)})})})]})]})}var L=t.forwardRef(({className:l,onChange:o,...s},i)=>{let c=t.useCallback(r=>{r.currentTarget.value==="+"&&(r.currentTarget.value=""),o?.(r);},[o]);return jsx("input",{className:cn(a(),"h-11 flex-1 rounded-l-none text-body-regular-2",l),ref:i,type:"tel",onChange:c,...s})});L.displayName="InputComponent";var G=t.forwardRef(({className:l,onChange:o,value:s,...i},c)=>jsx(C.default,{ref:c,className:cn("flex w-full min-w-0 items-center",l),flagComponent:R,countrySelectComponent:D,inputComponent:L,smartCaret:false,value:s||void 0,onChange:r=>o?.(r||""),...i}));G.displayName="PhoneInput";export{G as a};//# sourceMappingURL=chunk-G4DP36RY.js.map
2
- //# sourceMappingURL=chunk-G4DP36RY.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/composites/phone-input.tsx"],"names":["FlagComponent","country","countryName","Flag","flags","jsx","COUNTRY_ROW_HEIGHT","COUNTRY_LIST_HEIGHT","COUNTRY_OVERSCAN","CountrySelect","disabled","selectedCountry","countryList","onChange","open","setOpen","inputValue","setInputValue","scrollTop","setScrollTop","listRef","items","item","filteredItems","search","callingCode","value","listHeight","virtualRange","visibleStartIndex","startIndex","visibleCount","endIndex","paddingTop","paddingBottom","handleValueChange","jsxs","Combobox","a","b","ComboboxTrigger","cn","inputVariants","ChevronsUpDownIcon","ComboboxPopup","ComboboxInput","ComboboxStatus","ComboboxList","event","virtualIndex","index","ComboboxItem","InputComponent","className","props","ref","handleChange","PhoneInput"],"mappings":"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","file":"chunk-G4DP36RY.js","sourcesContent":["\"use client\"\r\n\r\nimport * as React from \"react\"\r\nimport * as RPNInput from \"react-phone-number-input\"\r\nimport flags from \"react-phone-number-input/flags\"\r\n\r\nimport { cn } from \"@xploreu/lib/cn\"\r\nimport { Combobox as ComboboxPrimitive } from \"@base-ui/react/combobox\"\r\nimport {\r\n Combobox,\r\n ComboboxInput,\r\n ComboboxItem,\r\n ComboboxList,\r\n ComboboxPopup,\r\n ComboboxStatus,\r\n ComboboxTrigger,\r\n} from \"../ui/combobox\"\r\nimport { inputVariants } from \"../ui/input\"\r\nimport { ChevronsUpDownIcon } from \"lucide-react\"\r\n\r\n// ---------------------------------------------------------------------------\r\n// Types\r\n// ---------------------------------------------------------------------------\r\n\r\ntype PhoneInputProps = Omit<\r\n React.ComponentProps<\"input\">,\r\n \"onChange\" | \"value\" | \"ref\"\r\n> &\r\n Omit<RPNInput.Props<typeof RPNInput.default>, \"onChange\"> & {\r\n onChange?: (value: RPNInput.Value) => void\r\n }\r\n\r\n// ---------------------------------------------------------------------------\r\n// Flag\r\n// ---------------------------------------------------------------------------\r\n\r\nconst FlagComponent = ({ country, countryName }: RPNInput.FlagProps) => {\r\n const Flag = country ? flags[country] : undefined\r\n\r\n return (\r\n <span className=\"flex h-4 w-6 shrink-0 overflow-hidden rounded-sm bg-fg-quaternary/20 [&_svg:not([class*='size-'])]:size-full\">\r\n {Flag && <Flag title={countryName} />}\r\n </span>\r\n )\r\n}\r\n\r\n// ---------------------------------------------------------------------------\r\n// Country Select — uses base-ui Combobox\r\n// ---------------------------------------------------------------------------\r\n\r\ntype CountryEntry = { label: string; value: RPNInput.Country | undefined }\r\ntype CountryItem = { label: string; value: RPNInput.Country }\r\n\r\nconst COUNTRY_ROW_HEIGHT = 44\r\nconst COUNTRY_LIST_HEIGHT = 288\r\nconst COUNTRY_OVERSCAN = 6\r\n\r\ntype CountrySelectProps = {\r\n disabled?: boolean\r\n value: RPNInput.Country\r\n options: CountryEntry[]\r\n onChange: (country: RPNInput.Country) => void\r\n}\r\n\r\nfunction CountrySelect({\r\n disabled,\r\n value: selectedCountry,\r\n options: countryList,\r\n onChange,\r\n}: CountrySelectProps) {\r\n const [open, setOpen] = React.useState(false)\r\n const [inputValue, setInputValue] = React.useState(\"\")\r\n const [scrollTop, setScrollTop] = React.useState(0)\r\n const listRef = React.useRef<HTMLDivElement>(null)\r\n\r\n const items = React.useMemo(\r\n () => countryList.filter((item): item is CountryItem => Boolean(item.value)),\r\n [countryList]\r\n )\r\n\r\n const filteredItems = React.useMemo(() => {\r\n const search = inputValue.trim().toLowerCase()\r\n\r\n if (!search) return items\r\n\r\n return items.filter((item) => {\r\n const callingCode = RPNInput.getCountryCallingCode(item.value)\r\n\r\n return item.label.toLowerCase().includes(search)\r\n || item.value.toLowerCase().includes(search)\r\n || callingCode.includes(search.replace(/^\\+/, \"\"))\r\n })\r\n }, [inputValue, items])\r\n\r\n const value = React.useMemo(\r\n () => items.find((item) => item.value === selectedCountry) ?? null,\r\n [items, selectedCountry]\r\n )\r\n\r\n React.useEffect(() => {\r\n setScrollTop(0)\r\n if (listRef.current) listRef.current.scrollTop = 0\r\n }, [inputValue])\r\n\r\n const listHeight = Math.min(\r\n filteredItems.length * COUNTRY_ROW_HEIGHT,\r\n COUNTRY_LIST_HEIGHT\r\n )\r\n\r\n const virtualRange = React.useMemo(() => {\r\n const visibleStartIndex = Math.floor(scrollTop / COUNTRY_ROW_HEIGHT)\r\n const startIndex = Math.max(\r\n 0,\r\n visibleStartIndex - COUNTRY_OVERSCAN\r\n )\r\n const visibleCount = Math.ceil(COUNTRY_LIST_HEIGHT / COUNTRY_ROW_HEIGHT)\r\n const endIndex = Math.min(\r\n filteredItems.length,\r\n visibleStartIndex + visibleCount + COUNTRY_OVERSCAN\r\n )\r\n\r\n return {\r\n startIndex,\r\n endIndex,\r\n items: filteredItems.slice(startIndex, endIndex),\r\n }\r\n }, [filteredItems, scrollTop])\r\n\r\n const paddingTop = virtualRange.startIndex * COUNTRY_ROW_HEIGHT\r\n const paddingBottom = Math.max(\r\n 0,\r\n (filteredItems.length - virtualRange.endIndex) * COUNTRY_ROW_HEIGHT\r\n )\r\n\r\n const handleValueChange = React.useCallback(\r\n (item: CountryItem | null) => {\r\n if (!item?.value) return\r\n\r\n onChange(item.value)\r\n setInputValue(\"\")\r\n setOpen(false)\r\n },\r\n [onChange]\r\n )\r\n\r\n return (\r\n <Combobox\r\n behavior=\"default\"\r\n disabled={disabled}\r\n inputValue={inputValue}\r\n items={filteredItems}\r\n open={open}\r\n value={value}\r\n virtualized\r\n filter={null}\r\n isItemEqualToValue={(a, b) => a.value === b.value}\r\n openOnInputClick={false}\r\n onValueChange={handleValueChange}\r\n onInputValueChange={setInputValue}\r\n onOpenChange={(open) => {\r\n setOpen(open)\r\n if (!open) setInputValue(\"\")\r\n }}\r\n >\r\n {/* Visible trigger button styled as part of the input */}\r\n <ComboboxTrigger\r\n render={\r\n <button\r\n type=\"button\"\r\n className={cn(\r\n inputVariants(),\r\n \"h-11 w-18 shrink-0 justify-between gap-1 rounded-r-none border-r-0 px-3\",\r\n \"hover:bg-bg-primary-hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-brand\",\r\n \"disabled:pointer-events-none disabled:opacity-50\"\r\n )}\r\n disabled={disabled}\r\n >\r\n <span className=\"flex items-center gap-1.5 overflow-hidden\">\r\n <FlagComponent\r\n country={selectedCountry}\r\n countryName={selectedCountry}\r\n />\r\n {selectedCountry && (\r\n <span className=\"text-body-medium-3 text-text-primary\">\r\n {selectedCountry}\r\n </span>\r\n )}\r\n </span>\r\n <ChevronsUpDownIcon className=\"size-3.5 shrink-0 text-fg-quaternary\" />\r\n </button>\r\n }\r\n />\r\n\r\n {/* Dropdown content */}\r\n <ComboboxPopup className=\"w-72\">\r\n <ComboboxInput\r\n placeholder=\"Search country...\"\r\n aria-label=\"Search country\"\r\n />\r\n <ComboboxStatus status={filteredItems.length === 0 ? \"empty\" : null} />\r\n <ComboboxList\r\n ref={listRef}\r\n className=\"relative gap-0\"\r\n style={{ height: listHeight }}\r\n onScroll={(event) => setScrollTop(event.currentTarget.scrollTop)}\r\n >\r\n <div\r\n className=\"flex w-full shrink-0 flex-col\"\r\n style={{ paddingTop, paddingBottom }}\r\n >\r\n {virtualRange.items.map((item, virtualIndex) => {\r\n const index = virtualRange.startIndex + virtualIndex\r\n\r\n return (\r\n <ComboboxItem\r\n key={item.value}\r\n index={index}\r\n value={item}\r\n >\r\n <div className=\"flex items-center gap-2 w-full min-w-0\">\r\n <FlagComponent country={item.value} countryName={item.label} />\r\n <span className=\"flex-1 text-sm truncate\">{item.label}</span>\r\n <span className=\"text-sm text-text-tertiary shrink-0\">\r\n +{RPNInput.getCountryCallingCode(item.value)}\r\n </span>\r\n </div>\r\n </ComboboxItem>\r\n )\r\n })}\r\n </div>\r\n </ComboboxList>\r\n </ComboboxPopup>\r\n </Combobox >\r\n )\r\n}\r\n\r\n// ---------------------------------------------------------------------------\r\n// Input Component\r\n// ---------------------------------------------------------------------------\r\n\r\nconst InputComponent = React.forwardRef<\r\n HTMLInputElement,\r\n React.ComponentProps<\"input\">\r\n>(({ className, onChange, ...props }, ref) => {\r\n const handleChange = React.useCallback(\r\n (event: React.ChangeEvent<HTMLInputElement>) => {\r\n if (event.currentTarget.value === \"+\") {\r\n event.currentTarget.value = \"\"\r\n }\r\n\r\n onChange?.(event)\r\n },\r\n [onChange]\r\n )\r\n\r\n return (\r\n <input\r\n className={cn(\r\n inputVariants(),\r\n \"h-11 flex-1 rounded-l-none text-body-regular-2\",\r\n className\r\n )}\r\n ref={ref}\r\n type=\"tel\"\r\n onChange={handleChange}\r\n {...props}\r\n />\r\n )\r\n})\r\nInputComponent.displayName = \"InputComponent\"\r\n\r\n// ---------------------------------------------------------------------------\r\n// Phone Input\r\n// ---------------------------------------------------------------------------\r\n\r\nconst PhoneInput: React.ForwardRefExoticComponent<PhoneInputProps> =\r\n React.forwardRef<\r\n React.ElementRef<typeof RPNInput.default>,\r\n PhoneInputProps\r\n >(({\r\n className,\r\n onChange,\r\n value,\r\n ...props\r\n }, ref) => {\r\n return (\r\n <RPNInput.default\r\n ref={ref}\r\n className={cn(\r\n \"flex w-full min-w-0 items-center\",\r\n className\r\n )}\r\n flagComponent={FlagComponent}\r\n countrySelectComponent={CountrySelect}\r\n inputComponent={InputComponent}\r\n smartCaret={false}\r\n value={value || undefined}\r\n onChange={(value) => onChange?.(value || (\"\" as RPNInput.Value))}\r\n {...props}\r\n />\r\n )\r\n })\r\nPhoneInput.displayName = \"PhoneInput\"\r\n\r\nexport { PhoneInput, type PhoneInputProps }\r\n"]}
@@ -1,44 +0,0 @@
1
- import * as React from 'react';
2
- import { ComboboxProps, ComboboxPortal, ComboboxInfiniteScroll } from '../ui/combobox.js';
3
- import '../primitives/combobox.js';
4
- import '@base-ui/react/combobox';
5
- import 'motion/react';
6
- import '../effects/highlight.js';
7
- import '../ui/infinite-scroll.js';
8
- import '../ui/input.js';
9
- import 'class-variance-authority/types';
10
- import 'class-variance-authority';
11
- import '../ui/avatar.js';
12
- import '../primitives/avatar.js';
13
- import '@base-ui/react/avatar';
14
-
15
- type ComboboxChipOutsideProps<Value> = Omit<ComboboxProps<Value, true>, "multiple"> & {
16
- multiple?: boolean;
17
- inputPlaceholder?: string;
18
- container?: React.ComponentProps<typeof ComboboxPortal>["container"];
19
- items: ({
20
- label: string;
21
- value: string;
22
- }[]) | undefined;
23
- infiniteScroll?: React.ComponentProps<typeof ComboboxInfiniteScroll>;
24
- isPending?: boolean;
25
- /**
26
- * When true, enables creatable / taggable mode.
27
- * If the typed value has no exact match in the current item list,
28
- * a "Create \"…\"" option is shown at the top of the dropdown.
29
- * Created items are appended to the value with `{ label, value, tag: true }`.
30
- */
31
- taggable?: boolean;
32
- /**
33
- * Maximum number of chips to show before collapsing the rest into a "+N" chip.
34
- * When undefined, all chips are shown.
35
- */
36
- maxVisible?: number;
37
- };
38
- declare function ComboboxChipOutside<Value extends {
39
- label: string;
40
- value: string;
41
- tag?: true;
42
- }>({ multiple, inputPlaceholder, container, items, infiniteScroll, isPending, taggable, maxVisible, ...props }: ComboboxChipOutsideProps<Value>): React.JSX.Element;
43
-
44
- export { ComboboxChipOutside };
@@ -1,47 +0,0 @@
1
- import * as React from 'react';
2
- import { ComboboxProps, ComboboxPortal, ComboboxInfiniteScroll } from '../ui/combobox.js';
3
- import '../primitives/combobox.js';
4
- import '@base-ui/react/combobox';
5
- import 'motion/react';
6
- import '../effects/highlight.js';
7
- import '../ui/infinite-scroll.js';
8
- import '../ui/input.js';
9
- import 'class-variance-authority/types';
10
- import 'class-variance-authority';
11
- import '../ui/avatar.js';
12
- import '../primitives/avatar.js';
13
- import '@base-ui/react/avatar';
14
-
15
- type ComboboxChipProps<Value extends {
16
- label: string;
17
- value: string;
18
- image?: string;
19
- tag?: true;
20
- }> = Omit<ComboboxProps<Value, true>, "multiple" | "items"> & {
21
- multiple?: boolean;
22
- inputPlaceholder?: string;
23
- container?: React.ComponentProps<typeof ComboboxPortal>["container"];
24
- items?: Value[] | undefined;
25
- infiniteScroll?: React.ComponentProps<typeof ComboboxInfiniteScroll>;
26
- isPending?: boolean;
27
- /**
28
- * When true, enables creatable / taggable mode.
29
- * If the typed value has no exact match in the current item list,
30
- * a "Create \"…\"" option is shown at the top of the dropdown.
31
- * Created items are appended to the value with `{ label, value, tag: true }`.
32
- */
33
- taggable?: boolean;
34
- /**
35
- * Maximum number of chips to show before collapsing the rest into a "+N" chip.
36
- * When undefined, all chips are shown.
37
- */
38
- maxVisible?: number;
39
- };
40
- declare function ComboboxChip<Value extends {
41
- label: string;
42
- value: string;
43
- image?: string;
44
- tag?: true;
45
- }>({ multiple, inputPlaceholder, container, items, infiniteScroll, isPending, taggable, maxVisible, ...props }: ComboboxChipProps<Value>): React.JSX.Element;
46
-
47
- export { ComboboxChip, type ComboboxChipProps };
@@ -1,37 +0,0 @@
1
- import * as React from 'react';
2
- import { VariantProps } from 'class-variance-authority';
3
- import { inputVariants } from '../ui/input.js';
4
- import { ComboboxProps, ComboboxPortal, ComboboxInfiniteScroll } from '../ui/combobox.js';
5
- import 'class-variance-authority/types';
6
- import '../primitives/combobox.js';
7
- import '@base-ui/react/combobox';
8
- import 'motion/react';
9
- import '../effects/highlight.js';
10
- import '../ui/infinite-scroll.js';
11
- import '../ui/avatar.js';
12
- import '../primitives/avatar.js';
13
- import '@base-ui/react/avatar';
14
-
15
- type ComboboxSimpleItem = {
16
- label: string;
17
- value: string;
18
- };
19
- type BaseProps = {
20
- items: ComboboxSimpleItem[] | undefined;
21
- placeholder?: string;
22
- searchPlaceholder?: string;
23
- icon?: React.ReactNode;
24
- container?: React.ComponentProps<typeof ComboboxPortal>["container"];
25
- isPending?: boolean;
26
- className?: string;
27
- triggerClassName?: string;
28
- contentClassName?: string;
29
- disabled?: boolean;
30
- size?: VariantProps<typeof inputVariants>["size"];
31
- infiniteScroll?: React.ComponentProps<typeof ComboboxInfiniteScroll>;
32
- showSearch?: boolean;
33
- };
34
- type ComboboxSimpleProps = Omit<ComboboxProps<ComboboxSimpleItem, false>, "multiple" | "items"> & BaseProps;
35
- declare function ComboboxSimple({ items, value, defaultValue, onValueChange, placeholder, searchPlaceholder, icon, container, isPending, className, triggerClassName, contentClassName, disabled, size, infiniteScroll, showSearch, filter, ...props }: ComboboxSimpleProps): React.JSX.Element;
36
-
37
- export { ComboboxSimple, type ComboboxSimpleItem, type ComboboxSimpleProps };
@@ -1,36 +0,0 @@
1
- import * as React from 'react';
2
- import { ComboboxProps, ComboboxPortal, ComboboxInfiniteScroll } from '../ui/combobox.js';
3
- import '../primitives/combobox.js';
4
- import '@base-ui/react/combobox';
5
- import 'motion/react';
6
- import '../effects/highlight.js';
7
- import '../ui/infinite-scroll.js';
8
- import '../ui/input.js';
9
- import 'class-variance-authority/types';
10
- import 'class-variance-authority';
11
- import '../ui/avatar.js';
12
- import '../primitives/avatar.js';
13
- import '@base-ui/react/avatar';
14
-
15
- type FilterComboboxItem = {
16
- label: string;
17
- value: string;
18
- };
19
- type BaseProps = {
20
- items: FilterComboboxItem[] | undefined;
21
- placeholder?: string;
22
- icon?: React.ReactNode;
23
- container?: React.ComponentProps<typeof ComboboxPortal>["container"];
24
- isPending?: boolean;
25
- className?: string;
26
- triggerClassName?: string;
27
- contentClassName?: string;
28
- disabled?: boolean;
29
- infiniteScroll?: React.ComponentProps<typeof ComboboxInfiniteScroll>;
30
- showTitle?: boolean;
31
- showSearch?: boolean;
32
- };
33
- type FilterComboboxProps<Value, Multiple extends boolean | undefined = false> = ComboboxProps<Value, Multiple> & BaseProps;
34
- declare function FilterCombobox<Value extends FilterComboboxItem, Multiple extends boolean | undefined = false>({ multiple, items, placeholder, icon, container, isPending, className, triggerClassName, contentClassName, disabled, infiniteScroll, filter, ...props }: FilterComboboxProps<Value, Multiple>): React.JSX.Element;
35
-
36
- export { FilterCombobox, type FilterComboboxItem, type FilterComboboxProps };
@@ -1,50 +0,0 @@
1
- export { ComboboxChipOutside } from './combobox-chip-outside.js';
2
- export { ComboboxChip } from './combobox-chip.js';
3
- export { ComboboxSimple, ComboboxSimpleItem, ComboboxSimpleProps } from './combobox-simple.js';
4
- export { PhoneInput } from './phone-input.js';
5
- export { FilterCombobox, FilterComboboxItem, FilterComboboxProps } from './filter-combobox.js';
6
- import * as React from 'react';
7
- import { Input } from '../ui/input.js';
8
- export { ProfileAvatar, ProfileAvatarStatus, ProfileAvatarVariant } from './profile-avatar.js';
9
- import '../ui/combobox.js';
10
- import '../primitives/combobox.js';
11
- import '@base-ui/react/combobox';
12
- import 'motion/react';
13
- import '../effects/highlight.js';
14
- import '../ui/infinite-scroll.js';
15
- import '../ui/avatar.js';
16
- import 'class-variance-authority/types';
17
- import 'class-variance-authority';
18
- import '../primitives/avatar.js';
19
- import '@base-ui/react/avatar';
20
- import 'react-phone-number-input';
21
-
22
- interface FilterSearchProps extends Omit<React.ComponentProps<typeof Input>, "value" | "defaultValue" | "onChange" | "size"> {
23
- value?: string;
24
- defaultValue?: string;
25
- onValueChange?: (value: string) => void;
26
- onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
27
- onClear?: () => void;
28
- icon?: React.ReactNode;
29
- }
30
- declare function FilterSearch({ className, value: valueProp, defaultValue, onValueChange, onChange, onClear, icon, disabled, ...props }: FilterSearchProps): React.JSX.Element;
31
-
32
- type FilterSortOption = {
33
- content?: React.ReactNode;
34
- label?: string;
35
- value: string;
36
- };
37
- type FilterSortProps = {
38
- options: FilterSortOption[];
39
- value?: FilterSortOption | string | null;
40
- defaultValue?: FilterSortOption | string | null;
41
- onValueChange?: (value: FilterSortOption | null) => void;
42
- showLabel?: boolean;
43
- label?: string;
44
- className?: string;
45
- triggerClassName?: string;
46
- disabled?: boolean;
47
- };
48
- declare function FilterSort({ options, value, defaultValue, onValueChange, showLabel, label, className, triggerClassName, disabled, }: FilterSortProps): React.JSX.Element;
49
-
50
- export { FilterSearch, type FilterSearchProps, FilterSort, type FilterSortOption, type FilterSortProps };
@@ -1,9 +0,0 @@
1
- import * as React from 'react';
2
- import * as RPNInput from 'react-phone-number-input';
3
-
4
- type PhoneInputProps = Omit<React.ComponentProps<"input">, "onChange" | "value" | "ref"> & Omit<RPNInput.Props<typeof RPNInput.default>, "onChange"> & {
5
- onChange?: (value: RPNInput.Value) => void;
6
- };
7
- declare const PhoneInput: React.ForwardRefExoticComponent<PhoneInputProps>;
8
-
9
- export { PhoneInput, type PhoneInputProps };
@@ -1,29 +0,0 @@
1
- import * as class_variance_authority_types from 'class-variance-authority/types';
2
- import * as React from 'react';
3
- import { VariantProps } from 'class-variance-authority';
4
-
5
- type ProfileAvatarStatus = "open-to-all" | "open-to-work" | "open-to-freelance" | "open-to-coach" | undefined;
6
- type ProfileAvatarVariant = "profile" | "company" | "university" | "group";
7
- declare const profileAvatarVariants: (props?: ({
8
- size?: "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | null | undefined;
9
- } & class_variance_authority_types.ClassProp) | undefined) => string;
10
- declare function ProfileAvatar({ avatarClassName, badgeClassName, imageSrc, avatarImageClassName, imageAlt, className, status, size, isVerified, onEdit, onClickAvatar, variant, isOnline, companyLogoSrc, bordered, badged, fallbackText, ...props }: React.ComponentProps<"div"> & {
11
- avatarClassName?: string;
12
- badgeClassName?: string;
13
- imageSrc?: string | Blob;
14
- imageAlt?: string;
15
- isVerified?: boolean;
16
- avatarImageClassName?: string;
17
- size?: VariantProps<typeof profileAvatarVariants>["size"];
18
- status?: ProfileAvatarStatus;
19
- onEdit?: () => void;
20
- onClickAvatar?: () => void;
21
- variant?: ProfileAvatarVariant;
22
- isOnline?: boolean;
23
- companyLogoSrc?: string | Blob;
24
- bordered?: boolean;
25
- badged?: boolean;
26
- fallbackText?: string;
27
- }): React.JSX.Element;
28
-
29
- export { ProfileAvatar, type ProfileAvatarStatus, type ProfileAvatarVariant };
@@ -1,13 +0,0 @@
1
- import * as React from 'react';
2
- import { TargetAndTransition, LegacyAnimationControls, Transition, HTMLMotionProps } from 'motion/react';
3
- import { WithAsChild } from '../primitives/slot.js';
4
-
5
- type AutoHeightProps = WithAsChild<{
6
- children: React.ReactNode;
7
- deps?: React.DependencyList;
8
- animate?: TargetAndTransition | LegacyAnimationControls;
9
- transition?: Transition;
10
- } & Omit<HTMLMotionProps<"div">, "animate">>;
11
- declare function AutoHeight({ children, deps, transition, style, animate, asChild, ...props }: AutoHeightProps): React.JSX.Element;
12
-
13
- export { AutoHeight, type AutoHeightProps };