@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,416 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
DISABLED_GROUP,
|
|
4
|
+
MY_LOCAL_DISABLE_GROUP,
|
|
5
|
+
OptionRenderer,
|
|
6
|
+
gitHubPickerRootStyle,
|
|
7
|
+
useSelector,
|
|
8
|
+
useStateContext
|
|
9
|
+
} from "./chunk-OJV6V7YZ.mjs";
|
|
10
|
+
import {
|
|
11
|
+
MuiPaper
|
|
12
|
+
} from "./chunk-3VUAM2GY.mjs";
|
|
13
|
+
import {
|
|
14
|
+
default2 as default4
|
|
15
|
+
} from "./chunk-MDAUF7IL.mjs";
|
|
16
|
+
import "./chunk-QFF3HTHL.mjs";
|
|
17
|
+
import {
|
|
18
|
+
Button
|
|
19
|
+
} from "./chunk-JIU5GVM7.mjs";
|
|
20
|
+
import "./chunk-4Q54P737.mjs";
|
|
21
|
+
import "./chunk-OP6LKXPA.mjs";
|
|
22
|
+
import {
|
|
23
|
+
default26 as default5,
|
|
24
|
+
default33 as default6,
|
|
25
|
+
default53 as default7
|
|
26
|
+
} from "./chunk-ZVFYOXDE.mjs";
|
|
27
|
+
import {
|
|
28
|
+
default as default3
|
|
29
|
+
} from "./chunk-4RPFRNXG.mjs";
|
|
30
|
+
import {
|
|
31
|
+
default as default2
|
|
32
|
+
} from "./chunk-S6EZVRZC.mjs";
|
|
33
|
+
import "./chunk-FJ6ZGZIA.mjs";
|
|
34
|
+
|
|
35
|
+
// src/components/elemental/Autocomplete/src/GitHubPicker/PopperMenu.tsx
|
|
36
|
+
import { useEffect, useLayoutEffect, useRef, useState } from "react";
|
|
37
|
+
import Autocomplete, { autocompleteClasses as autocompleteClasses2 } from "@mui/material/Autocomplete";
|
|
38
|
+
import InputBase from "@mui/material/InputBase";
|
|
39
|
+
|
|
40
|
+
// src/components/elemental/Autocomplete/src/GitHubPicker/popperTheme.ts
|
|
41
|
+
import { styled } from "@mui/material/styles";
|
|
42
|
+
import { autocompleteClasses } from "@mui/material/Autocomplete";
|
|
43
|
+
var PickerPopper = styled(default4)(({ theme }) => ({
|
|
44
|
+
...gitHubPickerRootStyle,
|
|
45
|
+
width: "var(--w)",
|
|
46
|
+
minWidth: 280,
|
|
47
|
+
zIndex: theme.zIndex.modal,
|
|
48
|
+
fontSize: 13,
|
|
49
|
+
overflow: "hidden",
|
|
50
|
+
borderRadius: 14,
|
|
51
|
+
border: "1px solid var(--picker-border)",
|
|
52
|
+
backgroundColor: "var(--mui-palette-background-paper)",
|
|
53
|
+
backgroundImage: "none",
|
|
54
|
+
boxShadow: "var(--picker-shadow)",
|
|
55
|
+
backdropFilter: "none",
|
|
56
|
+
WebkitBackdropFilter: "none",
|
|
57
|
+
"--picker-blur": "0px",
|
|
58
|
+
"--picker-glass": "none"
|
|
59
|
+
}));
|
|
60
|
+
var PickerOptionLi = styled("li")(() => ({
|
|
61
|
+
...gitHubPickerRootStyle,
|
|
62
|
+
[`.${autocompleteClasses.listbox} &.${autocompleteClasses.option}`]: {
|
|
63
|
+
padding: 0,
|
|
64
|
+
margin: "2px 6px",
|
|
65
|
+
borderRadius: 10,
|
|
66
|
+
minHeight: 0
|
|
67
|
+
},
|
|
68
|
+
[`
|
|
69
|
+
&.${autocompleteClasses.option},
|
|
70
|
+
&.${autocompleteClasses.option}[aria-selected="true"],
|
|
71
|
+
`]: {
|
|
72
|
+
backgroundColor: "transparent"
|
|
73
|
+
},
|
|
74
|
+
[`
|
|
75
|
+
&.${autocompleteClasses.option}:hover,
|
|
76
|
+
&.${autocompleteClasses.option}[aria-selected="true"]:hover,
|
|
77
|
+
`]: {
|
|
78
|
+
backgroundColor: "var(--picker-hover-bg)"
|
|
79
|
+
},
|
|
80
|
+
[`
|
|
81
|
+
&.${autocompleteClasses.option}.${autocompleteClasses.focused},
|
|
82
|
+
&.${autocompleteClasses.option}.${autocompleteClasses.focused}[aria-selected="true"]
|
|
83
|
+
`]: {
|
|
84
|
+
backgroundColor: "var(--picker-focus-soft)"
|
|
85
|
+
},
|
|
86
|
+
[`&.${autocompleteClasses.option}[aria-selected="true"]`]: {
|
|
87
|
+
backgroundColor: "var(--picker-focus-soft)",
|
|
88
|
+
boxShadow: "inset 0 1px 0 var(--picker-highlight)"
|
|
89
|
+
}
|
|
90
|
+
}));
|
|
91
|
+
var PickerPaper = styled(MuiPaper)({
|
|
92
|
+
...gitHubPickerRootStyle,
|
|
93
|
+
borderRadius: 14,
|
|
94
|
+
border: "none",
|
|
95
|
+
"--paper-bg": "transparent",
|
|
96
|
+
backgroundColor: "transparent",
|
|
97
|
+
backgroundImage: "none",
|
|
98
|
+
boxShadow: "none",
|
|
99
|
+
"&.MuiPaper-root": {
|
|
100
|
+
"--paper-bg": "transparent",
|
|
101
|
+
backgroundColor: "transparent",
|
|
102
|
+
backgroundImage: "none",
|
|
103
|
+
boxShadow: "none",
|
|
104
|
+
border: "none"
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
var pickerSearchSx = {
|
|
108
|
+
display: "flex",
|
|
109
|
+
alignItems: "center",
|
|
110
|
+
gap: 1,
|
|
111
|
+
mx: 1,
|
|
112
|
+
mt: 0.5,
|
|
113
|
+
mb: 0.75,
|
|
114
|
+
px: 1.25,
|
|
115
|
+
py: 0.5,
|
|
116
|
+
borderRadius: 2,
|
|
117
|
+
backgroundColor: "var(--picker-search-bg)",
|
|
118
|
+
border: "1px solid var(--picker-search-border)",
|
|
119
|
+
boxShadow: "var(--picker-search-shadow)",
|
|
120
|
+
"& .MuiInputBase-root": {
|
|
121
|
+
fontSize: "0.875rem",
|
|
122
|
+
color: "var(--picker-text)"
|
|
123
|
+
},
|
|
124
|
+
"& .MuiInputBase-input": {
|
|
125
|
+
py: 0.6,
|
|
126
|
+
"&::placeholder": {
|
|
127
|
+
color: "var(--picker-text-secondary)",
|
|
128
|
+
opacity: 0.8
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
var pickerGroupLabelSx = {
|
|
133
|
+
px: 1.75,
|
|
134
|
+
pt: 1.25,
|
|
135
|
+
pb: 0.5,
|
|
136
|
+
fontSize: "0.66rem",
|
|
137
|
+
fontWeight: 700,
|
|
138
|
+
letterSpacing: "0.08em",
|
|
139
|
+
textTransform: "uppercase",
|
|
140
|
+
lineHeight: 1.4,
|
|
141
|
+
color: "var(--picker-text-secondary)"
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
// src/components/elemental/Autocomplete/src/GitHubPicker/PopperMenu.tsx
|
|
145
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
146
|
+
function MyPopper({
|
|
147
|
+
id,
|
|
148
|
+
listboxId,
|
|
149
|
+
anchorEl,
|
|
150
|
+
allMinimalOptions,
|
|
151
|
+
options,
|
|
152
|
+
closeHandler,
|
|
153
|
+
title,
|
|
154
|
+
placement = "bottom-start",
|
|
155
|
+
multiple = true,
|
|
156
|
+
disabled = false,
|
|
157
|
+
useGroup,
|
|
158
|
+
isAddOptionEnabled,
|
|
159
|
+
addOptionHandler,
|
|
160
|
+
isPopperFreezed
|
|
161
|
+
}) {
|
|
162
|
+
const minimal = useSelector()("minimal");
|
|
163
|
+
const { select } = useStateContext();
|
|
164
|
+
const [query, setQuery] = useState("");
|
|
165
|
+
const open = Boolean(anchorEl);
|
|
166
|
+
const listboxRef = useRef(null);
|
|
167
|
+
const pinnedScrollTop = useRef(null);
|
|
168
|
+
useEffect(() => {
|
|
169
|
+
if (open) setQuery("");
|
|
170
|
+
}, [open]);
|
|
171
|
+
useLayoutEffect(() => {
|
|
172
|
+
if (!open) {
|
|
173
|
+
pinnedScrollTop.current = null;
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
const list = listboxRef.current;
|
|
177
|
+
const top = pinnedScrollTop.current;
|
|
178
|
+
if (list == null || top == null) return;
|
|
179
|
+
list.scrollTop = top;
|
|
180
|
+
const id2 = window.requestAnimationFrame(() => {
|
|
181
|
+
if (listboxRef.current) listboxRef.current.scrollTop = top;
|
|
182
|
+
pinnedScrollTop.current = null;
|
|
183
|
+
});
|
|
184
|
+
return () => window.cancelAnimationFrame(id2);
|
|
185
|
+
}, [open, minimal]);
|
|
186
|
+
useEffect(() => {
|
|
187
|
+
if (!open) return;
|
|
188
|
+
const id2 = window.setTimeout(() => {
|
|
189
|
+
if (listboxRef.current) listboxRef.current.scrollTop = 0;
|
|
190
|
+
}, 30);
|
|
191
|
+
return () => window.clearTimeout(id2);
|
|
192
|
+
}, [open]);
|
|
193
|
+
const handleChange = (event, newValue, reason) => {
|
|
194
|
+
if (event.type === "keydown" && reason === "removeOption") {
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
if (listboxRef.current) {
|
|
198
|
+
pinnedScrollTop.current = listboxRef.current.scrollTop;
|
|
199
|
+
}
|
|
200
|
+
if (!multiple && (newValue == null || newValue === "")) {
|
|
201
|
+
const cleared = select(null);
|
|
202
|
+
if (!isPopperFreezed) closeHandler?.(cleared);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
const currentId = !multiple && minimal && !Array.isArray(minimal) ? minimal.id : null;
|
|
206
|
+
const nextOption = Array.isArray(newValue) ? newValue[0] : newValue;
|
|
207
|
+
if (!multiple && currentId && nextOption && nextOption.id === currentId) {
|
|
208
|
+
const cleared = select(null);
|
|
209
|
+
if (!isPopperFreezed) closeHandler?.(cleared);
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
212
|
+
const newState = select(newValue);
|
|
213
|
+
if (!multiple && !isPopperFreezed) {
|
|
214
|
+
closeHandler?.(newState);
|
|
215
|
+
}
|
|
216
|
+
};
|
|
217
|
+
const popperId = open ? id : void 0;
|
|
218
|
+
const popperWidth = Math.max(anchorEl?.offsetWidth ?? 320, 320);
|
|
219
|
+
return /* @__PURE__ */ jsx(
|
|
220
|
+
PickerPopper,
|
|
221
|
+
{
|
|
222
|
+
id: popperId,
|
|
223
|
+
open,
|
|
224
|
+
anchorEl,
|
|
225
|
+
disablePortal: true,
|
|
226
|
+
placement,
|
|
227
|
+
style: { "--w": `${popperWidth}px` },
|
|
228
|
+
modifiers: [
|
|
229
|
+
{ name: "offset", options: { offset: [0, 8] } },
|
|
230
|
+
{ name: "preventOverflow", options: { padding: 8 } }
|
|
231
|
+
],
|
|
232
|
+
children: /* @__PURE__ */ jsxs(PickerPaper, { elevation: 0, variant: "outlined", children: [
|
|
233
|
+
title ? /* @__PURE__ */ jsx(default2, { sx: { px: 1.75, pt: 1.5, pb: 0.5 }, children: /* @__PURE__ */ jsx(
|
|
234
|
+
default3,
|
|
235
|
+
{
|
|
236
|
+
sx: {
|
|
237
|
+
fontSize: "0.78rem",
|
|
238
|
+
fontWeight: 600,
|
|
239
|
+
letterSpacing: "0.02em",
|
|
240
|
+
color: "var(--picker-text-secondary)",
|
|
241
|
+
m: 0
|
|
242
|
+
},
|
|
243
|
+
children: title
|
|
244
|
+
}
|
|
245
|
+
) }) : null,
|
|
246
|
+
/* @__PURE__ */ jsx(
|
|
247
|
+
Autocomplete,
|
|
248
|
+
{
|
|
249
|
+
open,
|
|
250
|
+
disabled,
|
|
251
|
+
multiple,
|
|
252
|
+
onClose: (_event, reason) => {
|
|
253
|
+
if (reason === "escape" && !isPopperFreezed) {
|
|
254
|
+
closeHandler?.();
|
|
255
|
+
}
|
|
256
|
+
},
|
|
257
|
+
value: multiple ? Array.isArray(minimal) ? minimal : [] : minimal && !Array.isArray(minimal) ? minimal : null,
|
|
258
|
+
inputValue: query,
|
|
259
|
+
onInputChange: (_, value, reason) => {
|
|
260
|
+
if (reason === "reset") return;
|
|
261
|
+
setQuery(value);
|
|
262
|
+
},
|
|
263
|
+
onChange: handleChange,
|
|
264
|
+
disableCloseOnSelect: Boolean(multiple),
|
|
265
|
+
selectOnFocus: false,
|
|
266
|
+
clearOnBlur: false,
|
|
267
|
+
slots: {
|
|
268
|
+
popper: PopperComponent,
|
|
269
|
+
paper: ListSurface
|
|
270
|
+
},
|
|
271
|
+
slotProps: {
|
|
272
|
+
listbox: {
|
|
273
|
+
id: listboxId,
|
|
274
|
+
sx: {
|
|
275
|
+
maxHeight: 320,
|
|
276
|
+
py: 0.5,
|
|
277
|
+
overflowX: "hidden",
|
|
278
|
+
overflowAnchor: "none"
|
|
279
|
+
},
|
|
280
|
+
ref: listboxRef
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
noOptionsText: "No matches",
|
|
284
|
+
renderOption: (liProps, option, { selected }, ownerState) => {
|
|
285
|
+
const { key, onClick, ...optionProps } = liProps;
|
|
286
|
+
const fullOption = options.find((o) => o.id === option.id);
|
|
287
|
+
return /* @__PURE__ */ jsx(
|
|
288
|
+
PickerOptionLi,
|
|
289
|
+
{
|
|
290
|
+
...optionProps,
|
|
291
|
+
onClick: (event) => {
|
|
292
|
+
if (!multiple && selected) {
|
|
293
|
+
event.preventDefault();
|
|
294
|
+
event.stopPropagation();
|
|
295
|
+
if (listboxRef.current) {
|
|
296
|
+
pinnedScrollTop.current = listboxRef.current.scrollTop;
|
|
297
|
+
}
|
|
298
|
+
const cleared = select(null);
|
|
299
|
+
if (!isPopperFreezed) closeHandler?.(cleared);
|
|
300
|
+
return;
|
|
301
|
+
}
|
|
302
|
+
onClick?.(event);
|
|
303
|
+
},
|
|
304
|
+
children: /* @__PURE__ */ jsx(
|
|
305
|
+
OptionRenderer,
|
|
306
|
+
{
|
|
307
|
+
disableBR: true,
|
|
308
|
+
option: fullOption ?? null,
|
|
309
|
+
selected,
|
|
310
|
+
disabled: ownerState.disabled || option.disabled,
|
|
311
|
+
slotProps: {
|
|
312
|
+
DM: {
|
|
313
|
+
isShowEndIcon: true,
|
|
314
|
+
isShowDescription: true
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
)
|
|
319
|
+
},
|
|
320
|
+
key
|
|
321
|
+
);
|
|
322
|
+
},
|
|
323
|
+
options: allMinimalOptions,
|
|
324
|
+
groupBy: useGroup ? ((option) => option.disabled ? MY_LOCAL_DISABLE_GROUP : option.group) : void 0,
|
|
325
|
+
getOptionLabel: (option) => option.label,
|
|
326
|
+
getOptionKey: (option) => option.id,
|
|
327
|
+
getOptionDisabled: (option) => option.disabled ?? false,
|
|
328
|
+
isOptionEqualToValue: (option, value) => option.id === value?.id,
|
|
329
|
+
filterOptions: (options2, { inputValue }) => {
|
|
330
|
+
return options2.filter((option) => {
|
|
331
|
+
const filterKey = option.filterKey.toLowerCase();
|
|
332
|
+
const inputVal = inputValue.toLowerCase().split(" ");
|
|
333
|
+
return inputVal.every((val) => filterKey.includes(val));
|
|
334
|
+
});
|
|
335
|
+
},
|
|
336
|
+
renderInput: (params) => {
|
|
337
|
+
return /* @__PURE__ */ jsxs(default2, { ref: params.InputProps.ref, sx: pickerSearchSx, children: [
|
|
338
|
+
/* @__PURE__ */ jsx(default6, { sx: { fontSize: 18, color: "var(--picker-text-secondary)", flexShrink: 0 } }),
|
|
339
|
+
/* @__PURE__ */ jsx(
|
|
340
|
+
InputBase,
|
|
341
|
+
{
|
|
342
|
+
fullWidth: true,
|
|
343
|
+
autoFocus: true,
|
|
344
|
+
placeholder: "Search",
|
|
345
|
+
value: query,
|
|
346
|
+
onChange: (event) => setQuery(event.target.value),
|
|
347
|
+
inputProps: {
|
|
348
|
+
...params.inputProps,
|
|
349
|
+
value: query,
|
|
350
|
+
onBlur: (e) => {
|
|
351
|
+
e.preventDefault();
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
)
|
|
356
|
+
] });
|
|
357
|
+
},
|
|
358
|
+
renderGroup: (p) => {
|
|
359
|
+
return /* @__PURE__ */ jsxs("li", { children: [
|
|
360
|
+
/* @__PURE__ */ jsx(default2, { className: `${autocompleteClasses2.groupLabel}`, sx: pickerGroupLabelSx, children: p.group === MY_LOCAL_DISABLE_GROUP ? /* @__PURE__ */ jsxs(default2, { component: "span", sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
361
|
+
/* @__PURE__ */ jsx(default5, { sx: { fontSize: 14 } }),
|
|
362
|
+
DISABLED_GROUP
|
|
363
|
+
] }) : p.group }),
|
|
364
|
+
/* @__PURE__ */ jsx(default2, { component: "ul", sx: { padding: 0, margin: 0 }, className: `${autocompleteClasses2.groupUl}`, children: p.children })
|
|
365
|
+
] }, p.key);
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
),
|
|
369
|
+
isAddOptionEnabled ? /* @__PURE__ */ jsx(
|
|
370
|
+
default2,
|
|
371
|
+
{
|
|
372
|
+
sx: {
|
|
373
|
+
borderTop: "1px solid var(--picker-divider)",
|
|
374
|
+
px: 0.75,
|
|
375
|
+
py: 0.5
|
|
376
|
+
},
|
|
377
|
+
children: /* @__PURE__ */ jsx(
|
|
378
|
+
Button,
|
|
379
|
+
{
|
|
380
|
+
variant: "text",
|
|
381
|
+
size: "small",
|
|
382
|
+
startIcon: /* @__PURE__ */ jsx(default7, {}),
|
|
383
|
+
onClick: addOptionHandler,
|
|
384
|
+
sx: {
|
|
385
|
+
width: "100%",
|
|
386
|
+
justifyContent: "flex-start",
|
|
387
|
+
px: 1,
|
|
388
|
+
color: "var(--picker-text-secondary)",
|
|
389
|
+
fontWeight: 600,
|
|
390
|
+
letterSpacing: "0.02em"
|
|
391
|
+
},
|
|
392
|
+
children: "New option"
|
|
393
|
+
}
|
|
394
|
+
)
|
|
395
|
+
}
|
|
396
|
+
) : null
|
|
397
|
+
] })
|
|
398
|
+
}
|
|
399
|
+
);
|
|
400
|
+
}
|
|
401
|
+
function ListSurface({
|
|
402
|
+
children,
|
|
403
|
+
...other
|
|
404
|
+
}) {
|
|
405
|
+
return /* @__PURE__ */ jsx(default2, { ...other, sx: { boxShadow: "none", backgroundColor: "transparent" }, children });
|
|
406
|
+
}
|
|
407
|
+
function PopperComponent(props) {
|
|
408
|
+
const { children, sx, ...other } = props;
|
|
409
|
+
const evaluatedSx = typeof sx === "function" ? {} : sx;
|
|
410
|
+
const content = typeof children === "function" ? children() : children;
|
|
411
|
+
return /* @__PURE__ */ jsx(default2, { ...other, sx: evaluatedSx, children: content });
|
|
412
|
+
}
|
|
413
|
+
export {
|
|
414
|
+
MyPopper as default
|
|
415
|
+
};
|
|
416
|
+
//# sourceMappingURL=PopperMenu-LJ36RPBW.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/elemental/Autocomplete/src/GitHubPicker/PopperMenu.tsx","../src/components/elemental/Autocomplete/src/GitHubPicker/popperTheme.ts"],"sourcesContent":["\"use client\"\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react'\nimport { Popper } from '@/ele/Overlay'\nimport type { PopperProps } from '@mui/material/Popper'\nimport Autocomplete, { autocompleteClasses, AutocompletePopperSlotPropsOverrides } from '@mui/material/Autocomplete'\nimport InputBase from '@mui/material/InputBase'\nimport { Box } from '@/ele/Box'\nimport { Typography } from '@/ele/Typography'\nimport { Button } from '@/ele/Button'\n\nimport { SearchIcon, DisabledSelectionIcon, AddIcon } from '@/icons/MuiIcon'\n\nimport OptionRenderer from './OptionRenderer'\nimport { PickerPopper, PickerOptionLi, PickerPaper, pickerSearchSx, pickerGroupLabelSx } from './popperTheme'\nimport { \n\tOptionClass, type MinimalOption, \n\tMY_LOCAL_DISABLE_GROUP, DISABLED_GROUP,\n} from './_utils'\nimport {\n\tuseLocalSelectedContext,\n\tuseLocalSelectedSelector,\n} from './states'\nimport type { StateType } from './states'\n\n/**\n * A popper menu for the GitHubPicker only\n */\nexport default function MyPopper({\n\tid,\n\tlistboxId,\n\tanchorEl,\n\tallMinimalOptions,\n\toptions,\n\tcloseHandler,\n\ttitle,\n\tplacement = 'bottom-start',\n\tmultiple = true,\n\tdisabled = false,\n\tuseGroup,\n\tisAddOptionEnabled,\n\taddOptionHandler,\n\tisPopperFreezed,\n}: {\n\tid: string;\n\tlistboxId: string;\n\tanchorEl: HTMLElement | null;\n\tallMinimalOptions: MinimalOption[];\n\toptions: OptionClass[];\n\tcloseHandler?: (newState?: StateType) => void;\n\ttitle?: React.ReactNode;\n\tplacement?: React.ComponentProps<typeof Popper>['placement'];\n\tmultiple?: React.ComponentProps<typeof Autocomplete>['multiple'];\n\tdisabled?: React.ComponentProps<typeof Autocomplete>['disabled'];\n\tuseGroup?: boolean;\n\tisAddOptionEnabled?: boolean;\n\taddOptionHandler?: () => void;\n\tisPopperFreezed?: boolean;\n}) {\n\tconst minimal = useLocalSelectedSelector()(\"minimal\")\n\tconst { select } = useLocalSelectedContext()\n\tconst [query, setQuery] = useState('')\n\tconst open = Boolean(anchorEl)\n\tconst listboxRef = useRef<HTMLUListElement | null>(null)\n\tconst pinnedScrollTop = useRef<number | null>(null)\n\n\tuseEffect(() => {\n\t\tif (open) setQuery('')\n\t}, [open])\n\n\tuseLayoutEffect(() => {\n\t\tif (!open) {\n\t\t\tpinnedScrollTop.current = null\n\t\t\treturn\n\t\t}\n\t\tconst list = listboxRef.current\n\t\tconst top = pinnedScrollTop.current\n\t\tif (list == null || top == null) return\n\t\tlist.scrollTop = top\n\t\tconst id = window.requestAnimationFrame(() => {\n\t\t\tif (listboxRef.current) listboxRef.current.scrollTop = top\n\t\t\tpinnedScrollTop.current = null\n\t\t})\n\t\treturn () => window.cancelAnimationFrame(id)\n\t}, [open, minimal])\n\n\tuseEffect(() => {\n\t\tif (!open) return\n\t\tconst id = window.setTimeout(() => {\n\t\t\tif (listboxRef.current) listboxRef.current.scrollTop = 0\n\t\t}, 30)\n\t\treturn () => window.clearTimeout(id)\n\t}, [open])\n\n\t// handle change for autocomplete -> local change\n\tconst handleChange:React.ComponentProps<typeof Autocomplete>[\"onChange\"] = (event, newValue, reason) => {\n\t\tif(\n\t\t\tevent.type === 'keydown' &&\n\t\t\treason === 'removeOption'\n\t\t) {\n\t\t\t// avoid the default behavior\n\t\t\treturn\n\t\t}\n\n\t\t\tif (listboxRef.current) {\n\t\t\t\tpinnedScrollTop.current = listboxRef.current.scrollTop\n\t\t\t}\n\n\t\t\tif (!multiple && (newValue == null || newValue === '')) {\n\t\t\t\tconst cleared = select(null)\n\t\t\t\tif (!isPopperFreezed) closeHandler?.(cleared)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst currentId = !multiple && minimal && !Array.isArray(minimal) ? minimal.id : null\n\t\t\tconst nextOption = Array.isArray(newValue) ? newValue[0] : newValue\n\t\t\tif (!multiple && currentId && nextOption && nextOption.id === currentId) {\n\t\t\t\tconst cleared = select(null)\n\t\t\t\tif (!isPopperFreezed) closeHandler?.(cleared)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// update the local state and get the new state synchronously\n\t\t\tconst newState = select(newValue as (MinimalOption|MinimalOption[]))\n\t\t\t// close the popper if not multiple and pass the updated state\n\t\t\tif(!multiple && !isPopperFreezed){\n\t\t\t\tcloseHandler?.(newState)\n\t\t\t}\n\t}\n\n\tconst popperId = open ? id : undefined\n\tconst popperWidth = Math.max(anchorEl?.offsetWidth ?? 320, 320)\n\n\treturn (\n\t\t<PickerPopper\n\t\t\tid={popperId}\n\t\t\topen={open}\n\t\t\tanchorEl={anchorEl}\n\t\t\tdisablePortal\n\t\t\tplacement={placement}\n\t\t\tstyle={{ '--w': `${popperWidth}px` } as React.CSSProperties}\n\t\t\tmodifiers={[\n\t\t\t\t{ name: 'offset', options: { offset: [0, 8] } },\n\t\t\t\t{ name: 'preventOverflow', options: { padding: 8 } },\n\t\t\t]}\n\t\t>\n\t\t\t\t<PickerPaper elevation={0} variant=\"outlined\">\n\t\t\t\t{title ? (\n\t\t\t\t\t<Box sx={{ px: 1.75, pt: 1.5, pb: 0.5 }}>\n\t\t\t\t\t\t<Typography\n\t\t\t\t\t\t\tsx={{\n\t\t\t\t\t\t\t\tfontSize: '0.78rem',\n\t\t\t\t\t\t\t\tfontWeight: 600,\n\t\t\t\t\t\t\t\tletterSpacing: '0.02em',\n\t\t\t\t\t\t\t\tcolor: 'var(--picker-text-secondary)',\n\t\t\t\t\t\t\t\tm: 0,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{title}\n\t\t\t\t\t\t</Typography>\n\t\t\t\t\t</Box>\n\t\t\t\t) : null}\n <Autocomplete\n open={open}\n disabled={disabled}\n multiple={multiple}\n\t\t\t\t\tonClose={(_event, reason) => {\n\t\t\t\t\t\tif (reason === 'escape' && !isPopperFreezed) {\n\t\t\t\t\t\t\tcloseHandler?.()\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n value={multiple\n ? (Array.isArray(minimal) ? minimal : [])\n : (minimal && !Array.isArray(minimal) ? minimal : null)\n }\n inputValue={query}\n onInputChange={(_, value, reason) => {\n if (reason === 'reset') return\n setQuery(value)\n }}\n onChange={handleChange}\n disableCloseOnSelect={Boolean(multiple)}\n selectOnFocus={false}\n clearOnBlur={false}\n slots={{\n popper: PopperComponent,\n paper: ListSurface,\n }}\n slotProps={{\n listbox:{\n id: listboxId,\n sx:{\n\t\t\t\t\t\t\t\tmaxHeight: 320,\n\t\t\t\t\t\t\t\tpy: 0.5,\n\t\t\t\t\t\t\t\toverflowX: 'hidden',\n\t\t\t\t\t\t\t\toverflowAnchor: 'none',\n\t\t\t\t\t\t\t},\n ref: listboxRef,\n },\n }}\n noOptionsText=\"No matches\"\n\n renderOption={(liProps, option, { selected }, ownerState )=>{\n const { key, onClick, ...optionProps } = liProps\n // find the option with full data from the minimal option\n // including the icon\n const fullOption = options.find(o => o.id === option.id)\n\n return (\n <PickerOptionLi\n key={key}\n {...optionProps}\n onClick={(event) => {\n if (!multiple && selected) {\n event.preventDefault()\n event.stopPropagation()\n if (listboxRef.current) {\n pinnedScrollTop.current = listboxRef.current.scrollTop\n }\n const cleared = select(null)\n if (!isPopperFreezed) closeHandler?.(cleared)\n return\n }\n onClick?.(event)\n }}\n >\n <OptionRenderer \n disableBR\n option={fullOption??null}\n selected={selected}\n disabled={ownerState.disabled || option.disabled}\n slotProps={{\n DM:{\n isShowEndIcon:true,\n isShowDescription:true,\n },\n }}\n />\n </PickerOptionLi>)\n }}\n options={allMinimalOptions}\n \n groupBy={useGroup?\n ((option:MinimalOption) => option.disabled? MY_LOCAL_DISABLE_GROUP : option.group)\n :undefined\n }\n getOptionLabel={(option:MinimalOption) => option.label} // display the label\n getOptionKey={(option:MinimalOption) => option.id}\n getOptionDisabled={(option:MinimalOption) => option.disabled??false}\n isOptionEqualToValue={(option:MinimalOption, value) => option.id === value?.id}\n filterOptions={(options, { inputValue }) => { // filter the options\n return options.filter(option => {\n // use the filter key to search\n const filterKey = option.filterKey.toLowerCase()\n // split the input value by space and check if all the words are in the filter key\n const inputVal = inputValue.toLowerCase().split(\" \")\n // if all the words are in the filter key, return true\n return inputVal.every(val => filterKey.includes(val))\n })\n }}\n\n renderInput={(params) => {\n return(\n <Box ref={params.InputProps.ref} sx={pickerSearchSx}>\n\t\t\t\t\t\t\t<SearchIcon sx={{ fontSize: 18, color: 'var(--picker-text-secondary)', flexShrink: 0 }} />\n <InputBase\n\t\t\t\t\t\t\t\tfullWidth\n\t\t\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t\t\tplaceholder=\"Search\"\n\t\t\t\t\t\t\t\tvalue={query}\n\t\t\t\t\t\t\t\tonChange={(event) => setQuery(event.target.value)}\n\t\t\t\t\t\t\t\tinputProps={{\n\t\t\t\t\t\t\t\t\t...params.inputProps,\n\t\t\t\t\t\t\t\t\tvalue: query,\n\t\t\t\t\t\t\t\t\tonBlur:(e: React.FocusEvent<HTMLInputElement>)=>{\n\t\t\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}}\n />\n </Box>\n )}} \n \n renderGroup={(p)=>{\n\n return <li key={p.key}>\n <Box className={`${autocompleteClasses.groupLabel}`} sx={pickerGroupLabelSx}>\n\t\t\t\t\t\t\t\t{p.group === MY_LOCAL_DISABLE_GROUP?\n <Box component=\"span\" sx={{display:\"flex\",alignItems:\"center\",gap:1}}><DisabledSelectionIcon sx={{ fontSize: 14 }} />{DISABLED_GROUP}</Box>\n :p.group}\n </Box>\n\n <Box component=\"ul\" sx={{padding:0, margin: 0}} className={`${autocompleteClasses.groupUl}`}>{p.children}</Box>\n </li>\n }}\n />\n\t\t\t\t{isAddOptionEnabled ? (\n\t\t\t\t\t<Box\n\t\t\t\t\t\tsx={{\n\t\t\t\t\t\t\tborderTop: '1px solid var(--picker-divider)',\n\t\t\t\t\t\t\tpx: 0.75,\n\t\t\t\t\t\t\tpy: 0.5,\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"text\"\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tstartIcon={<AddIcon />}\n\t\t\t\t\t\t\tonClick={addOptionHandler}\n\t\t\t\t\t\t\tsx={{\n\t\t\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\t\t\tjustifyContent: 'flex-start',\n\t\t\t\t\t\t\t\tpx: 1,\n\t\t\t\t\t\t\t\tcolor: 'var(--picker-text-secondary)',\n\t\t\t\t\t\t\t\tfontWeight: 600,\n\t\t\t\t\t\t\t\tletterSpacing: '0.02em',\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tNew option\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</Box>\n\t\t\t\t) : null}\n </PickerPaper>\n\t\t</PickerPopper>\n\t)\n}\n\n/**\n * A popper component for the Autocomplete\n * \n * must be a separate component to avoid re-rendering the popper\n */\nfunction ListSurface({\n children,\n ...other\n}: {\n children?: React.ReactNode\n} & React.HTMLAttributes<HTMLDivElement>) {\n return (\n <Box {...other} sx={{ boxShadow: 'none', backgroundColor: 'transparent' }}>\n {children}\n </Box>\n )\n}\n\nfunction PopperComponent(props: PopperProps & AutocompletePopperSlotPropsOverrides) {\n const { children, sx, ...other } = props;\n\n // Render a simple container instead of a Popper so the consumer can\n // wrap the Autocomplete in an external Popper. If `sx` is a function we\n // don't evaluate it here (keep behavior simple and type-safe).\n const evaluatedSx = typeof sx === 'function' ? {} : sx;\n const content = typeof children === 'function' ? (children as () => React.ReactNode)() : children;\n\n return (\n <Box {...other} sx={evaluatedSx}>\n {content}\n </Box>\n );\n}\n","import type { SxProps, Theme } from '@mui/material/styles'\nimport { styled } from '@mui/material/styles'\nimport { Popper } from '@/ele/Overlay'\nimport { autocompleteClasses } from '@mui/material/Autocomplete'\nimport { Paper } from '@/ele/Paper'\nimport { gitHubPickerRootStyle } from './theme'\n\nexport const PickerPopper = styled(Popper)(({ theme }) => ({\n\t...gitHubPickerRootStyle,\n\twidth: 'var(--w)',\n\tminWidth: 280,\n\tzIndex: theme.zIndex.modal,\n\tfontSize: 13,\n\toverflow: 'hidden',\n\tborderRadius: 14,\n\tborder: '1px solid var(--picker-border)',\n\tbackgroundColor: 'var(--mui-palette-background-paper)',\n\tbackgroundImage: 'none',\n\tboxShadow: 'var(--picker-shadow)',\n\tbackdropFilter: 'none',\n\tWebkitBackdropFilter: 'none',\n\t'--picker-blur': '0px',\n\t'--picker-glass': 'none',\n}))\n\nexport const PickerOptionLi = styled('li')(() => ({\n\t...gitHubPickerRootStyle,\n\t[`.${autocompleteClasses.listbox} &.${autocompleteClasses.option}`]: {\n\t\tpadding: 0,\n\t\tmargin: '2px 6px',\n\t\tborderRadius: 10,\n\t\tminHeight: 0,\n\t},\n\t[`\n\t\t&.${autocompleteClasses.option},\n\t\t&.${autocompleteClasses.option}[aria-selected=\"true\"],\n\t`]: {\n\t\tbackgroundColor: 'transparent',\n\t},\n\t[`\n\t\t&.${autocompleteClasses.option}:hover,\n\t\t&.${autocompleteClasses.option}[aria-selected=\"true\"]:hover,\n\t`]: {\n\t\tbackgroundColor: 'var(--picker-hover-bg)',\n\t},\n\t[`\n\t\t&.${autocompleteClasses.option}.${autocompleteClasses.focused},\n\t\t&.${autocompleteClasses.option}.${autocompleteClasses.focused}[aria-selected=\"true\"]\n\t`]: {\n\t\tbackgroundColor: 'var(--picker-focus-soft)',\n\t},\n\t[`&.${autocompleteClasses.option}[aria-selected=\"true\"]`]: {\n\t\tbackgroundColor: 'var(--picker-focus-soft)',\n\t\tboxShadow: 'inset 0 1px 0 var(--picker-highlight)',\n\t},\n}))\n\nexport const PickerPaper = styled(Paper)({\n\t...gitHubPickerRootStyle,\n\tborderRadius: 14,\n\tborder: 'none',\n\t'--paper-bg': 'transparent',\n\tbackgroundColor: 'transparent',\n\tbackgroundImage: 'none',\n\tboxShadow: 'none',\n\t'&.MuiPaper-root': {\n\t\t'--paper-bg': 'transparent',\n\t\tbackgroundColor: 'transparent',\n\t\tbackgroundImage: 'none',\n\t\tboxShadow: 'none',\n\t\tborder: 'none',\n\t},\n})\n\nexport const pickerSearchSx = {\n\tdisplay: 'flex',\n\talignItems: 'center',\n\tgap: 1,\n\tmx: 1,\n\tmt: 0.5,\n\tmb: 0.75,\n\tpx: 1.25,\n\tpy: 0.5,\n\tborderRadius: 2,\n\tbackgroundColor: 'var(--picker-search-bg)',\n\tborder: '1px solid var(--picker-search-border)',\n\tboxShadow: 'var(--picker-search-shadow)',\n\t'& .MuiInputBase-root': {\n\t\tfontSize: '0.875rem',\n\t\tcolor: 'var(--picker-text)',\n\t},\n\t'& .MuiInputBase-input': {\n\t\tpy: 0.6,\n\t\t'&::placeholder': {\n\t\t\tcolor: 'var(--picker-text-secondary)',\n\t\t\topacity: 0.8,\n\t\t},\n\t},\n} as const satisfies SxProps<Theme>\n\nexport const pickerGroupLabelSx = {\n\tpx: 1.75,\n\tpt: 1.25,\n\tpb: 0.5,\n\tfontSize: '0.66rem',\n\tfontWeight: 700,\n\tletterSpacing: '0.08em',\n\ttextTransform: 'uppercase',\n\tlineHeight: 1.4,\n\tcolor: 'var(--picker-text-secondary)',\n} as const satisfies SxProps<Theme>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,SAAgB,WAAW,iBAAiB,QAAQ,gBAAgB;AAGpE,OAAO,gBAAgB,uBAAAA,4BAAiE;AACxF,OAAO,eAAe;;;ACJtB,SAAS,cAAc;AAEvB,SAAS,2BAA2B;AAI7B,IAAM,eAAe,OAAOC,QAAM,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAC1D,GAAG;AAAA,EACH,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ,MAAM,OAAO;AAAA,EACrB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,cAAc;AAAA,EACd,QAAQ;AAAA,EACR,iBAAiB;AAAA,EACjB,iBAAiB;AAAA,EACjB,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,kBAAkB;AACnB,EAAE;AAEK,IAAM,iBAAiB,OAAO,IAAI,EAAE,OAAO;AAAA,EACjD,GAAG;AAAA,EACH,CAAC,IAAI,oBAAoB,OAAO,MAAM,oBAAoB,MAAM,EAAE,GAAG;AAAA,IACpE,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,cAAc;AAAA,IACd,WAAW;AAAA,EACZ;AAAA,EACA,CAAC;AAAA,MACI,oBAAoB,MAAM;AAAA,MAC1B,oBAAoB,MAAM;AAAA,EAC9B,GAAG;AAAA,IACH,iBAAiB;AAAA,EAClB;AAAA,EACA,CAAC;AAAA,MACI,oBAAoB,MAAM;AAAA,MAC1B,oBAAoB,MAAM;AAAA,EAC9B,GAAG;AAAA,IACH,iBAAiB;AAAA,EAClB;AAAA,EACA,CAAC;AAAA,MACI,oBAAoB,MAAM,IAAI,oBAAoB,OAAO;AAAA,MACzD,oBAAoB,MAAM,IAAI,oBAAoB,OAAO;AAAA,EAC7D,GAAG;AAAA,IACH,iBAAiB;AAAA,EAClB;AAAA,EACA,CAAC,KAAK,oBAAoB,MAAM,wBAAwB,GAAG;AAAA,IAC1D,iBAAiB;AAAA,IACjB,WAAW;AAAA,EACZ;AACD,EAAE;AAEK,IAAM,cAAc,OAAO,QAAK,EAAE;AAAA,EACxC,GAAG;AAAA,EACH,cAAc;AAAA,EACd,QAAQ;AAAA,EACR,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,iBAAiB;AAAA,EACjB,WAAW;AAAA,EACX,mBAAmB;AAAA,IAClB,cAAc;AAAA,IACd,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,WAAW;AAAA,IACX,QAAQ;AAAA,EACT;AACD,CAAC;AAEM,IAAM,iBAAiB;AAAA,EAC7B,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,KAAK;AAAA,EACL,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,wBAAwB;AAAA,IACvB,UAAU;AAAA,IACV,OAAO;AAAA,EACR;AAAA,EACA,yBAAyB;AAAA,IACxB,IAAI;AAAA,IACJ,kBAAkB;AAAA,MACjB,OAAO;AAAA,MACP,SAAS;AAAA,IACV;AAAA,EACD;AACD;AAEO,IAAM,qBAAqB;AAAA,EACjC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,OAAO;AACR;;;ADsCM,cAkHM,YAlHN;AAzHS,SAAR,SAA0B;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAeG;AACF,QAAM,UAAU,YAAyB,EAAE,SAAS;AACpD,QAAM,EAAE,OAAO,IAAI,gBAAwB;AAC3C,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,EAAE;AACrC,QAAM,OAAO,QAAQ,QAAQ;AAC7B,QAAM,aAAa,OAAgC,IAAI;AACvD,QAAM,kBAAkB,OAAsB,IAAI;AAElD,YAAU,MAAM;AACf,QAAI,KAAM,UAAS,EAAE;AAAA,EACtB,GAAG,CAAC,IAAI,CAAC;AAET,kBAAgB,MAAM;AACrB,QAAI,CAAC,MAAM;AACV,sBAAgB,UAAU;AAC1B;AAAA,IACD;AACA,UAAM,OAAO,WAAW;AACxB,UAAM,MAAM,gBAAgB;AAC5B,QAAI,QAAQ,QAAQ,OAAO,KAAM;AACjC,SAAK,YAAY;AACjB,UAAMC,MAAK,OAAO,sBAAsB,MAAM;AAC7C,UAAI,WAAW,QAAS,YAAW,QAAQ,YAAY;AACvD,sBAAgB,UAAU;AAAA,IAC3B,CAAC;AACD,WAAO,MAAM,OAAO,qBAAqBA,GAAE;AAAA,EAC5C,GAAG,CAAC,MAAM,OAAO,CAAC;AAElB,YAAU,MAAM;AACf,QAAI,CAAC,KAAM;AACX,UAAMA,MAAK,OAAO,WAAW,MAAM;AAClC,UAAI,WAAW,QAAS,YAAW,QAAQ,YAAY;AAAA,IACxD,GAAG,EAAE;AACL,WAAO,MAAM,OAAO,aAAaA,GAAE;AAAA,EACpC,GAAG,CAAC,IAAI,CAAC;AAGT,QAAM,eAAqE,CAAC,OAAO,UAAU,WAAW;AACvG,QACC,MAAM,SAAS,aACf,WAAW,gBACV;AAED;AAAA,IACD;AAEC,QAAI,WAAW,SAAS;AACvB,sBAAgB,UAAU,WAAW,QAAQ;AAAA,IAC9C;AAEA,QAAI,CAAC,aAAa,YAAY,QAAQ,aAAa,KAAK;AACvD,YAAM,UAAU,OAAO,IAAI;AAC3B,UAAI,CAAC,gBAAiB,gBAAe,OAAO;AAC5C;AAAA,IACD;AAEA,UAAM,YAAY,CAAC,YAAY,WAAW,CAAC,MAAM,QAAQ,OAAO,IAAI,QAAQ,KAAK;AACjF,UAAM,aAAa,MAAM,QAAQ,QAAQ,IAAI,SAAS,CAAC,IAAI;AAC3D,QAAI,CAAC,YAAY,aAAa,cAAc,WAAW,OAAO,WAAW;AACxE,YAAM,UAAU,OAAO,IAAI;AAC3B,UAAI,CAAC,gBAAiB,gBAAe,OAAO;AAC5C;AAAA,IACD;AAGA,UAAM,WAAW,OAAO,QAA2C;AAEnE,QAAG,CAAC,YAAY,CAAC,iBAAgB;AAChC,qBAAe,QAAQ;AAAA,IACxB;AAAA,EACF;AAEA,QAAM,WAAW,OAAO,KAAK;AAC7B,QAAM,cAAc,KAAK,IAAI,UAAU,eAAe,KAAK,GAAG;AAE9D,SACC;AAAA,IAAC;AAAA;AAAA,MACA,IAAI;AAAA,MACJ;AAAA,MACA;AAAA,MACA,eAAa;AAAA,MACb;AAAA,MACA,OAAO,EAAE,OAAO,GAAG,WAAW,KAAK;AAAA,MACnC,WAAW;AAAA,QACV,EAAE,MAAM,UAAU,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE;AAAA,QAC9C,EAAE,MAAM,mBAAmB,SAAS,EAAE,SAAS,EAAE,EAAE;AAAA,MACpD;AAAA,MAEC,+BAAC,eAAY,WAAW,GAAG,SAAQ,YAClC;AAAA,gBACA,oBAACC,UAAA,EAAI,IAAI,EAAE,IAAI,MAAM,IAAI,KAAK,IAAI,IAAI,GACrC;AAAA,UAACA;AAAA,UAAA;AAAA,YACA,IAAI;AAAA,cACH,UAAU;AAAA,cACV,YAAY;AAAA,cACZ,eAAe;AAAA,cACf,OAAO;AAAA,cACP,GAAG;AAAA,YACJ;AAAA,YAEC;AAAA;AAAA,QACF,GACD,IACG;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA;AAAA,YACL,SAAS,CAAC,QAAQ,WAAW;AAC5B,kBAAI,WAAW,YAAY,CAAC,iBAAiB;AAC5C,+BAAe;AAAA,cAChB;AAAA,YACD;AAAA,YACK,OAAO,WACF,MAAM,QAAQ,OAAO,IAAI,UAAU,CAAC,IACpC,WAAW,CAAC,MAAM,QAAQ,OAAO,IAAI,UAAU;AAAA,YAEpD,YAAY;AAAA,YACZ,eAAe,CAAC,GAAG,OAAO,WAAW;AACnC,kBAAI,WAAW,QAAS;AACxB,uBAAS,KAAK;AAAA,YAChB;AAAA,YACA,UAAU;AAAA,YACV,sBAAsB,QAAQ,QAAQ;AAAA,YACtC,eAAe;AAAA,YACf,aAAa;AAAA,YACb,OAAO;AAAA,cACL,QAAQ;AAAA,cACR,OAAO;AAAA,YACT;AAAA,YACA,WAAW;AAAA,cACT,SAAQ;AAAA,gBACN,IAAI;AAAA,gBACJ,IAAG;AAAA,kBACT,WAAW;AAAA,kBACX,IAAI;AAAA,kBACJ,WAAW;AAAA,kBACX,gBAAgB;AAAA,gBACjB;AAAA,gBACO,KAAK;AAAA,cACP;AAAA,YACF;AAAA,YACA,eAAc;AAAA,YAEd,cAAc,CAAC,SAAS,QAAQ,EAAE,SAAS,GAAG,eAAc;AAC1D,oBAAM,EAAE,KAAK,SAAS,GAAG,YAAY,IAAI;AAGzC,oBAAM,aAAa,QAAQ,KAAK,OAAK,EAAE,OAAO,OAAO,EAAE;AAEvD,qBACA;AAAA,gBAAC;AAAA;AAAA,kBAEE,GAAG;AAAA,kBACJ,SAAS,CAAC,UAAU;AAClB,wBAAI,CAAC,YAAY,UAAU;AACzB,4BAAM,eAAe;AACrB,4BAAM,gBAAgB;AACtB,0BAAI,WAAW,SAAS;AACtB,wCAAgB,UAAU,WAAW,QAAQ;AAAA,sBAC/C;AACA,4BAAM,UAAU,OAAO,IAAI;AAC3B,0BAAI,CAAC,gBAAiB,gBAAe,OAAO;AAC5C;AAAA,oBACF;AACA,8BAAU,KAAK;AAAA,kBACjB;AAAA,kBAEA;AAAA,oBAAC;AAAA;AAAA,sBACC,WAAS;AAAA,sBACT,QAAQ,cAAY;AAAA,sBACpB;AAAA,sBACA,UAAU,WAAW,YAAY,OAAO;AAAA,sBACxC,WAAW;AAAA,wBACT,IAAG;AAAA,0BACD,eAAc;AAAA,0BACd,mBAAkB;AAAA,wBACpB;AAAA,sBACF;AAAA;AAAA,kBACF;AAAA;AAAA,gBA3BK;AAAA,cA4BP;AAAA,YACF;AAAA,YACA,SAAS;AAAA,YAET,SAAS,YACN,CAAC,WAAyB,OAAO,WAAU,yBAAyB,OAAO,SAC3E;AAAA,YAEH,gBAAgB,CAAC,WAAyB,OAAO;AAAA,YACjD,cAAc,CAAC,WAAyB,OAAO;AAAA,YAC/C,mBAAmB,CAAC,WAAyB,OAAO,YAAU;AAAA,YAC9D,sBAAsB,CAAC,QAAsB,UAAU,OAAO,OAAO,OAAO;AAAA,YAC5E,eAAe,CAACC,UAAS,EAAE,WAAW,MAAM;AAC1C,qBAAOA,SAAQ,OAAO,YAAU;AAE9B,sBAAM,YAAY,OAAO,UAAU,YAAY;AAE/C,sBAAM,WAAW,WAAW,YAAY,EAAE,MAAM,GAAG;AAEnD,uBAAO,SAAS,MAAM,SAAO,UAAU,SAAS,GAAG,CAAC;AAAA,cACtD,CAAC;AAAA,YACH;AAAA,YAEA,aAAa,CAAC,WAAW;AACvB,qBACA,qBAACD,UAAA,EAAI,KAAK,OAAO,WAAW,KAAK,IAAI,gBAC1C;AAAA,oCAACA,UAAA,EAAW,IAAI,EAAE,UAAU,IAAI,OAAO,gCAAgC,YAAY,EAAE,GAAG;AAAA,gBACjF;AAAA,kBAAC;AAAA;AAAA,oBACP,WAAS;AAAA,oBACT,WAAS;AAAA,oBACT,aAAY;AAAA,oBACZ,OAAO;AAAA,oBACP,UAAU,CAAC,UAAU,SAAS,MAAM,OAAO,KAAK;AAAA,oBAChD,YAAY;AAAA,sBACX,GAAG,OAAO;AAAA,sBACV,OAAO;AAAA,sBACP,QAAO,CAAC,MAAwC;AAC/C,0BAAE,eAAe;AAAA,sBAClB;AAAA,oBACD;AAAA;AAAA,gBACM;AAAA,iBACF;AAAA,YACD;AAAA,YAED,aAAa,CAAC,MAAI;AAEhB,qBAAO,qBAAC,QACN;AAAA,oCAACA,UAAA,EAAI,WAAW,GAAGE,qBAAoB,UAAU,IAAI,IAAI,oBAC9D,YAAE,UAAU,yBACL,qBAACF,UAAA,EAAI,WAAU,QAAO,IAAI,EAAC,SAAQ,QAAO,YAAW,UAAS,KAAI,EAAC,GAAG;AAAA,sCAACA,UAAA,EAAsB,IAAI,EAAE,UAAU,GAAG,GAAG;AAAA,kBAAG;AAAA,mBAAe,IACpI,EAAE,OACL;AAAA,gBAEA,oBAACA,UAAA,EAAI,WAAU,MAAK,IAAI,EAAC,SAAQ,GAAG,QAAQ,EAAC,GAAG,WAAW,GAAGE,qBAAoB,OAAO,IAAK,YAAE,UAAS;AAAA,mBAP3F,EAAE,GAQlB;AAAA,YACF;AAAA;AAAA,QACF;AAAA,QACH,qBACA;AAAA,UAACF;AAAA,UAAA;AAAA,YACA,IAAI;AAAA,cACH,WAAW;AAAA,cACX,IAAI;AAAA,cACJ,IAAI;AAAA,YACL;AAAA,YAEA;AAAA,cAAC;AAAA;AAAA,gBACA,SAAQ;AAAA,gBACR,MAAK;AAAA,gBACL,WAAW,oBAACA,UAAA,EAAQ;AAAA,gBACpB,SAAS;AAAA,gBACT,IAAI;AAAA,kBACH,OAAO;AAAA,kBACP,gBAAgB;AAAA,kBAChB,IAAI;AAAA,kBACJ,OAAO;AAAA,kBACP,YAAY;AAAA,kBACZ,eAAe;AAAA,gBAChB;AAAA,gBACA;AAAA;AAAA,YAED;AAAA;AAAA,QACD,IACG;AAAA,SACF;AAAA;AAAA,EACJ;AAEF;AAOA,SAAS,YAAY;AAAA,EACnB;AAAA,EACA,GAAG;AACL,GAE0C;AACxC,SACE,oBAACA,UAAA,EAAK,GAAG,OAAO,IAAI,EAAE,WAAW,QAAQ,iBAAiB,cAAc,GACrE,UACH;AAEJ;AAEA,SAAS,gBAAgB,OAA2D;AAClF,QAAM,EAAE,UAAU,IAAI,GAAG,MAAM,IAAI;AAKnC,QAAM,cAAc,OAAO,OAAO,aAAa,CAAC,IAAI;AACpD,QAAM,UAAU,OAAO,aAAa,aAAc,SAAmC,IAAI;AAEzF,SACE,oBAACA,UAAA,EAAK,GAAG,OAAO,IAAI,aACjB,mBACH;AAEJ;","names":["autocompleteClasses","default","id","default","options","autocompleteClasses"]}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import {
|
|
2
|
+
FieldHelperText
|
|
3
|
+
} from "./chunk-MI64T62E.mjs";
|
|
4
|
+
import {
|
|
5
|
+
Explanation_default,
|
|
6
|
+
getFieldExplanation,
|
|
7
|
+
mergeFieldSx
|
|
8
|
+
} from "./chunk-UTVSYS6S.mjs";
|
|
9
|
+
import {
|
|
10
|
+
TelPhoneInput
|
|
11
|
+
} from "./chunk-OGNGPI3M.mjs";
|
|
12
|
+
import "./chunk-VYD3PDBB.mjs";
|
|
13
|
+
import {
|
|
14
|
+
MuiFormLabel,
|
|
15
|
+
default as default3
|
|
16
|
+
} from "./chunk-T4X375IG.mjs";
|
|
17
|
+
import "./chunk-MDAUF7IL.mjs";
|
|
18
|
+
import "./chunk-JIU5GVM7.mjs";
|
|
19
|
+
import "./chunk-4Q54P737.mjs";
|
|
20
|
+
import "./chunk-OP6LKXPA.mjs";
|
|
21
|
+
import "./chunk-ZVFYOXDE.mjs";
|
|
22
|
+
import {
|
|
23
|
+
default as default2
|
|
24
|
+
} from "./chunk-S6EZVRZC.mjs";
|
|
25
|
+
import "./chunk-FJ6ZGZIA.mjs";
|
|
26
|
+
|
|
27
|
+
// src/components/compound/UseForm/src/Fields/TelField.tsx
|
|
28
|
+
import { Controller, useFormContext } from "react-hook-form";
|
|
29
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
30
|
+
var TelField = ({ field }) => {
|
|
31
|
+
const { control, getValues } = useFormContext();
|
|
32
|
+
const { name, label, required, disabled, sx, size, slotProps, errorMsg, defaultValue } = field;
|
|
33
|
+
const telSlot = slotProps;
|
|
34
|
+
return /* @__PURE__ */ jsx(
|
|
35
|
+
Controller,
|
|
36
|
+
{
|
|
37
|
+
control,
|
|
38
|
+
name,
|
|
39
|
+
defaultValue: defaultValue ?? "",
|
|
40
|
+
render: ({ field: controllerField, fieldState: { error } }) => {
|
|
41
|
+
const { onChange, value } = controllerField;
|
|
42
|
+
const helperTextNode = /* @__PURE__ */ jsx(FieldHelperText, { error, errorMsg, helpers: [field.helperText] });
|
|
43
|
+
return /* @__PURE__ */ jsxs(
|
|
44
|
+
default3,
|
|
45
|
+
{
|
|
46
|
+
disabled,
|
|
47
|
+
required,
|
|
48
|
+
error: !!error,
|
|
49
|
+
fullWidth: true,
|
|
50
|
+
size: "small",
|
|
51
|
+
sx: mergeFieldSx(size, sx),
|
|
52
|
+
children: [
|
|
53
|
+
/* @__PURE__ */ jsxs(default2, { sx: { display: "flex", alignItems: "center", justifyContent: "flex-start", mb: 0.5 }, children: [
|
|
54
|
+
/* @__PURE__ */ jsx(MuiFormLabel, { component: "legend", sx: { mr: 1 }, children: label }),
|
|
55
|
+
/* @__PURE__ */ jsx(default2, { sx: { display: "inline-flex" }, children: /* @__PURE__ */ jsx(Explanation_default, { explanation: getFieldExplanation(field) }) })
|
|
56
|
+
] }),
|
|
57
|
+
/* @__PURE__ */ jsx(default2, { sx: { py: 1, width: "100%" }, children: /* @__PURE__ */ jsx(
|
|
58
|
+
TelPhoneInput,
|
|
59
|
+
{
|
|
60
|
+
...telSlot,
|
|
61
|
+
value: value ?? "",
|
|
62
|
+
onChange: (v) => {
|
|
63
|
+
const next = v ?? "";
|
|
64
|
+
onChange(next);
|
|
65
|
+
field.onChange?.(next, getValues());
|
|
66
|
+
},
|
|
67
|
+
defaultCountry: telSlot?.defaultCountry,
|
|
68
|
+
placeholder: telSlot?.placeholder,
|
|
69
|
+
inputProps: {
|
|
70
|
+
...telSlot?.inputProps
|
|
71
|
+
},
|
|
72
|
+
iconComponent: telSlot?.iconComponent,
|
|
73
|
+
disabled,
|
|
74
|
+
error: !!error
|
|
75
|
+
}
|
|
76
|
+
) }),
|
|
77
|
+
helperTextNode
|
|
78
|
+
]
|
|
79
|
+
}
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
);
|
|
84
|
+
};
|
|
85
|
+
export {
|
|
86
|
+
TelField
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=TelField-LOGRVZ4I.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/compound/UseForm/src/Fields/TelField.tsx"],"sourcesContent":["import { Controller, useFormContext } from 'react-hook-form';\nimport { Box } from '@/ele/Box';\nimport { FormControl, FormLabel } from '@/ele/Form';\nimport { FieldHelperText } from '../_utils/helperText';\nimport { FieldConfig, FormTypeMap, InferFormDataType } from '../_utils';\nimport Explanation from './Explanation';\nimport { FIELD_TYPEs } from '../_utils/constants';\nimport type { TelSlotProps } from '../_utils/slotProps';\nimport { TelPhoneInput } from '@/ele/Input/src/TelPhoneInput';\nimport { getFieldExplanation, mergeFieldSx } from '../_utils/helpers';\n\ninterface TelFieldProps<T extends FormTypeMap = FormTypeMap> {\n field: Extract<FieldConfig<T>, { type: typeof FIELD_TYPEs.tel }>;\n}\n\nexport const TelField = <T extends FormTypeMap = FormTypeMap>({ field }: TelFieldProps<T>) => {\n const { control, getValues } = useFormContext();\n const { name, label, required, disabled, sx, size, slotProps, errorMsg, defaultValue } = field;\n\n const telSlot = slotProps as TelSlotProps | undefined;\n\n return (\n <Controller\n control={control}\n name={name}\n defaultValue={defaultValue ?? ''}\n render={({ field: controllerField, fieldState: { error } }) => {\n const { onChange, value } = controllerField;\n const helperTextNode = <FieldHelperText error={error} errorMsg={errorMsg} helpers={[field.helperText]} />;\n\n return (\n <FormControl\n disabled={disabled}\n required={required}\n error={!!error}\n fullWidth\n size=\"small\"\n sx={mergeFieldSx(size, sx)}\n >\n <Box sx={{ display: 'flex', alignItems: 'center', justifyContent: 'flex-start', mb: 0.5 }}>\n <FormLabel component=\"legend\" sx={{ mr: 1 }}>{label}</FormLabel>\n <Box sx={{ display: 'inline-flex' }}>\n <Explanation explanation={getFieldExplanation(field)} />\n </Box>\n </Box>\n\n <Box sx={{ py: 1, width: '100%' }}>\n <TelPhoneInput\n {...telSlot}\n value={value ?? ''}\n onChange={(v) => {\n const next = v ?? '';\n onChange(next);\n (field).onChange?.(next, getValues() as InferFormDataType<T>);\n }}\n defaultCountry={telSlot?.defaultCountry}\n placeholder={telSlot?.placeholder}\n inputProps={{\n ...telSlot?.inputProps,\n }}\n iconComponent={telSlot?.iconComponent}\n disabled={disabled}\n error={!!error}\n />\n </Box>\n\n {helperTextNode}\n </FormControl>\n );\n }}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,YAAY,sBAAsB;AA4BZ,cAWnB,YAXmB;AAbxB,IAAM,WAAW,CAAsC,EAAE,MAAM,MAAwB;AAC5F,QAAM,EAAE,SAAS,UAAU,IAAI,eAAe;AAC9C,QAAM,EAAE,MAAM,OAAO,UAAU,UAAU,IAAI,MAAM,WAAW,UAAU,aAAa,IAAI;AAEzF,QAAM,UAAU;AAEhB,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,cAAc,gBAAgB;AAAA,MAC9B,QAAQ,CAAC,EAAE,OAAO,iBAAiB,YAAY,EAAE,MAAM,EAAE,MAAM;AAC7D,cAAM,EAAE,UAAU,MAAM,IAAI;AAC5B,cAAM,iBAAiB,oBAAC,mBAAgB,OAAc,UAAoB,SAAS,CAAC,MAAM,UAAU,GAAG;AAEvG,eACE;AAAA,UAACA;AAAA,UAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA,OAAO,CAAC,CAAC;AAAA,YACT,WAAS;AAAA,YACT,MAAK;AAAA,YACL,IAAI,aAAa,MAAM,EAAE;AAAA,YAEzB;AAAA,mCAACA,UAAA,EAAI,IAAI,EAAE,SAAS,QAAQ,YAAY,UAAU,gBAAgB,cAAc,IAAI,IAAI,GACtF;AAAA,oCAAC,gBAAU,WAAU,UAAS,IAAI,EAAE,IAAI,EAAE,GAAI,iBAAM;AAAA,gBACpD,oBAACA,UAAA,EAAI,IAAI,EAAE,SAAS,cAAc,GAChC,8BAAC,uBAAY,aAAa,oBAAoB,KAAK,GAAG,GACxD;AAAA,iBACF;AAAA,cAEA,oBAACA,UAAA,EAAI,IAAI,EAAE,IAAI,GAAG,OAAO,OAAO,GAC9B;AAAA,gBAAC;AAAA;AAAA,kBACE,GAAG;AAAA,kBACJ,OAAO,SAAS;AAAA,kBAChB,UAAU,CAAC,MAAM;AACf,0BAAM,OAAO,KAAK;AAClB,6BAAS,IAAI;AACb,oBAAC,MAAO,WAAW,MAAM,UAAU,CAAyB;AAAA,kBAC9D;AAAA,kBACA,gBAAgB,SAAS;AAAA,kBACzB,aAAa,SAAS;AAAA,kBACtB,YAAY;AAAA,oBACV,GAAG,SAAS;AAAA,kBACd;AAAA,kBACA,eAAe,SAAS;AAAA,kBACxB;AAAA,kBACA,OAAO,CAAC,CAAC;AAAA;AAAA,cACX,GACF;AAAA,cAEC;AAAA;AAAA;AAAA,QACH;AAAA,MAEJ;AAAA;AAAA,EACF;AAEJ;","names":["default"]}
|