@startdownnotez404/ui 1.0.0 → 1.3.5
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.
- package/README.md +110 -0
- package/dist/AutocompleteField-ZKNU2IRR.mjs +181 -0
- package/dist/AutocompleteField-ZKNU2IRR.mjs.map +1 -0
- package/dist/AvatarField-SAODT3CZ.mjs +275 -0
- package/dist/AvatarField-SAODT3CZ.mjs.map +1 -0
- package/dist/CodeEditor-JF55ZNVD.mjs +34 -0
- package/dist/CodeEditor-JF55ZNVD.mjs.map +1 -0
- package/dist/DateField-ZYMZFHL4.mjs +82 -0
- package/dist/DateField-ZYMZFHL4.mjs.map +1 -0
- package/dist/DateTimeField-TPTJ7YIZ.mjs +65 -0
- package/dist/DateTimeField-TPTJ7YIZ.mjs.map +1 -0
- package/dist/FileUploadField-NTMWBJER.mjs +78 -0
- package/dist/FileUploadField-NTMWBJER.mjs.map +1 -0
- package/dist/JSONEditorField-TMRWGXVR.mjs +64 -0
- package/dist/JSONEditorField-TMRWGXVR.mjs.map +1 -0
- package/dist/PopperMenu-LJ36RPBW.mjs +416 -0
- package/dist/PopperMenu-LJ36RPBW.mjs.map +1 -0
- package/dist/TelField-LOGRVZ4I.mjs +88 -0
- package/dist/TelField-LOGRVZ4I.mjs.map +1 -0
- package/dist/alert.d.mts +202 -0
- package/dist/alert.d.ts +202 -0
- package/dist/alert.js +784 -0
- package/dist/alert.js.map +1 -0
- package/dist/alert.mjs +47 -0
- package/dist/alert.mjs.map +1 -0
- package/dist/appBar.d.mts +21 -0
- package/dist/appBar.d.ts +21 -0
- package/dist/appBar.js +64 -0
- package/dist/appBar.js.map +1 -0
- package/dist/appBar.mjs +12 -0
- package/dist/appBar.mjs.map +1 -0
- package/dist/autocomplete.d.mts +121 -0
- package/dist/autocomplete.d.ts +121 -0
- package/dist/autocomplete.js +2052 -0
- package/dist/autocomplete.js.map +1 -0
- package/dist/autocomplete.mjs +21 -0
- package/dist/autocomplete.mjs.map +1 -0
- package/dist/avatar.d.mts +253 -0
- package/dist/avatar.d.ts +253 -0
- package/dist/avatar.js +992 -0
- package/dist/avatar.js.map +1 -0
- package/dist/avatar.mjs +41 -0
- package/dist/avatar.mjs.map +1 -0
- package/dist/badge.d.mts +123 -0
- package/dist/badge.d.ts +123 -0
- package/dist/badge.js +151 -0
- package/dist/badge.js.map +1 -0
- package/dist/badge.mjs +10 -0
- package/dist/badge.mjs.map +1 -0
- package/dist/box.d.mts +36 -0
- package/dist/box.d.ts +36 -0
- package/dist/box.js +199 -0
- package/dist/box.js.map +1 -0
- package/dist/box.mjs +14 -0
- package/dist/box.mjs.map +1 -0
- package/dist/button.d.mts +230 -52
- package/dist/button.d.ts +230 -52
- package/dist/button.js +392 -60
- package/dist/button.js.map +1 -1
- package/dist/button.mjs +14 -8
- package/dist/card.d.mts +47 -0
- package/dist/card.d.ts +47 -0
- package/dist/card.js +135 -0
- package/dist/card.js.map +1 -0
- package/dist/card.mjs +24 -0
- package/dist/card.mjs.map +1 -0
- package/dist/chart.d.mts +40 -0
- package/dist/chart.d.ts +40 -0
- package/dist/chart.js +1234 -0
- package/dist/chart.js.map +1 -0
- package/dist/chart.mjs +10 -0
- package/dist/chart.mjs.map +1 -0
- package/dist/checkbox.d.mts +62 -0
- package/dist/checkbox.d.ts +62 -0
- package/dist/checkbox.js +299 -0
- package/dist/checkbox.js.map +1 -0
- package/dist/checkbox.mjs +14 -0
- package/dist/checkbox.mjs.map +1 -0
- package/dist/chip.d.mts +96 -0
- package/dist/chip.d.ts +96 -0
- package/dist/chip.js +112 -0
- package/dist/chip.js.map +1 -0
- package/dist/chip.mjs +10 -0
- package/dist/chip.mjs.map +1 -0
- package/dist/chunk-24XDGNJ6.mjs +1450 -0
- package/dist/chunk-24XDGNJ6.mjs.map +1 -0
- package/dist/chunk-27KYFU7R.mjs +30 -0
- package/dist/chunk-27KYFU7R.mjs.map +1 -0
- package/dist/chunk-2FFLT5VP.mjs +7 -0
- package/dist/chunk-2FFLT5VP.mjs.map +1 -0
- package/dist/chunk-2ZZJTBTE.mjs +148 -0
- package/dist/chunk-2ZZJTBTE.mjs.map +1 -0
- package/dist/chunk-3DQINB57.mjs +15 -0
- package/dist/chunk-3DQINB57.mjs.map +1 -0
- package/dist/chunk-3VUAM2GY.mjs +52 -0
- package/dist/chunk-3VUAM2GY.mjs.map +1 -0
- package/dist/chunk-4Q54P737.mjs +19 -0
- package/dist/chunk-4Q54P737.mjs.map +1 -0
- package/dist/chunk-4RPFRNXG.mjs +62 -0
- package/dist/chunk-4RPFRNXG.mjs.map +1 -0
- package/dist/chunk-56TI2ZBT.mjs +114 -0
- package/dist/chunk-56TI2ZBT.mjs.map +1 -0
- package/dist/chunk-6REEQBJI.mjs +62 -0
- package/dist/chunk-6REEQBJI.mjs.map +1 -0
- package/dist/chunk-AAH2O24U.mjs +325 -0
- package/dist/chunk-AAH2O24U.mjs.map +1 -0
- package/dist/chunk-B7DAB22K.mjs +16 -0
- package/dist/chunk-B7DAB22K.mjs.map +1 -0
- package/dist/chunk-BGB7JHIU.mjs +222 -0
- package/dist/chunk-BGB7JHIU.mjs.map +1 -0
- package/dist/chunk-CRYIEYZZ.mjs +756 -0
- package/dist/chunk-CRYIEYZZ.mjs.map +1 -0
- package/dist/chunk-CWFWRZWU.mjs +23 -0
- package/dist/chunk-CWFWRZWU.mjs.map +1 -0
- package/dist/chunk-DELCADNF.mjs +1926 -0
- package/dist/chunk-DELCADNF.mjs.map +1 -0
- package/dist/chunk-E3I2VDHZ.mjs +292 -0
- package/dist/chunk-E3I2VDHZ.mjs.map +1 -0
- package/dist/chunk-EEH7HACG.mjs +249 -0
- package/dist/chunk-EEH7HACG.mjs.map +1 -0
- package/dist/chunk-EKPULYPU.mjs +497 -0
- package/dist/chunk-EKPULYPU.mjs.map +1 -0
- package/dist/chunk-EW4DTFH3.mjs +69 -0
- package/dist/chunk-EW4DTFH3.mjs.map +1 -0
- package/dist/chunk-FJ6ZGZIA.mjs +43 -0
- package/dist/chunk-FJ6ZGZIA.mjs.map +1 -0
- package/dist/chunk-HE7MY3RT.mjs +23 -0
- package/dist/chunk-HE7MY3RT.mjs.map +1 -0
- package/dist/chunk-HR3A4H4E.mjs +1289 -0
- package/dist/chunk-HR3A4H4E.mjs.map +1 -0
- package/dist/chunk-I5JWS4Z7.mjs +91 -0
- package/dist/chunk-I5JWS4Z7.mjs.map +1 -0
- package/dist/chunk-IN3O4R7Q.mjs +932 -0
- package/dist/chunk-IN3O4R7Q.mjs.map +1 -0
- package/dist/chunk-JIU5GVM7.mjs +414 -0
- package/dist/chunk-JIU5GVM7.mjs.map +1 -0
- package/dist/chunk-JWANK42G.mjs +170 -0
- package/dist/chunk-JWANK42G.mjs.map +1 -0
- package/dist/chunk-MDAUF7IL.mjs +9 -0
- package/dist/chunk-MDAUF7IL.mjs.map +1 -0
- package/dist/chunk-MI64T62E.mjs +26 -0
- package/dist/chunk-MI64T62E.mjs.map +1 -0
- package/dist/chunk-NJYNJLT7.mjs +172 -0
- package/dist/chunk-NJYNJLT7.mjs.map +1 -0
- package/dist/chunk-NLBDBJ3R.mjs +97 -0
- package/dist/chunk-NLBDBJ3R.mjs.map +1 -0
- package/dist/chunk-OGNGPI3M.mjs +333 -0
- package/dist/chunk-OGNGPI3M.mjs.map +1 -0
- package/dist/chunk-OJV6V7YZ.mjs +552 -0
- package/dist/chunk-OJV6V7YZ.mjs.map +1 -0
- package/dist/chunk-ONQMRE2G.mjs +26 -0
- package/dist/chunk-ONQMRE2G.mjs.map +1 -0
- package/dist/chunk-OP6LKXPA.mjs +75 -0
- package/dist/chunk-OP6LKXPA.mjs.map +1 -0
- package/dist/chunk-QFF3HTHL.mjs +14 -0
- package/dist/chunk-QFF3HTHL.mjs.map +1 -0
- package/dist/chunk-QKGCW37O.mjs +1175 -0
- package/dist/chunk-QKGCW37O.mjs.map +1 -0
- package/dist/chunk-R5MKQN6D.mjs +227 -0
- package/dist/chunk-R5MKQN6D.mjs.map +1 -0
- package/dist/chunk-RXBQ7KXF.mjs +652 -0
- package/dist/chunk-RXBQ7KXF.mjs.map +1 -0
- package/dist/chunk-S6EZVRZC.mjs +161 -0
- package/dist/chunk-S6EZVRZC.mjs.map +1 -0
- package/dist/chunk-SGCUDWO3.mjs +396 -0
- package/dist/chunk-SGCUDWO3.mjs.map +1 -0
- package/dist/chunk-SRWPHN2N.mjs +188 -0
- package/dist/chunk-SRWPHN2N.mjs.map +1 -0
- package/dist/chunk-T34IULP5.mjs +242 -0
- package/dist/chunk-T34IULP5.mjs.map +1 -0
- package/dist/chunk-T4X375IG.mjs +100 -0
- package/dist/chunk-T4X375IG.mjs.map +1 -0
- package/dist/chunk-T6AMRENK.mjs +376 -0
- package/dist/chunk-T6AMRENK.mjs.map +1 -0
- package/dist/chunk-TDRA5EZI.mjs +325 -0
- package/dist/chunk-TDRA5EZI.mjs.map +1 -0
- package/dist/chunk-UDREPVEY.mjs +356 -0
- package/dist/chunk-UDREPVEY.mjs.map +1 -0
- package/dist/chunk-UGMRJMFZ.mjs +172 -0
- package/dist/chunk-UGMRJMFZ.mjs.map +1 -0
- package/dist/chunk-UMJ5SCIQ.mjs +438 -0
- package/dist/chunk-UMJ5SCIQ.mjs.map +1 -0
- package/dist/chunk-UTVSYS6S.mjs +270 -0
- package/dist/chunk-UTVSYS6S.mjs.map +1 -0
- package/dist/chunk-V26V2S3W.mjs +197 -0
- package/dist/chunk-V26V2S3W.mjs.map +1 -0
- package/dist/chunk-VYD3PDBB.mjs +38 -0
- package/dist/chunk-VYD3PDBB.mjs.map +1 -0
- package/dist/chunk-WYYP3Y34.mjs +55 -0
- package/dist/chunk-WYYP3Y34.mjs.map +1 -0
- package/dist/chunk-XIMFP6RB.mjs +161 -0
- package/dist/chunk-XIMFP6RB.mjs.map +1 -0
- package/dist/chunk-XJ2SXC2Q.mjs +558 -0
- package/dist/chunk-XJ2SXC2Q.mjs.map +1 -0
- package/dist/chunk-Y74ALKBL.mjs +565 -0
- package/dist/chunk-Y74ALKBL.mjs.map +1 -0
- package/dist/chunk-ZG3NQI77.mjs +353 -0
- package/dist/chunk-ZG3NQI77.mjs.map +1 -0
- package/dist/chunk-ZVFYOXDE.mjs +297 -0
- package/dist/chunk-ZVFYOXDE.mjs.map +1 -0
- package/dist/collapse.d.mts +10 -0
- package/dist/collapse.d.ts +10 -0
- package/dist/collapse.js +53 -0
- package/dist/collapse.js.map +1 -0
- package/dist/collapse.mjs +10 -0
- package/dist/collapse.mjs.map +1 -0
- package/dist/datePicker.d.mts +133 -0
- package/dist/datePicker.d.ts +133 -0
- package/dist/datePicker.js +482 -0
- package/dist/datePicker.js.map +1 -0
- package/dist/datePicker.mjs +29 -0
- package/dist/datePicker.mjs.map +1 -0
- package/dist/displayFile.d.mts +95 -0
- package/dist/displayFile.d.ts +95 -0
- package/dist/displayFile.js +357 -0
- package/dist/displayFile.js.map +1 -0
- package/dist/displayFile.mjs +19 -0
- package/dist/displayFile.mjs.map +1 -0
- package/dist/divider.d.mts +9 -0
- package/dist/divider.d.ts +9 -0
- package/dist/divider.js +52 -0
- package/dist/divider.js.map +1 -0
- package/dist/divider.mjs +10 -0
- package/dist/divider.mjs.map +1 -0
- package/dist/fileUploader.d.mts +86 -0
- package/dist/fileUploader.d.ts +86 -0
- package/dist/fileUploader.js +722 -0
- package/dist/fileUploader.js.map +1 -0
- package/dist/fileUploader.mjs +16 -0
- package/dist/fileUploader.mjs.map +1 -0
- package/dist/flowMap.d.mts +353 -0
- package/dist/flowMap.d.ts +353 -0
- package/dist/flowMap.js +94806 -0
- package/dist/flowMap.js.map +1 -0
- package/dist/flowMap.mjs +94585 -0
- package/dist/flowMap.mjs.map +1 -0
- package/dist/form.d.mts +84 -0
- package/dist/form.d.ts +84 -0
- package/dist/form.js +144 -0
- package/dist/form.js.map +1 -0
- package/dist/form.mjs +24 -0
- package/dist/form.mjs.map +1 -0
- package/dist/icons.d.mts +160 -0
- package/dist/icons.d.ts +160 -0
- package/dist/icons.js +540 -0
- package/dist/icons.js.map +1 -0
- package/dist/icons.mjs +306 -0
- package/dist/icons.mjs.map +1 -0
- package/dist/image.d.mts +49 -0
- package/dist/image.d.ts +49 -0
- package/dist/image.js +1348 -0
- package/dist/image.js.map +1 -0
- package/dist/image.mjs +19 -0
- package/dist/image.mjs.map +1 -0
- package/dist/index.d.ts +46 -0
- package/dist/index.js +20198 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +912 -0
- package/dist/index.mjs.map +1 -0
- package/dist/input.d.mts +195 -0
- package/dist/input.d.ts +195 -0
- package/dist/input.js +1101 -0
- package/dist/input.js.map +1 -0
- package/dist/input.mjs +32 -0
- package/dist/input.mjs.map +1 -0
- package/dist/jsonEditor.d.mts +13 -0
- package/dist/jsonEditor.d.ts +13 -0
- package/dist/jsonEditor.js +247 -0
- package/dist/jsonEditor.js.map +1 -0
- package/dist/jsonEditor.mjs +9 -0
- package/dist/jsonEditor.mjs.map +1 -0
- package/dist/list.d.mts +83 -0
- package/dist/list.d.ts +83 -0
- package/dist/list.js +564 -0
- package/dist/list.js.map +1 -0
- package/dist/list.mjs +39 -0
- package/dist/list.mjs.map +1 -0
- package/dist/loading.d.mts +48 -0
- package/dist/loading.d.ts +48 -0
- package/dist/loading.js +383 -0
- package/dist/loading.js.map +1 -0
- package/dist/loading.mjs +23 -0
- package/dist/loading.mjs.map +1 -0
- package/dist/markdown.d.mts +14 -0
- package/dist/markdown.d.ts +14 -0
- package/dist/markdown.js +25927 -0
- package/dist/markdown.js.map +1 -0
- package/dist/markdown.mjs +25623 -0
- package/dist/markdown.mjs.map +1 -0
- package/dist/menu.d.mts +368 -0
- package/dist/menu.d.ts +368 -0
- package/dist/menu.js +1571 -0
- package/dist/menu.js.map +1 -0
- package/dist/menu.mjs +43 -0
- package/dist/menu.mjs.map +1 -0
- package/dist/modal.d.mts +90 -0
- package/dist/modal.d.ts +90 -0
- package/dist/modal.js +883 -0
- package/dist/modal.js.map +1 -0
- package/dist/modal.mjs +25 -0
- package/dist/modal.mjs.map +1 -0
- package/dist/overlay.d.mts +2 -0
- package/dist/overlay.d.ts +2 -0
- package/dist/overlay.js +46 -0
- package/dist/overlay.js.map +1 -0
- package/dist/overlay.mjs +10 -0
- package/dist/overlay.mjs.map +1 -0
- package/dist/paper.d.mts +38 -0
- package/dist/paper.d.ts +38 -0
- package/dist/paper.js +90 -0
- package/dist/paper.js.map +1 -0
- package/dist/paper.mjs +12 -0
- package/dist/paper.mjs.map +1 -0
- package/dist/patterns.d.mts +133 -0
- package/dist/patterns.d.ts +133 -0
- package/dist/patterns.js +483 -0
- package/dist/patterns.js.map +1 -0
- package/dist/patterns.mjs +46 -0
- package/dist/patterns.mjs.map +1 -0
- package/dist/process.d.mts +125 -0
- package/dist/process.d.ts +125 -0
- package/dist/process.js +1471 -0
- package/dist/process.js.map +1 -0
- package/dist/process.mjs +30 -0
- package/dist/process.mjs.map +1 -0
- package/dist/progress.d.mts +44 -0
- package/dist/progress.d.ts +44 -0
- package/dist/progress.js +94 -0
- package/dist/progress.js.map +1 -0
- package/dist/progress.mjs +14 -0
- package/dist/progress.mjs.map +1 -0
- package/dist/resizablePanel.d.mts +297 -0
- package/dist/resizablePanel.d.ts +297 -0
- package/dist/resizablePanel.js +122 -0
- package/dist/resizablePanel.js.map +1 -0
- package/dist/resizablePanel.mjs +22 -0
- package/dist/resizablePanel.mjs.map +1 -0
- package/dist/scrollToLoad.d.mts +41 -0
- package/dist/scrollToLoad.d.ts +41 -0
- package/dist/scrollToLoad.js +256 -0
- package/dist/scrollToLoad.js.map +1 -0
- package/dist/scrollToLoad.mjs +16 -0
- package/dist/scrollToLoad.mjs.map +1 -0
- package/dist/select.d.mts +50 -0
- package/dist/select.d.ts +50 -0
- package/dist/select.js +426 -0
- package/dist/select.js.map +1 -0
- package/dist/select.mjs +24 -0
- package/dist/select.mjs.map +1 -0
- package/dist/skeleton.d.mts +13 -0
- package/dist/skeleton.d.ts +13 -0
- package/dist/skeleton.js +68 -0
- package/dist/skeleton.js.map +1 -0
- package/dist/skeleton.mjs +11 -0
- package/dist/skeleton.mjs.map +1 -0
- package/dist/slider.d.mts +65 -0
- package/dist/slider.d.ts +65 -0
- package/dist/slider.js +106 -0
- package/dist/slider.js.map +1 -0
- package/dist/slider.mjs +10 -0
- package/dist/slider.mjs.map +1 -0
- package/dist/stepper.d.mts +98 -0
- package/dist/stepper.d.ts +98 -0
- package/dist/stepper.js +313 -0
- package/dist/stepper.js.map +1 -0
- package/dist/stepper.mjs +38 -0
- package/dist/stepper.mjs.map +1 -0
- package/dist/switch.d.mts +151 -0
- package/dist/switch.d.ts +151 -0
- package/dist/switch.js +289 -0
- package/dist/switch.js.map +1 -0
- package/dist/switch.mjs +17 -0
- package/dist/switch.mjs.map +1 -0
- package/dist/tab.d.mts +182 -0
- package/dist/tab.d.ts +182 -0
- package/dist/tab.js +1418 -0
- package/dist/tab.js.map +1 -0
- package/dist/tab.mjs +34 -0
- package/dist/tab.mjs.map +1 -0
- package/dist/table.d.mts +720 -0
- package/dist/table.d.ts +720 -0
- package/dist/table.js +10882 -0
- package/dist/table.js.map +1 -0
- package/dist/table.mjs +63 -0
- package/dist/table.mjs.map +1 -0
- package/dist/theme.d.mts +30 -4
- package/dist/theme.d.ts +30 -4
- package/dist/theme.js +3210 -170
- package/dist/theme.js.map +1 -1
- package/dist/theme.mjs +52 -230
- package/dist/theme.mjs.map +1 -1
- package/dist/timeline.d.mts +30 -0
- package/dist/timeline.d.ts +30 -0
- package/dist/timeline.js +273 -0
- package/dist/timeline.js.map +1 -0
- package/dist/timeline.mjs +14 -0
- package/dist/timeline.mjs.map +1 -0
- package/dist/toggleButtonGroup.d.mts +125 -0
- package/dist/toggleButtonGroup.d.ts +125 -0
- package/dist/toggleButtonGroup.js +190 -0
- package/dist/toggleButtonGroup.js.map +1 -0
- package/dist/toggleButtonGroup.mjs +15 -0
- package/dist/toggleButtonGroup.mjs.map +1 -0
- package/dist/tooltip.d.mts +13 -0
- package/dist/tooltip.d.ts +13 -0
- package/dist/tooltip.js +56 -0
- package/dist/tooltip.js.map +1 -0
- package/dist/tooltip.mjs +10 -0
- package/dist/tooltip.mjs.map +1 -0
- package/dist/typography.d.mts +21 -23
- package/dist/typography.d.ts +21 -23
- package/dist/typography.js +37 -63
- package/dist/typography.js.map +1 -1
- package/dist/typography.mjs +2 -1
- package/dist/useForm.d.mts +588 -0
- package/dist/useForm.d.ts +588 -0
- package/dist/useForm.js +8743 -0
- package/dist/useForm.js.map +1 -0
- package/dist/useForm.mjs +45 -0
- package/dist/useForm.mjs.map +1 -0
- package/dist/useSearch.d.mts +126 -0
- package/dist/useSearch.d.ts +126 -0
- package/dist/useSearch.js +1125 -0
- package/dist/useSearch.js.map +1 -0
- package/dist/useSearch.mjs +42 -0
- package/dist/useSearch.mjs.map +1 -0
- package/dist/variablesRenderer.d.mts +45 -0
- package/dist/variablesRenderer.d.ts +45 -0
- package/dist/variablesRenderer.js +511 -0
- package/dist/variablesRenderer.js.map +1 -0
- package/dist/variablesRenderer.mjs +21 -0
- package/dist/variablesRenderer.mjs.map +1 -0
- package/package.json +109 -15
- package/dist/chunk-PKADXEAD.mjs +0 -116
- package/dist/chunk-PKADXEAD.mjs.map +0 -1
- package/dist/chunk-YGBJCPUS.mjs +0 -88
- package/dist/chunk-YGBJCPUS.mjs.map +0 -1
- package/dist/theme.css +0 -44
- package/dist/theme.css.map +0 -1
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
import {
|
|
2
|
+
default as default4
|
|
3
|
+
} from "./chunk-VYD3PDBB.mjs";
|
|
4
|
+
import {
|
|
5
|
+
default109 as default3
|
|
6
|
+
} from "./chunk-ZVFYOXDE.mjs";
|
|
7
|
+
import {
|
|
8
|
+
default as default2
|
|
9
|
+
} from "./chunk-S6EZVRZC.mjs";
|
|
10
|
+
|
|
11
|
+
// src/components/elemental/Input/src/TelPhoneInput/TelPhoneInput.tsx
|
|
12
|
+
import "react-phone-number-input/style.css";
|
|
13
|
+
import PhoneInput from "react-phone-number-input";
|
|
14
|
+
import { forwardRef, memo as memo2, useMemo as useMemo2 } from "react";
|
|
15
|
+
import { styled } from "@mui/material/styles";
|
|
16
|
+
|
|
17
|
+
// src/components/elemental/Input/src/TelPhoneInput/theme.ts
|
|
18
|
+
var telPhoneInputVars = {
|
|
19
|
+
"--tel-phone-input-border-color": "var(--mui-palette-border-1)",
|
|
20
|
+
"--tel-phone-input-hover-border-color": "var(--mui-palette-border-hover-1)",
|
|
21
|
+
"--tel-phone-input-border-radius": "var(--mui-shape-borderRadius)"
|
|
22
|
+
};
|
|
23
|
+
var telPhoneInputErrorVars = {
|
|
24
|
+
"--tel-phone-input-border-color": "var(--mui-palette-error-main)",
|
|
25
|
+
"--tel-phone-input-hover-border-color": "var(--mui-palette-error-main)"
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
// src/components/elemental/Input/src/TelPhoneInput/CountrySelect.tsx
|
|
29
|
+
import Menu from "@mui/material/Menu";
|
|
30
|
+
import { memo, useCallback, useMemo, useState } from "react";
|
|
31
|
+
import { getCountryCallingCode } from "react-phone-number-input";
|
|
32
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
33
|
+
var ROW_HEIGHT = 36;
|
|
34
|
+
var LIST_HEIGHT = 280;
|
|
35
|
+
var OVERSCAN = 4;
|
|
36
|
+
var callingCodeCache = /* @__PURE__ */ new Map();
|
|
37
|
+
function callingCodeLabel(code) {
|
|
38
|
+
if (!code) return "";
|
|
39
|
+
const cached = callingCodeCache.get(code);
|
|
40
|
+
if (cached !== void 0) return cached;
|
|
41
|
+
let next = "";
|
|
42
|
+
try {
|
|
43
|
+
next = `+${getCountryCallingCode(code)}`;
|
|
44
|
+
} catch {
|
|
45
|
+
next = "";
|
|
46
|
+
}
|
|
47
|
+
callingCodeCache.set(code, next);
|
|
48
|
+
return next;
|
|
49
|
+
}
|
|
50
|
+
var triggerSx = {
|
|
51
|
+
display: "inline-flex",
|
|
52
|
+
alignItems: "center",
|
|
53
|
+
justifyContent: "center",
|
|
54
|
+
gap: "4px",
|
|
55
|
+
minWidth: 40,
|
|
56
|
+
px: 0.75,
|
|
57
|
+
py: 0.5,
|
|
58
|
+
border: "none",
|
|
59
|
+
borderRadius: 1,
|
|
60
|
+
cursor: "pointer",
|
|
61
|
+
lineHeight: 0,
|
|
62
|
+
color: "inherit",
|
|
63
|
+
backgroundColor: "var(--mui-palette-primary-background, transparent)",
|
|
64
|
+
"&:hover": {
|
|
65
|
+
backgroundColor: "color-mix(in lab, var(--mui-palette-text-primary), transparent 92%)"
|
|
66
|
+
},
|
|
67
|
+
"&:disabled": {
|
|
68
|
+
cursor: "default",
|
|
69
|
+
opacity: 0.5
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
var rowSx = {
|
|
73
|
+
position: "absolute",
|
|
74
|
+
left: 0,
|
|
75
|
+
right: 0,
|
|
76
|
+
display: "flex",
|
|
77
|
+
alignItems: "center",
|
|
78
|
+
gap: 1,
|
|
79
|
+
width: "100%",
|
|
80
|
+
px: 1.5,
|
|
81
|
+
border: "none",
|
|
82
|
+
background: "none",
|
|
83
|
+
color: "inherit",
|
|
84
|
+
cursor: "pointer",
|
|
85
|
+
textAlign: "left",
|
|
86
|
+
"&:hover": {
|
|
87
|
+
backgroundColor: "color-mix(in lab, var(--mui-palette-text-primary), transparent 92%)"
|
|
88
|
+
},
|
|
89
|
+
'&[aria-selected="true"]': {
|
|
90
|
+
backgroundColor: "color-mix(in lab, var(--mui-palette-primary-main, #1976d2), transparent 88%)"
|
|
91
|
+
},
|
|
92
|
+
"& .PhoneInputCountryIcon": {
|
|
93
|
+
flexShrink: 0,
|
|
94
|
+
overflow: "hidden"
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
var CountryRow = memo(function CountryRow2({
|
|
98
|
+
option,
|
|
99
|
+
selected,
|
|
100
|
+
Icon,
|
|
101
|
+
onSelect,
|
|
102
|
+
offset
|
|
103
|
+
}) {
|
|
104
|
+
return /* @__PURE__ */ jsxs(
|
|
105
|
+
default2,
|
|
106
|
+
{
|
|
107
|
+
component: "button",
|
|
108
|
+
type: "button",
|
|
109
|
+
role: "option",
|
|
110
|
+
"aria-selected": selected,
|
|
111
|
+
onMouseDown: (event) => event.preventDefault(),
|
|
112
|
+
onClick: () => onSelect(option.value),
|
|
113
|
+
sx: rowSx,
|
|
114
|
+
style: { top: offset, height: ROW_HEIGHT },
|
|
115
|
+
children: [
|
|
116
|
+
Icon ? /* @__PURE__ */ jsx(
|
|
117
|
+
Icon,
|
|
118
|
+
{
|
|
119
|
+
"aria-hidden": true,
|
|
120
|
+
country: option.value,
|
|
121
|
+
label: option.label,
|
|
122
|
+
className: "PhoneInputCountryIcon"
|
|
123
|
+
}
|
|
124
|
+
) : null,
|
|
125
|
+
/* @__PURE__ */ jsx(default2, { component: "span", sx: { flex: 1, minWidth: 0, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: option.label }),
|
|
126
|
+
/* @__PURE__ */ jsx(default2, { component: "span", sx: { opacity: 0.7, fontSize: "0.75rem" }, children: callingCodeLabel(option.value) })
|
|
127
|
+
]
|
|
128
|
+
}
|
|
129
|
+
);
|
|
130
|
+
});
|
|
131
|
+
function VirtualCountryList({
|
|
132
|
+
options,
|
|
133
|
+
value,
|
|
134
|
+
Icon,
|
|
135
|
+
onSelect
|
|
136
|
+
}) {
|
|
137
|
+
const rows = useMemo(
|
|
138
|
+
() => options.filter((option) => !option.divider),
|
|
139
|
+
[options]
|
|
140
|
+
);
|
|
141
|
+
const [scrollTop, setScrollTop] = useState(0);
|
|
142
|
+
const start = Math.max(0, Math.floor(scrollTop / ROW_HEIGHT) - OVERSCAN);
|
|
143
|
+
const visibleCount = Math.ceil(LIST_HEIGHT / ROW_HEIGHT) + OVERSCAN * 2;
|
|
144
|
+
const end = Math.min(rows.length, start + visibleCount);
|
|
145
|
+
const height = Math.min(LIST_HEIGHT, rows.length * ROW_HEIGHT);
|
|
146
|
+
return /* @__PURE__ */ jsx(
|
|
147
|
+
default2,
|
|
148
|
+
{
|
|
149
|
+
role: "listbox",
|
|
150
|
+
onScroll: (event) => setScrollTop(event.currentTarget.scrollTop),
|
|
151
|
+
sx: { height, width: 320, overflow: "auto" },
|
|
152
|
+
children: /* @__PURE__ */ jsx(default2, { sx: { height: rows.length * ROW_HEIGHT, position: "relative" }, children: rows.slice(start, end).map((option, index) => /* @__PURE__ */ jsx(
|
|
153
|
+
CountryRow,
|
|
154
|
+
{
|
|
155
|
+
option,
|
|
156
|
+
selected: option.value === value,
|
|
157
|
+
Icon,
|
|
158
|
+
onSelect,
|
|
159
|
+
offset: (start + index) * ROW_HEIGHT
|
|
160
|
+
},
|
|
161
|
+
option.value ?? option.label
|
|
162
|
+
)) })
|
|
163
|
+
}
|
|
164
|
+
);
|
|
165
|
+
}
|
|
166
|
+
function countryOptionsAreEqual(prev, next) {
|
|
167
|
+
if (prev === next) return true;
|
|
168
|
+
if (prev.length !== next.length) return false;
|
|
169
|
+
for (let i = 0; i < prev.length; i += 1) {
|
|
170
|
+
const a = prev[i];
|
|
171
|
+
const b = next[i];
|
|
172
|
+
if (a.value !== b.value || a.label !== b.label || Boolean(a.divider) !== Boolean(b.divider)) {
|
|
173
|
+
return false;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
return true;
|
|
177
|
+
}
|
|
178
|
+
function countrySelectPropsAreEqual(prev, next) {
|
|
179
|
+
return prev.value === next.value && countryOptionsAreEqual(prev.options, next.options) && prev.onChange === next.onChange && prev.onFocus === next.onFocus && prev.onBlur === next.onBlur && prev.disabled === next.disabled && prev.readOnly === next.readOnly && prev.iconComponent === next.iconComponent && prev.name === next.name && prev["aria-label"] === next["aria-label"] && prev.tabIndex === next.tabIndex;
|
|
180
|
+
}
|
|
181
|
+
var MuiCountrySelect = memo(function MuiCountrySelect2({
|
|
182
|
+
name,
|
|
183
|
+
value,
|
|
184
|
+
options,
|
|
185
|
+
onChange,
|
|
186
|
+
disabled,
|
|
187
|
+
readOnly,
|
|
188
|
+
iconComponent: Icon,
|
|
189
|
+
"aria-label": ariaLabel,
|
|
190
|
+
onFocus,
|
|
191
|
+
onBlur,
|
|
192
|
+
tabIndex
|
|
193
|
+
}) {
|
|
194
|
+
const [anchorEl, setAnchorEl] = useState(null);
|
|
195
|
+
const open = Boolean(anchorEl);
|
|
196
|
+
const isDisabled = Boolean(disabled || readOnly);
|
|
197
|
+
const selectedOption = useMemo(
|
|
198
|
+
() => options.find((option) => !option.divider && option.value === value),
|
|
199
|
+
[options, value]
|
|
200
|
+
);
|
|
201
|
+
const handleOpen = useCallback((event) => {
|
|
202
|
+
if (isDisabled) return;
|
|
203
|
+
setAnchorEl(event.currentTarget);
|
|
204
|
+
}, [isDisabled]);
|
|
205
|
+
const handleClose = useCallback(() => {
|
|
206
|
+
setAnchorEl(null);
|
|
207
|
+
}, []);
|
|
208
|
+
const handleSelect = useCallback((next) => {
|
|
209
|
+
onChange(next);
|
|
210
|
+
setAnchorEl(null);
|
|
211
|
+
}, [onChange]);
|
|
212
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
213
|
+
/* @__PURE__ */ jsxs(
|
|
214
|
+
default2,
|
|
215
|
+
{
|
|
216
|
+
component: "button",
|
|
217
|
+
type: "button",
|
|
218
|
+
name,
|
|
219
|
+
tabIndex,
|
|
220
|
+
disabled: isDisabled,
|
|
221
|
+
"aria-label": ariaLabel,
|
|
222
|
+
"aria-haspopup": "listbox",
|
|
223
|
+
"aria-expanded": open ? "true" : "false",
|
|
224
|
+
onClick: handleOpen,
|
|
225
|
+
onFocus,
|
|
226
|
+
onBlur,
|
|
227
|
+
sx: triggerSx,
|
|
228
|
+
children: [
|
|
229
|
+
Icon && selectedOption ? /* @__PURE__ */ jsx(
|
|
230
|
+
Icon,
|
|
231
|
+
{
|
|
232
|
+
"aria-hidden": true,
|
|
233
|
+
country: value,
|
|
234
|
+
label: selectedOption.label,
|
|
235
|
+
className: "PhoneInputCountryIcon"
|
|
236
|
+
}
|
|
237
|
+
) : null,
|
|
238
|
+
/* @__PURE__ */ jsx(default3, { fontSize: "small" })
|
|
239
|
+
]
|
|
240
|
+
}
|
|
241
|
+
),
|
|
242
|
+
open ? /* @__PURE__ */ jsx(
|
|
243
|
+
Menu,
|
|
244
|
+
{
|
|
245
|
+
open: true,
|
|
246
|
+
anchorEl,
|
|
247
|
+
onClose: handleClose,
|
|
248
|
+
transitionDuration: 0,
|
|
249
|
+
disableAutoFocusItem: true,
|
|
250
|
+
anchorOrigin: { vertical: "bottom", horizontal: "left" },
|
|
251
|
+
transformOrigin: { vertical: "top", horizontal: "left" },
|
|
252
|
+
slotProps: {
|
|
253
|
+
list: {
|
|
254
|
+
"aria-label": ariaLabel,
|
|
255
|
+
sx: { p: 0 }
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
children: /* @__PURE__ */ jsx(
|
|
259
|
+
VirtualCountryList,
|
|
260
|
+
{
|
|
261
|
+
options,
|
|
262
|
+
value,
|
|
263
|
+
Icon,
|
|
264
|
+
onSelect: handleSelect
|
|
265
|
+
}
|
|
266
|
+
)
|
|
267
|
+
}
|
|
268
|
+
) : null
|
|
269
|
+
] });
|
|
270
|
+
}, countrySelectPropsAreEqual);
|
|
271
|
+
|
|
272
|
+
// src/components/elemental/Input/src/TelPhoneInput/TelPhoneInput.tsx
|
|
273
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
274
|
+
var stackPhoneSlotProps = {
|
|
275
|
+
input: {
|
|
276
|
+
sx: {
|
|
277
|
+
border: "none",
|
|
278
|
+
"&::before, &::after": { borderBottom: "none" },
|
|
279
|
+
"&:hover:not(.Mui-disabled, .Mui-error):before": { borderBottom: "none" },
|
|
280
|
+
"& .MuiInputBase-input": { padding: "8px 0" }
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
};
|
|
284
|
+
var StackPhoneNumberInput = memo2(forwardRef(
|
|
285
|
+
(p, ref) => /* @__PURE__ */ jsx2(
|
|
286
|
+
default4,
|
|
287
|
+
{
|
|
288
|
+
...p,
|
|
289
|
+
inputRef: ref,
|
|
290
|
+
variant: "standard",
|
|
291
|
+
slotProps: stackPhoneSlotProps
|
|
292
|
+
}
|
|
293
|
+
)
|
|
294
|
+
));
|
|
295
|
+
function TelPhoneInput(p) {
|
|
296
|
+
const { error = false, countrySelectComponent, iconComponent, ...rest } = p;
|
|
297
|
+
const CountryComponent = useMemo2(() => {
|
|
298
|
+
if (countrySelectComponent) {
|
|
299
|
+
return countrySelectComponent;
|
|
300
|
+
}
|
|
301
|
+
if (!iconComponent) {
|
|
302
|
+
return MuiCountrySelect;
|
|
303
|
+
}
|
|
304
|
+
return function CountrySelectWithIcon(props) {
|
|
305
|
+
return /* @__PURE__ */ jsx2(MuiCountrySelect, { ...props, iconComponent });
|
|
306
|
+
};
|
|
307
|
+
}, [countrySelectComponent, iconComponent]);
|
|
308
|
+
return /* @__PURE__ */ jsx2(StyledWrapper, { className: error ? "mui-error" : "", children: /* @__PURE__ */ jsx2(
|
|
309
|
+
PhoneInput,
|
|
310
|
+
{
|
|
311
|
+
...rest,
|
|
312
|
+
international: true,
|
|
313
|
+
countrySelectComponent: CountryComponent,
|
|
314
|
+
inputComponent: rest.inputComponent ?? StackPhoneNumberInput
|
|
315
|
+
}
|
|
316
|
+
) });
|
|
317
|
+
}
|
|
318
|
+
var StyledWrapper = styled(default2, {
|
|
319
|
+
shouldForwardProp: (prop) => prop !== "error"
|
|
320
|
+
})({
|
|
321
|
+
...telPhoneInputVars,
|
|
322
|
+
"&.mui-error": telPhoneInputErrorVars,
|
|
323
|
+
border: "solid 1px var(--tel-phone-input-border-color)",
|
|
324
|
+
borderRadius: "var(--tel-phone-input-border-radius)",
|
|
325
|
+
"&:hover": {
|
|
326
|
+
borderColor: "var(--tel-phone-input-hover-border-color)"
|
|
327
|
+
}
|
|
328
|
+
});
|
|
329
|
+
|
|
330
|
+
export {
|
|
331
|
+
TelPhoneInput
|
|
332
|
+
};
|
|
333
|
+
//# sourceMappingURL=chunk-OGNGPI3M.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/elemental/Input/src/TelPhoneInput/TelPhoneInput.tsx","../src/components/elemental/Input/src/TelPhoneInput/theme.ts","../src/components/elemental/Input/src/TelPhoneInput/CountrySelect.tsx"],"sourcesContent":["'use client'\n\nimport 'react-phone-number-input/style.css'\nimport PhoneInput from 'react-phone-number-input'\nimport React, { forwardRef, memo, useMemo } from 'react'\nimport { TextField as MuiTextField } from '../TextField'\nimport { Box } from '@/ele/Box'\nimport { styled } from '@mui/material/styles'\n\nimport { telPhoneInputVars, telPhoneInputErrorVars } from './theme'\nimport { MuiCountrySelect, type MuiCountrySelectProps } from './CountrySelect'\n\nconst stackPhoneSlotProps = {\n input: {\n sx: {\n border: 'none',\n \"&::before, &::after\": { borderBottom: 'none' },\n \"&:hover:not(.Mui-disabled, .Mui-error):before\": { borderBottom: 'none' },\n '& .MuiInputBase-input': { padding: '8px 0' },\n },\n },\n} as const\n\nconst StackPhoneNumberInput = memo(forwardRef<HTMLInputElement, React.ComponentProps<typeof MuiTextField>>(\n (p, ref) => (\n <MuiTextField\n {...p}\n inputRef={ref}\n variant='standard'\n slotProps={stackPhoneSlotProps}\n />\n ),\n))\n\nexport default function TelPhoneInput(p: React.ComponentProps<typeof PhoneInput> & {\n error?: boolean;\n iconComponent?: React.ElementType;\n}) {\n const { error = false, countrySelectComponent, iconComponent, ...rest } = p;\n\n const CountryComponent = useMemo(() => {\n if (countrySelectComponent) {\n return countrySelectComponent\n }\n\n if (!iconComponent) {\n return MuiCountrySelect\n }\n\n return function CountrySelectWithIcon(props: MuiCountrySelectProps) {\n return <MuiCountrySelect {...props} iconComponent={iconComponent} />\n }\n }, [countrySelectComponent, iconComponent])\n\n return (\n <StyledWrapper className={error ? 'mui-error' : ''}>\n <PhoneInput\n {...rest}\n international\n countrySelectComponent={CountryComponent}\n inputComponent={rest.inputComponent ?? StackPhoneNumberInput}\n />\n </StyledWrapper>\n )\n}\n\nconst StyledWrapper = styled(Box, {\n shouldForwardProp: (prop) => prop !== 'error',\n})<{ error?: boolean }>({\n ...telPhoneInputVars,\n \"&.mui-error\": telPhoneInputErrorVars,\n \n border: 'solid 1px var(--tel-phone-input-border-color)',\n borderRadius: 'var(--tel-phone-input-border-radius)',\n \"&:hover\": {\n borderColor: 'var(--tel-phone-input-hover-border-color)',\n },\n})\n","/**\n * Root-level CSS variable aliases for TelPhoneInput.\n * StyledWrapper spreads these; palette refs are declared only here.\n */\nexport const telPhoneInputVars = {\n '--tel-phone-input-border-color': 'var(--mui-palette-border-1)',\n '--tel-phone-input-hover-border-color': 'var(--mui-palette-border-hover-1)',\n '--tel-phone-input-border-radius': 'var(--mui-shape-borderRadius)',\n} as const\n\nexport const telPhoneInputErrorVars = {\n '--tel-phone-input-border-color': 'var(--mui-palette-error-main)',\n '--tel-phone-input-hover-border-color': 'var(--mui-palette-error-main)',\n} as const\n","'use client'\n\nimport Menu from '@mui/material/Menu'\nimport { KeyboardArrowDownIcon as KeyboardArrowDown } from '@/icons/MuiIcon'\nimport React, { memo, useCallback, useMemo, useState } from 'react'\nimport { Box } from '@/ele/Box'\nimport { getCountryCallingCode } from 'react-phone-number-input'\nimport type { CountryCode } from 'libphonenumber-js'\n\nexport type CountrySelectOption = {\n value?: string;\n label: string;\n divider?: boolean;\n}\n\nexport type MuiCountrySelectProps = {\n name?: string;\n value?: string;\n options: CountrySelectOption[];\n onChange: (value?: string) => void;\n disabled?: boolean;\n readOnly?: boolean;\n iconComponent?: React.ElementType;\n 'aria-label'?: string;\n onFocus?: (event: React.FocusEvent<HTMLElement>) => void;\n onBlur?: (event: React.FocusEvent<HTMLElement>) => void;\n tabIndex?: number;\n}\n\nconst ROW_HEIGHT = 36\nconst LIST_HEIGHT = 280\nconst OVERSCAN = 4\n\nconst callingCodeCache = new Map<string, string>()\n\nfunction callingCodeLabel(code?: string) {\n if (!code) return ''\n const cached = callingCodeCache.get(code)\n if (cached !== undefined) return cached\n let next = ''\n try {\n next = `+${getCountryCallingCode(code as CountryCode)}`\n } catch {\n next = ''\n }\n callingCodeCache.set(code, next)\n return next\n}\n\nconst triggerSx = {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n gap: '4px',\n minWidth: 40,\n px: 0.75,\n py: 0.5,\n border: 'none',\n borderRadius: 1,\n cursor: 'pointer',\n lineHeight: 0,\n color: 'inherit',\n backgroundColor: 'var(--mui-palette-primary-background, transparent)',\n '&:hover': {\n backgroundColor: 'color-mix(in lab, var(--mui-palette-text-primary), transparent 92%)',\n },\n '&:disabled': {\n cursor: 'default',\n opacity: 0.5,\n },\n} as const\n\nconst rowSx = {\n position: 'absolute',\n left: 0,\n right: 0,\n display: 'flex',\n alignItems: 'center',\n gap: 1,\n width: '100%',\n px: 1.5,\n border: 'none',\n background: 'none',\n color: 'inherit',\n cursor: 'pointer',\n textAlign: 'left',\n '&:hover': {\n backgroundColor: 'color-mix(in lab, var(--mui-palette-text-primary), transparent 92%)',\n },\n '&[aria-selected=\"true\"]': {\n backgroundColor: 'color-mix(in lab, var(--mui-palette-primary-main, #1976d2), transparent 88%)',\n },\n '& .PhoneInputCountryIcon': {\n flexShrink: 0,\n overflow: 'hidden',\n },\n} as const\n\nconst CountryRow = memo(function CountryRow({\n option,\n selected,\n Icon,\n onSelect,\n offset,\n}: {\n option: CountrySelectOption;\n selected: boolean;\n Icon?: React.ElementType;\n onSelect: (value?: string) => void;\n offset: number;\n}) {\n return (\n <Box\n component=\"button\"\n type=\"button\"\n role=\"option\"\n aria-selected={selected}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => onSelect(option.value)}\n sx={rowSx}\n style={{ top: offset, height: ROW_HEIGHT }}\n >\n {Icon ? (\n <Icon\n aria-hidden\n country={option.value}\n label={option.label}\n className=\"PhoneInputCountryIcon\"\n />\n ) : null}\n <Box component=\"span\" sx={{ flex: 1, minWidth: 0, overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }}>\n {option.label}\n </Box>\n <Box component=\"span\" sx={{ opacity: 0.7, fontSize: '0.75rem' }}>\n {callingCodeLabel(option.value)}\n </Box>\n </Box>\n )\n})\n\nfunction VirtualCountryList({\n options,\n value,\n Icon,\n onSelect,\n}: {\n options: CountrySelectOption[];\n value?: string;\n Icon?: React.ElementType;\n onSelect: (value?: string) => void;\n}) {\n const rows = useMemo(\n () => options.filter((option) => !option.divider),\n [options],\n )\n const [scrollTop, setScrollTop] = useState(0)\n const start = Math.max(0, Math.floor(scrollTop / ROW_HEIGHT) - OVERSCAN)\n const visibleCount = Math.ceil(LIST_HEIGHT / ROW_HEIGHT) + OVERSCAN * 2\n const end = Math.min(rows.length, start + visibleCount)\n const height = Math.min(LIST_HEIGHT, rows.length * ROW_HEIGHT)\n\n return (\n <Box\n role=\"listbox\"\n onScroll={(event) => setScrollTop(event.currentTarget.scrollTop)}\n sx={{ height, width: 320, overflow: 'auto' }}\n >\n <Box sx={{ height: rows.length * ROW_HEIGHT, position: 'relative' }}>\n {rows.slice(start, end).map((option, index) => (\n <CountryRow\n key={option.value ?? option.label}\n option={option}\n selected={option.value === value}\n Icon={Icon}\n onSelect={onSelect}\n offset={(start + index) * ROW_HEIGHT}\n />\n ))}\n </Box>\n </Box>\n )\n}\n\nfunction countryOptionsAreEqual(prev: CountrySelectOption[], next: CountrySelectOption[]) {\n if (prev === next) return true\n if (prev.length !== next.length) return false\n for (let i = 0; i < prev.length; i += 1) {\n const a = prev[i]\n const b = next[i]\n if (a.value !== b.value || a.label !== b.label || Boolean(a.divider) !== Boolean(b.divider)) {\n return false\n }\n }\n return true\n}\n\nfunction countrySelectPropsAreEqual(prev: MuiCountrySelectProps, next: MuiCountrySelectProps) {\n return (\n prev.value === next.value &&\n countryOptionsAreEqual(prev.options, next.options) &&\n prev.onChange === next.onChange &&\n prev.onFocus === next.onFocus &&\n prev.onBlur === next.onBlur &&\n prev.disabled === next.disabled &&\n prev.readOnly === next.readOnly &&\n prev.iconComponent === next.iconComponent &&\n prev.name === next.name &&\n prev['aria-label'] === next['aria-label'] &&\n prev.tabIndex === next.tabIndex\n )\n}\n\nexport const MuiCountrySelect = memo(function MuiCountrySelect({\n name,\n value,\n options,\n onChange,\n disabled,\n readOnly,\n iconComponent: Icon,\n 'aria-label': ariaLabel,\n onFocus,\n onBlur,\n tabIndex,\n}: MuiCountrySelectProps) {\n const [anchorEl, setAnchorEl] = useState<HTMLButtonElement | null>(null)\n const open = Boolean(anchorEl)\n const isDisabled = Boolean(disabled || readOnly)\n\n const selectedOption = useMemo(\n () => options.find((option) => !option.divider && option.value === value),\n [options, value],\n )\n\n const handleOpen = useCallback((event: React.MouseEvent<HTMLButtonElement>) => {\n if (isDisabled) return\n setAnchorEl(event.currentTarget)\n }, [isDisabled])\n\n const handleClose = useCallback(() => {\n setAnchorEl(null)\n }, [])\n\n const handleSelect = useCallback((next?: string) => {\n onChange(next)\n setAnchorEl(null)\n }, [onChange])\n\n return (\n <>\n <Box\n component=\"button\"\n type=\"button\"\n name={name}\n tabIndex={tabIndex}\n disabled={isDisabled}\n aria-label={ariaLabel}\n aria-haspopup=\"listbox\"\n aria-expanded={open ? 'true' : 'false'}\n onClick={handleOpen}\n onFocus={onFocus}\n onBlur={onBlur}\n sx={triggerSx}\n >\n {Icon && selectedOption ? (\n <Icon\n aria-hidden\n country={value}\n label={selectedOption.label}\n className=\"PhoneInputCountryIcon\"\n />\n ) : null}\n <KeyboardArrowDown fontSize=\"small\" />\n </Box>\n\n {open ? (\n <Menu\n open\n anchorEl={anchorEl}\n onClose={handleClose}\n transitionDuration={0}\n disableAutoFocusItem\n anchorOrigin={{ vertical: 'bottom', horizontal: 'left' }}\n transformOrigin={{ vertical: 'top', horizontal: 'left' }}\n slotProps={{\n list: {\n 'aria-label': ariaLabel,\n sx: { p: 0 },\n },\n }}\n >\n <VirtualCountryList\n options={options}\n value={value}\n Icon={Icon}\n onSelect={handleSelect}\n />\n </Menu>\n ) : null}\n </>\n )\n}, countrySelectPropsAreEqual)\n"],"mappings":"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","names":["memo","useMemo","CountryRow","default","MuiCountrySelect","jsx","memo","default","useMemo"]}
|