@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 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/compound/UseSearch/index.ts","../src/components/compound/UseSearch/context.tsx","../src/components/compound/UseSearch/useSearch.ts","../src/components/compound/UseSearch/SearchBar.tsx","../src/components/elemental/Form/src/index.ts","../src/components/elemental/Overlay/src/index.ts","../src/_utils/_func/sx.ts","../src/components/elemental/Box/src/index.ts","../src/components/elemental/Paper/src/Paper/Paper.tsx","../src/components/elemental/Button/src/Button/Button.tsx","../src/components/elemental/Button/src/IconButton/IconButton.tsx","../src/components/elemental/Tooltip/src/Tooltip/index.ts","../src/components/elemental/Input/src/TextField/index.ts","../src/components/Icons/MuiIcon/index.ts","../src/components/elemental/Progress/src/CircularProgress.tsx","../src/components/compound/UseSearch/SearchScope.tsx","../src/components/elemental/Menu/src/Menu/Menu.tsx","../src/components/elemental/Menu/src/MenuItem.tsx","../src/components/elemental/Menu/src/Menu/index.ts","../src/components/elemental/Menu/src/useMenu/useMenu.tsx","../src/components/elemental/Typography/src/Typography.ts","../src/components/compound/UseSearch/SuggestionList.tsx","../src/components/compound/UseSearch/theme.ts","../src/components/compound/UseSearch/ScopeSuggestions.tsx","../src/components/compound/UseSearch/UseSearchLayout.tsx","../src/components/compound/UseSearch/SearchResults.tsx"],"sourcesContent":["export * from './_types';\nexport * from './context';\nexport * from './useSearch';\nexport * from './SearchBar';\nexport * from './SearchScope';\nexport * from './SuggestionList';\nexport * from './ScopeSuggestions';\nexport * from './UseSearchLayout';\nexport * from './SearchResults';\n","import * as React from 'react';\nimport {UseSearchOptions, UseSearchReturn} from './_types';\nimport {useSearch} from './useSearch';\n\ntype SearchContextType = UseSearchReturn;\n\nconst SearchContext = React.createContext<SearchContextType | null>(null);\n\n// props accepted by <SearchProvider>. `options` corresponds to the\n// same configuration object passed to the standalone `useSearch` hook.\nexport interface SearchProviderProps {\n options?: UseSearchOptions;\n children: React.ReactNode;\n}\n\nexport const SearchProvider: React.FC<SearchProviderProps> = ({options, children}) => {\n const search = useSearch(options);\n return <SearchContext.Provider value={search}>{children}</SearchContext.Provider>;\n};\n\nexport function useSearchContext(): SearchContextType {\n const ctx = React.useContext(SearchContext);\n if (!ctx) {\n throw new Error('useSearchContext must be used within a SearchProvider');\n }\n return ctx;\n}\n","import * as React from 'react';\nimport {UseSearchOptions, UseSearchReturn} from './_types';\n\nexport function useSearch(options: UseSearchOptions = {}): UseSearchReturn {\n const {\n defaultQuery = '',\n query: controlledQuery,\n onQueryChange,\n debounceMs = 300,\n defaultScope,\n scope: controlledScope,\n onScopeChange,\n } = options;\n\n const isQueryControlled = controlledQuery !== undefined;\n const isScopeControlled = controlledScope !== undefined;\n\n const [innerQuery, setInnerQuery] = React.useState(defaultQuery);\n const [debouncedQuery, setDebouncedQuery] = React.useState(controlledQuery ?? defaultQuery);\n const [innerScope, setInnerScope] = React.useState<string | undefined>(defaultScope);\n\n const query = isQueryControlled ? controlledQuery : innerQuery;\n\n // Stable refs for callbacks - prevents unnecessary re-references if inline functions are passed.\n const onQueryChangeRef = React.useRef(onQueryChange);\n React.useLayoutEffect(() => { onQueryChangeRef.current = onQueryChange; }, [onQueryChange]);\n \n const onScopeChangeRef = React.useRef(onScopeChange);\n React.useLayoutEffect(() => { onScopeChangeRef.current = onScopeChange; }, [onScopeChange]);\n\n const setQuery = React.useCallback(\n (q: string) => {\n if (!isQueryControlled) {\n setInnerQuery(q);\n }\n onQueryChangeRef.current?.(q);\n },\n [isQueryControlled],\n );\n\n const scope = isScopeControlled ? controlledScope : innerScope;\n\n const setScope = React.useCallback(\n (nextScope: string | undefined) => {\n if (!isScopeControlled) {\n setInnerScope(nextScope);\n }\n onScopeChangeRef.current?.(nextScope);\n },\n [isScopeControlled],\n );\n\n const clear = React.useCallback(() => {\n if (!isQueryControlled) {\n setInnerQuery(defaultQuery);\n }\n onQueryChangeRef.current?.(defaultQuery);\n\n if (!isScopeControlled) {\n setInnerScope(defaultScope);\n }\n onScopeChangeRef.current?.(defaultScope);\n }, [defaultQuery, defaultScope, isQueryControlled, isScopeControlled]);\n\n React.useEffect(() => {\n const timer = window.setTimeout(() => {\n setDebouncedQuery(query);\n }, debounceMs);\n\n // Cleanup guarantees pending timers are cancelled on unmount.\n return () => window.clearTimeout(timer);\n }, [query, debounceMs]);\n\n return {query, debouncedQuery, setQuery, scope, setScope, clear};\n}\n","import * as React from 'react';\nimport { InputAdornment } from '@/ele/Form';\nimport { TextField } from '@/ele/Input';\nimport { IconButton } from '@/ele/Button';\nimport { CircularProgress } from '@/ele/Progress';\nimport { ClearIcon, SearchIcon } from '@/icons/MuiIcon';\nimport type {SearchBarProps} from './_types';\nimport {useSearchContext} from './context';\nimport { mergeSx } from '@/_utils/_func';\n\nexport const SearchBar: React.FC<SearchBarProps> = ({\n placeholder,\n adornment,\n onSubmit,\n showSubmitButton = true,\n submitOnEnter = true,\n loading = false,\n sx,\n}) => {\n const {query, scope, setQuery} = useSearchContext();\n\n // Stable ref — callers can pass inline functions without stale-closure bugs.\n const onSubmitRef = React.useRef(onSubmit);\n React.useLayoutEffect(() => { onSubmitRef.current = onSubmit; }, [onSubmit]);\n\n const handleClear = React.useCallback(() => {\n setQuery('');\n }, [setQuery]);\n\n const handleSubmit = React.useCallback(() => {\n const normalized = query.trim();\n if (!normalized) {\n return;\n }\n onSubmitRef.current?.(normalized, scope);\n }, [query, scope]);\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (!submitOnEnter) {\n return;\n }\n if (event.key === 'Enter') {\n event.preventDefault();\n handleSubmit();\n }\n },\n [handleSubmit, submitOnEnter],\n );\n\n return (\n <TextField\n value={query}\n onChange={e => setQuery(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n sx={mergeSx(\n {\n \"& .MuiInputAdornment-root\": {\n gap: 0.5,\n },\n },\n sx,\n )}\n slotProps={{\n input: {\n startAdornment: adornment ? (\n <InputAdornment position=\"start\">{adornment}</InputAdornment>\n ) : undefined,\n endAdornment: (\n <InputAdornment position=\"end\">\n {query ? (\n <IconButton size=\"small\" onClick={handleClear} aria-label=\"Clear search input\">\n <ClearIcon fontSize=\"small\" />\n </IconButton>\n ) : null}\n {showSubmitButton ? (\n loading ? (\n <CircularProgress size={18} thickness={5} />\n ) : (\n <IconButton size=\"small\" onClick={handleSubmit} aria-label=\"Submit search\">\n <SearchIcon fontSize=\"small\" />\n </IconButton>\n )\n ) : null}\n </InputAdornment>\n ),\n },\n }}\n />\n );\n};\n","export * from './FormLabel'\n\nexport * from './FormControlLabel'\n\nexport {default as FormControl} from '@mui/material/FormControl'\nexport {default as FormHelperText} from '@mui/material/FormHelperText'\nexport {default as InputAdornment} from '@mui/material/InputAdornment'\nexport {default as InputLabel} from '@mui/material/InputLabel'\nexport * from './themes'","export { default as ClickAwayListener } from '@mui/material/ClickAwayListener';\nexport { default as Popper } from '@mui/material/Popper';\n","import type { SxProps, Theme } from '@mui/material/styles'\n\n/** Values accepted by {@link mergeSx}: objects, callbacks, arrays (nested ok), or omitted. */\nexport type SxMergePart =\n | SxProps<Theme>\n | Record<string, unknown>\n | ReadonlyArray<SxMergePart>\n | false\n | null\n | undefined\n\nfunction flattenSx(part: unknown): unknown[] {\n if (part == null || typeof part === 'boolean') {\n return []\n }\n if (Array.isArray(part)) {\n return part.flatMap(flattenSx)\n }\n if (typeof part === 'function' || typeof part === 'object') {\n return [part]\n }\n return []\n}\n\n/**\n * Combine MUI `sx` values into one prop.\n *\n * Nested arrays are flattened (`[base, [a, b]]` → `[base, a, b]`).\n * `null` / `undefined` / `false` entries are dropped. Later parts win,\n * same as MUI's `sx` array merge.\n */\nexport function mergeSx(...parts: SxMergePart[]): SxProps<Theme> | undefined {\n const list = parts.flatMap(flattenSx)\n if (list.length === 0) {\n return undefined\n }\n if (list.length === 1) {\n return list[0] as SxProps<Theme>\n }\n return list as SxProps<Theme>\n}\n","export * from './BorderBox'\nexport {default as Box} from '@mui/material/Box'\nexport {default as Stack} from '@mui/material/Stack'\nexport {default as Grid} from '@mui/material/Grid'\n","import Paper, { type PaperProps } from '@mui/material/Paper'\n\n/**\n * A wrapper for Mui Paper\n */\nexport default function MuiPaper(props: PaperProps) {\n return <Paper {...props} />\n}\n","import React from 'react';\n\nimport MuiButton from '@mui/material/Button';\nimport { Box } from '@/ele/Box';\nimport { mergeSx } from '@/_utils/_func';\n\n/**\n * A modified MUI Button that truncates long text with ellipsis.\n * \n * [Doc](https://mui.com/material-ui/react-button/)\n * [API](https://mui.com/material-ui/api/button/)\n */\nexport default function Button(p:\n React.ComponentProps<typeof MuiButton> & {\n slotProps?: {\n innerBox?: React.ComponentProps<typeof Box>\n }\n }) {\n const {children, slotProps, ...rest} = p\n const {sx, ...boxRest} = slotProps?.innerBox ?? {}\n return <MuiButton {...rest}>\n <Box \n {...boxRest}\n sx={mergeSx(\n {\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n whiteSpace: 'pre',\n },\n sx,\n )}>\n {children}\n </Box>\n </MuiButton>\n}","'use client'\nimport {forwardRef} from 'react'\nimport MuiIconButton from '@mui/material/IconButton'\nimport { Tooltip } from '@/ele/Tooltip'\nimport { type TooltipProps } from '@mui/material/Tooltip'\nimport { Box } from '@/ele/Box'\n\ntype IconButtonProps = React.ComponentProps<typeof MuiIconButton>\ntype Props = {\n /** The Icon to render */\n children: React.ReactNode;\n /** The title of the tooltip */\n title?: string;\n /** \n * The color theme of the entire component.\n * @default 'secondary' (from theme)\n */\n color?: IconButtonProps['color'];\n /**\n * The size of the component.\n * @default 'small' (from theme)\n */\n size?: IconButtonProps['size'];\n \n selected?: boolean;\n \n slotProps?: {\n tooltip?: Omit<TooltipProps, \"children\">\n };\n} & Omit<IconButtonProps, \"color\" | \"size\">;\n\n/**\n * A MuiIconButton wrapped in a MuiTooltip.\n * Default props like `size` and `color` are handled by the theme.\n */\nconst IconButton = forwardRef<HTMLButtonElement, Props>(({\n title = \"\",\n children,\n color,\n size,\n slotProps,\n selected,\n className,\n ...props\n}, ref) => {\n return (\n <Tooltip \n title={title} \n slotProps={{\n popper: {\n sx: {\n textTransform: \"capitalize\",\n }\n },\n ...slotProps?.tooltip\n }}\n >\n <Box component=\"span\" sx={{width: \"fit-content\"}}>\n <MuiIconButton\n ref={ref}\n color={color}\n size={size}\n className={[className, selected ? 'Mui-selected' : ''].filter(Boolean).join(' ')}\n {...props}\n >\n {children}\n </MuiIconButton>\n </Box>\n </Tooltip>\n )\n})\n\nexport default IconButton","export {default as Tooltip} from '@mui/material/Tooltip'\nexport * from './theme'\n","export {default as TextField} from '@mui/material/TextField'\nexport * from './theme'","// display\nexport {default as ArrowIcon} from '@mui/icons-material/ArrowRightAlt'\nexport {default as FileIcon} from '@mui/icons-material/DescriptionOutlined'\nexport {default as DescriptionIcon} from '@mui/icons-material/Description'\nexport {default as PictureAsPdfIcon} from '@mui/icons-material/PictureAsPdf'\nexport {default as AudioFileIcon} from '@mui/icons-material/AudioFile'\nexport {default as VideoFileIcon} from '@mui/icons-material/VideoFile'\nexport {default as TableChartIcon} from '@mui/icons-material/TableChart'\nexport {default as FolderZipIcon} from '@mui/icons-material/FolderZip'\nexport {default as InsertDriveFileIcon} from '@mui/icons-material/InsertDriveFile'\nexport {default as ImageIcon} from '@mui/icons-material/ImageOutlined'\nexport {default as LayersIcon} from '@mui/icons-material/LayersOutlined'\nexport {default as TextIcon} from '@mui/icons-material/TextFormat'\nexport {default as RemoveIcon} from '@mui/icons-material/Remove'\nexport {default as AddFileIcon} from '@mui/icons-material/PostAdd'\nexport {default as ErrorIcon} from '@mui/icons-material/ErrorOutline'\nexport {default as QuestionIcon} from '@mui/icons-material/QuestionMarkOutlined'\nexport {default as RoomIcon} from '@mui/icons-material/MeetingRoomOutlined'\nexport {default as BlacklistIcon} from '@mui/icons-material/PlaylistRemove'\nexport {default as WhitelistIcon} from '@mui/icons-material/ChecklistRtl'\nexport {default as NoImageIcon} from '@mui/icons-material/HideImageOutlined'\nexport {default as EyeIcon} from '@mui/icons-material/RemoveRedEyeTwoTone'\nexport {default as CropSizeIcon} from '@mui/icons-material/PhotoSizeSelectLarge'\nexport {default as AdminIcon} from '@mui/icons-material/LockPersonOutlined'\nexport {default as UserIcon} from '@mui/icons-material/Person'\nexport {default as EmoticonIcon} from '@mui/icons-material/InsertEmoticon'\nexport {default as DisabledSelectionIcon} from '@mui/icons-material/RemoveDoneOutlined'\nexport {default as TagIcon} from '@mui/icons-material/Tag'\nexport {default as AudioIcon} from '@mui/icons-material/Audiotrack'\nexport {default as VideoIcon} from '@mui/icons-material/Videocam'\nexport {default as CodeIcon} from '@mui/icons-material/Code'\nexport {default as ChartIcon} from '@mui/icons-material/Equalizer'\nexport {default as TableIcon} from '@mui/icons-material/PivotTableChart'\nexport {default as SearchIcon} from '@mui/icons-material/Search'\nexport {default as DataObjectIcon} from '@mui/icons-material/DataObject'\nexport {default as A2ZIcon} from '@mui/icons-material/SortByAlpha'\nexport {default as ThumbUpIcon} from '@mui/icons-material/ThumbUp'\nexport {default as MoneyIcon} from '@mui/icons-material/AttachMoneyOutlined'\nexport {default as ServerIcon} from '@mui/icons-material/Storage'\nexport {default as CerticateIcon} from '@mui/icons-material/WorkspacePremium'\nexport {default as NumberIcon} from '@mui/icons-material/Numbers'\nexport {default as SumIcon} from '@mui/icons-material/Functions'\nexport {default as LightBulbIcon} from '@mui/icons-material/Lightbulb'\nexport {default as RotateIcon} from '@mui/icons-material/CropRotate'\nexport {default as ImageSzieScaleIcon} from '@mui/icons-material/PhotoSizeSelectLarge'\nexport {default as CollectionIcon} from '@mui/icons-material/CollectionsBookmark'\nexport {default as HistoryIcon} from '@mui/icons-material/Schedule'\nexport {default as StyleIcon} from '@mui/icons-material/Style'\nexport {default as ARHorizontalIcon} from '@mui/icons-material/Crop169'\nexport {default as ARSquareIcon} from '@mui/icons-material/CropSquare'\nexport {default as VoiceIcon} from '@mui/icons-material/GraphicEqRounded'\nexport {default as MemoryIcon} from '@mui/icons-material/MemoryRounded'\n\n// button\nexport {default as AddCircleIcon} from '@mui/icons-material/AddCircleOutlineRounded'\nexport {default as AddIcon} from '@mui/icons-material/Add'\nexport {default as CloseIcon} from '@mui/icons-material/Close'\nexport {default as ExpandMoreIcon} from '@mui/icons-material/ExpandMore'\nexport {default as AutorenewIcon} from '@mui/icons-material/Autorenew'\nexport {default as CheckCircleIcon} from '@mui/icons-material/CheckCircle'\nexport {default as MenuIcon} from '@mui/icons-material/Menu'\nexport {default as MoreIcon} from '@mui/icons-material/MoreVert'\nexport {default as MoreHorizIcon} from '@mui/icons-material/MoreHoriz'\nexport {default as CopyIcon} from '@mui/icons-material/ContentCopy'\nexport {default as PasteIcon} from '@mui/icons-material/ContentPaste'\nexport {default as CloudIcon} from '@mui/icons-material/Cloud'\nexport {default as DownloadIcon} from '@mui/icons-material/DownloadOutlined'\nexport {default as DownloadDoneIcon} from '@mui/icons-material/DownloadDoneOutlined'\nexport {default as StartIcon} from '@mui/icons-material/StarBorderOutlined'\nexport {default as DeleteIcon} from '@mui/icons-material/DeleteForever'\nexport {default as LayerClearIcon } from '@mui/icons-material/LayersClear'\nexport {default as CheckIcon } from '@mui/icons-material/Check'\nexport {default as CheckAllIcon } from '@mui/icons-material/DoneAll'\nexport {default as PowerIcon } from '@mui/icons-material/PowerSettingsNew'\nexport {default as SendIcon } from '@mui/icons-material/Send'\nexport {default as ZoomInIcon } from '@mui/icons-material/ZoomInMap'\nexport {default as ZoomOutIcon } from '@mui/icons-material/ZoomOutMap'\nexport {default as ToolIcon } from '@mui/icons-material/HomeRepairService'\nexport {default as ConstructionIcon } from '@mui/icons-material/Construction'\nexport {default as HelpIcon } from '@mui/icons-material/Help'\nexport {default as ReportIcon } from '@mui/icons-material/EmojiFlags'\nexport {default as EditIcon } from '@mui/icons-material/Edit'\nexport {default as ForkIcon } from '@mui/icons-material/ForkRight'\nexport {default as SettingIcon } from '@mui/icons-material/Settings'\nexport {default as RestoreIcon } from '@mui/icons-material/Restore'\nexport {default as EditListIcon } from '@mui/icons-material/EditNote'\nexport {default as HomeIcon } from '@mui/icons-material/HomeOutlined'\nexport {default as EnterRoomIcon } from '@mui/icons-material/ExitToAppOutlined'\nexport {default as SunIcon} from '@mui/icons-material/WbSunnyOutlined'\nexport {default as MoonIcon} from '@mui/icons-material/DarkModeOutlined'\nexport {default as AttachFileIcon} from '@mui/icons-material/AttachFileOutlined'\nexport {default as NoteAddIcon} from '@mui/icons-material/NoteAdd'\nexport {default as CloudUploadIcon} from '@mui/icons-material/CloudUpload'\nexport {default as DoubleRightArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowRight'\nexport {default as DoubleLeftArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowLeft'\nexport {default as DoubleArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowRightRounded'\nexport {default as FitScreenIcon} from '@mui/icons-material/FitScreen'\nexport {default as FullscreenIcon} from '@mui/icons-material/Fullscreen'\nexport {default as TestIcon} from '@mui/icons-material/Biotech'\nexport {default as ShareIcon} from '@mui/icons-material/Share'\nexport {default as FilterIcon} from '@mui/icons-material/FilterAlt'\nexport {default as SyncIcon} from '@mui/icons-material/Sync'\nexport {default as PlayIcon} from '@mui/icons-material/PlayArrow'\nexport {default as PauseIcon} from '@mui/icons-material/PauseOutlined'\nexport {default as RandomIcon} from '@mui/icons-material/Casino'\nexport {default as CoinIcon} from '@mui/icons-material/Paid'\nexport {default as SaveChangesIcon} from '@mui/icons-material/Save'\nexport {default as StopIcon} from '@mui/icons-material/StopRounded'\nexport {default as ReplayIcon} from '@mui/icons-material/Replay'\nexport {default as TreeIcon} from '@mui/icons-material/AccountTree'\nexport {default as ClearIcon} from '@mui/icons-material/Close'\nexport {default as KeyboardArrowDownIcon} from '@mui/icons-material/KeyboardArrowDown'\nexport {default as KeyboardArrowRightIcon} from '@mui/icons-material/KeyboardArrowRight'\nexport {default as SearchRoundedIcon} from '@mui/icons-material/SearchRounded'\nexport {default as CloseRoundedIcon} from '@mui/icons-material/CloseRounded'\nexport {default as SortByAlphaRoundedIcon} from '@mui/icons-material/SortByAlphaRounded'\nexport {default as FilterAltOutlinedIcon} from '@mui/icons-material/FilterAltOutlined'\nexport {default as InboxOutlinedIcon} from '@mui/icons-material/InboxOutlined'\nexport {default as SearchOffIcon} from '@mui/icons-material/SearchOff'\nexport {default as ClearRoundedIcon} from '@mui/icons-material/ClearRounded'\nexport {default as ArrowDropDownRoundedIcon} from '@mui/icons-material/ArrowDropDownRounded'\n\n// login\nexport {default as AccountIcon} from '@mui/icons-material/AccountBox'\nexport {default as LogoutIcon} from '@mui/icons-material/Logout'\nexport {default as LoginIcon} from '@mui/icons-material/Login'\nexport {default as DashboardIcon} from '@mui/icons-material/Dashboard'\n\n//logo\nexport {default as WorkFlowIcon} from '@mui/icons-material/AccountTreeOutlined'\nexport {default as HelpOutlineIcon} from '@mui/icons-material/HelpOutline'\nexport {default as NavigateBeforeIcon} from '@mui/icons-material/NavigateBefore'\nexport {default as NavigateNextIcon} from '@mui/icons-material/NavigateNext'\nexport {default as PersonIcon} from '@mui/icons-material/Person'\nexport {default as CalendarTodayIcon} from '@mui/icons-material/CalendarToday'\nexport {default as ChatIcon} from '@mui/icons-material/QuestionAnswerOutlined'\nexport {default as TodayIcon} from '@mui/icons-material/Today'\nexport {default as DeleteForeverIcon} from '@mui/icons-material/DeleteForever'\n\nexport {default as AdsClickIcon} from '@mui/icons-material/AdsClick'\nexport {default as FingerprintIcon} from '@mui/icons-material/Fingerprint'\nexport {default as SportsEsportsOutlinedIcon} from '@mui/icons-material/SportsEsportsOutlined'\nexport {default as HelpOutlineRoundedIcon} from '@mui/icons-material/HelpOutlineRounded'\nexport {default as AccountTreeOutlinedIcon} from '@mui/icons-material/AccountTreeOutlined'\nexport {default as SmartToyOutlinedIcon} from '@mui/icons-material/SmartToyOutlined'\nexport {default as AcUnitIcon} from '@mui/icons-material/AcUnit'\nexport {default as LoopIcon} from '@mui/icons-material/Loop'\nexport {default as PendingIcon} from '@mui/icons-material/Pending'\nexport {default as AllInclusiveIcon} from '@mui/icons-material/AllInclusive'\nexport {default as WarningOutlinedIcon} from '@mui/icons-material/WarningOutlined'\nexport {default as InfoOutlinedIcon} from '@mui/icons-material/InfoOutlined'\nexport {default as AutoAwesomeRoundedIcon} from '@mui/icons-material/AutoAwesomeRounded'\nexport {default as ErrorOutlineOutlinedIcon} from '@mui/icons-material/ErrorOutlineOutlined'\nexport {default as DownloadFilledIcon} from '@mui/icons-material/Download'","import React from 'react';\nimport MuiCircularProgress, { CircularProgressProps as MuiCircularProgressProps } from '@mui/material/CircularProgress';\n\nexport type CircularProgressProps = MuiCircularProgressProps;\n\nexport const CircularProgress: React.FC<CircularProgressProps> = (props) => {\n return <MuiCircularProgress {...props} />;\n};\n","import * as React from 'react';\nimport {Button} from '@/ele/Button';\nimport {MenuPopper, useMenu} from '@/ele/Menu';\nimport {ArrowDropDownRoundedIcon} from '@/icons/MuiIcon';\nimport type {SearchScopeProps} from './_types';\nimport {useSearchContext} from './context';\n\nexport const SearchScope: React.FC<SearchScopeProps> = ({\n options,\n sx,\n placeholderLabel = 'All',\n}) => {\n const {scope, setScope} = useSearchContext();\n\n const openMenuProps = useMenu({\n onItemClickClientArg: ({closeHandler}) => {\n closeHandler?.();\n },\n initSelected: scope ? [scope] : [],\n });\n\n const menuOptions = React.useMemo(() => (options || []).map(option => ({\n id: option.value,\n label: option.label,\n onClick: () => {\n setScope(option.value);\n },\n })), [options, setScope]);\n\n if (!options || options.length === 0) {\n return null;\n }\n\n const activeLabel = options.find(option => option.value === scope)?.label ?? placeholderLabel;\n\n return (\n <>\n <Button\n size='small'\n variant='outlined'\n onClick={openMenuProps.onTriggerClickHandler}\n endIcon={<ArrowDropDownRoundedIcon />}\n sx={sx}\n >\n {activeLabel}\n </Button>\n\n <MenuPopper\n options={menuOptions}\n openMenuProps={{\n ...openMenuProps,\n initSelected: scope ? [scope] : [],\n sorted: false,\n }}\n placement='bottom-start'\n menuItemProps={{\n fontSize: '0.875rem',\n padding: '6px 12px',\n }}\n />\n </>\n );\n};\n","'use client'\nimport { useState ,forwardRef, useImperativeHandle, useMemo, useEffect } from 'react'\nimport MenuList from '@mui/material/MenuList'\nimport ListItemText from '@mui/material/ListItemText'\nimport {styled} from '@mui/material/styles'\n\nimport type {MenuOption,OnItemClickHandler,MenuRef} from '../_utils'\nimport { StyledMenuItem, StyledItemIcon } from '../MenuItem'\n\ntype Props = {\n\toptions: MenuOption[];\n optionHeader?:React.ReactNode;\n extraItemClickHandler?:OnItemClickHandler;\n menuItemProps?:{\n variant?: 'rounded' | 'square';\n fontSize?: React.CSSProperties['fontSize'];\n padding?: React.CSSProperties['padding'];\n };\n initSelected:MenuOption[\"id\"][];\n multiple?:boolean;\n autoFocusItem?:boolean;\n menuRef?:React.RefObject<HTMLUListElement|null> ;\n isIconOnly?:boolean; // if true, only icon will be shown\n sorted?:boolean; // if true, options will be sorted by label\n}\n/**\n * A Mui Menu component\n * \n * @param extraItemClickHandler - a function to be called when an item is clicked\n * \n */\nconst CustomMenuList = forwardRef<MenuRef,Props>(({\n\toptions=[],\n extraItemClickHandler,\n menuItemProps, \n initSelected=[],\n multiple=false,\n autoFocusItem,\n menuRef,\n isIconOnly=false,\n optionHeader,\n sorted=true,\n},ref) => {\n const [localSelected,setLocalSelected] = useState<Props[\"initSelected\"]>(initSelected)\n\n useImperativeHandle(ref, () => ({\n getSelectedItem: () => localSelected,\n \n }), [localSelected])\n\n useEffect(()=>{\n setLocalSelected(initSelected)\n },[initSelected])\n\n const sortedOptions = useMemo(()=>{\n if(!sorted)return options\n return [...options].sort((a, b) => {\n if(a.label && b.label){\n return a.label.toString().localeCompare(b.label.toString())\n }\n return 0\n })\n },[sorted, options])\n\n\treturn (\n\t\t<StyledMenuList ref={menuRef}\n autoFocusItem={autoFocusItem}\n fontSize={menuItemProps?.fontSize}\n padding={menuItemProps?.padding}\n >\n {optionHeader}\n {sortedOptions.map((o, i) => (\n\n <StyledMenuItem key={i} \n selected={localSelected.includes(o.id)}\n customPadding={menuItemProps?.padding}\n customFontSize={menuItemProps?.fontSize}\n onClick={(e)=>{\n if(extraItemClickHandler)extraItemClickHandler(e)\n if(multiple)setLocalSelected(old=>{\n // if already selected, remove it\n if(old.includes(o.id))return old.filter(id=>id!==o.id)\n // else add it\n return [...old,o.id]\n })\n o.onClick?.()\n }}>\n {o.icon && <StyledItemIcon isIconOnly={isIconOnly}>{o.icon}</StyledItemIcon>}\n {o.label && !isIconOnly && <ListItemText>{o.label}</ListItemText>}\n {o.extension}\n </StyledMenuItem>\n\n ))}\n </StyledMenuList>\n\t)\n})\nexport default CustomMenuList\n\ntype CustomMenuListProps = {\n fontSize?: React.CSSProperties['fontSize'];\n padding?: React.CSSProperties['padding'];\n}\nconst StyledMenuList = styled(MenuList,{\n shouldForwardProp: (prop) => \n prop !== 'fontSize'\n && prop !== 'padding',\n})<CustomMenuListProps>(p=>createMenuListTheme(p))\n\ntype StyledMenuListProps = React.ComponentProps<typeof MenuList> & CustomMenuListProps\nexport function createMenuListTheme(p:StyledMenuListProps){\n return {\n \"&.MuiList-root\":{\n padding:\"8px 4px\",\n display:\"flex\",\n flexDirection:\"column\",\n alignContent:\"center\",\n alignItems:\"center\",\n width:\"100%\",\n gap:\"2px\",\n\n \"& li\":{\n width:\"-webkit-fill-available\",\n borderRadius:\"8px\",\n minHeight:\"fit-content\",\n padding:p.padding || \"6px 16px\",\n margin:\"0\",\n overflow:\"hidden\",\n \n \"& .MuiListItemText-primary\":{\n fontSize:p.fontSize || '1rem',\n overflow:\"hidden\",\n textOverflow:\"ellipsis\",\n },\n },\n },\n }\n}","'use client'\nimport React from 'react'\nimport MenuItem from '@mui/material/MenuItem'\nimport ListItemIcon from '@mui/material/ListItemIcon'\nimport { styled } from '@mui/material/styles'\n\nexport const StyledMenuItem = styled(MenuItem,{\n shouldForwardProp: (prop) => prop !== 'customPadding' && prop !== 'customFontSize',\n})<{customPadding?: React.CSSProperties['padding'], customFontSize?: React.CSSProperties['fontSize']}>(({ customPadding, customFontSize }) => ({\n width: \"-webkit-fill-available\",\n borderRadius: \"8px\",\n minHeight: \"fit-content\",\n padding: customPadding || \"6px 16px\",\n margin: \"0\",\n overflow: \"hidden\",\n gap: \"4px\",\n\n \"& .MuiListItemText-primary\": {\n fontSize: customFontSize || '1rem',\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n },\n}));\n\nexport const StyledItemIcon = styled(ListItemIcon,{\n shouldForwardProp: (prop) => prop !== 'isIconOnly',\n})<{isIconOnly?:boolean}>({\n \"&.MuiListItemIcon-root\":{\n minWidth: \"var(--minW)\",\n },\n\n variants:[\n {\n props:{isIconOnly:true},\n style:{\n '--minW':\"0\",\n },\n },\n {\n props:{isIconOnly:false},\n style:{\n '--minW':\"auto\",\n },\n },\n {\n props:{isIconOnly:undefined}, // default\n style:{\n '--minW':\"auto\",\n }\n }\n ]\n})\n","export {default as Menu} from './Menu'\nexport {default as MenuItem} from '@mui/material/MenuItem'\nexport * from './theme'","'use client'\nimport { Popper, ClickAwayListener } from '@/ele/Overlay'\nimport { Paper } from '@/ele/Paper'\nimport { useState, useRef } from 'react'\n\nimport {Menu} from '../Menu'\nimport type { \n\tMenuOption, \n\tOnItemClickClientArg, OnTriggerClickHandler,\n\tMenuRef,\n} from '../_utils'\n\ntype MenuPopperProps = {\n\toptions: MenuOption[];\n\tplacement?: React.ComponentProps<typeof Popper>[\"placement\"];\n\topenMenuProps: OpenMenuProps;\n\tmenuItemProps?: React.ComponentProps<typeof Menu>[\"menuItemProps\"];\n\toptionHeader?: React.ComponentProps<typeof Menu>[\"optionHeader\"];\n}\n\n/**\n * A Mui Menu component that is triggered by an icon button.\n */\nexport const MenuPopper = ({\n\tplacement=\"bottom-start\",\n\toptions=[],\n\topenMenuProps,\n\tmenuItemProps,\n\toptionHeader,\n}: MenuPopperProps) => {\n\tconst {\n\t\tcloseHandler,\n\t\tanchorEl,\n\t\tonItemClickClientArg,\n\t\tmultiple,\n\t\tref,\n\t\tmenuRef,\n\t\tinitSelected,\n\t\tsorted=true,\n\t} = openMenuProps;\n\n\tconst open = Boolean(anchorEl)\n\n\treturn (\n\t\t<Popper\n\t\t\topen={open}\n\t\t\tanchorEl={anchorEl}\n\t\t\tplacement={placement}\n\t\t\tsx={{ zIndex: \"1301\" }}\n\t\t\tmodifiers={[{\n\t\t\t\tname: 'offset',\n\t\t\t\toptions: { offset: [0, 8] }\n\t\t\t}]}\n\t\t>\n\t\t\t<Paper\n\t\t\t\tvariant='outlined'\n\t\t\t\tsx={{\n\t\t\t\t\t\"&.MuiPaper-root\":{\n\t\t\t\t\t\tpr:1,\n\t\t\t\t\t\tminWidth:150,\n\t\t\t\t\t\tmaxHeight:300,\n\t\t\t\t\t\tborderRadius:\"16px\",\n\t\t\t\t\t\toverflow:\"hidden\",\n\t\t\t\t\t\tdisplay:\"flex\",\n\t\t\t\t\t\tflexDirection:\"column\",\n\n\t\t\t\t\t\t\"& .MuiList-root\":{\n\t\t\t\t\t\t\tdisplay:\"flex\",\n\t\t\t\t\t\t\tflexDirection:\"column\",\n\t\t\t\t\t\t\talignContent:\"center\",\n\t\t\t\t\t\t\talignItems:\"center\",\n\t\t\t\t\t\t\twidth:\"100%\",\n\t\t\t\t\t\t\toverflowY:\"auto\",\n\t\t\t\t\t\t\theight:\"100%\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"& li\":{\n\t\t\t\t\t\t\twidth:\"100%\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<ClickAwayListener onClickAway={closeHandler}>\n\t\t\t\t\t<Menu \n\t\t\t\t\t\tref={ref} \n\t\t\t\t\t\tmenuRef={menuRef}\n\t\t\t\t\t\tautoFocusItem={open}\n\t\t\t\t\t\tmenuItemProps={menuItemProps}\n\t\t\t\t\t\toptionHeader={optionHeader}\n\t\t\t\t\t\toptions={options} \n\t\t\t\t\t\tmultiple={multiple}\n\t\t\t\t\t\tinitSelected={initSelected}\n\t\t\t\t\t\textraItemClickHandler={(e) => {\n\t\t\t\t\t\t\tif(onItemClickClientArg) onItemClickClientArg({event:e, closeHandler})\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tsorted={sorted}\n\t\t\t\t\t/>\n\t\t\t\t</ClickAwayListener>\n\t\t\t</Paper>\n\t\t</Popper>\n\t)\n}\n\nexport type OpenMenuProps = {\n\tanchorEl: HTMLButtonElement | HTMLDivElement | null;\n\tanchorPosition: {top:number; left:number};\n\tonTriggerClickHandler: OnTriggerClickHandler;\n\tonItemClickClientArg?: OnItemClickClientArg;\n\tcloseHandler: (event?: Event | React.SyntheticEvent) => void;\n\tmultiple?: boolean;\n\tref: React.RefObject<MenuRef | null>;\n\tmenuRef: React.RefObject<HTMLUListElement | null>;\n\tinitSelected: MenuOption[\"id\"][];\n\tsorted?: boolean;\n}\n\ntype UseMenuProps = {\n\tonItemClickClientArg?: OnItemClickClientArg;\n\tmultiple?: boolean;\n\tinitSelected?: OpenMenuProps[\"initSelected\"];\n\tsetSelected?: React.Dispatch<React.SetStateAction<MenuOption[\"id\"][]>>;\n}\n\nexport default function useMenu({\n\tonItemClickClientArg,\n\tmultiple=false,\n\tinitSelected=[],\n\tsetSelected,\n}: UseMenuProps): OpenMenuProps {\n\tconst [anchorEl, setAnchorEl] = useState<OpenMenuProps[\"anchorEl\"]>(null)\n\tconst [anchorPosition, setAnchorPosition] = useState<OpenMenuProps[\"anchorPosition\"]>({top:0, left:0})\n\tconst ref = useRef<MenuRef|null>(null)\n\tconst menuRef = useRef<HTMLUListElement|null>(null)\n\n\tconst closeHandler = (event?: Event | React.SyntheticEvent) => {\n\t\t// if the anchor element contains the event target, then return\n\t\tif (\n\t\t\tevent\n\t\t\t&& menuRef.current\n\t\t\t&& event.target instanceof Node\n\t\t\t&& menuRef.current.contains(event.target)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// update the selected value if setSelected is provided and multiple is true\n\t\tif(setSelected && multiple){\n\t\t\tconst localSelected = ref.current?.getSelectedItem()\n\t\t\t// only update the selected value if the selected value is an array\n\t\t\tif(localSelected && Array.isArray(localSelected)){\n\t\t\t\tsetSelected(localSelected)\n\t\t\t}\n\t\t}\n\t\tsetAnchorEl(null)\n\t}\n\n\tconst onTriggerClickHandler: OnTriggerClickHandler = (event) => {\n\t\tconst bottom = event.clientY\n\t\tconst right = event.clientX\n\t\n\t\tsetAnchorEl(event.currentTarget)\n\t\tsetAnchorPosition({top:bottom, left:right})\n\t}\n\n\treturn {\n\t\tanchorEl, \n\t\tanchorPosition,\n\t\tonTriggerClickHandler,\n\t\tonItemClickClientArg,\n\t\tcloseHandler,\n\t\tmultiple,\n\t\tref,\n\t\tinitSelected,\n\t\tmenuRef,\n\t}\n}","export { default } from '@mui/material/Typography'","import * as React from 'react';\nimport { Box } from '@/ele/Box';\nimport { CircularProgress } from '@/ele/Progress';\nimport { Paper } from '@/ele/Paper';\nimport { Typography } from '@/ele/Typography';\nimport {Menu} from '@/ele/Menu';\nimport type {SuggestionItem, SuggestionListProps} from './_types';\nimport {useSearchContext} from './context';\nimport { useSearchRootSx } from './theme';\nimport { mergeSx } from '@/_utils/_func';\n\nconst DEFAULT_MAX_ITEMS = 8;\n\nexport function SuggestionList<T extends SuggestionItem>({\n items,\n onSelect,\n renderItem,\n getItemLabel,\n maxItems = DEFAULT_MAX_ITEMS,\n showWhenEmptyQuery = false,\n loading = false,\n loadingText = 'Fetching suggestions...',\n emptyText = 'No suggestions',\n filterMode = 'client',\n footer,\n sx,\n}: SuggestionListProps<T>) {\n const {query, setQuery} = useSearchContext();\n\n const resolvedGetLabel = React.useCallback(\n (item: T) => (getItemLabel ? getItemLabel(item) : item.label),\n [getItemLabel],\n );\n\n const normalizedQuery = query.trim().toLowerCase();\n\n const filteredItems = React.useMemo(() => {\n if (!showWhenEmptyQuery && !normalizedQuery) {\n return [] as T[];\n }\n\n if (filterMode === 'none') {\n return items.slice(0, maxItems);\n }\n\n return items\n .filter(item => {\n if (!normalizedQuery) {\n return true;\n }\n return resolvedGetLabel(item).toLowerCase().includes(normalizedQuery);\n })\n .slice(0, maxItems);\n }, [filterMode, items, maxItems, normalizedQuery, resolvedGetLabel, showWhenEmptyQuery]);\n\n const handleSelect = React.useCallback(\n (item: T) => {\n setQuery(resolvedGetLabel(item));\n onSelect?.(item);\n },\n [onSelect, resolvedGetLabel, setQuery],\n );\n\n const menuOptions = React.useMemo(\n () =>\n filteredItems.map(item => ({\n id: String(item.id),\n label: renderItem ? renderItem(item) : resolvedGetLabel(item),\n onClick: () => handleSelect(item),\n })),\n [filteredItems, handleSelect, renderItem, resolvedGetLabel],\n );\n\n if (loading && (normalizedQuery || showWhenEmptyQuery)) {\n return (\n <Paper elevation={3} sx={sx}>\n <Box sx={{display: 'flex', alignItems: 'center', gap: 1, px: 1.5, py: 1.25}}>\n <CircularProgress size={16} thickness={5} />\n <Typography variant='body2'>{loadingText}</Typography>\n </Box>\n </Paper>\n );\n }\n\n if (filteredItems.length === 0) {\n if (!normalizedQuery && !showWhenEmptyQuery) {\n return null;\n }\n\n return (\n <Paper elevation={3} sx={sx}>\n <Box sx={mergeSx({ px: 1.5, py: 1.25 }, useSearchRootSx)}>\n <Typography variant='body2' sx={{ color: 'var(--usesearch-empty-text-color)' }}>\n {emptyText}\n </Typography>\n </Box>\n </Paper>\n );\n }\n\n return (\n <Paper elevation={3} sx={sx}>\n <Menu\n options={menuOptions}\n initSelected={[]}\n sorted={false}\n menuItemProps={{\n fontSize: '0.875rem',\n padding: '6px 12px',\n }}\n />\n {footer ? (\n <Box sx={{px: 1, pb: 1}}>\n {footer}\n </Box>\n ) : null}\n </Paper>\n );\n}\n","import type { SxProps, Theme } from '@mui/material/styles';\n\n/**\n * Root-level CSS variable aliases for UseSearch compound component.\n * Spread on container elements — children consume via `var(--*)`.\n */\nexport const useSearchRootSx: SxProps<Theme> = {\n '--usesearch-empty-text-color': 'var(--mui-palette-text-secondary)',\n};\n","import * as React from 'react';\nimport {Button} from '@/ele/Button';\nimport {ScopeSuggestionsProps, SuggestionItem} from './_types';\nimport {SuggestionList} from './SuggestionList';\nimport {useSearchContext} from './context';\n\nexport function ScopeSuggestions<T extends SuggestionItem>({\n getSuggestions,\n onLoadMore,\n hasMore,\n loadMoreLabel = 'Load more',\n onLoadingChange,\n onError,\n onSelect,\n renderItem,\n getItemLabel,\n maxItems,\n showWhenEmptyQuery,\n loadingText,\n emptyText,\n filterMode,\n sx,\n}: ScopeSuggestionsProps<T>) {\n const {scope, debouncedQuery} = useSearchContext();\n const requestIdRef = React.useRef(0);\n const [items, setItems] = React.useState<T[]>([]);\n const [loading, setLoading] = React.useState(false);\n const [loadingMore, setLoadingMore] = React.useState(false);\n\n // Stable refs for callbacks — prevents infinite loops when callers pass inline functions.\n const getSuggestionsRef = React.useRef(getSuggestions);\n React.useLayoutEffect(() => { getSuggestionsRef.current = getSuggestions; }, [getSuggestions]);\n const onLoadingChangeRef = React.useRef(onLoadingChange);\n React.useLayoutEffect(() => { onLoadingChangeRef.current = onLoadingChange; }, [onLoadingChange]);\n const onErrorRef = React.useRef(onError);\n React.useLayoutEffect(() => { onErrorRef.current = onError; }, [onError]);\n\n const resolvedHasMore = React.useMemo(() => {\n if (typeof hasMore === 'function') {\n return hasMore(items, scope, debouncedQuery.trim());\n }\n return Boolean(hasMore);\n }, [debouncedQuery, hasMore, items, scope]);\n\n React.useEffect(() => {\n const query = debouncedQuery.trim();\n\n if (!query && !showWhenEmptyQuery) {\n setItems([]);\n setLoading(false);\n setLoadingMore(false);\n onLoadingChangeRef.current?.(false);\n return;\n }\n\n requestIdRef.current += 1;\n const currentRequestId = requestIdRef.current;\n let isActive = true;\n\n setLoading(true);\n onLoadingChangeRef.current?.(true);\n\n Promise.resolve(getSuggestionsRef.current(scope, query))\n .then(next => {\n if (!isActive || currentRequestId !== requestIdRef.current) {\n return;\n }\n setItems(next);\n })\n .catch(error => {\n if (!isActive || currentRequestId !== requestIdRef.current) {\n return;\n }\n setItems([]);\n onErrorRef.current?.(error);\n })\n .finally(() => {\n if (!isActive || currentRequestId !== requestIdRef.current) {\n return;\n }\n setLoading(false);\n setLoadingMore(false);\n onLoadingChangeRef.current?.(false);\n });\n\n return () => {\n isActive = false;\n // Notify parent that loading stopped when the effect is re-run or component unmounts.\n onLoadingChangeRef.current?.(false);\n };\n }, [debouncedQuery, scope, showWhenEmptyQuery]);\n\n const handleLoadMore = React.useCallback(() => {\n if (!onLoadMore || loading || loadingMore) {\n return;\n }\n\n const query = debouncedQuery.trim();\n if (!query && !showWhenEmptyQuery) {\n return;\n }\n\n setLoadingMore(true);\n Promise.resolve(onLoadMore(scope, query, items))\n .then(next => {\n setItems(next);\n })\n .catch(error => {\n onErrorRef.current?.(error);\n })\n .finally(() => {\n setLoadingMore(false);\n });\n }, [debouncedQuery, items, loading, loadingMore, onLoadMore, scope, showWhenEmptyQuery]);\n\n const footer = onLoadMore && resolvedHasMore ? (\n <Button\n size='small'\n variant='text'\n fullWidth\n disabled={loadingMore || loading}\n onClick={handleLoadMore}\n >\n {loadingMore ? 'Loading more...' : loadMoreLabel}\n </Button>\n ) : null;\n\n return (\n <SuggestionList\n items={items}\n loading={loading}\n footer={footer}\n onSelect={onSelect}\n renderItem={renderItem}\n getItemLabel={getItemLabel}\n maxItems={maxItems}\n showWhenEmptyQuery={showWhenEmptyQuery}\n loadingText={loadingText}\n emptyText={emptyText}\n filterMode={filterMode}\n sx={sx}\n />\n );\n}\n","import * as React from 'react';\nimport { Box } from '@/ele/Box';\nimport type {SuggestionItem, UseSearchLayoutProps} from './_types';\nimport {SearchBar} from './SearchBar';\nimport {SearchScope} from './SearchScope';\nimport {ScopeSuggestions} from './ScopeSuggestions';\nimport {SearchResults} from './SearchResults';\n\nconst DEFAULT_CONTAINER_SX = {width: 560, maxWidth: '90vw', position: 'relative'};\nconst DEFAULT_ROW_SX = {display: 'flex', gap: 1};\nconst DEFAULT_SCOPE_SX = {minWidth: 130};\nconst DEFAULT_SEARCH_BAR_SX = {flex: 1};\nconst DEFAULT_SUGGESTIONS_SX = {\n position: 'absolute',\n top: 56,\n left: 0,\n right: 0,\n zIndex: 2,\n};\n\nexport function UseSearchLayout<T extends SuggestionItem>({\n scopeOptions,\n scopePlaceholderLabel = 'Engine',\n searchPlaceholder = 'Search',\n getSuggestions,\n onLoadMoreSuggestions,\n hasMoreSuggestions,\n loadMoreSuggestionsLabel,\n onSuggestionSelect,\n renderSuggestionItem,\n getSuggestionLabel,\n suggestionFilterMode,\n suggestionsLoadingText,\n suggestionsEmptyText,\n onSuggestionsError,\n onSearchSubmit,\n children,\n containerSx,\n rowSx,\n scopeSx,\n searchBarSx,\n suggestionsSx,\n}: UseSearchLayoutProps<T>) {\n const [suggestionsLoading, setSuggestionsLoading] = React.useState(false);\n\n return (\n <Box sx={containerSx ?? DEFAULT_CONTAINER_SX}>\n <Box sx={rowSx ?? DEFAULT_ROW_SX}>\n <SearchScope\n options={scopeOptions}\n sx={scopeSx ?? DEFAULT_SCOPE_SX}\n placeholderLabel={scopePlaceholderLabel}\n />\n <SearchBar\n placeholder={searchPlaceholder}\n sx={searchBarSx ?? DEFAULT_SEARCH_BAR_SX}\n loading={suggestionsLoading}\n onSubmit={onSearchSubmit}\n />\n </Box>\n\n {getSuggestions && (\n <ScopeSuggestions\n getSuggestions={getSuggestions}\n onLoadMore={onLoadMoreSuggestions}\n hasMore={hasMoreSuggestions}\n loadMoreLabel={loadMoreSuggestionsLabel}\n onLoadingChange={setSuggestionsLoading}\n onSelect={onSuggestionSelect}\n renderItem={renderSuggestionItem}\n getItemLabel={getSuggestionLabel}\n filterMode={suggestionFilterMode}\n loadingText={suggestionsLoadingText}\n emptyText={suggestionsEmptyText}\n onError={onSuggestionsError}\n sx={suggestionsSx ?? DEFAULT_SUGGESTIONS_SX}\n />\n )}\n\n <SearchResults>\n {children}\n </SearchResults>\n </Box>\n );\n}\n","import * as React from 'react';\nimport type {SearchResultsProps} from './_types';\nimport {useSearchContext} from './context';\n\nexport const SearchResults: React.FC<SearchResultsProps> = ({children}) => {\n const {debouncedQuery, scope} = useSearchContext();\n return <>{children(debouncedQuery, scope)}</>;\n};\n"],"mappings":"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","names":["React","React","import_jsx_runtime","Paper","import_jsx_runtime","MuiButton","import_jsx_runtime","MuiIconButton","import_PhotoSizeSelectLarge","import_Close","import_Person","import_DeleteForever","import_AccountTreeOutlined","import_jsx_runtime","MuiCircularProgress","import_jsx_runtime","React","import_react","import_styles","MenuItem","ListItemIcon","import_jsx_runtime","ListItemText","MenuList","import_MenuItem","import_react","import_jsx_runtime","import_jsx_runtime","React","import_jsx_runtime","React","import_jsx_runtime","React","import_jsx_runtime","import_jsx_runtime"]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ScopeSuggestions,
|
|
3
|
+
SearchBar,
|
|
4
|
+
SearchProvider,
|
|
5
|
+
SearchResults,
|
|
6
|
+
SearchScope,
|
|
7
|
+
SuggestionList,
|
|
8
|
+
UseSearchLayout,
|
|
9
|
+
useSearch,
|
|
10
|
+
useSearchContext
|
|
11
|
+
} from "./chunk-XJ2SXC2Q.mjs";
|
|
12
|
+
import "./chunk-ZG3NQI77.mjs";
|
|
13
|
+
import "./chunk-OGNGPI3M.mjs";
|
|
14
|
+
import "./chunk-VYD3PDBB.mjs";
|
|
15
|
+
import "./chunk-HR3A4H4E.mjs";
|
|
16
|
+
import "./chunk-TDRA5EZI.mjs";
|
|
17
|
+
import "./chunk-3DQINB57.mjs";
|
|
18
|
+
import "./chunk-BGB7JHIU.mjs";
|
|
19
|
+
import "./chunk-T4X375IG.mjs";
|
|
20
|
+
import "./chunk-3VUAM2GY.mjs";
|
|
21
|
+
import "./chunk-WYYP3Y34.mjs";
|
|
22
|
+
import "./chunk-MDAUF7IL.mjs";
|
|
23
|
+
import "./chunk-I5JWS4Z7.mjs";
|
|
24
|
+
import "./chunk-JIU5GVM7.mjs";
|
|
25
|
+
import "./chunk-4Q54P737.mjs";
|
|
26
|
+
import "./chunk-OP6LKXPA.mjs";
|
|
27
|
+
import "./chunk-ZVFYOXDE.mjs";
|
|
28
|
+
import "./chunk-4RPFRNXG.mjs";
|
|
29
|
+
import "./chunk-S6EZVRZC.mjs";
|
|
30
|
+
import "./chunk-FJ6ZGZIA.mjs";
|
|
31
|
+
export {
|
|
32
|
+
ScopeSuggestions,
|
|
33
|
+
SearchBar,
|
|
34
|
+
SearchProvider,
|
|
35
|
+
SearchResults,
|
|
36
|
+
SearchScope,
|
|
37
|
+
SuggestionList,
|
|
38
|
+
UseSearchLayout,
|
|
39
|
+
useSearch,
|
|
40
|
+
useSearchContext
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=useSearch.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Signal } from '@preact/signals-react';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* A component that share the same variable accross the app
|
|
6
|
+
*
|
|
7
|
+
* @param defaultValue The default value of the variable
|
|
8
|
+
* @param currentValue The current value of the variable
|
|
9
|
+
* @param updateValue The function to update the variable
|
|
10
|
+
* @param onChangeUpdate If true, the variable will be updated on change
|
|
11
|
+
*
|
|
12
|
+
*/
|
|
13
|
+
declare function Var({ defaultValue, currentValue, updateValue, onChangeUpdate }: {
|
|
14
|
+
defaultValue: string | Signal<string>;
|
|
15
|
+
currentValue: string | Signal<string>;
|
|
16
|
+
updateValue: (value: string) => void;
|
|
17
|
+
onChangeUpdate?: boolean;
|
|
18
|
+
}): react_jsx_runtime.JSX.Element;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* A component that render a field for the variable
|
|
22
|
+
* with dynamic editor, display and extra button
|
|
23
|
+
*
|
|
24
|
+
* @param defaultValue The default value of the variable
|
|
25
|
+
* @param currentValue The current value of the variable
|
|
26
|
+
* @param updateValue The function to update the variable
|
|
27
|
+
* @param Editor component that edit the value
|
|
28
|
+
* @param Display component that display the value
|
|
29
|
+
* @param extraButton extra button next to the edit icon
|
|
30
|
+
*
|
|
31
|
+
*/
|
|
32
|
+
declare function VarField({ currentValue, Editor, updateValue, Display, extraButton, }: {
|
|
33
|
+
currentValue: unknown;
|
|
34
|
+
updateValue: (value: unknown) => void;
|
|
35
|
+
Editor: React.FC<{
|
|
36
|
+
setTmp: (value: unknown) => void;
|
|
37
|
+
tempValue: unknown;
|
|
38
|
+
}>;
|
|
39
|
+
Display: React.FC<{
|
|
40
|
+
value: unknown;
|
|
41
|
+
}>;
|
|
42
|
+
extraButton?: React.ReactNode;
|
|
43
|
+
}): react_jsx_runtime.JSX.Element;
|
|
44
|
+
|
|
45
|
+
export { Var, VarField };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Signal } from '@preact/signals-react';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* A component that share the same variable accross the app
|
|
6
|
+
*
|
|
7
|
+
* @param defaultValue The default value of the variable
|
|
8
|
+
* @param currentValue The current value of the variable
|
|
9
|
+
* @param updateValue The function to update the variable
|
|
10
|
+
* @param onChangeUpdate If true, the variable will be updated on change
|
|
11
|
+
*
|
|
12
|
+
*/
|
|
13
|
+
declare function Var({ defaultValue, currentValue, updateValue, onChangeUpdate }: {
|
|
14
|
+
defaultValue: string | Signal<string>;
|
|
15
|
+
currentValue: string | Signal<string>;
|
|
16
|
+
updateValue: (value: string) => void;
|
|
17
|
+
onChangeUpdate?: boolean;
|
|
18
|
+
}): react_jsx_runtime.JSX.Element;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* A component that render a field for the variable
|
|
22
|
+
* with dynamic editor, display and extra button
|
|
23
|
+
*
|
|
24
|
+
* @param defaultValue The default value of the variable
|
|
25
|
+
* @param currentValue The current value of the variable
|
|
26
|
+
* @param updateValue The function to update the variable
|
|
27
|
+
* @param Editor component that edit the value
|
|
28
|
+
* @param Display component that display the value
|
|
29
|
+
* @param extraButton extra button next to the edit icon
|
|
30
|
+
*
|
|
31
|
+
*/
|
|
32
|
+
declare function VarField({ currentValue, Editor, updateValue, Display, extraButton, }: {
|
|
33
|
+
currentValue: unknown;
|
|
34
|
+
updateValue: (value: unknown) => void;
|
|
35
|
+
Editor: React.FC<{
|
|
36
|
+
setTmp: (value: unknown) => void;
|
|
37
|
+
tempValue: unknown;
|
|
38
|
+
}>;
|
|
39
|
+
Display: React.FC<{
|
|
40
|
+
value: unknown;
|
|
41
|
+
}>;
|
|
42
|
+
extraButton?: React.ReactNode;
|
|
43
|
+
}): react_jsx_runtime.JSX.Element;
|
|
44
|
+
|
|
45
|
+
export { Var, VarField };
|