@g4rcez/components 5.0.2 → 5.0.3
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/dist/AnimatePresence-j36AYeOQ.js +181 -0
- package/dist/AnimatePresence-j36AYeOQ.js.map +1 -0
- package/dist/Calendar.es-xICmgvjq.js +23 -0
- package/dist/Calendar.es-xICmgvjq.js.map +1 -0
- package/dist/Funnel.es-DjKVl8Nj.js +23 -0
- package/dist/Funnel.es-DjKVl8Nj.js.map +1 -0
- package/dist/{MotionConfig-DKKYqBH2.js → MotionConfig-CXHoPGbK.js} +2 -2
- package/dist/{MotionConfig-DKKYqBH2.js.map → MotionConfig-CXHoPGbK.js.map} +1 -1
- package/dist/Plus.es-DbyRkEE2.js +23 -0
- package/dist/Plus.es-DbyRkEE2.js.map +1 -0
- package/dist/Trash.es-BFAc8PMf.js +23 -0
- package/dist/Trash.es-BFAc8PMf.js.map +1 -0
- package/dist/{calendar-PCCZDUIL.js → calendar-DEPkz8sw.js} +364 -502
- package/dist/calendar-DEPkz8sw.js.map +1 -0
- package/dist/calendar-header-Dfr-CwkY.js +174 -0
- package/dist/calendar-header-Dfr-CwkY.js.map +1 -0
- package/dist/chunk-jwUa06l-.js +23 -0
- package/dist/components/core/button.js +1 -1
- package/dist/components/core/heading.js +11 -0
- package/dist/components/core/heading.js.map +1 -0
- package/dist/{polymorph-BLXhrn9n.js → components/core/polymorph.js} +2 -2
- package/dist/components/core/polymorph.js.map +1 -0
- package/dist/components/core/render-on-view.js +29 -0
- package/dist/components/core/render-on-view.js.map +1 -0
- package/dist/components/core/resizable.d.ts +7 -1
- package/dist/components/core/resizable.d.ts.map +1 -1
- package/dist/components/core/resizable.js +60 -0
- package/dist/components/core/resizable.js.map +1 -0
- package/dist/components/core/resizable.jsx +46 -40
- package/dist/{slot-pC8kH9De.js → components/core/slot.js} +2 -2
- package/dist/components/core/slot.js.map +1 -0
- package/dist/components/core/tag.js +1 -1
- package/dist/components/core/typography.js +40 -0
- package/dist/components/core/typography.js.map +1 -0
- package/dist/components/display/alert.d.ts.map +1 -1
- package/dist/components/display/alert.js +83 -102
- package/dist/components/display/alert.js.map +1 -1
- package/dist/components/display/alert.jsx +26 -29
- package/dist/components/display/calendar.d.ts.map +1 -1
- package/dist/components/display/calendar.js +1 -1
- package/dist/components/display/calendar.jsx +15 -10
- package/dist/components/display/card.js +2 -2
- package/dist/components/display/empty.d.ts.map +1 -1
- package/dist/components/display/empty.js +25 -0
- package/dist/components/display/empty.js.map +1 -0
- package/dist/components/display/empty.jsx +3 -1
- package/dist/components/display/list.d.ts.map +1 -1
- package/dist/components/display/list.js +132 -122
- package/dist/components/display/list.js.map +1 -1
- package/dist/components/display/list.jsx +30 -25
- package/dist/components/display/notifications.d.ts.map +1 -1
- package/dist/components/display/notifications.js +1 -1
- package/dist/components/display/notifications.jsx +8 -6
- package/dist/components/display/progress.d.ts.map +1 -1
- package/dist/components/display/progress.js +3 -0
- package/dist/components/display/progress.jsx +6 -8
- package/dist/components/display/shortcut.js +2 -0
- package/dist/components/display/skeleton.js +41 -0
- package/dist/components/display/skeleton.js.map +1 -0
- package/dist/components/display/spinner.js +17 -0
- package/dist/components/display/spinner.js.map +1 -0
- package/dist/components/display/step.d.ts.map +1 -1
- package/dist/components/display/step.js +3 -0
- package/dist/components/display/step.jsx +5 -5
- package/dist/components/display/tabs.js +1 -1
- package/dist/components/display/timeline.js +1 -1
- package/dist/components/floating/command-palette.d.ts.map +1 -1
- package/dist/components/floating/command-palette.js +255 -0
- package/dist/components/floating/command-palette.js.map +1 -0
- package/dist/components/floating/command-palette.jsx +34 -25
- package/dist/components/floating/dropdown.js +1 -1
- package/dist/components/floating/dropdown.js.map +1 -1
- package/dist/components/floating/dropdown.jsx +1 -1
- package/dist/components/floating/expand.js +15 -14
- package/dist/components/floating/expand.js.map +1 -1
- package/dist/components/floating/menu.js +1 -1
- package/dist/components/floating/modal.d.ts +14 -11
- package/dist/components/floating/modal.d.ts.map +1 -1
- package/dist/components/floating/modal.js +1 -1
- package/dist/components/floating/modal.jsx +56 -17
- package/dist/components/floating/toolbar.d.ts +3 -3
- package/dist/components/floating/toolbar.d.ts.map +1 -1
- package/dist/components/floating/toolbar.js +20 -0
- package/dist/components/floating/toolbar.js.map +1 -0
- package/dist/components/floating/toolbar.jsx +7 -3
- package/dist/components/floating/tooltip.js +2 -2
- package/dist/components/floating/tooltip.js.map +1 -1
- package/dist/components/floating/tooltip.jsx +1 -1
- package/dist/components/floating/wizard.js +3 -0
- package/dist/components/form/autocomplete.d.ts.map +1 -1
- package/dist/components/form/autocomplete.js +344 -2
- package/dist/components/form/autocomplete.js.map +1 -0
- package/dist/components/form/autocomplete.jsx +27 -18
- package/dist/components/form/checkbox.d.ts.map +1 -1
- package/dist/components/form/checkbox.js +29 -27
- package/dist/components/form/checkbox.js.map +1 -1
- package/dist/components/form/checkbox.jsx +21 -6
- package/dist/components/form/date-picker.js +1 -1
- package/dist/components/form/date-picker.jsx +1 -1
- package/dist/components/form/file-upload.d.ts +6 -1
- package/dist/components/form/file-upload.d.ts.map +1 -1
- package/dist/components/form/file-upload.js +1 -1
- package/dist/components/form/file-upload.jsx +34 -12
- package/dist/components/form/formReset.js +10 -0
- package/dist/components/form/formReset.js.map +1 -0
- package/dist/components/form/free-text.js +70 -0
- package/dist/components/form/free-text.js.map +1 -0
- package/dist/components/form/free-text.jsx +1 -1
- package/dist/components/form/input-field.d.ts.map +1 -1
- package/dist/components/form/input-field.js +3 -0
- package/dist/components/form/input-field.jsx +14 -8
- package/dist/components/form/input.js +1 -1
- package/dist/components/form/multi-select.d.ts.map +1 -1
- package/dist/components/form/multi-select.js +420 -0
- package/dist/components/form/multi-select.js.map +1 -0
- package/dist/components/form/multi-select.jsx +41 -33
- package/dist/components/form/select.d.ts.map +1 -1
- package/dist/components/form/select.js +55 -51
- package/dist/components/form/select.js.map +1 -1
- package/dist/components/form/select.jsx +8 -5
- package/dist/components/form/slider.js +3 -0
- package/dist/components/form/switch.d.ts +2 -1
- package/dist/components/form/switch.d.ts.map +1 -1
- package/dist/components/form/switch.js +32 -26
- package/dist/components/form/switch.js.map +1 -1
- package/dist/components/form/switch.jsx +26 -13
- package/dist/components/form/textarea.js +19 -0
- package/dist/components/form/textarea.js.map +1 -0
- package/dist/components/page-calendar/calendar-header.d.ts.map +1 -1
- package/dist/components/page-calendar/calendar-header.js +2 -0
- package/dist/components/page-calendar/calendar-header.jsx +6 -4
- package/dist/components/page-calendar/day-view.js +124 -0
- package/dist/components/page-calendar/day-view.js.map +1 -0
- package/dist/components/page-calendar/event-pill.js +44 -0
- package/dist/components/page-calendar/event-pill.js.map +1 -0
- package/dist/components/page-calendar/month-view.d.ts.map +1 -1
- package/dist/components/page-calendar/month-view.js +109 -0
- package/dist/components/page-calendar/month-view.js.map +1 -0
- package/dist/components/page-calendar/month-view.jsx +78 -31
- package/dist/components/page-calendar/page-calendar.d.ts.map +1 -1
- package/dist/components/page-calendar/page-calendar.js +75 -0
- package/dist/components/page-calendar/page-calendar.js.map +1 -0
- package/dist/components/page-calendar/page-calendar.jsx +2 -2
- package/dist/components/page-calendar/week-view.js +88 -0
- package/dist/components/page-calendar/week-view.js.map +1 -0
- package/dist/components/table/filter.d.ts.map +1 -1
- package/dist/components/table/filter.js +239 -0
- package/dist/components/table/filter.js.map +1 -0
- package/dist/components/table/filter.jsx +9 -4
- package/dist/components/table/group.d.ts.map +1 -1
- package/dist/components/table/group.js +3 -0
- package/dist/components/table/group.jsx +5 -3
- package/dist/components/table/index.js +102 -0
- package/dist/components/table/index.js.map +1 -0
- package/dist/components/table/inner-table.js +2 -0
- package/dist/components/table/inner-table.jsx +1 -1
- package/dist/components/table/metadata.js +73 -0
- package/dist/components/table/metadata.js.map +1 -0
- package/dist/components/table/metadata.jsx +1 -1
- package/dist/components/table/pagination.js +70 -0
- package/dist/components/table/pagination.js.map +1 -0
- package/dist/components/table/row.js +58 -0
- package/dist/components/table/row.js.map +1 -0
- package/dist/components/table/sort.d.ts.map +1 -1
- package/dist/components/table/sort.js +3 -0
- package/dist/components/table/sort.jsx +3 -1
- package/dist/components/table/thead.js +3 -0
- package/dist/config/default-translations.d.ts +18 -0
- package/dist/config/default-translations.d.ts.map +1 -1
- package/dist/config/default-translations.jsx +18 -0
- package/dist/{use-translations-DTLfPE3_.js → context-CsnUsfeP.js} +55 -40
- package/dist/context-CsnUsfeP.js.map +1 -0
- package/dist/{date-picker-BhKEFZew.js → date-picker-DNzupG8R.js} +301 -317
- package/dist/date-picker-DNzupG8R.js.map +1 -0
- package/dist/dict-CisoYSMO.js +28 -0
- package/dist/dict-CisoYSMO.js.map +1 -0
- package/dist/dist-ChfJ5LO9.js +498 -0
- package/dist/dist-ChfJ5LO9.js.map +1 -0
- package/dist/{dist-BrGpYRaj.js → dist-DIjUECx9.js} +56 -56
- package/dist/{dist-BrGpYRaj.js.map → dist-DIjUECx9.js.map} +1 -1
- package/dist/dom-Bn4wY_Zx.js.map +1 -1
- package/dist/{file-upload-DWbZfeG5.js → file-upload-C2zNnv9n.js} +501 -481
- package/dist/{file-upload-DWbZfeG5.js.map → file-upload-C2zNnv9n.js.map} +1 -1
- package/dist/fzf-CPGDDCoU.js +64 -0
- package/dist/fzf-CPGDDCoU.js.map +1 -0
- package/dist/getISOWeek-EcB4Ebqp.js +72 -0
- package/dist/getISOWeek-EcB4Ebqp.js.map +1 -0
- package/dist/group-Dl14TJXO.js +222 -0
- package/dist/group-Dl14TJXO.js.map +1 -0
- package/dist/hooks/use-translations.d.ts +18 -0
- package/dist/hooks/use-translations.d.ts.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js.map +1 -1
- package/dist/inner-table-CeDX60cL.js +151 -0
- package/dist/inner-table-CeDX60cL.js.map +1 -0
- package/dist/input-Cmyuea4Y.js +412 -0
- package/dist/input-Cmyuea4Y.js.map +1 -0
- package/dist/{input-field-B_whI66Q.js → input-field-ffx1MbHo.js} +29 -16
- package/dist/input-field-ffx1MbHo.js.map +1 -0
- package/dist/isSameMonth-C3lsSwcg.js +10 -0
- package/dist/isSameMonth-C3lsSwcg.js.map +1 -0
- package/dist/isToday-COXfxFui.js +32 -0
- package/dist/isToday-COXfxFui.js.map +1 -0
- package/dist/lib/dom.d.ts.map +1 -1
- package/dist/modal-Df8-6i-o.js +408 -0
- package/dist/modal-Df8-6i-o.js.map +1 -0
- package/dist/notifications-NhCESJUV.js +1697 -0
- package/dist/notifications-NhCESJUV.js.map +1 -0
- package/dist/page-calendar.utils-Bd0PHktL.js +102 -0
- package/dist/page-calendar.utils-Bd0PHktL.js.map +1 -0
- package/dist/preset/preset.tailwind.d.ts.map +1 -1
- package/dist/preset/preset.tailwind.js +6 -7
- package/dist/preset/src/styles/dark.js +1 -1
- package/dist/progress-8LO5gWLp.js +104 -0
- package/dist/progress-8LO5gWLp.js.map +1 -0
- package/dist/{proxy-BcJ_5Dwq.js → proxy-fP2NxmhM.js} +658 -844
- package/dist/proxy-fP2NxmhM.js.map +1 -0
- package/dist/shim-Czv-YhKR.js +93 -0
- package/dist/shim-Czv-YhKR.js.map +1 -0
- package/dist/shortcut-CQCmgmlU.js +100 -0
- package/dist/shortcut-CQCmgmlU.js.map +1 -0
- package/dist/slider-TX9hiHO-.js +1196 -0
- package/dist/slider-TX9hiHO-.js.map +1 -0
- package/dist/sort-DGmiselV.js +195 -0
- package/dist/sort-DGmiselV.js.map +1 -0
- package/dist/step-DFpJ7zCG.js +185 -0
- package/dist/step-DFpJ7zCG.js.map +1 -0
- package/dist/styles/dark.js +1 -1
- package/dist/subMonths-QcCnE3Yh.js +43 -0
- package/dist/subMonths-QcCnE3Yh.js.map +1 -0
- package/dist/table-lib-1bkYSklk.js +174 -0
- package/dist/table-lib-1bkYSklk.js.map +1 -0
- package/dist/{tabs-Ciy0l9OF.js → tabs-Brc963EW.js} +2 -2
- package/dist/{tabs-Ciy0l9OF.js.map → tabs-Brc963EW.js.map} +1 -1
- package/dist/thead-B6WELJZ-.js +211 -0
- package/dist/thead-B6WELJZ-.js.map +1 -0
- package/dist/use-locale-DPM_sg4s.js +12 -0
- package/dist/use-locale-DPM_sg4s.js.map +1 -0
- package/dist/use-remove-scroll-pAgC09Sq.js +38 -0
- package/dist/use-remove-scroll-pAgC09Sq.js.map +1 -0
- package/dist/use-translations-BE4PuhLm.js +11 -0
- package/dist/use-translations-BE4PuhLm.js.map +1 -0
- package/dist/useAnimationFrame-DnKbaXfi.js +223 -0
- package/dist/useAnimationFrame-DnKbaXfi.js.map +1 -0
- package/dist/valueToPercent-DZc_m1tm.js +43 -0
- package/dist/valueToPercent-DZc_m1tm.js.map +1 -0
- package/dist/visuallyHidden-B7wI86yi.js +303 -0
- package/dist/visuallyHidden-B7wI86yi.js.map +1 -0
- package/dist/with-selector-BFW5n-pb.js +102 -0
- package/dist/with-selector-BFW5n-pb.js.map +1 -0
- package/dist/wizard-7u_qZ-78.js +218 -0
- package/dist/wizard-7u_qZ-78.js.map +1 -0
- package/package.json +19 -11
- package/dist/autocomplete-D3VOTihi.js +0 -415
- package/dist/autocomplete-D3VOTihi.js.map +0 -1
- package/dist/calendar-PCCZDUIL.js.map +0 -1
- package/dist/components/table/table.js +0 -3
- package/dist/date-picker-BhKEFZew.js.map +0 -1
- package/dist/input-B7jqwPG4.js +0 -473
- package/dist/input-B7jqwPG4.js.map +0 -1
- package/dist/input-field-B_whI66Q.js.map +0 -1
- package/dist/modal-Bz-61ays.js +0 -373
- package/dist/modal-Bz-61ays.js.map +0 -1
- package/dist/notifications-MT4XkLov.js +0 -2203
- package/dist/notifications-MT4XkLov.js.map +0 -1
- package/dist/polymorph-BLXhrn9n.js.map +0 -1
- package/dist/proxy-BcJ_5Dwq.js.map +0 -1
- package/dist/skeleton-CBYEq3lM.js +0 -26
- package/dist/skeleton-CBYEq3lM.js.map +0 -1
- package/dist/slot-pC8kH9De.js.map +0 -1
- package/dist/table-CUFbAI2k.js +0 -1914
- package/dist/table-CUFbAI2k.js.map +0 -1
- package/dist/use-translations-DTLfPE3_.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expand.js","names":[],"sources":["../../../src/components/floating/expand.tsx"],"sourcesContent":["\"use client\";\nimport { FloatingFocusManager, FloatingPortal, useClick, useDismiss, useFloating, useInteractions, useRole } from \"@floating-ui/react\";\nimport { AnimatePresence, motion } from \"motion/react\";\nimport { PropsWithChildren, useEffect, useId, useRef, useState } from \"react\";\nimport { Label, Override } from \"../../types\";\nimport { Button, ButtonProps } from \"../core/button\";\n\nexport type ExpandProps = Override<\n ButtonProps<typeof motion.button>,\n {\n trigger: Label;\n open?: boolean;\n disabled?: boolean;\n }\n>;\n\nexport const Expand = (props: PropsWithChildren<ExpandProps>) => {\n const root = useRef<HTMLDivElement | null>(null);\n const id = useId();\n const wrapperId = `${id}:wrapper`;\n const titleId = `${id}:title`;\n\n const [open, setOpen] = useState(props.open ?? false);\n useEffect(() => {\n setOpen(props.open ?? false);\n }, [props.open]);\n const { context, refs } = useFloating({\n transform: true,\n open: open !== null,\n nodeId: id,\n onOpenChange: setOpen,\n strategy: \"absolute\",\n });\n const click = useClick(context, { enabled: !(props.disabled ?? false) });\n const role = useRole(context, { role: \"dialog\" });\n const dismiss = useDismiss(context, {\n escapeKey: true,\n referencePress: true,\n outsidePress: true,\n });\n const { getFloatingProps, getReferenceProps } = useInteractions([click, role, dismiss]);\n\n return (\n <div className=\"relative inline-flex items-center justify-center\" ref={root}>\n <Button\n {...getReferenceProps(props as never)}\n as={motion.button}\n layoutId={wrapperId}\n ref={refs.setReference}\n size=\"small\"\n onClick={() => setOpen(true)}\n >\n <motion.span layoutId={titleId}>{props.trigger}</motion.span>\n </Button>\n <AnimatePresence>\n {open ? (\n <FloatingPortal root={root}>\n <FloatingFocusManager visuallyHiddenDismiss modal closeOnFocusOut context={context}>\n <motion.div {...getFloatingProps()} ref={refs.setFloating} layoutId={wrapperId} className=\"absolute -left-1/4 -top-3/4\">\n {props.children}\n </motion.div>\n </FloatingFocusManager>\n </FloatingPortal>\n ) : null}\n </AnimatePresence>\n </div>\n );\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"expand.js","names":[],"sources":["../../../src/components/floating/expand.tsx"],"sourcesContent":["\"use client\";\nimport { FloatingFocusManager, FloatingPortal, useClick, useDismiss, useFloating, useInteractions, useRole } from \"@floating-ui/react\";\nimport { AnimatePresence, motion } from \"motion/react\";\nimport { PropsWithChildren, useEffect, useId, useRef, useState } from \"react\";\nimport { Label, Override } from \"../../types\";\nimport { Button, ButtonProps } from \"../core/button\";\n\nexport type ExpandProps = Override<\n ButtonProps<typeof motion.button>,\n {\n trigger: Label;\n open?: boolean;\n disabled?: boolean;\n }\n>;\n\nexport const Expand = (props: PropsWithChildren<ExpandProps>) => {\n const root = useRef<HTMLDivElement | null>(null);\n const id = useId();\n const wrapperId = `${id}:wrapper`;\n const titleId = `${id}:title`;\n\n const [open, setOpen] = useState(props.open ?? false);\n useEffect(() => {\n setOpen(props.open ?? false);\n }, [props.open]);\n const { context, refs } = useFloating({\n transform: true,\n open: open !== null,\n nodeId: id,\n onOpenChange: setOpen,\n strategy: \"absolute\",\n });\n const click = useClick(context, { enabled: !(props.disabled ?? false) });\n const role = useRole(context, { role: \"dialog\" });\n const dismiss = useDismiss(context, {\n escapeKey: true,\n referencePress: true,\n outsidePress: true,\n });\n const { getFloatingProps, getReferenceProps } = useInteractions([click, role, dismiss]);\n\n return (\n <div className=\"relative inline-flex items-center justify-center\" ref={root}>\n <Button\n {...getReferenceProps(props as never)}\n as={motion.button}\n layoutId={wrapperId}\n ref={refs.setReference}\n size=\"small\"\n onClick={() => setOpen(true)}\n >\n <motion.span layoutId={titleId}>{props.trigger}</motion.span>\n </Button>\n <AnimatePresence>\n {open ? (\n <FloatingPortal root={root}>\n <FloatingFocusManager visuallyHiddenDismiss modal closeOnFocusOut context={context}>\n <motion.div {...getFloatingProps()} ref={refs.setFloating} layoutId={wrapperId} className=\"absolute -left-1/4 -top-3/4\">\n {props.children}\n </motion.div>\n </FloatingFocusManager>\n </FloatingPortal>\n ) : null}\n </AnimatePresence>\n </div>\n );\n};\n"],"mappings":";;;;;;;;AAgBA,IAAa,KAAU,MAA0C;CAC7D,IAAM,IAAO,EAA8B,IAAI,GACzC,IAAK,EAAM,GACX,IAAY,GAAG,EAAG,WAClB,IAAU,GAAG,EAAG,SAEhB,CAAC,GAAM,KAAW,EAAS,EAAM,QAAQ,EAAK;CACpD,QAAgB;EACZ,EAAQ,EAAM,QAAQ,EAAK;CAC/B,GAAG,CAAC,EAAM,IAAI,CAAC;CACf,IAAM,EAAE,YAAS,YAAS,EAAY;EAClC,WAAW;EACX,MAAM,MAAS;EACf,QAAQ;EACR,cAAc;EACd,UAAU;CACd,CAAC,GAQK,EAAE,qBAAkB,yBAAsB,EAAgB;EAPlD,EAAS,GAAS,EAAE,SAAS,EAAE,EAAM,YAAY,IAAO,CAOL;EANpD,EAAQ,GAAS,EAAE,MAAM,SAAS,CAMyB;EALxD,EAAW,GAAS;GAChC,WAAW;GACX,gBAAgB;GAChB,cAAc;EAClB,CAC8E;CAAO,CAAC;CAEtF,OACI,kBAAC,OAAD;EAAK,WAAU;EAAmD,KAAK;YAAvE,CACI,kBAAC,GAAD;GACI,GAAI,EAAkB,CAAc;GACpC,IAAI,EAAO;GACX,UAAU;GACV,KAAK,EAAK;GACV,MAAK;GACL,eAAe,EAAQ,EAAI;aAE3B,kBAAC,EAAO,MAAR;IAAa,UAAU;cAAU,EAAM;GAAqB,CAAA;EACxD,CAAA,GACR,kBAAC,GAAD,EAAA,UACK,IACG,kBAAC,GAAD;GAAsB;aAClB,kBAAC,GAAD;IAAsB,uBAAA;IAAsB,OAAA;IAAM,iBAAA;IAAyB;cACvE,kBAAC,EAAO,KAAR;KAAY,GAAI,EAAiB;KAAG,KAAK,EAAK;KAAa,UAAU;KAAW,WAAU;eACrF,EAAM;IACC,CAAA;GACM,CAAA;EACV,CAAA,IAChB,KACS,CAAA,CAChB;;AAEb"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { t as e, u as t } from "../../dom-Bn4wY_Zx.js";
|
|
3
3
|
import { t as n } from "../../CaretRight.es-B2mpMfqU.js";
|
|
4
4
|
import { A as r, C as i, D as a, E as o, O as s, _ as c, b as l, c as u, d, f as ee, h as f, i as te, l as p, m, n as ne, o as re, p as h, r as ie, s as g, v as ae, x as oe, y as _ } from "../../floating-ui.react-CwXtBJ_y.js";
|
|
5
|
-
import {
|
|
5
|
+
import { Slot as v } from "../core/slot.js";
|
|
6
6
|
import y, { Fragment as b, createContext as x, useContext as S, useEffect as C, useRef as w, useState as T } from "react";
|
|
7
7
|
import { jsx as E, jsxs as D } from "react/jsx-runtime";
|
|
8
8
|
//#region src/components/floating/menu.tsx
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type ElementProps, type FloatingContext } from "@floating-ui/react";
|
|
1
|
+
import { FloatingFocusManager, type ElementProps, type FloatingContext } from "@floating-ui/react";
|
|
2
2
|
import { HTMLMotionProps } from "motion/react";
|
|
3
3
|
import React from "react";
|
|
4
4
|
import { Label, Override } from "../../types";
|
|
@@ -6,34 +6,37 @@ import { ButtonProps } from "../core/button";
|
|
|
6
6
|
export declare const useConfirm: () => (options: ConfirmOptions) => Promise<boolean>;
|
|
7
7
|
export type ModalType = "dialog" | "drawer" | "sheet";
|
|
8
8
|
export type DrawerPosition = "left" | "right";
|
|
9
|
-
|
|
9
|
+
type ModalAccessibleNameProps = {
|
|
10
10
|
title: Label;
|
|
11
11
|
ariaTitle?: string;
|
|
12
12
|
} | {
|
|
13
13
|
ariaTitle: string;
|
|
14
14
|
title?: Label;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
onChange: (nextState: boolean) => void;
|
|
18
|
-
} & Partial<{
|
|
15
|
+
};
|
|
16
|
+
type ModalOptions = Partial<{
|
|
19
17
|
footer: Label;
|
|
18
|
+
role: "dialog";
|
|
19
|
+
trigger: Label;
|
|
20
20
|
type: ModalType;
|
|
21
|
-
animated: boolean;
|
|
22
21
|
asChild: boolean;
|
|
23
22
|
layoutId: string;
|
|
24
23
|
resizer: boolean;
|
|
24
|
+
animated: boolean;
|
|
25
25
|
className: string;
|
|
26
26
|
closable: boolean;
|
|
27
27
|
forceType: boolean;
|
|
28
28
|
bodyClassName: string;
|
|
29
|
+
closeOnFocusOut: boolean;
|
|
29
30
|
overlayClassName: string;
|
|
30
31
|
position: DrawerPosition;
|
|
31
32
|
overlayClickClose: boolean;
|
|
32
|
-
closeOnFocusOut: boolean;
|
|
33
|
-
role: "dialog";
|
|
34
33
|
interactions: ElementProps[];
|
|
35
|
-
|
|
36
|
-
}
|
|
34
|
+
initialFocus: React.ComponentProps<typeof FloatingFocusManager>["initialFocus"];
|
|
35
|
+
}>;
|
|
36
|
+
export type ModalProps = Override<HTMLMotionProps<"div">, {
|
|
37
|
+
open: boolean;
|
|
38
|
+
onChange: (nextState: boolean) => void;
|
|
39
|
+
} & ModalAccessibleNameProps & ModalOptions>;
|
|
37
40
|
export type ModalRef = {
|
|
38
41
|
context: FloatingContext;
|
|
39
42
|
floating: HTMLElement | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../../src/components/floating/modal.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../../src/components/floating/modal.tsx"],"names":[],"mappings":"AACA,OAAO,EACH,oBAAoB,EAQpB,KAAK,YAAY,EACjB,KAAK,eAAe,EACvB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAEH,eAAe,EAQlB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAWN,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,EAAO,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAU,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAMrD,eAAO,MAAM,UAAU,kBAF8B,cAAc,KAAK,OAAO,CAAC,OAAO,CAEvB,CAAC;AAEjE,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEtD,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC;AA2E9C,KAAK,wBAAwB,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAE5G,KAAK,YAAY,GAAG,OAAO,CAAC;IACxB,MAAM,EAAE,KAAK,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,KAAK,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,YAAY,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,CAAC,cAAc,CAAC,CAAC;CACnF,CAAC,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,QAAQ,CAC7B,eAAe,CAAC,KAAK,CAAC,EACtB;IACI,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CAC1C,GAAG,wBAAwB,GACxB,YAAY,CACnB,CAAC;AAyHF,MAAM,MAAM,QAAQ,GAAG;IACnB,OAAO,EAAE,eAAe,CAAC;IACzB,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CAChC,CAAC;AAIF,KAAK,cAAc,GAAG,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG;IACzC,OAAO,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;CACvD,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,cA+RU,CAAC;AAE/B,KAAK,wBAAwB,GAAG;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,KAAK,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,WAAW,CAAC,EAAE,KAAK,CAAC;IACpB,MAAM,CAAC,EAAE,wBAAwB,CAAC;IAClC,OAAO,CAAC,EAAE,wBAAwB,CAAC;CACtC,CAAC;AAaF,eAAO,MAAM,oBAAoB,GAAI,cAAc;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,sBA4D/E,CAAC"}
|
|
@@ -61,7 +61,7 @@ const variants = cva("z-floating flex min-w-xs appearance-none flex-col flex-now
|
|
|
61
61
|
type: {
|
|
62
62
|
drawer: "absolute h-screen max-h-screen min-h-0 w-fit max-w-modal-dialog-max-w-mobile",
|
|
63
63
|
dialog: "container relative h-min max-h-modal-sheet-max-h-lvh rounded-modal-radius py-modal-padding-y",
|
|
64
|
-
sheet: "absolute bottom-0 h-screen max-h-modal-sheet-max-h-svh
|
|
64
|
+
sheet: "absolute bottom-0 h-screen max-h-modal-sheet-max-h-svh w-screen rounded-t-modal-radius pb-modal-sheet-pb pt-modal-sheet-pt",
|
|
65
65
|
},
|
|
66
66
|
position: {
|
|
67
67
|
none: "",
|
|
@@ -72,8 +72,38 @@ const variants = cva("z-floating flex min-w-xs appearance-none flex-col flex-now
|
|
|
72
72
|
defaultVariants: { position: "right", type: "dialog" },
|
|
73
73
|
});
|
|
74
74
|
const dragConstraints = { top: 0, left: 0, right: 0, bottom: 0 };
|
|
75
|
+
const keyboardResizeStep = 32;
|
|
75
76
|
const calculateClose = (n) => n * 0.6;
|
|
77
|
+
const clamp = (value, min, max) => Math.min(max, Math.max(min, value));
|
|
76
78
|
const Draggable = (props) => {
|
|
79
|
+
const translations = useTranslations();
|
|
80
|
+
const getKeyboardResize = (delta) => {
|
|
81
|
+
const element = props.parent.current;
|
|
82
|
+
if (!element)
|
|
83
|
+
return undefined;
|
|
84
|
+
const rect = element.getBoundingClientRect();
|
|
85
|
+
const current = props.value.get() || (props.sheet ? rect.height : rect.width);
|
|
86
|
+
if (props.sheet) {
|
|
87
|
+
const max = window.outerHeight || rect.height || current;
|
|
88
|
+
return clamp(current + delta, calculateClose(max), max);
|
|
89
|
+
}
|
|
90
|
+
const max = window.outerWidth || rect.width || current;
|
|
91
|
+
return clamp(current + delta, 0, max);
|
|
92
|
+
};
|
|
93
|
+
const onKeyDown = (event) => {
|
|
94
|
+
const delta = event.key === "ArrowRight" || event.key === "ArrowDown"
|
|
95
|
+
? keyboardResizeStep
|
|
96
|
+
: event.key === "ArrowLeft" || event.key === "ArrowUp"
|
|
97
|
+
? -keyboardResizeStep
|
|
98
|
+
: undefined;
|
|
99
|
+
if (delta === undefined)
|
|
100
|
+
return;
|
|
101
|
+
event.preventDefault();
|
|
102
|
+
event.stopPropagation();
|
|
103
|
+
const nextValue = getKeyboardResize(delta);
|
|
104
|
+
if (nextValue !== undefined)
|
|
105
|
+
props.value.set(nextValue);
|
|
106
|
+
};
|
|
77
107
|
const onDrag = (e, info) => {
|
|
78
108
|
if (props.parent.current) {
|
|
79
109
|
e.stopPropagation();
|
|
@@ -100,12 +130,12 @@ const Draggable = (props) => {
|
|
|
100
130
|
return props.value.set(value);
|
|
101
131
|
}
|
|
102
132
|
};
|
|
103
|
-
return (<motion.button draggable dragListener dragMomentum
|
|
133
|
+
return (<motion.button draggable dragListener dragMomentum type="button" animate={false} dragElastic={0} dragPropagation initial={false} onDrag={onDrag} dragSnapToOrigin dragDirectionLock onKeyDown={onKeyDown} aria-label={translations.dialogResizeLabel} drag={props.sheet ? "y" : "x"} dragConstraints={dragConstraints} whileDrag={{ cursor: "grabbing" }} aria-describedby={props.instructionsId} className={css("absolute isolate z-calendar rounded-modal-resizer-radius focus-visible:outline-none focus-visible:ring-4 focus-visible:ring-ring", props.sheet ? "cursor-row-resize" : "cursor-col-resize bg-floating-border", props.sheet
|
|
104
134
|
? "top-1 flex h-modal-sheet-handle-h w-full justify-center py-modal-sheet-handle-py"
|
|
105
135
|
: props.position === "left"
|
|
106
136
|
? "right-5 top-1/2 h-modal-drawer-resizer-h w-modal-drawer-resizer-w"
|
|
107
137
|
: "left-2 top-1/2 h-modal-drawer-resizer-h w-modal-drawer-resizer-w")}>
|
|
108
|
-
{props.sheet ? <div className="
|
|
138
|
+
{props.sheet ? <div className="h-modal-sheet-pill-h w-modal-sheet-pill-w rounded-modal-sheet-pill-radius bg-floating-border"/> : null}
|
|
109
139
|
</motion.button>);
|
|
110
140
|
};
|
|
111
141
|
const positions = { drawer: "right", sheet: "none", dialog: "none" };
|
|
@@ -116,18 +146,20 @@ const fetchPosition = (isDesktop, forceType, propsType, propsPosition) => {
|
|
|
116
146
|
return forceType ? positions[type] : positions.sheet;
|
|
117
147
|
};
|
|
118
148
|
const noop = [];
|
|
119
|
-
export const Modal = forwardRef(({ open, title, footer, asChild, trigger, children, onChange, ariaTitle, className, bodyClassName, resizer = true, animated = true, closable = true, forceType = false, layoutId = undefined, overlayClassName = "", type: _type = "dialog", position: propsPosition, overlayClickClose = false, closeOnFocusOut = false, interactions: outInteractions = noop, ...props }, externalRef) => {
|
|
149
|
+
export const Modal = forwardRef(({ open, title, footer, asChild, trigger, children, onChange, ariaTitle, className, bodyClassName, resizer = true, animated = true, closable = true, forceType = false, layoutId = undefined, overlayClassName = "", type: _type = "dialog", position: propsPosition, overlayClickClose = false, closeOnFocusOut = false, initialFocus, interactions: outInteractions = noop, ...props }, externalRef) => {
|
|
120
150
|
const t = useTranslations();
|
|
121
151
|
const root = useFloatingRef();
|
|
122
152
|
const innerContent = useRef(null);
|
|
123
153
|
const removeScrollRef = useRef(null);
|
|
124
154
|
const headingId = useId();
|
|
125
155
|
const descriptionId = useId();
|
|
156
|
+
const resizeDescriptionId = useId();
|
|
157
|
+
const modalType = _type;
|
|
126
158
|
const isDesktop = useMediaQuery("(min-width: 64rem)");
|
|
127
|
-
const position = fetchPosition(isDesktop, forceType,
|
|
128
|
-
const func = isDesktop ? animations[
|
|
159
|
+
const position = fetchPosition(isDesktop, forceType, modalType, propsPosition);
|
|
160
|
+
const func = isDesktop ? animations[modalType] : forceType ? animations[modalType] : animations.sheet;
|
|
129
161
|
const animation = typeof func === "function" ? func(position) : func;
|
|
130
|
-
const type = isDesktop ?
|
|
162
|
+
const type = isDesktop ? modalType : forceType ? modalType : "sheet";
|
|
131
163
|
const useResizer = type !== "dialog";
|
|
132
164
|
const floating = useFloating({
|
|
133
165
|
open,
|
|
@@ -192,16 +224,17 @@ export const Modal = forwardRef(({ open, title, footer, asChild, trigger, childr
|
|
|
192
224
|
: { animate: animated, initial: false };
|
|
193
225
|
const scrollInitial = useMotionValue(undefined);
|
|
194
226
|
const scroll = useMotionValue(undefined);
|
|
195
|
-
const Component = asChild ? Slot : motion.button;
|
|
196
227
|
return (<Fragment>
|
|
197
|
-
{trigger ? (<
|
|
198
|
-
|
|
199
|
-
|
|
228
|
+
{trigger ? (asChild ? (<Slot ref={floating.refs.setReference} {...interactions.getReferenceProps()}>
|
|
229
|
+
{trigger}
|
|
230
|
+
</Slot>) : (<motion.button ref={floating.refs.setReference} {...interactions.getReferenceProps()} layoutId={layoutId} type="button">
|
|
231
|
+
{trigger}
|
|
232
|
+
</motion.button>)) : null}
|
|
200
233
|
<MotionConfig reducedMotion={animated ? "user" : "always"}>
|
|
201
234
|
<FloatingPortal preserveTabOrder root={root}>
|
|
202
235
|
<AnimatePresence mode="wait" propagate>
|
|
203
236
|
{open ? (<FloatingOverlay lockScroll className={css("inset-0 isolate z-overlay flex h-modal-overlay-h !overflow-clip bg-floating-overlay/80", type === "drawer" ? "" : "items-start justify-center pt-modal-overlay-pt lg:p-modal-overlay-p", overlayClassName)}>
|
|
204
|
-
<FloatingFocusManager guards modal closeOnFocusOut={closeOnFocusOut} context={floating.context}>
|
|
237
|
+
<FloatingFocusManager guards modal closeOnFocusOut={closeOnFocusOut} context={floating.context} initialFocus={initialFocus}>
|
|
205
238
|
<AnimatePresence propagate>
|
|
206
239
|
<motion.div {...props} {...(title
|
|
207
240
|
? {
|
|
@@ -213,7 +246,12 @@ export const Modal = forwardRef(({ open, title, footer, asChild, trigger, childr
|
|
|
213
246
|
ref: mergeRefs(floating.refs.setFloating, removeScrollRef),
|
|
214
247
|
className: css(variants({ position, type }), className, "isolate overscroll-contain"),
|
|
215
248
|
})} exit="exit" layout={true} animate="enter" initial="initial" layoutId={layoutId} variants={animation} data-component="modal" style={type === "drawer" ? { width: floatingSize } : { height: floatingSize, y: sheetY }}>
|
|
216
|
-
{useResizer && resizer ? (
|
|
249
|
+
{useResizer && resizer ? (<>
|
|
250
|
+
<span id={resizeDescriptionId} className="sr-only">
|
|
251
|
+
{t.dialogResizeInstructions}
|
|
252
|
+
</span>
|
|
253
|
+
<Draggable onChange={onChange} value={floatingSize} sheet={type === "sheet"} instructionsId={resizeDescriptionId} position={position} parent={floating.refs.floating}/>
|
|
254
|
+
</>) : null}
|
|
217
255
|
{title ? (<motion.header {...draggableMotionProps} className="relative isolate w-full">
|
|
218
256
|
{title ? (<h2 id={headingId} className="block select-text border-b border-floating-border px-modal-padding-x pb-modal-title-pb text-modal-title-text font-medium leading-relaxed">
|
|
219
257
|
{title}
|
|
@@ -272,7 +310,7 @@ export const Modal = forwardRef(({ open, title, footer, asChild, trigger, childr
|
|
|
272
310
|
</footer>) : null}
|
|
273
311
|
{closable ? (<div className="absolute right-modal-close-right top-modal-close-top z-floating">
|
|
274
312
|
<button type="button" onClick={onClose} aria-label={t.closeButton} className="p-modal-close-p opacity-70 transition-colors hover:text-danger hover:opacity-100 focus:text-danger">
|
|
275
|
-
<XIcon aria-hidden="true"/>
|
|
313
|
+
<XIcon size={20} aria-hidden="true"/>
|
|
276
314
|
</button>
|
|
277
315
|
</div>) : null}
|
|
278
316
|
</motion.div>
|
|
@@ -292,6 +330,7 @@ let confirmGlobal = async (_) => {
|
|
|
292
330
|
};
|
|
293
331
|
Modal.confirm = (options) => confirmGlobal(options);
|
|
294
332
|
export const ModalConfirmProvider = ({ children }) => {
|
|
333
|
+
const translations = useTranslations();
|
|
295
334
|
const [open, setOpen] = useState(false);
|
|
296
335
|
const [options, setOptions] = useState({});
|
|
297
336
|
const [resolve, setResolve] = useState(() => { });
|
|
@@ -322,12 +361,12 @@ export const ModalConfirmProvider = ({ children }) => {
|
|
|
322
361
|
};
|
|
323
362
|
return (<ConfirmContext.Provider value={confirmAction}>
|
|
324
363
|
{children}
|
|
325
|
-
<Modal open={open} type="dialog" closable={false} onChange={setOpen} overlayClickClose={false} title={options.title ||
|
|
364
|
+
<Modal open={open} type="dialog" closable={false} onChange={setOpen} overlayClickClose={false} title={options.title || translations.modalConfirmTitle} className="container max-w-dialog lg:max-w-96" footer={<div className="flex justify-end gap-modal-footer-gap">
|
|
326
365
|
<Button theme={options.cancel?.theme || "ghost-muted"} onClick={onCancel}>
|
|
327
|
-
{options.cancel?.text ||
|
|
366
|
+
{options.cancel?.text || translations.modalConfirmCancel}
|
|
328
367
|
</Button>
|
|
329
368
|
<Button ref={confirmRef} theme={options.confirm?.theme || "primary"} onClick={onConfirm}>
|
|
330
|
-
{options.confirm?.text ||
|
|
369
|
+
{options.confirm?.text || translations.modalConfirmConfirm}
|
|
331
370
|
</Button>
|
|
332
371
|
</div>}>
|
|
333
372
|
<div className="py-modal-confirm-py text-foreground">{options.description}</div>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export type ToolbarProps = {
|
|
1
|
+
import { HTMLMotionProps } from "motion/react";
|
|
2
|
+
export type ToolbarProps = HTMLMotionProps<"div"> & {
|
|
3
3
|
root?: HTMLElement;
|
|
4
4
|
};
|
|
5
|
-
export declare const Toolbar: (
|
|
5
|
+
export declare const Toolbar: import("react").ForwardRefExoticComponent<Omit<ToolbarProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
6
6
|
//# sourceMappingURL=toolbar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../src/components/floating/toolbar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../src/components/floating/toolbar.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAU,MAAM,cAAc,CAAC;AAKvD,MAAM,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG;IAChD,IAAI,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,OAAO,sHAelB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { t as e } from "../../dom-Bn4wY_Zx.js";
|
|
3
|
+
import { t } from "../../proxy-fP2NxmhM.js";
|
|
4
|
+
import { forwardRef as n } from "react";
|
|
5
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
6
|
+
//#region src/components/floating/toolbar.tsx
|
|
7
|
+
var i = n(function({ className: n, children: i, root: a, ...o }, s) {
|
|
8
|
+
return /* @__PURE__ */ r(t.div, {
|
|
9
|
+
...o,
|
|
10
|
+
ref: s,
|
|
11
|
+
role: "toolbar",
|
|
12
|
+
"data-component": "toolbar",
|
|
13
|
+
className: e("sticky bottom-toolbar-bottom flex items-center justify-center rounded-toolbar-radius border border-card-border bg-background p-toolbar-p", n),
|
|
14
|
+
children: i
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
//#endregion
|
|
18
|
+
export { i as Toolbar };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=toolbar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar.js","names":[],"sources":["../../../src/components/floating/toolbar.tsx"],"sourcesContent":["\"use client\";\nimport { HTMLMotionProps, motion } from \"motion/react\";\nimport { forwardRef } from \"react\";\n\nimport { css } from \"../../lib/dom\";\n\nexport type ToolbarProps = HTMLMotionProps<\"div\"> & {\n root?: HTMLElement;\n};\n\nexport const Toolbar = forwardRef<HTMLDivElement, ToolbarProps>(function Toolbar({ className, children, root: _root, ...props }, ref) {\n return (\n <motion.div\n {...props}\n ref={ref}\n role=\"toolbar\"\n data-component=\"toolbar\"\n className={css(\n \"sticky bottom-toolbar-bottom flex items-center justify-center rounded-toolbar-radius border border-card-border bg-background p-toolbar-p\",\n className\n )}\n >\n {children}\n </motion.div>\n );\n});\n"],"mappings":";;;;;;AAUA,IAAa,IAAU,EAAyC,SAAiB,EAAE,cAAW,aAAU,MAAM,GAAO,GAAG,KAAS,GAAK;CAClI,OACI,kBAAC,EAAO,KAAR;EACI,GAAI;EACC;EACL,MAAK;EACL,kBAAe;EACf,WAAW,EACP,4IACA,CACJ;EAEC;CACO,CAAA;AAEpB,CAAC"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { motion } from "motion/react";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
import { forwardRef } from "react";
|
|
4
|
+
import { css } from "../../lib/dom";
|
|
5
|
+
export const Toolbar = forwardRef(function Toolbar({ className, children, root: _root, ...props }, ref) {
|
|
6
|
+
return (<motion.div {...props} ref={ref} role="toolbar" data-component="toolbar" className={css("sticky bottom-toolbar-bottom flex items-center justify-center rounded-toolbar-radius border border-card-border bg-background p-toolbar-p", className)}>
|
|
7
|
+
{children}
|
|
8
|
+
</motion.div>);
|
|
9
|
+
});
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { u as e } from "../../dom-Bn4wY_Zx.js";
|
|
3
|
-
import { t } from "
|
|
3
|
+
import { Polymorph as t } from "../core/polymorph.js";
|
|
4
4
|
import { A as n, D as r, E as i, O as a, T as o, _ as s, c, d as l, f as u, g as d, l as f, o as p, t as m, u as h, v as g, w as _, x as v } from "../../floating-ui.react-CwXtBJ_y.js";
|
|
5
5
|
import { i as y } from "../../fns-KbsWlOTG.js";
|
|
6
6
|
import { Fragment as b, forwardRef as x, useEffect as S, useRef as C, useState as w } from "react";
|
|
7
7
|
import { jsx as T, jsxs as E } from "react/jsx-runtime";
|
|
8
8
|
//#region src/components/floating/tooltip.tsx
|
|
9
|
-
var D = x(function({ as: x, open: D, title: O, children: k, placement: A, focus: j = !0, hover: M = !0, enabled: N = !0, popover: P = !
|
|
9
|
+
var D = x(function({ as: x, open: D, title: O, children: k, placement: A, focus: j = !0, hover: M = !0, enabled: N = !0, popover: P = !1, onChange: F = y, followCursor: I = !1, ...L }, R) {
|
|
10
10
|
let [z, B] = w(D ?? !1), V = C(null), H = x || "span", { refs: U, floatingStyles: W, context: G } = u({
|
|
11
11
|
placement: A,
|
|
12
12
|
open: z,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","names":[],"sources":["../../../src/components/floating/tooltip.tsx"],"sourcesContent":["\"use client\";\nimport {\n arrow,\n autoPlacement,\n autoUpdate,\n flip,\n FloatingArrow,\n FloatingPortal,\n offset,\n type Placement,\n safePolygon,\n shift,\n useClick,\n useClientPoint,\n useDismiss,\n useFloating,\n useFocus,\n useHover,\n useInteractions,\n useRole,\n} from \"@floating-ui/react\";\nimport React, { forwardRef, Fragment, useEffect, useRef, useState } from \"react\";\nimport { Polymorph, PolymorphicProps } from \"../../components/core/polymorph\";\nimport { FLOATING_DELAY } from \"../../constants\";\nimport { mergeRefs } from \"../../lib/dom\";\nimport { noop } from \"../../lib/fns\";\nimport { ComponentLike, Label } from \"../../types\";\n\nexport type TooltipProps<T extends React.ElementType = \"span\"> = PolymorphicProps<\n {\n title: Label;\n open?: boolean;\n focus?: boolean;\n hover?: boolean;\n enabled?: boolean;\n popover?: boolean;\n placement?: Placement;\n followCursor?: boolean;\n onChange?: (b: boolean) => void;\n },\n T\n>;\n\nexport const Tooltip: <T extends ComponentLike = \"span\">(_: TooltipProps<T>) => React.ReactElement = forwardRef<HTMLSpanElement, TooltipProps>(\n function Tooltip<T extends ComponentLike = \"span\">(\n {\n as,\n open,\n title,\n children,\n placement,\n focus = true,\n hover = true,\n enabled = true,\n popover =
|
|
1
|
+
{"version":3,"file":"tooltip.js","names":[],"sources":["../../../src/components/floating/tooltip.tsx"],"sourcesContent":["\"use client\";\nimport {\n arrow,\n autoPlacement,\n autoUpdate,\n flip,\n FloatingArrow,\n FloatingPortal,\n offset,\n type Placement,\n safePolygon,\n shift,\n useClick,\n useClientPoint,\n useDismiss,\n useFloating,\n useFocus,\n useHover,\n useInteractions,\n useRole,\n} from \"@floating-ui/react\";\nimport React, { forwardRef, Fragment, useEffect, useRef, useState } from \"react\";\nimport { Polymorph, PolymorphicProps } from \"../../components/core/polymorph\";\nimport { FLOATING_DELAY } from \"../../constants\";\nimport { mergeRefs } from \"../../lib/dom\";\nimport { noop } from \"../../lib/fns\";\nimport { ComponentLike, Label } from \"../../types\";\n\nexport type TooltipProps<T extends React.ElementType = \"span\"> = PolymorphicProps<\n {\n title: Label;\n open?: boolean;\n focus?: boolean;\n hover?: boolean;\n enabled?: boolean;\n popover?: boolean;\n placement?: Placement;\n followCursor?: boolean;\n onChange?: (b: boolean) => void;\n },\n T\n>;\n\nexport const Tooltip: <T extends ComponentLike = \"span\">(_: TooltipProps<T>) => React.ReactElement = forwardRef<HTMLSpanElement, TooltipProps>(\n function Tooltip<T extends ComponentLike = \"span\">(\n {\n as,\n open,\n title,\n children,\n placement,\n focus = true,\n hover = true,\n enabled = true,\n popover = false,\n onChange = noop,\n followCursor = false,\n ...props\n }: TooltipProps<T>,\n outerRef: React.ForwardedRef<HTMLSpanElement>\n ) {\n const [innerOpen, setInnerOpen] = useState<boolean>(open ?? false);\n const arrowRef = useRef(null);\n const Component: React.ElementType = as || \"span\";\n const toggleBoth = (b: boolean) => {\n setInnerOpen(b);\n onChange?.(b);\n };\n const { refs, floatingStyles, context } = useFloating({\n placement,\n open: innerOpen,\n whileElementsMounted: autoUpdate,\n onOpenChange: open ? undefined : toggleBoth,\n middleware: [shift(), offset(5), autoPlacement(), arrow({ padding: 5, element: arrowRef }), flip({ fallbackAxisSideDirection: \"start\" })],\n });\n const dismiss = useDismiss(context, { enabled });\n const role = useRole(context, {\n role: popover ? \"dialog\" : \"tooltip\",\n enabled,\n });\n const focusController = useFocus(context, {\n enabled: enabled ? focus : false,\n });\n const clickController = useClick(context, {\n enabled: enabled ? popover : false,\n });\n const clientPoint = useClientPoint(context, {\n enabled: !!enabled && !!followCursor,\n });\n const hoverController = useHover(context, {\n move: true,\n delay: { open: FLOATING_DELAY },\n enabled: enabled ? hover : false,\n handleClose: popover ? safePolygon() : null,\n });\n const { getReferenceProps, getFloatingProps } = useInteractions([\n role,\n dismiss,\n clientPoint,\n focus ? focusController : undefined,\n hover ? hoverController : undefined,\n popover ? clickController : undefined,\n ]);\n\n useEffect(() => {\n if (open === undefined) return setInnerOpen(false);\n return setInnerOpen(open);\n }, [open]);\n\n return (\n <Fragment>\n <Component {...getReferenceProps(props)} ref={mergeRefs(refs.setReference, outerRef)}>\n {title}\n </Component>\n {innerOpen && (\n <FloatingPortal>\n <Polymorph\n {...getFloatingProps()}\n style={floatingStyles}\n ref={refs.setFloating as React.Ref<React.ElementType<any, keyof React.JSX.IntrinsicElements>>}\n className=\"isolate z-tooltip rounded-tooltip-radius border border-tooltip-border bg-tooltip-background p-tooltip-p text-tooltip-foreground shadow-shadow-floating\"\n >\n <FloatingArrow\n ref={arrowRef}\n context={context}\n strokeWidth={0.1}\n className=\"fill-tooltip-background stroke-tooltip-border\"\n />\n {children}\n </Polymorph>\n </FloatingPortal>\n )}\n </Fragment>\n );\n }\n) as unknown as <T extends ComponentLike = \"span\">(_: TooltipProps<T>) => React.ReactElement;\n"],"mappings":";;;;;;;;AA2CA,IAAa,IAAwF,EACjG,SACI,EACI,OACA,SACA,UACA,aACA,cACA,WAAQ,IACR,WAAQ,IACR,aAAU,IACV,aAAU,IACV,cAAW,GACX,kBAAe,IACf,GAAG,KAEP,GACF;CACE,IAAM,CAAC,GAAW,KAAgB,EAAkB,KAAQ,EAAK,GAC3D,IAAW,EAAO,IAAI,GACtB,IAA+B,KAAM,QAKrC,EAAE,SAAM,mBAAgB,eAAY,EAAY;EAClD;EACA,MAAM;EACN,sBAAsB;EACtB,cAAc,IAAO,KAAA,KARL,MAAe;GAE/B,AADA,EAAa,CAAC,GACd,IAAW,CAAC;EAChB;EAMI,YAAY;GAAC,EAAM;GAAG,EAAO,CAAC;GAAG,EAAc;GAAG,EAAM;IAAE,SAAS;IAAG,SAAS;GAAS,CAAC;GAAG,EAAK,EAAE,2BAA2B,QAAQ,CAAC;EAAC;CAC5I,CAAC,GACK,IAAU,EAAW,GAAS,EAAE,WAAQ,CAAC,GACzC,IAAO,EAAQ,GAAS;EAC1B,MAAM,IAAU,WAAW;EAC3B;CACJ,CAAC,GACK,IAAkB,EAAS,GAAS,EACtC,SAAS,IAAU,IAAQ,GAC/B,CAAC,GACK,IAAkB,EAAS,GAAS,EACtC,SAAS,IAAU,IAAU,GACjC,CAAC,GACK,IAAc,EAAe,GAAS,EACxC,SAAS,CAAC,CAAC,KAAW,CAAC,CAAC,EAC5B,CAAC,GACK,IAAkB,EAAS,GAAS;EACtC,MAAM;EACN,OAAO,EAAE,MAAA,IAAqB;EAC9B,SAAS,IAAU,IAAQ;EAC3B,aAAa,IAAU,EAAY,IAAI;CAC3C,CAAC,GACK,EAAE,sBAAmB,wBAAqB,EAAgB;EAC5D;EACA;EACA;EACA,IAAQ,IAAkB,KAAA;EAC1B,IAAQ,IAAkB,KAAA;EAC1B,IAAU,IAAkB,KAAA;CAChC,CAAC;CAOD,OALA,QACmC,EAA3B,MAAS,KAAA,IAA+B,KACxB,CAD6B,GAElD,CAAC,CAAI,CAAC,GAGL,kBAAC,GAAD,EAAA,UAAA,CACI,kBAAC,GAAD;EAAW,GAAI,EAAkB,CAAK;EAAG,KAAK,EAAU,EAAK,cAAc,CAAQ;YAC9E;CACM,CAAA,GACV,KACG,kBAAC,GAAD,EAAA,UACI,kBAAC,GAAD;EACI,GAAI,EAAiB;EACrB,OAAO;EACP,KAAK,EAAK;EACV,WAAU;YAJd,CAMI,kBAAC,GAAD;GACI,KAAK;GACI;GACT,aAAa;GACb,WAAU;EACb,CAAA,GACA,CACM;IACC,CAAA,CAEd,EAAA,CAAA;AAElB,CACJ"}
|
|
@@ -5,7 +5,7 @@ import { Polymorph } from "../../components/core/polymorph";
|
|
|
5
5
|
import { FLOATING_DELAY } from "../../constants";
|
|
6
6
|
import { mergeRefs } from "../../lib/dom";
|
|
7
7
|
import { noop } from "../../lib/fns";
|
|
8
|
-
export const Tooltip = forwardRef(function Tooltip({ as, open, title, children, placement, focus = true, hover = true, enabled = true, popover =
|
|
8
|
+
export const Tooltip = forwardRef(function Tooltip({ as, open, title, children, placement, focus = true, hover = true, enabled = true, popover = false, onChange = noop, followCursor = false, ...props }, outerRef) {
|
|
9
9
|
const [innerOpen, setInnerOpen] = useState(open ?? false);
|
|
10
10
|
const arrowRef = useRef(null);
|
|
11
11
|
const Component = as || "span";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../../src/components/form/autocomplete.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../../src/components/form/autocomplete.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAyG,MAAM,OAAO,CAAC;AAS9H,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAc,eAAe,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG;IAC9C,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,qBAAqB,EAAE,CAAC;CACpC,CAAC;AAsCF,eAAO,MAAM,YAAY,yGAmaxB,CAAC"}
|