@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,356 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CLASSNAMEs
|
|
3
|
+
} from "./chunk-CWFWRZWU.mjs";
|
|
4
|
+
import {
|
|
5
|
+
ShinyPaper_default
|
|
6
|
+
} from "./chunk-3VUAM2GY.mjs";
|
|
7
|
+
import {
|
|
8
|
+
doodlePatternCssVars,
|
|
9
|
+
getDoodlePatternModalBackgroundSx
|
|
10
|
+
} from "./chunk-UMJ5SCIQ.mjs";
|
|
11
|
+
import {
|
|
12
|
+
IconButton_default
|
|
13
|
+
} from "./chunk-JIU5GVM7.mjs";
|
|
14
|
+
import {
|
|
15
|
+
default54 as default3
|
|
16
|
+
} from "./chunk-ZVFYOXDE.mjs";
|
|
17
|
+
import {
|
|
18
|
+
Header
|
|
19
|
+
} from "./chunk-4RPFRNXG.mjs";
|
|
20
|
+
import {
|
|
21
|
+
default as default2,
|
|
22
|
+
mergeSx
|
|
23
|
+
} from "./chunk-S6EZVRZC.mjs";
|
|
24
|
+
import {
|
|
25
|
+
__commonJS,
|
|
26
|
+
__toESM
|
|
27
|
+
} from "./chunk-FJ6ZGZIA.mjs";
|
|
28
|
+
|
|
29
|
+
// node_modules/classnames/index.js
|
|
30
|
+
var require_classnames = __commonJS({
|
|
31
|
+
"node_modules/classnames/index.js"(exports, module) {
|
|
32
|
+
"use strict";
|
|
33
|
+
(function() {
|
|
34
|
+
"use strict";
|
|
35
|
+
var hasOwn = {}.hasOwnProperty;
|
|
36
|
+
function classNames() {
|
|
37
|
+
var classes = "";
|
|
38
|
+
for (var i = 0; i < arguments.length; i++) {
|
|
39
|
+
var arg = arguments[i];
|
|
40
|
+
if (arg) {
|
|
41
|
+
classes = appendClass(classes, parseValue(arg));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return classes;
|
|
45
|
+
}
|
|
46
|
+
function parseValue(arg) {
|
|
47
|
+
if (typeof arg === "string" || typeof arg === "number") {
|
|
48
|
+
return arg;
|
|
49
|
+
}
|
|
50
|
+
if (typeof arg !== "object") {
|
|
51
|
+
return "";
|
|
52
|
+
}
|
|
53
|
+
if (Array.isArray(arg)) {
|
|
54
|
+
return classNames.apply(null, arg);
|
|
55
|
+
}
|
|
56
|
+
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes("[native code]")) {
|
|
57
|
+
return arg.toString();
|
|
58
|
+
}
|
|
59
|
+
var classes = "";
|
|
60
|
+
for (var key in arg) {
|
|
61
|
+
if (hasOwn.call(arg, key) && arg[key]) {
|
|
62
|
+
classes = appendClass(classes, key);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return classes;
|
|
66
|
+
}
|
|
67
|
+
function appendClass(value, newClass) {
|
|
68
|
+
if (!newClass) {
|
|
69
|
+
return value;
|
|
70
|
+
}
|
|
71
|
+
if (value) {
|
|
72
|
+
return value + " " + newClass;
|
|
73
|
+
}
|
|
74
|
+
return value + newClass;
|
|
75
|
+
}
|
|
76
|
+
if (typeof module !== "undefined" && module.exports) {
|
|
77
|
+
classNames.default = classNames;
|
|
78
|
+
module.exports = classNames;
|
|
79
|
+
} else if (typeof define === "function" && typeof define.amd === "object" && define.amd) {
|
|
80
|
+
define("classnames", [], function() {
|
|
81
|
+
return classNames;
|
|
82
|
+
});
|
|
83
|
+
} else {
|
|
84
|
+
window.classNames = classNames;
|
|
85
|
+
}
|
|
86
|
+
})();
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
// src/components/elemental/Modal/src/index.ts
|
|
91
|
+
import { default as default4 } from "@mui/material/Modal";
|
|
92
|
+
|
|
93
|
+
// src/components/elemental/Modal/src/MuiModal/MuiModal.tsx
|
|
94
|
+
var import_classnames = __toESM(require_classnames());
|
|
95
|
+
import { useCallback, useMemo } from "react";
|
|
96
|
+
import Modal from "@mui/material/Modal";
|
|
97
|
+
import { useTheme, useMediaQuery } from "@mui/material";
|
|
98
|
+
import Tooltip from "@mui/material/Tooltip";
|
|
99
|
+
|
|
100
|
+
// src/_utils/_const/index.ts
|
|
101
|
+
var COMPONENTs = {
|
|
102
|
+
modal: {
|
|
103
|
+
zIndex: 1300
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
// src/components/elemental/Modal/src/MuiModal/theme.ts
|
|
108
|
+
var MUI_MODAL_PAPER_RADIUS = "20px";
|
|
109
|
+
var muiModalRootSx = {
|
|
110
|
+
...doodlePatternCssVars,
|
|
111
|
+
"--closeIconColor": "var(--mui-palette-error-main)",
|
|
112
|
+
"--bgC": "var(--mui-palette-background-default)",
|
|
113
|
+
"--shadow": "var(--shadow-outset-1)",
|
|
114
|
+
"--modalOverlayBg": "radial-gradient(ellipse 120% 100% at 50% 50%, var(--bgC) 0%, transparent 70%)"
|
|
115
|
+
};
|
|
116
|
+
var muiModalPaperSx = {
|
|
117
|
+
"&.MuiPaper-root": {
|
|
118
|
+
boxShadow: "var(--shadow)",
|
|
119
|
+
backgroundColor: "var(--bgC)",
|
|
120
|
+
borderRadius: MUI_MODAL_PAPER_RADIUS,
|
|
121
|
+
display: "flex",
|
|
122
|
+
flexDirection: "column",
|
|
123
|
+
maxHeight: "var(--max-h)",
|
|
124
|
+
maxWidth: "var(--max-w)",
|
|
125
|
+
padding: 0,
|
|
126
|
+
paddingTop: 0,
|
|
127
|
+
width: "-webkit-fill-available",
|
|
128
|
+
height: "-webkit-fill-available"
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
// src/components/elemental/Modal/src/MuiModal/MuiModal.tsx
|
|
133
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
134
|
+
function MuiModal({
|
|
135
|
+
children,
|
|
136
|
+
openProps,
|
|
137
|
+
size = {
|
|
138
|
+
w: "auto",
|
|
139
|
+
h: "auto"
|
|
140
|
+
},
|
|
141
|
+
maxHeight = "95vh",
|
|
142
|
+
maxWidth = "95vw",
|
|
143
|
+
onClose = () => {
|
|
144
|
+
},
|
|
145
|
+
title = "",
|
|
146
|
+
titleIcon = null,
|
|
147
|
+
closeButton = null,
|
|
148
|
+
slots,
|
|
149
|
+
slotProps,
|
|
150
|
+
...rest
|
|
151
|
+
}) {
|
|
152
|
+
const [open, setOpen] = openProps;
|
|
153
|
+
const theme = useTheme();
|
|
154
|
+
const isSmDown = useMediaQuery(theme.breakpoints.down("sm"));
|
|
155
|
+
const effectiveSize = useMemo(() => {
|
|
156
|
+
if (isSmDown) {
|
|
157
|
+
return { width: "calc(100vw - 2%)", height: "calc(100vh - 2%)" };
|
|
158
|
+
}
|
|
159
|
+
return {
|
|
160
|
+
width: size.w || "auto",
|
|
161
|
+
height: size.h || "auto"
|
|
162
|
+
};
|
|
163
|
+
}, [isSmDown, size.w, size.h]);
|
|
164
|
+
const {
|
|
165
|
+
closeButton: CloseButtonSlot = IconButton_default,
|
|
166
|
+
closeIcon: CloseIconSlot = default3
|
|
167
|
+
} = slots || {};
|
|
168
|
+
const {
|
|
169
|
+
closeButton: closeButtonAllProps
|
|
170
|
+
} = slotProps || {};
|
|
171
|
+
const { closeIcon: closeIconProps, ...closeButtonProps } = closeButtonAllProps || { sx: {} };
|
|
172
|
+
const handleClose = useCallback(() => {
|
|
173
|
+
if (typeof setOpen === "function") {
|
|
174
|
+
setOpen(false);
|
|
175
|
+
}
|
|
176
|
+
onClose?.();
|
|
177
|
+
}, [setOpen, onClose]);
|
|
178
|
+
const renderCloseButton = useMemo(() => {
|
|
179
|
+
if (closeButton) return closeButton;
|
|
180
|
+
return /* @__PURE__ */ jsx(CloseButtonSlot, { onClick: handleClose, size: "small", "aria-label": "close", ...closeButtonProps, sx: {
|
|
181
|
+
padding: 0,
|
|
182
|
+
...closeButtonProps?.sx
|
|
183
|
+
}, children: /* @__PURE__ */ jsx(
|
|
184
|
+
CloseIconSlot,
|
|
185
|
+
{
|
|
186
|
+
...closeIconProps,
|
|
187
|
+
fontSize: "1rem",
|
|
188
|
+
sx: {
|
|
189
|
+
color: "var(--closeIconColor)",
|
|
190
|
+
...closeIconProps?.sx
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
) });
|
|
194
|
+
}, [closeButton, handleClose, CloseButtonSlot, CloseIconSlot, closeButtonProps, closeIconProps]);
|
|
195
|
+
const modalClass = (0, import_classnames.default)(CLASSNAMEs.elemental.modal, rest.className);
|
|
196
|
+
return /* @__PURE__ */ jsx(
|
|
197
|
+
Modal,
|
|
198
|
+
{
|
|
199
|
+
open,
|
|
200
|
+
onClose,
|
|
201
|
+
className: modalClass,
|
|
202
|
+
...rest,
|
|
203
|
+
sx: {
|
|
204
|
+
zIndex: COMPONENTs.modal.zIndex,
|
|
205
|
+
padding: "1%",
|
|
206
|
+
display: "flex",
|
|
207
|
+
justifyContent: "center",
|
|
208
|
+
alignItems: "center",
|
|
209
|
+
background: "transparent"
|
|
210
|
+
// backdropFilter: 'blur(5px)', // causing performance issues when blurring large areas
|
|
211
|
+
},
|
|
212
|
+
children: /* @__PURE__ */ jsx(
|
|
213
|
+
default2,
|
|
214
|
+
{
|
|
215
|
+
style: {
|
|
216
|
+
"--w": effectiveSize.width,
|
|
217
|
+
"--h": effectiveSize.height,
|
|
218
|
+
"--max-h": maxHeight,
|
|
219
|
+
"--max-w": maxWidth,
|
|
220
|
+
...slotProps?.header?.style?.headerImg ? { "--headerImg": slotProps.header.style.headerImg } : {},
|
|
221
|
+
...slotProps?.container?.style?.bgColor ? { "--bgC": slotProps.container.style.bgColor } : {},
|
|
222
|
+
...slotProps?.container?.style?.shadow ? { "--shadow": slotProps.container.style.shadow } : {}
|
|
223
|
+
},
|
|
224
|
+
sx: mergeSx(muiModalRootSx, {
|
|
225
|
+
display: "flex",
|
|
226
|
+
justifyContent: "center",
|
|
227
|
+
height: { xs: "calc(100vh - 2%)", md: "var(--h)" },
|
|
228
|
+
width: { xs: "calc(100vw - 2%)", md: "var(--w)" },
|
|
229
|
+
borderRadius: MUI_MODAL_PAPER_RADIUS
|
|
230
|
+
}),
|
|
231
|
+
children: /* @__PURE__ */ jsx(ShinyPaper_default, { sx: mergeSx(muiModalPaperSx, slotProps?.container?.sx), children: /* @__PURE__ */ jsxs(BackgroundContainer, { overridePatternUrl: slotProps?.header?.style?.headerImg, children: [
|
|
232
|
+
/* @__PURE__ */ jsx(
|
|
233
|
+
MuiModalHeader,
|
|
234
|
+
{
|
|
235
|
+
title,
|
|
236
|
+
titleIcon,
|
|
237
|
+
closeButton: renderCloseButton
|
|
238
|
+
}
|
|
239
|
+
),
|
|
240
|
+
/* @__PURE__ */ jsx(default2, { sx: {
|
|
241
|
+
padding: "16px",
|
|
242
|
+
paddingTop: "8px",
|
|
243
|
+
flexGrow: 1,
|
|
244
|
+
height: "-webkit-fill-available",
|
|
245
|
+
overflow: "hidden",
|
|
246
|
+
display: "flex",
|
|
247
|
+
flexDirection: "column"
|
|
248
|
+
}, children })
|
|
249
|
+
] }) })
|
|
250
|
+
}
|
|
251
|
+
)
|
|
252
|
+
}
|
|
253
|
+
);
|
|
254
|
+
}
|
|
255
|
+
function BackgroundContainer({ children, overridePatternUrl }) {
|
|
256
|
+
const isDefaultPattern = !overridePatternUrl;
|
|
257
|
+
return /* @__PURE__ */ jsxs(
|
|
258
|
+
default2,
|
|
259
|
+
{
|
|
260
|
+
sx: {
|
|
261
|
+
display: "flex",
|
|
262
|
+
flexDirection: "column",
|
|
263
|
+
overflow: "hidden",
|
|
264
|
+
flexGrow: 1,
|
|
265
|
+
borderRadius: MUI_MODAL_PAPER_RADIUS,
|
|
266
|
+
position: "relative"
|
|
267
|
+
},
|
|
268
|
+
children: [
|
|
269
|
+
/* @__PURE__ */ jsx(
|
|
270
|
+
default2,
|
|
271
|
+
{
|
|
272
|
+
sx: {
|
|
273
|
+
position: "absolute",
|
|
274
|
+
inset: 0,
|
|
275
|
+
pointerEvents: "none",
|
|
276
|
+
...isDefaultPattern ? getDoodlePatternModalBackgroundSx() : {
|
|
277
|
+
backgroundImage: "var(--headerImg)",
|
|
278
|
+
backgroundSize: "27px"
|
|
279
|
+
},
|
|
280
|
+
opacity: 0.2
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
),
|
|
284
|
+
/* @__PURE__ */ jsx(default2, { sx: {
|
|
285
|
+
display: "flex",
|
|
286
|
+
flexDirection: "column",
|
|
287
|
+
overflow: "hidden",
|
|
288
|
+
flexGrow: 1,
|
|
289
|
+
borderRadius: MUI_MODAL_PAPER_RADIUS,
|
|
290
|
+
position: "relative",
|
|
291
|
+
zIndex: 1,
|
|
292
|
+
// Circular gradient overlay
|
|
293
|
+
background: "var(--modalOverlayBg)"
|
|
294
|
+
}, children })
|
|
295
|
+
]
|
|
296
|
+
}
|
|
297
|
+
);
|
|
298
|
+
}
|
|
299
|
+
function MuiModalHeader({
|
|
300
|
+
title = "",
|
|
301
|
+
titleIcon = null,
|
|
302
|
+
closeButton = null
|
|
303
|
+
}) {
|
|
304
|
+
return /* @__PURE__ */ jsxs(default2, { sx: {
|
|
305
|
+
display: "flex",
|
|
306
|
+
justifyContent: "center",
|
|
307
|
+
position: "relative"
|
|
308
|
+
}, children: [
|
|
309
|
+
/* @__PURE__ */ jsxs(
|
|
310
|
+
default2,
|
|
311
|
+
{
|
|
312
|
+
sx: {
|
|
313
|
+
display: "flex",
|
|
314
|
+
justifyContent: "center",
|
|
315
|
+
alignItems: "center",
|
|
316
|
+
paddingTop: 1,
|
|
317
|
+
gap: 1,
|
|
318
|
+
maxWidth: "50%"
|
|
319
|
+
},
|
|
320
|
+
children: [
|
|
321
|
+
/* @__PURE__ */ jsx(
|
|
322
|
+
Header,
|
|
323
|
+
{
|
|
324
|
+
sx: {
|
|
325
|
+
textOverflow: "ellipsis",
|
|
326
|
+
overflow: "hidden",
|
|
327
|
+
whiteSpace: "pre"
|
|
328
|
+
},
|
|
329
|
+
children: title
|
|
330
|
+
}
|
|
331
|
+
),
|
|
332
|
+
titleIcon && /* @__PURE__ */ jsx(Header, { sx: { display: "flex", flexShrink: 0 }, children: /* @__PURE__ */ jsx(Tooltip, { title: "Icon", arrow: true, children: /* @__PURE__ */ jsx("span", { children: titleIcon }) }) })
|
|
333
|
+
]
|
|
334
|
+
}
|
|
335
|
+
),
|
|
336
|
+
closeButton && /* @__PURE__ */ jsx(default2, { sx: { position: "absolute", right: "8px", top: "4px" }, children: closeButton })
|
|
337
|
+
] });
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
export {
|
|
341
|
+
MUI_MODAL_PAPER_RADIUS,
|
|
342
|
+
muiModalRootSx,
|
|
343
|
+
muiModalPaperSx,
|
|
344
|
+
MuiModal,
|
|
345
|
+
default4 as default
|
|
346
|
+
};
|
|
347
|
+
/*! Bundled license information:
|
|
348
|
+
|
|
349
|
+
classnames/index.js:
|
|
350
|
+
(*!
|
|
351
|
+
Copyright (c) 2018 Jed Watson.
|
|
352
|
+
Licensed under the MIT License (MIT), see
|
|
353
|
+
http://jedwatson.github.io/classnames
|
|
354
|
+
*)
|
|
355
|
+
*/
|
|
356
|
+
//# sourceMappingURL=chunk-UDREPVEY.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../node_modules/classnames/index.js","../src/components/elemental/Modal/src/index.ts","../src/components/elemental/Modal/src/MuiModal/MuiModal.tsx","../src/_utils/_const/index.ts","../src/components/elemental/Modal/src/MuiModal/theme.ts"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","export { default as Modal } from '@mui/material/Modal'\nexport * from './MuiModal'\n","'use client'\nimport React, { useCallback, useMemo } from 'react'\nimport Modal, { type ModalProps } from '@mui/material/Modal'\nimport type { SxProps } from '@mui/material';\nimport type { Theme } from '@mui/material/styles';\nimport { useTheme, useMediaQuery } from '@mui/material';\nimport classnames from 'classnames';\nimport { CLASSNAMEs } from '@/_utils/_const/classNames';\nimport Tooltip from '@mui/material/Tooltip'\nimport { CloseIcon } from '@/icons/MuiIcon'\n\nimport { COMPONENTs } from '@/_utils/_const'\nimport { mergeSx } from '@/_utils/_func'\nimport { Box as Box } from '@/ele/Box'\nimport { Header as MuiHeader } from '@/ele/Typography'\nimport { ShinyPaper as MuiPaper } from '@/ele/Paper'\nimport { IconButton } from '@/ele/Button'\nimport { getDoodlePatternModalBackgroundSx } from '@/patterns'\nimport { MUI_MODAL_PAPER_RADIUS, muiModalPaperSx, muiModalRootSx } from './theme'\n\n/**\n * extended from Mui Modal\n * \n * [Doc](https://mui.com/material-ui/api/modal/)\n * \n * @param openProps - [open, setOpen]\n */\nexport default function MuiModal({\n children,\n openProps,\n size = {\n w: 'auto',\n h: 'auto',\n },\n maxHeight = '95vh', maxWidth = '95vw',\n\n onClose = () => { },\n title = \"\",\n titleIcon = null,\n closeButton = null,\n slots,\n slotProps,\n ...rest\n}: {\n children?: React.ReactNode;\n openProps: [\n boolean, // open\n (React.Dispatch<React.SetStateAction<boolean>> | React.Dispatch<boolean>) // setOpen\n ];\n size?: {\n w?: string | number;\n h?: string | number;\n },\n maxHeight?: string | number;\n maxWidth?: string | number;\n onClose?: () => void;\n title?: string;\n titleIcon?: React.ReactNode;\n closeButton?: React.ReactNode;\n\n slots?: {\n closeButton?: React.ElementType;\n closeIcon?: React.ElementType;\n };\n slotProps?: {\n container?: {\n style?: {\n bgColor?: string;\n shadow?: string;\n },\n sx?: SxProps<Theme>;\n },\n header?: {\n style?: {\n headerImg: string;\n }\n },\n closeButton?: Partial<React.ComponentProps<typeof IconButton>> & {\n closeIcon?: Partial<React.ComponentProps<typeof CloseIcon>>;\n };\n };\n} & Omit<ModalProps, \"open\" | \"title\">) {\n const [open, setOpen] = openProps\n\n // responsive behavior: on small screens modal should occupy nearly full\n // viewport automatically so users are not staring at a tiny dialog.\n const theme = useTheme();\n const isSmDown = useMediaQuery(theme.breakpoints.down('sm'));\n const effectiveSize = useMemo(() => {\n if (isSmDown) {\n return { width: 'calc(100vw - 2%)', height: 'calc(100vh - 2%)' };\n }\n return {\n width: size.w || 'auto',\n height: size.h || 'auto',\n };\n }, [isSmDown, size.w, size.h]);\n\n const { \n closeButton: CloseButtonSlot = IconButton,\n closeIcon: CloseIconSlot = CloseIcon,\n } = slots || {};\n\n const {\n closeButton: closeButtonAllProps,\n } = slotProps || {};\n\n const { closeIcon: closeIconProps, ...closeButtonProps } = closeButtonAllProps || {sx:{}};\n\n /**\n * Internal close handler that ensures modal state is updated\n */\n const handleClose = useCallback(() => {\n // If setOpen is available (it should be from openProps), use it\n if (typeof setOpen === 'function') {\n setOpen(false);\n }\n // Also call generic onClose if provided\n onClose?.();\n }, [setOpen, onClose]);\n\n /**\n * Determine the close button to render\n * If closeButton is provided, use it\n * Otherwise generate a default IconButton that triggers handleClose\n */\n const renderCloseButton = useMemo(() => {\n if (closeButton) return closeButton;\n \n return (\n <CloseButtonSlot onClick={handleClose} size=\"small\" aria-label=\"close\" {...closeButtonProps} sx={{\n padding: 0,\n ...closeButtonProps?.sx,\n }}>\n <CloseIconSlot\n {...closeIconProps}\n fontSize=\"1rem\"\n sx={{\n color: 'var(--closeIconColor)',\n ...closeIconProps?.sx,\n }}\n />\n </CloseButtonSlot>\n );\n }, [closeButton, handleClose, CloseButtonSlot, CloseIconSlot, closeButtonProps, closeIconProps]);\n\n // ensure the elemental modal classname is always present so tests can target it\n const modalClass = classnames(CLASSNAMEs.elemental.modal, rest.className);\n\n return (\n <Modal\n open={open}\n onClose={onClose}\n className={modalClass}\n {...rest}\n sx={{\n zIndex: COMPONENTs.modal.zIndex,\n padding: \"1%\",\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n background: 'transparent',\n\n // backdropFilter: 'blur(5px)', // causing performance issues when blurring large areas\n }}\n\n >\n <Box\n style={{\n \"--w\": effectiveSize.width,\n \"--h\": effectiveSize.height,\n \"--max-h\": maxHeight,\n \"--max-w\": maxWidth,\n ...(slotProps?.header?.style?.headerImg\n ? { '--headerImg': slotProps.header.style.headerImg }\n : {}),\n ...(slotProps?.container?.style?.bgColor\n ? { '--bgC': slotProps.container.style.bgColor }\n : {}),\n ...(slotProps?.container?.style?.shadow\n ? { '--shadow': slotProps.container.style.shadow }\n : {}),\n } as React.CSSProperties}\n sx={mergeSx(muiModalRootSx, {\n display: \"flex\",\n justifyContent: \"center\",\n height: {xs: 'calc(100vh - 2%)', md: 'var(--h)'},\n width: {xs: 'calc(100vw - 2%)', md: 'var(--w)'},\n borderRadius: MUI_MODAL_PAPER_RADIUS,\n })}>\n <MuiPaper sx={mergeSx(muiModalPaperSx, slotProps?.container?.sx)}>\n <BackgroundContainer overridePatternUrl={slotProps?.header?.style?.headerImg}>\n <MuiModalHeader\n title={title}\n titleIcon={titleIcon}\n closeButton={renderCloseButton}\n />\n\n <Box sx={{\n padding: \"16px\",\n paddingTop: \"8px\",\n flexGrow: 1,\n height: '-webkit-fill-available',\n overflow: 'hidden',\n display: 'flex',\n flexDirection: 'column',\n }}>\n {children}\n </Box>\n </BackgroundContainer>\n </MuiPaper>\n </Box>\n </Modal>\n )\n}\n\n/**\n * Background container for the modal\n * it places a background image and a gradient overlay\n */\nfunction BackgroundContainer({ children, overridePatternUrl }: {\n children?: React.ReactNode;\n overridePatternUrl?: string;\n}) {\n const isDefaultPattern = !overridePatternUrl;\n\n return (\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden',\n flexGrow: 1,\n borderRadius: MUI_MODAL_PAPER_RADIUS,\n position: 'relative',\n }}>\n <Box \n sx={{\n position: 'absolute',\n inset: 0,\n pointerEvents: 'none',\n \n ...(isDefaultPattern\n ? getDoodlePatternModalBackgroundSx()\n : {\n backgroundImage: 'var(--headerImg)',\n backgroundSize: '27px',\n }),\n opacity: 0.2,\n }} \n />\n <Box sx={{\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden',\n flexGrow: 1,\n borderRadius: MUI_MODAL_PAPER_RADIUS,\n position: 'relative',\n zIndex: 1,\n\n // Circular gradient overlay\n background: 'var(--modalOverlayBg)',\n }}>\n {children}\n </Box>\n </Box>\n )\n}\n\nfunction MuiModalHeader({\n title = '',\n titleIcon = null,\n closeButton = null,\n}: {\n title?: string;\n titleIcon?: React.ReactNode;\n closeButton?: React.ReactNode;\n}) {\n return (\n <Box sx={{\n display: 'flex',\n justifyContent: 'center',\n position: 'relative',\n }}>\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n paddingTop: 1,\n gap: 1,\n maxWidth: '50%',\n }}\n >\n <MuiHeader\n sx={{\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n whiteSpace: 'pre',\n }}\n >\n {title}\n </MuiHeader>\n {titleIcon && (\n <MuiHeader sx={{ display: 'flex', flexShrink: 0, }}>\n <Tooltip title=\"Icon\" arrow>\n <span>{titleIcon}</span>\n </Tooltip>\n </MuiHeader>\n )}\n </Box>\n\n {closeButton && (\n <Box sx={{ position: 'absolute', right: '8px', top: '4px' }}>{closeButton}</Box>\n )}\n </Box>\n\n );\n};\n\n","export const COMPONENTs = {\n modal:{\n zIndex: 1300,\n }\n}\n","import type { SxProps, Theme } from '@mui/material/styles'\nimport { doodlePatternCssVars } from '@/patterns/doodlePatternStyles'\n\nexport const MUI_MODAL_PAPER_RADIUS = '20px'\n\nexport const muiModalRootSx: SxProps<Theme> = {\n ...doodlePatternCssVars,\n '--closeIconColor': 'var(--mui-palette-error-main)',\n '--bgC': 'var(--mui-palette-background-default)',\n '--shadow': 'var(--shadow-outset-1)',\n '--modalOverlayBg': 'radial-gradient(ellipse 120% 100% at 50% 50%, var(--bgC) 0%, transparent 70%)',\n}\n\n/** Internal paper chrome. Pass as the first `sx` array item so host `slotProps.container.sx` merges instead of replacing `&.MuiPaper-root`. */\nexport const muiModalPaperSx: SxProps<Theme> = {\n '&.MuiPaper-root': {\n boxShadow: 'var(--shadow)',\n backgroundColor: 'var(--bgC)',\n borderRadius: MUI_MODAL_PAPER_RADIUS,\n display: 'flex',\n flexDirection: 'column',\n maxHeight: 'var(--max-h)',\n maxWidth: 'var(--max-w)',\n padding: 0,\n paddingTop: 0,\n width: '-webkit-fill-available',\n height: '-webkit-fill-available',\n },\n}\n"],"mappings":"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","names":["default","default","classnames"]}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import {
|
|
2
|
+
StyledMenuItem
|
|
3
|
+
} from "./chunk-HR3A4H4E.mjs";
|
|
4
|
+
import {
|
|
5
|
+
default3 as default7,
|
|
6
|
+
default4 as default8
|
|
7
|
+
} from "./chunk-TDRA5EZI.mjs";
|
|
8
|
+
import {
|
|
9
|
+
default as default4,
|
|
10
|
+
default2 as default5,
|
|
11
|
+
default4 as default6
|
|
12
|
+
} from "./chunk-T4X375IG.mjs";
|
|
13
|
+
import {
|
|
14
|
+
default18 as default2,
|
|
15
|
+
default69 as default3
|
|
16
|
+
} from "./chunk-ZVFYOXDE.mjs";
|
|
17
|
+
import {
|
|
18
|
+
mergeSx
|
|
19
|
+
} from "./chunk-S6EZVRZC.mjs";
|
|
20
|
+
|
|
21
|
+
// src/components/elemental/Select/src/MuiSelect/MuiSelect.tsx
|
|
22
|
+
import { forwardRef } from "react";
|
|
23
|
+
import MuiSelect from "@mui/material/Select";
|
|
24
|
+
import { styled } from "@mui/material/styles";
|
|
25
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
26
|
+
var Select = forwardRef(({
|
|
27
|
+
label,
|
|
28
|
+
value,
|
|
29
|
+
onChange,
|
|
30
|
+
options = [],
|
|
31
|
+
error,
|
|
32
|
+
inputProps,
|
|
33
|
+
minWidth = "120px",
|
|
34
|
+
minPadding = false,
|
|
35
|
+
required = false,
|
|
36
|
+
disableRequiredLabel = false,
|
|
37
|
+
multiple = false,
|
|
38
|
+
slotProps,
|
|
39
|
+
helperText,
|
|
40
|
+
...props
|
|
41
|
+
}, ref) => {
|
|
42
|
+
return /* @__PURE__ */ jsxs(
|
|
43
|
+
default4,
|
|
44
|
+
{
|
|
45
|
+
fullWidth: props.fullWidth,
|
|
46
|
+
style: { "--min-w": minWidth },
|
|
47
|
+
sx: mergeSx({ minWidth: "var(--min-w)" }, props.sx),
|
|
48
|
+
...slotProps?.formControl,
|
|
49
|
+
required,
|
|
50
|
+
error,
|
|
51
|
+
children: [
|
|
52
|
+
!disableRequiredLabel && /* @__PURE__ */ jsx(default6, { children: label }),
|
|
53
|
+
/* @__PURE__ */ jsxs(
|
|
54
|
+
StyledSelect,
|
|
55
|
+
{
|
|
56
|
+
ref,
|
|
57
|
+
minPadding,
|
|
58
|
+
value,
|
|
59
|
+
label,
|
|
60
|
+
onChange,
|
|
61
|
+
required,
|
|
62
|
+
...props,
|
|
63
|
+
inputProps,
|
|
64
|
+
multiple,
|
|
65
|
+
renderValue: (selected) => {
|
|
66
|
+
if (multiple) {
|
|
67
|
+
if (Array.isArray(selected)) {
|
|
68
|
+
return selected.map((val) => {
|
|
69
|
+
const found = options.find((o) => o.id === val);
|
|
70
|
+
return found ? found.label || found.name || val : val;
|
|
71
|
+
}).join(", ");
|
|
72
|
+
}
|
|
73
|
+
return selected;
|
|
74
|
+
}
|
|
75
|
+
const selectedOption = options.find((o) => o.id === selected);
|
|
76
|
+
return selectedOption?.label ?? selectedOption?.name ?? selected;
|
|
77
|
+
},
|
|
78
|
+
MenuProps: {
|
|
79
|
+
sx: {
|
|
80
|
+
"& .MuiMenu-paper": {
|
|
81
|
+
borderRadius: "16px"
|
|
82
|
+
},
|
|
83
|
+
// Ensure menu list styling matches Menu component if needed
|
|
84
|
+
"& .MuiList-root": {
|
|
85
|
+
padding: "8px 4px",
|
|
86
|
+
display: "flex",
|
|
87
|
+
flexDirection: "column",
|
|
88
|
+
// alignContent:"center",
|
|
89
|
+
// alignItems:"center",
|
|
90
|
+
gap: "2px"
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
children: [
|
|
95
|
+
!required && !multiple && /* @__PURE__ */ jsxs(
|
|
96
|
+
StyledMenuItem,
|
|
97
|
+
{
|
|
98
|
+
value: "",
|
|
99
|
+
sx: {
|
|
100
|
+
"&.MuiListItemText-root": {},
|
|
101
|
+
gap: "8px"
|
|
102
|
+
// Consistent gap
|
|
103
|
+
},
|
|
104
|
+
children: [
|
|
105
|
+
/* @__PURE__ */ jsx(default7, { style: { minWidth: "auto" }, children: /* @__PURE__ */ jsx(default2, {}) }),
|
|
106
|
+
/* @__PURE__ */ jsx(default8, { children: "NA" })
|
|
107
|
+
]
|
|
108
|
+
}
|
|
109
|
+
),
|
|
110
|
+
options.map((o, i) => /* @__PURE__ */ jsxs(
|
|
111
|
+
StyledMenuItem,
|
|
112
|
+
{
|
|
113
|
+
onClick: o.onClick,
|
|
114
|
+
value: o.id,
|
|
115
|
+
sx: {
|
|
116
|
+
"&.MuiListItemText-root": {}
|
|
117
|
+
},
|
|
118
|
+
...slotProps?.option,
|
|
119
|
+
children: [
|
|
120
|
+
multiple && Array.isArray(value) && /* @__PURE__ */ jsx(default7, { style: { minWidth: "auto" }, children: value.includes(o.id) ? /* @__PURE__ */ jsx(default3, {}) : null }),
|
|
121
|
+
o?.icon && /* @__PURE__ */ jsx(default7, { style: { minWidth: "auto" }, children: o.icon }),
|
|
122
|
+
o?.label && /* @__PURE__ */ jsx(default8, { children: o.label }),
|
|
123
|
+
o.extension
|
|
124
|
+
]
|
|
125
|
+
},
|
|
126
|
+
i
|
|
127
|
+
))
|
|
128
|
+
]
|
|
129
|
+
}
|
|
130
|
+
),
|
|
131
|
+
helperText && /* @__PURE__ */ jsx(default5, { children: helperText })
|
|
132
|
+
]
|
|
133
|
+
}
|
|
134
|
+
);
|
|
135
|
+
});
|
|
136
|
+
var MuiSelect_default = Select;
|
|
137
|
+
var StyledSelect = styled(MuiSelect, {
|
|
138
|
+
shouldForwardProp: (prop) => prop !== "minPadding"
|
|
139
|
+
})(({ minPadding: _minPadding = false }) => {
|
|
140
|
+
void _minPadding;
|
|
141
|
+
return {
|
|
142
|
+
"&.MuiInputBase-root": {
|
|
143
|
+
"& .MuiListItemText-root": {
|
|
144
|
+
"& .MuiTypography-root": {
|
|
145
|
+
overflow: "hidden",
|
|
146
|
+
textOverflow: "ellipsis"
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
"& .MuiListItemIcon-root": {
|
|
150
|
+
minWidth: "36px"
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
});
|
|
155
|
+
|
|
156
|
+
// src/components/elemental/Select/src/MuiSelect/theme.ts
|
|
157
|
+
var selectTheme = {
|
|
158
|
+
defaultProps: {},
|
|
159
|
+
styleOverrides: {
|
|
160
|
+
root: {
|
|
161
|
+
"&.Mui-focused fieldset.MuiOutlinedInput-notchedOutline": {
|
|
162
|
+
borderColor: "var(--mui-palette-text-secondary)"
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
|
|
168
|
+
export {
|
|
169
|
+
MuiSelect_default,
|
|
170
|
+
selectTheme
|
|
171
|
+
};
|
|
172
|
+
//# sourceMappingURL=chunk-UGMRJMFZ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/elemental/Select/src/MuiSelect/MuiSelect.tsx","../src/components/elemental/Select/src/MuiSelect/theme.ts"],"sourcesContent":["'use client'\nimport React, { forwardRef } from 'react'\nimport MuiSelect, { type SelectProps } from '@mui/material/Select'\nimport { FormControl, FormHelperText, InputLabel } from '@/ele/Form'\nimport { ListItemIcon, ListItemText } from '@/ele/List'\nimport { MenuItem, StyledMenuItem } from '@/ele/Menu'\nimport { styled } from '@mui/material/styles'\nimport { CheckIcon as IconCheck, BlacklistIcon as IconNASelection } from '@/icons/MuiIcon'\nimport { mergeSx } from '@/_utils/_func'\n\nexport interface SelectOptionType {\n label: string;\n id: string;\n onClick?: React.MouseEventHandler<HTMLLIElement>;\n icon?: React.ReactNode;\n extension?: React.ReactNode;\n name?: string; // Additional prop for compatibility\n}\n\nexport type MuiSelectProps = {\n label?: string;\n value: SelectProps[\"value\"];\n onChange: SelectProps[\"onChange\"];\n options: SelectOptionType[];\n helperText?: string;\n error?: boolean;\n inputProps?: SelectProps[\"inputProps\"];\n minWidth?: string;\n minPadding?: boolean;\n required?: boolean;\n disableRequiredLabel?: boolean; // if true, the required label will not be shown\n multiple?: boolean;\n slotProps?:{\n option?: React.ComponentProps<typeof MenuItem>;\n formControl?: Partial<React.ComponentProps<typeof FormControl>>;\n };\n} & Omit<SelectProps,\"label\">\n\n/**\n * Exntended from Mui Select\n * \n * [Doc](https://mui.com/material-ui/api/select/)\n */\nconst Select = forwardRef<HTMLElement,MuiSelectProps>(({ \n label,\n value,\n onChange,\n options=[],\n error,\n inputProps,\n minWidth=\"120px\",\n minPadding=false,\n required=false, disableRequiredLabel=false,\n multiple=false,\n slotProps,\n helperText,\n ...props\n},ref) => {\n\n return (\n <FormControl \n fullWidth={props.fullWidth}\n style={{\"--min-w\":minWidth} as React.CSSProperties}\n sx={mergeSx({ minWidth:\"var(--min-w)\" }, props.sx)}\n {...slotProps?.formControl}\n required={required}\n error={error}\n >\n {!disableRequiredLabel && <InputLabel>{label}</InputLabel>}\n <StyledSelect\n ref={ref} \n minPadding={minPadding}\n value={value}\n label={label}\n onChange={onChange}\n required={required}\n {...props}\n inputProps={inputProps}\n multiple={multiple}\n renderValue={(selected) => {\n if (multiple) { \n if(Array.isArray(selected)){\n // map values to labels\n return selected.map(val => {\n const found = options.find(o => o.id === val);\n return found ? (found.label || found.name || val) : val;\n }).join(', ');\n } \n return selected as React.ReactNode;\n }\n\n // force to render the option.label\n const selectedOption = options.find((o) => o.id === selected)\n return (selectedOption?.label ?? selectedOption?.name ?? selected) as React.ReactNode\n }}\n MenuProps={{\n sx: {\n \"& .MuiMenu-paper\":{\n borderRadius:\"16px\",\n },\n // Ensure menu list styling matches Menu component if needed\n \"& .MuiList-root\":{\n padding:\"8px 4px\",\n display:\"flex\",\n flexDirection:\"column\",\n // alignContent:\"center\",\n // alignItems:\"center\",\n gap:\"2px\",\n }\n },\n }}\n >\n {!required && !multiple && <StyledMenuItem value={\"\"} \n sx={{\n \"&.MuiListItemText-root\":{\n },\n gap: '8px' // Consistent gap\n }}>\n <ListItemIcon style={{minWidth: 'auto'}}><IconNASelection/></ListItemIcon> \n <ListItemText>NA</ListItemText>\n </StyledMenuItem>}\n {options.map((o, i) => (\n <StyledMenuItem key={i} \n onClick={o.onClick} value={o.id} \n sx={{\n \"&.MuiListItemText-root\":{\n }\n }}\n {...slotProps?.option}\n >\n {multiple && Array.isArray(value) && \n <ListItemIcon style={{minWidth: 'auto'}}>{(value as (string | number)[]).includes(o.id)?<IconCheck/>:null}</ListItemIcon>\n }\n {o?.icon && <ListItemIcon style={{minWidth: 'auto'}}>{o.icon}</ListItemIcon>}\n {o?.label && <ListItemText>{o.label}</ListItemText>}\n {o.extension}\n </StyledMenuItem>\n ))}\n </StyledSelect>\n {helperText && <FormHelperText>{helperText}</FormHelperText>}\n </FormControl>\n )\n})\n\nexport default Select\n\ninterface CustomProps {\n minPadding?: boolean;\n}\n\nconst StyledSelect = styled(MuiSelect, {\n shouldForwardProp: (prop) => prop !== 'minPadding',\n})<CustomProps>(({ minPadding: _minPadding=false }) => {\n void _minPadding;\n return {\n '&.MuiInputBase-root':{\n '& .MuiListItemText-root':{\n \"& .MuiTypography-root\":{\n overflow:\"hidden\",\n textOverflow:\"ellipsis\",\n },\n },\n \"& .MuiListItemIcon-root\":{\n minWidth:\"36px\",\n },\n },\n }\n})\n","import type { MuiComponentTheme } from '@/_utils/_types'\n\nexport const selectTheme = {\n defaultProps: {},\n styleOverrides: {\n root: ({\n \"&.Mui-focused fieldset.MuiOutlinedInput-notchedOutline\": {\n borderColor: \"var(--mui-palette-text-secondary)\",\n }\n })\n },\n} as const satisfies MuiComponentTheme<\"MuiSelect\">\n"],"mappings":"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","names":["default"]}
|