@trsys-tech/matrix-library 0.5.0-beta.2 → 0.5.0
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/accordion.es.js.map +1 -1
- package/dist/avatar.es.js.map +1 -1
- package/dist/badge.es.js.map +1 -1
- package/dist/breadcrumb.es.js +4 -4
- package/dist/breadcrumb.es.js.map +1 -1
- package/dist/buildformatlongfn.es.js.map +1 -1
- package/dist/buildlocalizefn.es.js.map +1 -1
- package/dist/buildmatchfn.es.js.map +1 -1
- package/dist/buildmatchpatternfn.es.js.map +1 -1
- package/dist/button.es.js +3 -3
- package/dist/button.es.js.map +1 -1
- package/dist/calendar.es.js +3 -3
- package/dist/calendar.es.js.map +1 -1
- package/dist/card.es.js.map +1 -1
- package/dist/checkbox.es.js.map +1 -1
- package/dist/chip.es.js.map +1 -1
- package/dist/collapsible.es.js.map +1 -1
- package/dist/combobox.es.js +3 -3
- package/dist/combobox.es.js.map +1 -1
- package/dist/command.es.js.map +1 -1
- package/dist/components/command/Command.d.ts.map +1 -1
- package/dist/components/form/Form.d.ts +1 -1
- package/dist/components/form/Form.d.ts.map +1 -1
- package/dist/confirm.es.js.map +1 -1
- package/dist/contextmenu.es.js +4 -4
- package/dist/contextmenu.es.js.map +1 -1
- package/dist/dangercircleicon.es.js.map +1 -1
- package/dist/datagrid.es.js +6 -6
- package/dist/datagrid.es.js.map +1 -1
- package/dist/datepicker.es.js.map +1 -1
- package/dist/daterangepicker.es.js.map +1 -1
- package/dist/defaultoptions.es.js.map +1 -1
- package/dist/desktopdatepicker.es.js.map +1 -1
- package/dist/desktopdaterangepicker.es.js.map +1 -1
- package/dist/desktoptimepicker.es.js.map +1 -1
- package/dist/dialog.es.js.map +1 -1
- package/dist/differenceincalendardays.es.js.map +1 -1
- package/dist/drawer.es.js.map +1 -1
- package/dist/en-us.es.js.map +1 -1
- package/dist/form.es.js.map +1 -1
- package/dist/format.es.js.map +1 -1
- package/dist/formatdistance.es.js.map +1 -1
- package/dist/formatters.es.js +68 -2
- package/dist/formatters.es.js.map +1 -1
- package/dist/formcheckbox.es.js.map +1 -1
- package/dist/formcombobox.es.js.map +1 -1
- package/dist/formdatepicker.es.js.map +1 -1
- package/dist/formdaterangepicker.es.js.map +1 -1
- package/dist/forminput.es.js.map +1 -1
- package/dist/formmultiselect.es.js.map +1 -1
- package/dist/formrating.es.js.map +1 -1
- package/dist/formselect.es.js.map +1 -1
- package/dist/formswitch.es.js.map +1 -1
- package/dist/formtextarea.es.js.map +1 -1
- package/dist/formtimepicker.es.js.map +1 -1
- package/dist/getisoweekyear.es.js.map +1 -1
- package/dist/gettimezoneoffsetinmilliseconds.es.js.map +1 -1
- package/dist/getweekyear.es.js.map +1 -1
- package/dist/iconbutton.es.js +3 -3
- package/dist/iconbutton.es.js.map +1 -1
- package/dist/infocircleicon.es.js.map +1 -1
- package/dist/label.es.js.map +1 -1
- package/dist/lightformatters.es.js.map +1 -1
- package/dist/localize.es.js.map +1 -1
- package/dist/longformatters.es.js.map +1 -1
- package/dist/match.es.js.map +1 -1
- package/dist/matrix-library.css +1 -0
- package/dist/mobiledatepicker.es.js.map +1 -1
- package/dist/mobiledaterangepicker.es.js.map +1 -1
- package/dist/mobiletimepicker.es.js.map +1 -1
- package/dist/modal.es.js.map +1 -1
- package/dist/multiselect.es.js +3 -3
- package/dist/multiselect.es.js.map +1 -1
- package/dist/normalizedates.es.js.map +1 -1
- package/dist/popover.es.js.map +1 -1
- package/dist/printhtml.es.js.map +1 -1
- package/dist/progress.es.js.map +1 -1
- package/dist/protectedtokens.es.js.map +1 -1
- package/dist/radiogroup.es.js.map +1 -1
- package/dist/rating.es.js.map +1 -1
- package/dist/select.es.js +3 -3
- package/dist/select.es.js.map +1 -1
- package/dist/sheet.es.js.map +1 -1
- package/dist/sidebar.es.js +6 -6
- package/dist/sidebar.es.js.map +1 -1
- package/dist/skeleton.es.js.map +1 -1
- package/dist/startofweek.es.js.map +1 -1
- package/dist/startofweekyear.es.js.map +1 -1
- package/dist/successcircleicon.es.js.map +1 -1
- package/dist/swipabledrawer.es.js.map +1 -1
- package/dist/switch.es.js.map +1 -1
- package/dist/tabs.es.js.map +1 -1
- package/dist/textarea.es.js.map +1 -1
- package/dist/textfield.es.js.map +1 -1
- package/dist/timepicker.es.js.map +1 -1
- package/dist/timepickercontent.es.js.map +1 -1
- package/dist/toast-components.es.js.map +1 -1
- package/dist/toast.es.js.map +1 -1
- package/dist/tooltip.es.js +2 -2
- package/dist/tooltip.es.js.map +1 -1
- package/dist/use-mobile.es.js.map +1 -1
- package/dist/use-toast.es.js.map +1 -1
- package/dist/utils.es.js.map +1 -1
- package/dist/warningcircleicon.es.js.map +1 -1
- package/package.json +9 -9
- package/dist/style.css +0 -1
package/dist/confirm.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confirm.es.js","sources":["../src/components/confirm/Confirm.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React, { useCallback, useEffect } from \"react\";\r\nimport { Modal, ModalFooter } from \"../modal/Modal\";\r\nimport { Button } from \"../button/Button\";\r\nimport { cn } from \"../../lib/utils\";\r\n\r\nlet confirmId = 0;\r\n\r\ntype ConfirmOptions = {\r\n title: string;\r\n description: string;\r\n confirmationText?: string;\r\n cancelationText?: string;\r\n modalProps?: React.ComponentProps<typeof Modal>;\r\n hideCancelButton?: boolean;\r\n buttonOrder?: (\"confirm\" | \"cancel\")[];\r\n confirmButtonProps?: React.ComponentProps<typeof Button>;\r\n cancelButtonProps?: React.ComponentProps<typeof Button>;\r\n descriptionProps?: React.ComponentProps<\"p\">;\r\n};\r\ntype ConfirmState = { resolve: (value: unknown) => void; reject: (reason?: any) => void; parentId: ParentId } | null;\r\ntype ParentId = string;\r\n\r\ntype ConfirmContext = {\r\n confirmBase: (parentId: ParentId, options: ConfirmOptions) => Promise<unknown>;\r\n closeOnParentUnmount: (parentId: ParentId) => void;\r\n} | null;\r\nconst ConfirmContext = React.createContext<ConfirmContext>(null);\r\n\r\n/**\r\n * ConfirmProvider\r\n */\r\ntype ConfirmProviderProps = {\r\n children: React.ReactNode;\r\n};\r\nconst ConfirmProvider: React.FC<ConfirmProviderProps> = ({ children }) => {\r\n const [state, setState] = React.useState<ConfirmState>(null);\r\n const [options, setOptions] = React.useState<ConfirmOptions>({\r\n buttonOrder: [\"cancel\", \"confirm\"],\r\n description: \"\",\r\n title: \"Are you sure?\",\r\n });\r\n const [key, setKey] = React.useState(0);\r\n\r\n const confirmBase = useCallback((parentId: ParentId, options: ConfirmOptions) => {\r\n return new Promise((resolve, reject) => {\r\n setKey(key => key + 1);\r\n setOptions(options);\r\n setState({ resolve, reject, parentId });\r\n });\r\n }, []);\r\n\r\n const closeOnParentUnmount = useCallback((parentId: ParentId) => {\r\n setState(state => {\r\n if (state?.parentId === parentId) {\r\n return null;\r\n } else {\r\n return state;\r\n }\r\n });\r\n }, []);\r\n\r\n const handleClose = useCallback(() => {\r\n setState(state => {\r\n state?.reject();\r\n return null;\r\n });\r\n }, []);\r\n\r\n const handleConfirm = useCallback(() => {\r\n setState(state => {\r\n state?.resolve(null);\r\n return null;\r\n });\r\n }, []);\r\n\r\n return (\r\n <ConfirmContext.Provider value={{ confirmBase, closeOnParentUnmount }}>\r\n {children}\r\n <ConfirmModal key={key} open={state !== null} options={options} onCancel={handleClose} onConfirm={handleConfirm} />\r\n </ConfirmContext.Provider>\r\n );\r\n};\r\n\r\nconst useConfirmId = () => {\r\n const id = React.useMemo(() => {\r\n return confirmId++;\r\n }, []);\r\n\r\n return `confirm-${id}`;\r\n};\r\n\r\nconst useConfirm = () => {\r\n const parentId = useConfirmId();\r\n const context = React.useContext(ConfirmContext);\r\n if (!context) {\r\n throw new Error(\"useConfirm must be used within a ConfirmProvider\");\r\n }\r\n\r\n const { confirmBase, closeOnParentUnmount } = context;\r\n\r\n const confirm = useCallback(\r\n (options: ConfirmOptions) => {\r\n return confirmBase(parentId, options);\r\n },\r\n [parentId, confirmBase],\r\n );\r\n\r\n useEffect(() => {\r\n return () => {\r\n closeOnParentUnmount(parentId);\r\n };\r\n }, [parentId, closeOnParentUnmount]);\r\n\r\n return confirm;\r\n};\r\n\r\ntype ConfirmModalProps = {\r\n open: boolean;\r\n onCancel?: () => void;\r\n onConfirm: () => void;\r\n options: ConfirmOptions;\r\n};\r\n\r\nconst ConfirmModal: React.FC<ConfirmModalProps> = ({ onConfirm, open, options, onCancel }) => {\r\n const {\r\n buttonOrder = [\"cancel\", \"confirm\"],\r\n description,\r\n title,\r\n cancelationText,\r\n confirmationText,\r\n hideCancelButton,\r\n modalProps,\r\n cancelButtonProps,\r\n confirmButtonProps,\r\n descriptionProps,\r\n } = options;\r\n\r\n const actions = React.useMemo(\r\n () =>\r\n buttonOrder.map(action => {\r\n const { className: confirmClassName, ...restConfirmButtonProps } = confirmButtonProps ?? {};\r\n const { className: cancelClassName, ...restCancelButtonProps } = cancelButtonProps ?? {};\r\n if (action === \"confirm\") {\r\n return (\r\n <Button key=\"confirm-button\" onClick={onConfirm} variant=\"primary\" className={cn(\"w-28\", confirmClassName)} {...restConfirmButtonProps}>\r\n {confirmationText || \"Confirm\"}\r\n </Button>\r\n );\r\n }\r\n if (action === \"cancel\" && !hideCancelButton) {\r\n return (\r\n <Button key=\"cancel-button\" onClick={onCancel} variant=\"text\" className={cn(\"w-28\", cancelClassName)} {...restCancelButtonProps}>\r\n {cancelationText || \"Cancel\"}\r\n </Button>\r\n );\r\n }\r\n }),\r\n [hideCancelButton, buttonOrder, confirmationText, cancelationText, confirmButtonProps, cancelButtonProps, onConfirm, onCancel],\r\n );\r\n\r\n return (\r\n <Modal open={open} onOpenChange={onCancel} title={title} role=\"alertdialog\" {...modalProps}>\r\n <p {...descriptionProps}>{description}</p>\r\n <ModalFooter>{actions}</ModalFooter>\r\n </Modal>\r\n );\r\n};\r\n\r\nexport { ConfirmProvider, useConfirm };\r\n"],"names":["confirmId","ConfirmContext","React","ConfirmProvider","children","state","setState","options","setOptions","key","setKey","confirmBase","useCallback","parentId","resolve","reject","closeOnParentUnmount","handleClose","handleConfirm","jsxs","jsx","ConfirmModal","useConfirmId","useConfirm","context","confirm","useEffect","onConfirm","open","onCancel","buttonOrder","description","title","cancelationText","confirmationText","hideCancelButton","modalProps","cancelButtonProps","confirmButtonProps","descriptionProps","actions","action","confirmClassName","restConfirmButtonProps","cancelClassName","restCancelButtonProps","Button","cn","Modal","ModalFooter"],"mappings":";;;;;AAOA,IAAIA,IAAY;AAqBhB,MAAMC,IAAiBC,EAAM,cAA8B,IAAI,GAQzDC,IAAkD,CAAC,EAAE,UAAAC,QAAe;AACxE,QAAM,CAACC,GAAOC,CAAQ,IAAIJ,EAAM,SAAuB,IAAI,GACrD,CAACK,GAASC,CAAU,IAAIN,EAAM,SAAyB;AAAA,IAC3D,aAAa,CAAC,UAAU,SAAS;AAAA,IACjC,aAAa;AAAA,IACb,OAAO;AAAA,EAAA,CACR,GACK,CAACO,GAAKC,CAAM,IAAIR,EAAM,SAAS,CAAC,GAEhCS,IAAcC,EAAY,CAACC,GAAoBN,MAC5C,IAAI,QAAQ,CAACO,GAASC,MAAW;
|
|
1
|
+
{"version":3,"file":"confirm.es.js","sources":["../src/components/confirm/Confirm.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React, { useCallback, useEffect } from \"react\";\r\nimport { Modal, ModalFooter } from \"../modal/Modal\";\r\nimport { Button } from \"../button/Button\";\r\nimport { cn } from \"../../lib/utils\";\r\n\r\nlet confirmId = 0;\r\n\r\ntype ConfirmOptions = {\r\n title: string;\r\n description: string;\r\n confirmationText?: string;\r\n cancelationText?: string;\r\n modalProps?: React.ComponentProps<typeof Modal>;\r\n hideCancelButton?: boolean;\r\n buttonOrder?: (\"confirm\" | \"cancel\")[];\r\n confirmButtonProps?: React.ComponentProps<typeof Button>;\r\n cancelButtonProps?: React.ComponentProps<typeof Button>;\r\n descriptionProps?: React.ComponentProps<\"p\">;\r\n};\r\ntype ConfirmState = { resolve: (value: unknown) => void; reject: (reason?: any) => void; parentId: ParentId } | null;\r\ntype ParentId = string;\r\n\r\ntype ConfirmContext = {\r\n confirmBase: (parentId: ParentId, options: ConfirmOptions) => Promise<unknown>;\r\n closeOnParentUnmount: (parentId: ParentId) => void;\r\n} | null;\r\nconst ConfirmContext = React.createContext<ConfirmContext>(null);\r\n\r\n/**\r\n * ConfirmProvider\r\n */\r\ntype ConfirmProviderProps = {\r\n children: React.ReactNode;\r\n};\r\nconst ConfirmProvider: React.FC<ConfirmProviderProps> = ({ children }) => {\r\n const [state, setState] = React.useState<ConfirmState>(null);\r\n const [options, setOptions] = React.useState<ConfirmOptions>({\r\n buttonOrder: [\"cancel\", \"confirm\"],\r\n description: \"\",\r\n title: \"Are you sure?\",\r\n });\r\n const [key, setKey] = React.useState(0);\r\n\r\n const confirmBase = useCallback((parentId: ParentId, options: ConfirmOptions) => {\r\n return new Promise((resolve, reject) => {\r\n setKey(key => key + 1);\r\n setOptions(options);\r\n setState({ resolve, reject, parentId });\r\n });\r\n }, []);\r\n\r\n const closeOnParentUnmount = useCallback((parentId: ParentId) => {\r\n setState(state => {\r\n if (state?.parentId === parentId) {\r\n return null;\r\n } else {\r\n return state;\r\n }\r\n });\r\n }, []);\r\n\r\n const handleClose = useCallback(() => {\r\n setState(state => {\r\n state?.reject();\r\n return null;\r\n });\r\n }, []);\r\n\r\n const handleConfirm = useCallback(() => {\r\n setState(state => {\r\n state?.resolve(null);\r\n return null;\r\n });\r\n }, []);\r\n\r\n return (\r\n <ConfirmContext.Provider value={{ confirmBase, closeOnParentUnmount }}>\r\n {children}\r\n <ConfirmModal key={key} open={state !== null} options={options} onCancel={handleClose} onConfirm={handleConfirm} />\r\n </ConfirmContext.Provider>\r\n );\r\n};\r\n\r\nconst useConfirmId = () => {\r\n const id = React.useMemo(() => {\r\n return confirmId++;\r\n }, []);\r\n\r\n return `confirm-${id}`;\r\n};\r\n\r\nconst useConfirm = () => {\r\n const parentId = useConfirmId();\r\n const context = React.useContext(ConfirmContext);\r\n if (!context) {\r\n throw new Error(\"useConfirm must be used within a ConfirmProvider\");\r\n }\r\n\r\n const { confirmBase, closeOnParentUnmount } = context;\r\n\r\n const confirm = useCallback(\r\n (options: ConfirmOptions) => {\r\n return confirmBase(parentId, options);\r\n },\r\n [parentId, confirmBase],\r\n );\r\n\r\n useEffect(() => {\r\n return () => {\r\n closeOnParentUnmount(parentId);\r\n };\r\n }, [parentId, closeOnParentUnmount]);\r\n\r\n return confirm;\r\n};\r\n\r\ntype ConfirmModalProps = {\r\n open: boolean;\r\n onCancel?: () => void;\r\n onConfirm: () => void;\r\n options: ConfirmOptions;\r\n};\r\n\r\nconst ConfirmModal: React.FC<ConfirmModalProps> = ({ onConfirm, open, options, onCancel }) => {\r\n const {\r\n buttonOrder = [\"cancel\", \"confirm\"],\r\n description,\r\n title,\r\n cancelationText,\r\n confirmationText,\r\n hideCancelButton,\r\n modalProps,\r\n cancelButtonProps,\r\n confirmButtonProps,\r\n descriptionProps,\r\n } = options;\r\n\r\n const actions = React.useMemo(\r\n () =>\r\n buttonOrder.map(action => {\r\n const { className: confirmClassName, ...restConfirmButtonProps } = confirmButtonProps ?? {};\r\n const { className: cancelClassName, ...restCancelButtonProps } = cancelButtonProps ?? {};\r\n if (action === \"confirm\") {\r\n return (\r\n <Button key=\"confirm-button\" onClick={onConfirm} variant=\"primary\" className={cn(\"w-28\", confirmClassName)} {...restConfirmButtonProps}>\r\n {confirmationText || \"Confirm\"}\r\n </Button>\r\n );\r\n }\r\n if (action === \"cancel\" && !hideCancelButton) {\r\n return (\r\n <Button key=\"cancel-button\" onClick={onCancel} variant=\"text\" className={cn(\"w-28\", cancelClassName)} {...restCancelButtonProps}>\r\n {cancelationText || \"Cancel\"}\r\n </Button>\r\n );\r\n }\r\n }),\r\n [hideCancelButton, buttonOrder, confirmationText, cancelationText, confirmButtonProps, cancelButtonProps, onConfirm, onCancel],\r\n );\r\n\r\n return (\r\n <Modal open={open} onOpenChange={onCancel} title={title} role=\"alertdialog\" {...modalProps}>\r\n <p {...descriptionProps}>{description}</p>\r\n <ModalFooter>{actions}</ModalFooter>\r\n </Modal>\r\n );\r\n};\r\n\r\nexport { ConfirmProvider, useConfirm };\r\n"],"names":["confirmId","ConfirmContext","React","ConfirmProvider","children","state","setState","options","setOptions","key","setKey","confirmBase","useCallback","parentId","resolve","reject","closeOnParentUnmount","handleClose","handleConfirm","jsxs","jsx","ConfirmModal","useConfirmId","useConfirm","context","confirm","useEffect","onConfirm","open","onCancel","buttonOrder","description","title","cancelationText","confirmationText","hideCancelButton","modalProps","cancelButtonProps","confirmButtonProps","descriptionProps","actions","action","confirmClassName","restConfirmButtonProps","cancelClassName","restCancelButtonProps","Button","cn","Modal","ModalFooter"],"mappings":"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"}
|
package/dist/contextmenu.es.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as l, jsx as n } from "react/jsx-runtime";
|
|
2
2
|
import * as r from "react";
|
|
3
3
|
import * as e from "@radix-ui/react-context-menu";
|
|
4
|
-
import {
|
|
4
|
+
import { Check as c, Circle as m, ChevronRight as u } from "@trsys-tech/matrix-icons";
|
|
5
5
|
import { cn as d } from "./utils.es.js";
|
|
6
6
|
const v = e.Root, I = e.Trigger, S = e.Group, z = e.Portal, k = e.Sub, T = e.RadioGroup, p = r.forwardRef(({ className: t, inset: a, children: o, ...s }, i) => /* @__PURE__ */ l(
|
|
7
7
|
e.SubTrigger,
|
|
@@ -15,7 +15,7 @@ const v = e.Root, I = e.Trigger, S = e.Group, z = e.Portal, k = e.Sub, T = e.Rad
|
|
|
15
15
|
...s,
|
|
16
16
|
children: [
|
|
17
17
|
o,
|
|
18
|
-
/* @__PURE__ */ n(
|
|
18
|
+
/* @__PURE__ */ n(u, { className: "ml-auto h-4 w-4" })
|
|
19
19
|
]
|
|
20
20
|
}
|
|
21
21
|
));
|
|
@@ -68,7 +68,7 @@ const g = r.forwardRef(({ className: t, children: a, checked: o, ...s }, i) => /
|
|
|
68
68
|
checked: o,
|
|
69
69
|
...s,
|
|
70
70
|
children: [
|
|
71
|
-
/* @__PURE__ */ n("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ n(e.ItemIndicator, { children: /* @__PURE__ */ n(
|
|
71
|
+
/* @__PURE__ */ n("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ n(e.ItemIndicator, { children: /* @__PURE__ */ n(c, { className: "h-4 w-4" }) }) }),
|
|
72
72
|
a
|
|
73
73
|
]
|
|
74
74
|
}
|
|
@@ -84,7 +84,7 @@ const N = r.forwardRef(({ className: t, children: a, ...o }, s) => /* @__PURE__
|
|
|
84
84
|
),
|
|
85
85
|
...o,
|
|
86
86
|
children: [
|
|
87
|
-
/* @__PURE__ */ n("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ n(e.ItemIndicator, { children: /* @__PURE__ */ n(
|
|
87
|
+
/* @__PURE__ */ n("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ n(e.ItemIndicator, { children: /* @__PURE__ */ n(m, { className: "h-4 w-4 fill-current" }) }) }),
|
|
88
88
|
a
|
|
89
89
|
]
|
|
90
90
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contextmenu.es.js","sources":["../src/components/context-menu/ContextMenu.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport * as ContextMenuPrimitive from \"@radix-ui/react-context-menu\";\r\nimport { Check, ChevronRight, Circle } from \"@trsys-tech/matrix-icons\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\n\r\nconst ContextMenu = ContextMenuPrimitive.Root;\r\n\r\nconst ContextMenuTrigger = ContextMenuPrimitive.Trigger;\r\n\r\nconst ContextMenuGroup = ContextMenuPrimitive.Group;\r\n\r\nconst ContextMenuPortal = ContextMenuPrimitive.Portal;\r\n\r\nconst ContextMenuSub = ContextMenuPrimitive.Sub;\r\n\r\nconst ContextMenuRadioGroup = ContextMenuPrimitive.RadioGroup;\r\n\r\nconst ContextMenuSubTrigger = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.SubTrigger>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.SubTrigger> & {\r\n inset?: boolean;\r\n }\r\n>(({ className, inset, children, ...props }, ref) => (\r\n <ContextMenuPrimitive.SubTrigger\r\n ref={ref}\r\n className={cn(\r\n \"flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground\",\r\n inset && \"pl-8\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <ChevronRight className=\"ml-auto h-4 w-4\" />\r\n </ContextMenuPrimitive.SubTrigger>\r\n));\r\nContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;\r\n\r\nconst ContextMenuSubContent = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.SubContent>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.SubContent>\r\n>(({ className, ...props }, ref) => (\r\n <ContextMenuPrimitive.SubContent\r\n ref={ref}\r\n className={cn(\r\n \"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n));\r\nContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;\r\n\r\nconst ContextMenuContent = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Content>\r\n>(({ className, ...props }, ref) => (\r\n <ContextMenuPrimitive.Portal>\r\n <ContextMenuPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n </ContextMenuPrimitive.Portal>\r\n));\r\nContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;\r\n\r\nconst ContextMenuItem = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.Item>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Item> & {\r\n inset?: boolean;\r\n }\r\n>(({ className, inset, ...props }, ref) => (\r\n <ContextMenuPrimitive.Item\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n inset && \"pl-8\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n));\r\nContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;\r\n\r\nconst ContextMenuCheckboxItem = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.CheckboxItem>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.CheckboxItem>\r\n>(({ className, children, checked, ...props }, ref) => (\r\n <ContextMenuPrimitive.CheckboxItem\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n className,\r\n )}\r\n checked={checked}\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\r\n <ContextMenuPrimitive.ItemIndicator>\r\n <Check className=\"h-4 w-4\" />\r\n </ContextMenuPrimitive.ItemIndicator>\r\n </span>\r\n {children}\r\n </ContextMenuPrimitive.CheckboxItem>\r\n));\r\nContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;\r\n\r\nconst ContextMenuRadioItem = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.RadioItem>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.RadioItem>\r\n>(({ className, children, ...props }, ref) => (\r\n <ContextMenuPrimitive.RadioItem\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\r\n <ContextMenuPrimitive.ItemIndicator>\r\n <Circle className=\"h-4 w-4 fill-current\" />\r\n </ContextMenuPrimitive.ItemIndicator>\r\n </span>\r\n {children}\r\n </ContextMenuPrimitive.RadioItem>\r\n));\r\nContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;\r\n\r\nconst ContextMenuLabel = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.Label>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Label> & {\r\n inset?: boolean;\r\n }\r\n>(({ className, inset, ...props }, ref) => (\r\n <ContextMenuPrimitive.Label ref={ref} className={cn(\"px-2 py-1.5 text-sm font-semibold text-foreground\", inset && \"pl-8\", className)} {...props} />\r\n));\r\nContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;\r\n\r\nconst ContextMenuSeparator = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.Separator>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Separator>\r\n>(({ className, ...props }, ref) => <ContextMenuPrimitive.Separator ref={ref} className={cn(\"-mx-1 my-1 h-px bg-border\", className)} {...props} />);\r\nContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;\r\n\r\nconst ContextMenuShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {\r\n return <span className={cn(\"ml-auto text-xs tracking-widest text-muted-foreground\", className)} {...props} />;\r\n};\r\nContextMenuShortcut.displayName = \"ContextMenuShortcut\";\r\n\r\nexport {\r\n ContextMenu,\r\n ContextMenuTrigger,\r\n ContextMenuContent,\r\n ContextMenuItem,\r\n ContextMenuCheckboxItem,\r\n ContextMenuRadioItem,\r\n ContextMenuLabel,\r\n ContextMenuSeparator,\r\n ContextMenuShortcut,\r\n ContextMenuGroup,\r\n ContextMenuPortal,\r\n ContextMenuSub,\r\n ContextMenuSubContent,\r\n ContextMenuSubTrigger,\r\n ContextMenuRadioGroup,\r\n};\r\n"],"names":["ContextMenu","ContextMenuPrimitive","ContextMenuTrigger","ContextMenuGroup","ContextMenuPortal","ContextMenuSub","ContextMenuRadioGroup","ContextMenuSubTrigger","React","className","inset","children","props","ref","jsxs","cn","jsx","ChevronRight","ContextMenuSubContent","ContextMenuContent","ContextMenuItem","ContextMenuCheckboxItem","checked","Check","ContextMenuRadioItem","Circle","ContextMenuLabel","ContextMenuSeparator","ContextMenuShortcut"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contextmenu.es.js","sources":["../src/components/context-menu/ContextMenu.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport * as ContextMenuPrimitive from \"@radix-ui/react-context-menu\";\r\nimport { Check, ChevronRight, Circle } from \"@trsys-tech/matrix-icons\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\n\r\nconst ContextMenu = ContextMenuPrimitive.Root;\r\n\r\nconst ContextMenuTrigger = ContextMenuPrimitive.Trigger;\r\n\r\nconst ContextMenuGroup = ContextMenuPrimitive.Group;\r\n\r\nconst ContextMenuPortal = ContextMenuPrimitive.Portal;\r\n\r\nconst ContextMenuSub = ContextMenuPrimitive.Sub;\r\n\r\nconst ContextMenuRadioGroup = ContextMenuPrimitive.RadioGroup;\r\n\r\nconst ContextMenuSubTrigger = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.SubTrigger>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.SubTrigger> & {\r\n inset?: boolean;\r\n }\r\n>(({ className, inset, children, ...props }, ref) => (\r\n <ContextMenuPrimitive.SubTrigger\r\n ref={ref}\r\n className={cn(\r\n \"flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground\",\r\n inset && \"pl-8\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <ChevronRight className=\"ml-auto h-4 w-4\" />\r\n </ContextMenuPrimitive.SubTrigger>\r\n));\r\nContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;\r\n\r\nconst ContextMenuSubContent = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.SubContent>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.SubContent>\r\n>(({ className, ...props }, ref) => (\r\n <ContextMenuPrimitive.SubContent\r\n ref={ref}\r\n className={cn(\r\n \"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n));\r\nContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;\r\n\r\nconst ContextMenuContent = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Content>\r\n>(({ className, ...props }, ref) => (\r\n <ContextMenuPrimitive.Portal>\r\n <ContextMenuPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n </ContextMenuPrimitive.Portal>\r\n));\r\nContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;\r\n\r\nconst ContextMenuItem = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.Item>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Item> & {\r\n inset?: boolean;\r\n }\r\n>(({ className, inset, ...props }, ref) => (\r\n <ContextMenuPrimitive.Item\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n inset && \"pl-8\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n));\r\nContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;\r\n\r\nconst ContextMenuCheckboxItem = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.CheckboxItem>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.CheckboxItem>\r\n>(({ className, children, checked, ...props }, ref) => (\r\n <ContextMenuPrimitive.CheckboxItem\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n className,\r\n )}\r\n checked={checked}\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\r\n <ContextMenuPrimitive.ItemIndicator>\r\n <Check className=\"h-4 w-4\" />\r\n </ContextMenuPrimitive.ItemIndicator>\r\n </span>\r\n {children}\r\n </ContextMenuPrimitive.CheckboxItem>\r\n));\r\nContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;\r\n\r\nconst ContextMenuRadioItem = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.RadioItem>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.RadioItem>\r\n>(({ className, children, ...props }, ref) => (\r\n <ContextMenuPrimitive.RadioItem\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n className,\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\r\n <ContextMenuPrimitive.ItemIndicator>\r\n <Circle className=\"h-4 w-4 fill-current\" />\r\n </ContextMenuPrimitive.ItemIndicator>\r\n </span>\r\n {children}\r\n </ContextMenuPrimitive.RadioItem>\r\n));\r\nContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;\r\n\r\nconst ContextMenuLabel = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.Label>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Label> & {\r\n inset?: boolean;\r\n }\r\n>(({ className, inset, ...props }, ref) => (\r\n <ContextMenuPrimitive.Label ref={ref} className={cn(\"px-2 py-1.5 text-sm font-semibold text-foreground\", inset && \"pl-8\", className)} {...props} />\r\n));\r\nContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;\r\n\r\nconst ContextMenuSeparator = React.forwardRef<\r\n React.ElementRef<typeof ContextMenuPrimitive.Separator>,\r\n React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Separator>\r\n>(({ className, ...props }, ref) => <ContextMenuPrimitive.Separator ref={ref} className={cn(\"-mx-1 my-1 h-px bg-border\", className)} {...props} />);\r\nContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;\r\n\r\nconst ContextMenuShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {\r\n return <span className={cn(\"ml-auto text-xs tracking-widest text-muted-foreground\", className)} {...props} />;\r\n};\r\nContextMenuShortcut.displayName = \"ContextMenuShortcut\";\r\n\r\nexport {\r\n ContextMenu,\r\n ContextMenuTrigger,\r\n ContextMenuContent,\r\n ContextMenuItem,\r\n ContextMenuCheckboxItem,\r\n ContextMenuRadioItem,\r\n ContextMenuLabel,\r\n ContextMenuSeparator,\r\n ContextMenuShortcut,\r\n ContextMenuGroup,\r\n ContextMenuPortal,\r\n ContextMenuSub,\r\n ContextMenuSubContent,\r\n ContextMenuSubTrigger,\r\n ContextMenuRadioGroup,\r\n};\r\n"],"names":["ContextMenu","ContextMenuPrimitive","ContextMenuTrigger","ContextMenuGroup","ContextMenuPortal","ContextMenuSub","ContextMenuRadioGroup","ContextMenuSubTrigger","React","className","inset","children","props","ref","jsxs","cn","jsx","ChevronRight","ContextMenuSubContent","ContextMenuContent","ContextMenuItem","ContextMenuCheckboxItem","checked","Check","ContextMenuRadioItem","Circle","ContextMenuLabel","ContextMenuSeparator","ContextMenuShortcut"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dangercircleicon.es.js","sources":["../src/components/Icons/DangerCircleIcon.tsx"],"sourcesContent":["import { SVGProps } from \"react\";\r\n\r\nexport function DangerCircleIcon(props: SVGProps<SVGSVGElement>) {\r\n return (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" {...props}>\r\n <circle cx=\"12\" cy=\"12\" r=\"12\" fill=\"#981c1c\" />\r\n <path\r\n d=\"M12 4.757a7.242 7.242 0 1 0 0 14.485 7.242 7.242 0 0 0 0-14.485ZM6.116 12c0-1.378.48-2.644 1.276-3.624l8.258 8.258a6.001 6.001 0 0 1-3.65 1.25A5.89 5.89 0 0 1 6.116 12Zm10.492 3.624L8.351 7.391A5.855 5.855 0 0 1 12 6.115 5.89 5.89 0 0 1 17.884 12a5.74 5.74 0 0 1-1.276 3.624Z\"\r\n fill=\"#fff\"\r\n />\r\n </svg>\r\n );\r\n}\r\n"],"names":["DangerCircleIcon","props","jsxs","jsx"],"mappings":";AAEO,SAASA,EAAiBC,GAAgC;
|
|
1
|
+
{"version":3,"file":"dangercircleicon.es.js","sources":["../src/components/Icons/DangerCircleIcon.tsx"],"sourcesContent":["import { SVGProps } from \"react\";\r\n\r\nexport function DangerCircleIcon(props: SVGProps<SVGSVGElement>) {\r\n return (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" {...props}>\r\n <circle cx=\"12\" cy=\"12\" r=\"12\" fill=\"#981c1c\" />\r\n <path\r\n d=\"M12 4.757a7.242 7.242 0 1 0 0 14.485 7.242 7.242 0 0 0 0-14.485ZM6.116 12c0-1.378.48-2.644 1.276-3.624l8.258 8.258a6.001 6.001 0 0 1-3.65 1.25A5.89 5.89 0 0 1 6.116 12Zm10.492 3.624L8.351 7.391A5.855 5.855 0 0 1 12 6.115 5.89 5.89 0 0 1 17.884 12a5.74 5.74 0 0 1-1.276 3.624Z\"\r\n fill=\"#fff\"\r\n />\r\n </svg>\r\n );\r\n}\r\n"],"names":["DangerCircleIcon","props","jsxs","jsx"],"mappings":";AAEO,SAASA,EAAiBC,GAAgC;AAC/D,SACE,gBAAAC,EAAC,OAAA,EAAI,OAAM,8BAA6B,OAAM,MAAK,QAAO,MAAK,SAAQ,aAAa,GAAGD,GACrF,UAAA;AAAA,IAAA,gBAAAE,EAAC,UAAA,EAAO,IAAG,MAAK,IAAG,MAAK,GAAE,MAAK,MAAK,UAAA,CAAU;AAAA,IAC9C,gBAAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,GAAE;AAAA,QACF,MAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EACP,GACF;AAEJ;"}
|
package/dist/datagrid.es.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { jsx as r, jsxs as S } from "react/jsx-runtime";
|
|
2
2
|
import t, { forwardRef as A, useMemo as T } from "react";
|
|
3
3
|
import { AgGridReact as k } from "ag-grid-react";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { themeQuartz as y, ModuleRegistry as F, AllCommunityModule as P } from "ag-grid-community";
|
|
5
|
+
import { CircleXmark as z, Magnifier as G, Snowflake as I, Print as H, Refresh as O, ElipsisVertical as L, Trashcan as M } from "@trsys-tech/matrix-icons";
|
|
6
6
|
import { cn as x } from "./utils.es.js";
|
|
7
7
|
import { printHtml as B } from "./printhtml.es.js";
|
|
8
8
|
import { TextField as Q } from "./textfield.es.js";
|
|
9
9
|
import { Button as E } from "./button.es.js";
|
|
10
10
|
import { IconButton as b } from "./iconbutton.es.js";
|
|
11
11
|
import { Popover as q, PopoverTrigger as $, PopoverContent as j } from "./popover.es.js";
|
|
12
|
-
|
|
13
|
-
const _ =
|
|
12
|
+
F.registerModules([P]);
|
|
13
|
+
const _ = y.withParams({
|
|
14
14
|
fontFamily: "DMSans",
|
|
15
15
|
fontSize: "12px",
|
|
16
16
|
headerFontSize: "12px",
|
|
@@ -200,8 +200,8 @@ const ie = ({ className: o, ...s }) => {
|
|
|
200
200
|
);
|
|
201
201
|
}, ue = ({ onDelete: o, children: s, ...a }) => /* @__PURE__ */ r(E, { variant: "danger", onClick: () => {
|
|
202
202
|
o();
|
|
203
|
-
}, startIcon: /* @__PURE__ */ r(
|
|
204
|
-
/* @__PURE__ */ r($, { ...s?.triggerProps ?? {}, children: /* @__PURE__ */ r(
|
|
203
|
+
}, startIcon: /* @__PURE__ */ r(M, { className: "w-4.5 h-4.5" }), ...a, children: s }), he = ({ children: o, slotProps: s, className: a, ...n }) => /* @__PURE__ */ S(q, { ...s?.popoverProps ?? {}, children: [
|
|
204
|
+
/* @__PURE__ */ r($, { ...s?.triggerProps ?? {}, children: /* @__PURE__ */ r(L, { className: "w-4.5 h-4.5 text-primary" }) }),
|
|
205
205
|
/* @__PURE__ */ r(j, { align: "end", className: x("w-40", a), ...n, children: o })
|
|
206
206
|
] });
|
|
207
207
|
export {
|
package/dist/datagrid.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datagrid.es.js","sources":["../src/components/data-grid/DataGrid.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React, { forwardRef, HTMLAttributes, useMemo } from \"react\";\r\nimport { AgGridReact, AgGridReactProps } from \"ag-grid-react\";\r\nimport { GridApi, GridReadyEvent, themeQuartz, AllCommunityModule, ModuleRegistry, Theme } from \"ag-grid-community\";\r\nimport { CircleXmark, ElipsisVertical, Magnifier, Print, Refresh, Snowflake, Trashcan } from \"@trsys-tech/matrix-icons\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { printHtml } from \"../../lib/printHtml\";\r\nimport { TextField } from \"../text-field/TextField\";\r\nimport { Button, ButtonProps } from \"../button/Button\";\r\nimport { IconButton, IconButtonProps } from \"../icon-botton/IconButton\";\r\nimport { Popover, PopoverContent, PopoverContentProps, PopoverProps, PopoverTrigger, PopoverTriggerProps } from \"../popover/Popover\";\r\n\r\n// Register all Community features\r\n// Todo: Register only the required features\r\nModuleRegistry.registerModules([AllCommunityModule]);\r\n\r\nconst dataGridDefaultTheme = themeQuartz.withParams({\r\n fontFamily: \"DMSans\",\r\n fontSize: \"12px\",\r\n headerFontSize: \"12px\",\r\n headerFontWeight: 700,\r\n headerBackgroundColor: \"hsl(var(--primary-50))\",\r\n backgroundColor: \"hsl(var(--gray-0))\",\r\n accentColor: \"hsl(var(--primary-300))\",\r\n foregroundColor: \"hsl(var(--text-500))\",\r\n cellTextColor: \"hsl(var(--text-500))\",\r\n});\r\n\r\ntype DataGridContext = {\r\n api: GridApi | null;\r\n setApi: (value: GridApi) => void;\r\n rowData: any[] | null | undefined;\r\n setRowData: (value: any[] | null | undefined) => void;\r\n gridId: string;\r\n quickFilterText: string;\r\n setQuickFilterText: (value: string) => void;\r\n actionbarExists: boolean;\r\n setActionbarExists: (value: boolean) => void;\r\n actionbarHeight: number;\r\n setActionbarHeight: (value: number) => void;\r\n};\r\n\r\nconst DataGridContext = React.createContext<DataGridContext | null>(null);\r\n\r\nconst useDataGrid = () => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"useDataGrid should be used within <DataGrid>\");\r\n }\r\n\r\n return context;\r\n};\r\n\r\ntype DataGridProps = {\r\n children: React.ReactNode;\r\n};\r\n\r\nconst DataGrid: React.FC<DataGridProps> = ({ children }) => {\r\n const gridId = React.useId();\r\n const [api, setApi] = React.useState<GridApi | null>(null);\r\n const [rowData, setRowData] = React.useState<any[] | null | undefined>([]);\r\n const [actionbarHeight, setActionbarHeight] = React.useState(0);\r\n\r\n const [quickFilterText, setQuickFilterText] = React.useState(\"\");\r\n const [actionbarExists, setActionbarExists] = React.useState(false);\r\n return (\r\n <DataGridContext.Provider\r\n value={{\r\n api,\r\n setApi,\r\n rowData,\r\n setRowData,\r\n gridId,\r\n quickFilterText,\r\n setQuickFilterText,\r\n actionbarExists,\r\n setActionbarExists,\r\n actionbarHeight,\r\n setActionbarHeight,\r\n }}\r\n >\r\n {children}\r\n </DataGridContext.Provider>\r\n );\r\n};\r\n\r\ntype DataGridContentProps = Omit<AgGridReactProps, \"theme\"> & {\r\n theme?: Theme;\r\n};\r\n\r\nconst DataGridContent = forwardRef<AgGridReact, DataGridContentProps>(\r\n ({ theme: propTheme, onGridReady, quickFilterText: quickFilterTextProps, rowData: rowDataProps, containerStyle, ...props }, ref) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"DataGridContent should be used within <DataGrid>\");\r\n }\r\n const { rowData, setRowData, actionbarExists, setApi, setQuickFilterText, quickFilterText, gridId, actionbarHeight } = context;\r\n\r\n const theme = useMemo(() => {\r\n return dataGridDefaultTheme.withParams({\r\n headerHeight: 40,\r\n wrapperBorderRadius: actionbarExists ? \"0px 0px 8px 8px\" : \"8px\",\r\n });\r\n }, [actionbarExists]);\r\n\r\n const handleGridReady = (e: GridReadyEvent) => {\r\n setApi(e.api);\r\n onGridReady?.(e);\r\n };\r\n\r\n React.useEffect(() => {\r\n setRowData(rowDataProps);\r\n }, [rowDataProps, setRowData]);\r\n\r\n React.useEffect(() => {\r\n if (quickFilterTextProps !== undefined) {\r\n setQuickFilterText(quickFilterTextProps ?? \"\");\r\n }\r\n }, [quickFilterTextProps, setQuickFilterText]);\r\n\r\n return (\r\n <AgGridReact\r\n gridId={gridId}\r\n theme={propTheme ?? theme}\r\n rowData={rowData}\r\n quickFilterText={quickFilterText}\r\n onGridReady={handleGridReady}\r\n containerStyle={{ height: `calc(100% - ${actionbarHeight}px)`, ...containerStyle }}\r\n {...props}\r\n ref={ref}\r\n />\r\n );\r\n },\r\n);\r\n\r\nDataGridContent.displayName = \"DataGridContent\";\r\n\r\ntype DatagridActionBarProps = HTMLAttributes<HTMLDivElement> & {};\r\n\r\nconst DataGridActionBar: React.FC<DatagridActionBarProps> = ({ className, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"DataGridActionBar should be used within <DataGrid>\");\r\n }\r\n const ref = React.useRef<HTMLDivElement | null>(null);\r\n const { setActionbarExists, setActionbarHeight } = context;\r\n const { children } = props;\r\n\r\n React.useEffect(() => {\r\n setActionbarExists(true);\r\n return () => setActionbarExists(false);\r\n }, [setActionbarExists]);\r\n\r\n React.useEffect(() => {\r\n if (ref.current) {\r\n setActionbarHeight(ref.current.clientHeight);\r\n }\r\n }, [setActionbarHeight]);\r\n\r\n return (\r\n <div\r\n className={cn(\r\n \"relative flex items-center p-2 h-12 w-full bg-gray-0 border border-gray-200 border-b-0 -mb-[1px] z-10 rounded-t-[8px]\",\r\n className,\r\n )}\r\n ref={ref}\r\n >\r\n {children}\r\n </div>\r\n );\r\n};\r\n\r\ntype SearchActionProps = HTMLAttributes<HTMLDivElement> & {\r\n defaultOpen?: boolean;\r\n};\r\n\r\nconst SearchAction: React.FC<SearchActionProps> = ({ defaultOpen = false, className, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"SearchAction should be used within <DataGrid>\");\r\n }\r\n\r\n const { quickFilterText, setQuickFilterText } = context;\r\n\r\n const [isSearchInputOpen, setIsSearchInputOpen] = React.useState(defaultOpen);\r\n const [isClosing, setIsClosing] = React.useState(false);\r\n const inputRef = React.useRef<HTMLInputElement | null>(null);\r\n\r\n const handleClear = () => {\r\n context.setQuickFilterText(\"\");\r\n if (inputRef.current) {\r\n inputRef.current.focus();\r\n }\r\n };\r\n\r\n const handleOpen = () => {\r\n setIsSearchInputOpen(true);\r\n };\r\n\r\n React.useEffect(() => {\r\n if (isSearchInputOpen && inputRef?.current) {\r\n inputRef.current.focus();\r\n }\r\n }, [isSearchInputOpen]);\r\n\r\n const handleClose = () => {\r\n setIsClosing(true);\r\n context.setQuickFilterText(\"\");\r\n setTimeout(() => {\r\n setIsSearchInputOpen(false);\r\n setIsClosing(false);\r\n }, 200);\r\n };\r\n\r\n return (\r\n <div className={cn(\"max-w-60\", className)} {...props}>\r\n {isSearchInputOpen || isClosing ? (\r\n <TextField\r\n ref={inputRef}\r\n className={cn(\"relative h-7.5\", isSearchInputOpen && !isClosing ? \"animate-input-open\" : \"\", isClosing && \"animate-input-close\")}\r\n onChange={e => setQuickFilterText(e.target.value)}\r\n value={quickFilterText}\r\n startAdornment={\r\n <IconButton variant=\"toolbar\" className=\"p-0.5 h-6 w-6 border-none mx-1\" onClick={handleClose}>\r\n <Magnifier className=\"w-5 h-5\" />\r\n </IconButton>\r\n }\r\n endAdornment={\r\n quickFilterText && (\r\n <IconButton variant=\"toolbar\" className=\"p-0.5 w-6 h-6 border-none mx-1\" onClick={handleClear}>\r\n <CircleXmark className=\"w-5 h-5\" />\r\n </IconButton>\r\n )\r\n }\r\n />\r\n ) : (\r\n <IconButton variant=\"toolbar\" className=\"p-0.5 w-6 h-6 m-1\" onClick={handleOpen}>\r\n <Magnifier className=\"w-5 h-5\" />\r\n </IconButton>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\ntype FreezeActionProps = ButtonProps & {\r\n freezeText?: string;\r\n unFreezeText?: string;\r\n};\r\n\r\nconst FreezeAction: React.FC<FreezeActionProps> = ({ freezeText, unFreezeText, onClick, disabled, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"FreezeAction should be used within <DataGrid>\");\r\n }\r\n\r\n const [pinnedRowCount, setPinnedRowCount] = React.useState(0);\r\n const [selectedRowsCount, setSelectedRowsCount] = React.useState(0);\r\n\r\n const { api, rowData } = context;\r\n\r\n const freezeRows = () => {\r\n if (!api) return;\r\n\r\n // Get currently selected rows\r\n const selectedRows = api.getSelectedNodes();\r\n\r\n if (selectedRows.length > 0) {\r\n // Pin the selected rows\r\n api.setGridOption(\r\n \"pinnedTopRowData\",\r\n selectedRows.map(row => row.data),\r\n );\r\n\r\n // Get current row data\r\n const allData = api.getRenderedNodes();\r\n // Filter out pinned rows from the main data\r\n const updatedNodes = allData.filter(row => !selectedRows.some(pinnedRow => pinnedRow.id === row.id));\r\n\r\n // Update the grid with the filtered data\r\n api.setGridOption(\r\n \"rowData\",\r\n updatedNodes.map(node => node.data),\r\n );\r\n }\r\n };\r\n\r\n const unfreezeRows = () => {\r\n if (!api) return;\r\n api.setGridOption(\"pinnedTopRowData\", []);\r\n api.setGridOption(\"rowData\", rowData);\r\n };\r\n\r\n const handleFreezing = (e: React.MouseEvent<HTMLButtonElement>) => {\r\n if (api) {\r\n const pinnedRowsCount = api.getPinnedTopRowCount();\r\n if (pinnedRowsCount > 0) {\r\n unfreezeRows();\r\n } else {\r\n freezeRows();\r\n }\r\n }\r\n onClick?.(e);\r\n };\r\n\r\n React.useEffect(() => {\r\n api?.addEventListener(\"pinnedRowDataChanged\", () => {\r\n setPinnedRowCount(api.getPinnedTopRowCount());\r\n });\r\n\r\n api?.addEventListener(\"selectionChanged\", () => {\r\n setSelectedRowsCount(api.getSelectedNodes().length);\r\n });\r\n\r\n return () => {\r\n api?.removeEventListener(\"pinnedRowDataChanged\", () => {\r\n setPinnedRowCount(api.getPinnedTopRowCount());\r\n });\r\n\r\n api?.removeEventListener(\"selectionChanged\", () => {\r\n setSelectedRowsCount(api.getSelectedNodes().length);\r\n });\r\n };\r\n }, [api]);\r\n\r\n return (\r\n <Button\r\n variant=\"text\"\r\n onClick={handleFreezing}\r\n startIcon={<Snowflake className=\"w-4.5 h-4.5\" />}\r\n disabled={(!pinnedRowCount && !selectedRowsCount) || disabled}\r\n {...props}\r\n >\r\n {pinnedRowCount ? (unFreezeText ?? \"Unfreeze\") : (freezeText ?? \"Freeze\")}\r\n </Button>\r\n );\r\n};\r\n\r\ntype PrintActionProps = IconButtonProps & {};\r\n\r\nconst PrintAction: React.FC<PrintActionProps> = ({ children, className, onClick, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"PrintAction should be used within <DataGrid>\");\r\n }\r\n\r\n const handlePrint = (e: React.MouseEvent<HTMLButtonElement>) => {\r\n if (context.api) {\r\n context.api.setGridOption(\"domLayout\", \"print\");\r\n\r\n setTimeout(() => {\r\n const element = document.querySelector(\"[grid-id='\" + context.gridId + \"']\") as HTMLElement;\r\n const header = document.head;\r\n const html = `<html>\r\n ${header.innerHTML}\r\n ${element.outerHTML}\r\n </html>`;\r\n printHtml(html);\r\n context?.api?.setGridOption(\"domLayout\", undefined);\r\n });\r\n }\r\n onClick?.(e);\r\n };\r\n\r\n return (\r\n <IconButton variant=\"toolbar\" className={cn(\"p-0.5 w-6 h-6\", className)} onClick={handlePrint} {...props}>\r\n {children ?? <Print className=\"w-5 h-5\" />}\r\n </IconButton>\r\n );\r\n};\r\n\r\ntype RefreshActionProps = Omit<IconButtonProps, \"onClick\"> & {\r\n onRefresh: () => void;\r\n};\r\n\r\nconst RefreshAction: React.FC<RefreshActionProps> = ({ className, onRefresh, children, loading, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"RefreshAction should be used within <DataGrid>\");\r\n }\r\n\r\n const handleRefresh = () => {\r\n onRefresh();\r\n };\r\n\r\n return (\r\n <IconButton\r\n className={cn(\"p-0.5 w-6 h-6\", loading && \"disabled:bg-transparent\", className)}\r\n variant=\"toolbar\"\r\n onClick={handleRefresh}\r\n disabled={loading}\r\n {...props}\r\n >\r\n {children ?? <Refresh className={cn(\"w-4.5 h-4.5\", loading && \"animate-spin\")} />}\r\n </IconButton>\r\n );\r\n};\r\n\r\ntype DeleteActionProps = Omit<ButtonProps, \"onClick\"> & {\r\n onDelete: () => void;\r\n};\r\n\r\nconst DeleteAction: React.FC<DeleteActionProps> = ({ onDelete, children, ...props }) => {\r\n const handleDelete = () => {\r\n onDelete();\r\n };\r\n\r\n return (\r\n <Button variant=\"danger\" onClick={handleDelete} startIcon={<Trashcan className=\"w-4.5 h-4.5\" />} {...props}>\r\n {children}\r\n </Button>\r\n );\r\n};\r\n\r\ntype ExtraActionsProps = PopoverContentProps & {\r\n children: React.ReactNode;\r\n slotProps?: {\r\n triggerProps?: PopoverTriggerProps;\r\n popoverProps?: PopoverProps;\r\n };\r\n};\r\n\r\nconst ExtraActions: React.FC<ExtraActionsProps> = ({ children, slotProps, className, ...props }) => {\r\n return (\r\n <Popover {...(slotProps?.popoverProps ?? {})}>\r\n <PopoverTrigger {...(slotProps?.triggerProps ?? {})}>\r\n <ElipsisVertical className=\"w-4.5 h-4.5 text-primary\" />\r\n </PopoverTrigger>\r\n <PopoverContent align=\"end\" className={cn(\"w-40\", className)} {...props}>\r\n {children}\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n};\r\n\r\nexport {\r\n DataGrid,\r\n DataGridContent,\r\n DataGridActionBar,\r\n SearchAction,\r\n FreezeAction,\r\n PrintAction,\r\n RefreshAction,\r\n ExtraActions,\r\n DeleteAction,\r\n type DataGridProps,\r\n type DataGridContentProps,\r\n type DatagridActionBarProps,\r\n type SearchActionProps,\r\n type FreezeActionProps,\r\n type RefreshActionProps,\r\n type ExtraActionsProps,\r\n type DeleteActionProps,\r\n useDataGrid,\r\n dataGridDefaultTheme,\r\n};\r\n"],"names":["ModuleRegistry","AllCommunityModule","dataGridDefaultTheme","themeQuartz","DataGridContext","React","useDataGrid","context","DataGrid","children","gridId","api","setApi","rowData","setRowData","actionbarHeight","setActionbarHeight","quickFilterText","setQuickFilterText","actionbarExists","setActionbarExists","jsx","DataGridContent","forwardRef","propTheme","onGridReady","quickFilterTextProps","rowDataProps","containerStyle","props","ref","theme","useMemo","handleGridReady","e","AgGridReact","DataGridActionBar","className","cn","SearchAction","defaultOpen","isSearchInputOpen","setIsSearchInputOpen","isClosing","setIsClosing","inputRef","handleClear","handleOpen","handleClose","TextField","IconButton","Magnifier","CircleXmark","FreezeAction","freezeText","unFreezeText","onClick","disabled","pinnedRowCount","setPinnedRowCount","selectedRowsCount","setSelectedRowsCount","freezeRows","selectedRows","row","updatedNodes","pinnedRow","node","unfreezeRows","handleFreezing","Button","Snowflake","PrintAction","handlePrint","element","html","printHtml","Print","RefreshAction","onRefresh","loading","handleRefresh","Refresh","DeleteAction","onDelete","Trashcan","ExtraActions","slotProps","Popover","PopoverTrigger","ElipsisVertical","PopoverContent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"datagrid.es.js","sources":["../src/components/data-grid/DataGrid.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React, { forwardRef, HTMLAttributes, useMemo } from \"react\";\r\nimport { AgGridReact, AgGridReactProps } from \"ag-grid-react\";\r\nimport { GridApi, GridReadyEvent, themeQuartz, AllCommunityModule, ModuleRegistry, Theme } from \"ag-grid-community\";\r\nimport { CircleXmark, ElipsisVertical, Magnifier, Print, Refresh, Snowflake, Trashcan } from \"@trsys-tech/matrix-icons\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { printHtml } from \"../../lib/printHtml\";\r\nimport { TextField } from \"../text-field/TextField\";\r\nimport { Button, ButtonProps } from \"../button/Button\";\r\nimport { IconButton, IconButtonProps } from \"../icon-botton/IconButton\";\r\nimport { Popover, PopoverContent, PopoverContentProps, PopoverProps, PopoverTrigger, PopoverTriggerProps } from \"../popover/Popover\";\r\n\r\n// Register all Community features\r\n// Todo: Register only the required features\r\nModuleRegistry.registerModules([AllCommunityModule]);\r\n\r\nconst dataGridDefaultTheme = themeQuartz.withParams({\r\n fontFamily: \"DMSans\",\r\n fontSize: \"12px\",\r\n headerFontSize: \"12px\",\r\n headerFontWeight: 700,\r\n headerBackgroundColor: \"hsl(var(--primary-50))\",\r\n backgroundColor: \"hsl(var(--gray-0))\",\r\n accentColor: \"hsl(var(--primary-300))\",\r\n foregroundColor: \"hsl(var(--text-500))\",\r\n cellTextColor: \"hsl(var(--text-500))\",\r\n});\r\n\r\ntype DataGridContext = {\r\n api: GridApi | null;\r\n setApi: (value: GridApi) => void;\r\n rowData: any[] | null | undefined;\r\n setRowData: (value: any[] | null | undefined) => void;\r\n gridId: string;\r\n quickFilterText: string;\r\n setQuickFilterText: (value: string) => void;\r\n actionbarExists: boolean;\r\n setActionbarExists: (value: boolean) => void;\r\n actionbarHeight: number;\r\n setActionbarHeight: (value: number) => void;\r\n};\r\n\r\nconst DataGridContext = React.createContext<DataGridContext | null>(null);\r\n\r\nconst useDataGrid = () => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"useDataGrid should be used within <DataGrid>\");\r\n }\r\n\r\n return context;\r\n};\r\n\r\ntype DataGridProps = {\r\n children: React.ReactNode;\r\n};\r\n\r\nconst DataGrid: React.FC<DataGridProps> = ({ children }) => {\r\n const gridId = React.useId();\r\n const [api, setApi] = React.useState<GridApi | null>(null);\r\n const [rowData, setRowData] = React.useState<any[] | null | undefined>([]);\r\n const [actionbarHeight, setActionbarHeight] = React.useState(0);\r\n\r\n const [quickFilterText, setQuickFilterText] = React.useState(\"\");\r\n const [actionbarExists, setActionbarExists] = React.useState(false);\r\n return (\r\n <DataGridContext.Provider\r\n value={{\r\n api,\r\n setApi,\r\n rowData,\r\n setRowData,\r\n gridId,\r\n quickFilterText,\r\n setQuickFilterText,\r\n actionbarExists,\r\n setActionbarExists,\r\n actionbarHeight,\r\n setActionbarHeight,\r\n }}\r\n >\r\n {children}\r\n </DataGridContext.Provider>\r\n );\r\n};\r\n\r\ntype DataGridContentProps = Omit<AgGridReactProps, \"theme\"> & {\r\n theme?: Theme;\r\n};\r\n\r\nconst DataGridContent = forwardRef<AgGridReact, DataGridContentProps>(\r\n ({ theme: propTheme, onGridReady, quickFilterText: quickFilterTextProps, rowData: rowDataProps, containerStyle, ...props }, ref) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"DataGridContent should be used within <DataGrid>\");\r\n }\r\n const { rowData, setRowData, actionbarExists, setApi, setQuickFilterText, quickFilterText, gridId, actionbarHeight } = context;\r\n\r\n const theme = useMemo(() => {\r\n return dataGridDefaultTheme.withParams({\r\n headerHeight: 40,\r\n wrapperBorderRadius: actionbarExists ? \"0px 0px 8px 8px\" : \"8px\",\r\n });\r\n }, [actionbarExists]);\r\n\r\n const handleGridReady = (e: GridReadyEvent) => {\r\n setApi(e.api);\r\n onGridReady?.(e);\r\n };\r\n\r\n React.useEffect(() => {\r\n setRowData(rowDataProps);\r\n }, [rowDataProps, setRowData]);\r\n\r\n React.useEffect(() => {\r\n if (quickFilterTextProps !== undefined) {\r\n setQuickFilterText(quickFilterTextProps ?? \"\");\r\n }\r\n }, [quickFilterTextProps, setQuickFilterText]);\r\n\r\n return (\r\n <AgGridReact\r\n gridId={gridId}\r\n theme={propTheme ?? theme}\r\n rowData={rowData}\r\n quickFilterText={quickFilterText}\r\n onGridReady={handleGridReady}\r\n containerStyle={{ height: `calc(100% - ${actionbarHeight}px)`, ...containerStyle }}\r\n {...props}\r\n ref={ref}\r\n />\r\n );\r\n },\r\n);\r\n\r\nDataGridContent.displayName = \"DataGridContent\";\r\n\r\ntype DatagridActionBarProps = HTMLAttributes<HTMLDivElement> & {};\r\n\r\nconst DataGridActionBar: React.FC<DatagridActionBarProps> = ({ className, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"DataGridActionBar should be used within <DataGrid>\");\r\n }\r\n const ref = React.useRef<HTMLDivElement | null>(null);\r\n const { setActionbarExists, setActionbarHeight } = context;\r\n const { children } = props;\r\n\r\n React.useEffect(() => {\r\n setActionbarExists(true);\r\n return () => setActionbarExists(false);\r\n }, [setActionbarExists]);\r\n\r\n React.useEffect(() => {\r\n if (ref.current) {\r\n setActionbarHeight(ref.current.clientHeight);\r\n }\r\n }, [setActionbarHeight]);\r\n\r\n return (\r\n <div\r\n className={cn(\r\n \"relative flex items-center p-2 h-12 w-full bg-gray-0 border border-gray-200 border-b-0 -mb-[1px] z-10 rounded-t-[8px]\",\r\n className,\r\n )}\r\n ref={ref}\r\n >\r\n {children}\r\n </div>\r\n );\r\n};\r\n\r\ntype SearchActionProps = HTMLAttributes<HTMLDivElement> & {\r\n defaultOpen?: boolean;\r\n};\r\n\r\nconst SearchAction: React.FC<SearchActionProps> = ({ defaultOpen = false, className, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"SearchAction should be used within <DataGrid>\");\r\n }\r\n\r\n const { quickFilterText, setQuickFilterText } = context;\r\n\r\n const [isSearchInputOpen, setIsSearchInputOpen] = React.useState(defaultOpen);\r\n const [isClosing, setIsClosing] = React.useState(false);\r\n const inputRef = React.useRef<HTMLInputElement | null>(null);\r\n\r\n const handleClear = () => {\r\n context.setQuickFilterText(\"\");\r\n if (inputRef.current) {\r\n inputRef.current.focus();\r\n }\r\n };\r\n\r\n const handleOpen = () => {\r\n setIsSearchInputOpen(true);\r\n };\r\n\r\n React.useEffect(() => {\r\n if (isSearchInputOpen && inputRef?.current) {\r\n inputRef.current.focus();\r\n }\r\n }, [isSearchInputOpen]);\r\n\r\n const handleClose = () => {\r\n setIsClosing(true);\r\n context.setQuickFilterText(\"\");\r\n setTimeout(() => {\r\n setIsSearchInputOpen(false);\r\n setIsClosing(false);\r\n }, 200);\r\n };\r\n\r\n return (\r\n <div className={cn(\"max-w-60\", className)} {...props}>\r\n {isSearchInputOpen || isClosing ? (\r\n <TextField\r\n ref={inputRef}\r\n className={cn(\"relative h-7.5\", isSearchInputOpen && !isClosing ? \"animate-input-open\" : \"\", isClosing && \"animate-input-close\")}\r\n onChange={e => setQuickFilterText(e.target.value)}\r\n value={quickFilterText}\r\n startAdornment={\r\n <IconButton variant=\"toolbar\" className=\"p-0.5 h-6 w-6 border-none mx-1\" onClick={handleClose}>\r\n <Magnifier className=\"w-5 h-5\" />\r\n </IconButton>\r\n }\r\n endAdornment={\r\n quickFilterText && (\r\n <IconButton variant=\"toolbar\" className=\"p-0.5 w-6 h-6 border-none mx-1\" onClick={handleClear}>\r\n <CircleXmark className=\"w-5 h-5\" />\r\n </IconButton>\r\n )\r\n }\r\n />\r\n ) : (\r\n <IconButton variant=\"toolbar\" className=\"p-0.5 w-6 h-6 m-1\" onClick={handleOpen}>\r\n <Magnifier className=\"w-5 h-5\" />\r\n </IconButton>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\ntype FreezeActionProps = ButtonProps & {\r\n freezeText?: string;\r\n unFreezeText?: string;\r\n};\r\n\r\nconst FreezeAction: React.FC<FreezeActionProps> = ({ freezeText, unFreezeText, onClick, disabled, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"FreezeAction should be used within <DataGrid>\");\r\n }\r\n\r\n const [pinnedRowCount, setPinnedRowCount] = React.useState(0);\r\n const [selectedRowsCount, setSelectedRowsCount] = React.useState(0);\r\n\r\n const { api, rowData } = context;\r\n\r\n const freezeRows = () => {\r\n if (!api) return;\r\n\r\n // Get currently selected rows\r\n const selectedRows = api.getSelectedNodes();\r\n\r\n if (selectedRows.length > 0) {\r\n // Pin the selected rows\r\n api.setGridOption(\r\n \"pinnedTopRowData\",\r\n selectedRows.map(row => row.data),\r\n );\r\n\r\n // Get current row data\r\n const allData = api.getRenderedNodes();\r\n // Filter out pinned rows from the main data\r\n const updatedNodes = allData.filter(row => !selectedRows.some(pinnedRow => pinnedRow.id === row.id));\r\n\r\n // Update the grid with the filtered data\r\n api.setGridOption(\r\n \"rowData\",\r\n updatedNodes.map(node => node.data),\r\n );\r\n }\r\n };\r\n\r\n const unfreezeRows = () => {\r\n if (!api) return;\r\n api.setGridOption(\"pinnedTopRowData\", []);\r\n api.setGridOption(\"rowData\", rowData);\r\n };\r\n\r\n const handleFreezing = (e: React.MouseEvent<HTMLButtonElement>) => {\r\n if (api) {\r\n const pinnedRowsCount = api.getPinnedTopRowCount();\r\n if (pinnedRowsCount > 0) {\r\n unfreezeRows();\r\n } else {\r\n freezeRows();\r\n }\r\n }\r\n onClick?.(e);\r\n };\r\n\r\n React.useEffect(() => {\r\n api?.addEventListener(\"pinnedRowDataChanged\", () => {\r\n setPinnedRowCount(api.getPinnedTopRowCount());\r\n });\r\n\r\n api?.addEventListener(\"selectionChanged\", () => {\r\n setSelectedRowsCount(api.getSelectedNodes().length);\r\n });\r\n\r\n return () => {\r\n api?.removeEventListener(\"pinnedRowDataChanged\", () => {\r\n setPinnedRowCount(api.getPinnedTopRowCount());\r\n });\r\n\r\n api?.removeEventListener(\"selectionChanged\", () => {\r\n setSelectedRowsCount(api.getSelectedNodes().length);\r\n });\r\n };\r\n }, [api]);\r\n\r\n return (\r\n <Button\r\n variant=\"text\"\r\n onClick={handleFreezing}\r\n startIcon={<Snowflake className=\"w-4.5 h-4.5\" />}\r\n disabled={(!pinnedRowCount && !selectedRowsCount) || disabled}\r\n {...props}\r\n >\r\n {pinnedRowCount ? (unFreezeText ?? \"Unfreeze\") : (freezeText ?? \"Freeze\")}\r\n </Button>\r\n );\r\n};\r\n\r\ntype PrintActionProps = IconButtonProps & {};\r\n\r\nconst PrintAction: React.FC<PrintActionProps> = ({ children, className, onClick, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"PrintAction should be used within <DataGrid>\");\r\n }\r\n\r\n const handlePrint = (e: React.MouseEvent<HTMLButtonElement>) => {\r\n if (context.api) {\r\n context.api.setGridOption(\"domLayout\", \"print\");\r\n\r\n setTimeout(() => {\r\n const element = document.querySelector(\"[grid-id='\" + context.gridId + \"']\") as HTMLElement;\r\n const header = document.head;\r\n const html = `<html>\r\n ${header.innerHTML}\r\n ${element.outerHTML}\r\n </html>`;\r\n printHtml(html);\r\n context?.api?.setGridOption(\"domLayout\", undefined);\r\n });\r\n }\r\n onClick?.(e);\r\n };\r\n\r\n return (\r\n <IconButton variant=\"toolbar\" className={cn(\"p-0.5 w-6 h-6\", className)} onClick={handlePrint} {...props}>\r\n {children ?? <Print className=\"w-5 h-5\" />}\r\n </IconButton>\r\n );\r\n};\r\n\r\ntype RefreshActionProps = Omit<IconButtonProps, \"onClick\"> & {\r\n onRefresh: () => void;\r\n};\r\n\r\nconst RefreshAction: React.FC<RefreshActionProps> = ({ className, onRefresh, children, loading, ...props }) => {\r\n const context = React.useContext(DataGridContext);\r\n\r\n if (!context) {\r\n throw new Error(\"RefreshAction should be used within <DataGrid>\");\r\n }\r\n\r\n const handleRefresh = () => {\r\n onRefresh();\r\n };\r\n\r\n return (\r\n <IconButton\r\n className={cn(\"p-0.5 w-6 h-6\", loading && \"disabled:bg-transparent\", className)}\r\n variant=\"toolbar\"\r\n onClick={handleRefresh}\r\n disabled={loading}\r\n {...props}\r\n >\r\n {children ?? <Refresh className={cn(\"w-4.5 h-4.5\", loading && \"animate-spin\")} />}\r\n </IconButton>\r\n );\r\n};\r\n\r\ntype DeleteActionProps = Omit<ButtonProps, \"onClick\"> & {\r\n onDelete: () => void;\r\n};\r\n\r\nconst DeleteAction: React.FC<DeleteActionProps> = ({ onDelete, children, ...props }) => {\r\n const handleDelete = () => {\r\n onDelete();\r\n };\r\n\r\n return (\r\n <Button variant=\"danger\" onClick={handleDelete} startIcon={<Trashcan className=\"w-4.5 h-4.5\" />} {...props}>\r\n {children}\r\n </Button>\r\n );\r\n};\r\n\r\ntype ExtraActionsProps = PopoverContentProps & {\r\n children: React.ReactNode;\r\n slotProps?: {\r\n triggerProps?: PopoverTriggerProps;\r\n popoverProps?: PopoverProps;\r\n };\r\n};\r\n\r\nconst ExtraActions: React.FC<ExtraActionsProps> = ({ children, slotProps, className, ...props }) => {\r\n return (\r\n <Popover {...(slotProps?.popoverProps ?? {})}>\r\n <PopoverTrigger {...(slotProps?.triggerProps ?? {})}>\r\n <ElipsisVertical className=\"w-4.5 h-4.5 text-primary\" />\r\n </PopoverTrigger>\r\n <PopoverContent align=\"end\" className={cn(\"w-40\", className)} {...props}>\r\n {children}\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n};\r\n\r\nexport {\r\n DataGrid,\r\n DataGridContent,\r\n DataGridActionBar,\r\n SearchAction,\r\n FreezeAction,\r\n PrintAction,\r\n RefreshAction,\r\n ExtraActions,\r\n DeleteAction,\r\n type DataGridProps,\r\n type DataGridContentProps,\r\n type DatagridActionBarProps,\r\n type SearchActionProps,\r\n type FreezeActionProps,\r\n type RefreshActionProps,\r\n type ExtraActionsProps,\r\n type DeleteActionProps,\r\n useDataGrid,\r\n dataGridDefaultTheme,\r\n};\r\n"],"names":["ModuleRegistry","AllCommunityModule","dataGridDefaultTheme","themeQuartz","DataGridContext","React","useDataGrid","context","DataGrid","children","gridId","api","setApi","rowData","setRowData","actionbarHeight","setActionbarHeight","quickFilterText","setQuickFilterText","actionbarExists","setActionbarExists","jsx","DataGridContent","forwardRef","propTheme","onGridReady","quickFilterTextProps","rowDataProps","containerStyle","props","ref","theme","useMemo","handleGridReady","e","AgGridReact","DataGridActionBar","className","cn","SearchAction","defaultOpen","isSearchInputOpen","setIsSearchInputOpen","isClosing","setIsClosing","inputRef","handleClear","handleOpen","handleClose","TextField","IconButton","Magnifier","CircleXmark","FreezeAction","freezeText","unFreezeText","onClick","disabled","pinnedRowCount","setPinnedRowCount","selectedRowsCount","setSelectedRowsCount","freezeRows","selectedRows","row","updatedNodes","pinnedRow","node","unfreezeRows","handleFreezing","Button","Snowflake","PrintAction","handlePrint","element","html","printHtml","Print","RefreshAction","onRefresh","loading","handleRefresh","Refresh","DeleteAction","onDelete","Trashcan","ExtraActions","slotProps","Popover","PopoverTrigger","ElipsisVertical","PopoverContent"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datepicker.es.js","sources":["../src/components/date-picker/DatePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React from \"react\";\r\nimport { DesktopDatePicker, DesktopDatePickerProps } from \"./DesktopDatePicker\";\r\nimport { MobileDatePicker, MobileDatePickerProps } from \"./MobileDatePicker\";\r\nimport { useIsMobile } from \"../../lib/hooks/use-mobile\";\r\n\r\ntype DatePickerProps = DesktopDatePickerProps & MobileDatePickerProps & {};\r\n\r\nconst DatePicker: React.FC<DatePickerProps> = props => {\r\n const isMobile = useIsMobile();\r\n\r\n return isMobile ? <MobileDatePicker {...props} /> : <DesktopDatePicker {...props} />;\r\n};\r\n\r\nexport { DatePicker, DesktopDatePicker, MobileDatePicker, type DatePickerProps, type DesktopDatePickerProps, type MobileDatePickerProps };\r\n"],"names":["DatePicker","props","useIsMobile","MobileDatePicker","jsx","DesktopDatePicker"],"mappings":";;;;AASA,MAAMA,IAAwC,
|
|
1
|
+
{"version":3,"file":"datepicker.es.js","sources":["../src/components/date-picker/DatePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React from \"react\";\r\nimport { DesktopDatePicker, DesktopDatePickerProps } from \"./DesktopDatePicker\";\r\nimport { MobileDatePicker, MobileDatePickerProps } from \"./MobileDatePicker\";\r\nimport { useIsMobile } from \"../../lib/hooks/use-mobile\";\r\n\r\ntype DatePickerProps = DesktopDatePickerProps & MobileDatePickerProps & {};\r\n\r\nconst DatePicker: React.FC<DatePickerProps> = props => {\r\n const isMobile = useIsMobile();\r\n\r\n return isMobile ? <MobileDatePicker {...props} /> : <DesktopDatePicker {...props} />;\r\n};\r\n\r\nexport { DatePicker, DesktopDatePicker, MobileDatePicker, type DatePickerProps, type DesktopDatePickerProps, type MobileDatePickerProps };\r\n"],"names":["DatePicker","props","useIsMobile","MobileDatePicker","jsx","DesktopDatePicker"],"mappings":";;;;AASA,MAAMA,IAAwC,CAAAC,MAC3BC,EAAA,sBAEEC,GAAA,EAAkB,GAAGF,GAAO,IAAK,gBAAAG,EAACC,GAAA,EAAmB,GAAGJ,EAAA,CAAO;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daterangepicker.es.js","sources":["../src/components/date-picker/DateRangePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React from \"react\";\r\n\r\nimport { useIsMobile } from \"../../lib/hooks/use-mobile\";\r\nimport { MobileDateRangePicker, MobileDateRangePickerProps } from \"./MobileDateRangePicker\";\r\nimport { DesktopDateRangePicker, DesktopDateRangePickerProps } from \"./DesktopDateRangePicker\";\r\n\r\ntype DateRangePickerProps = DesktopDateRangePickerProps & MobileDateRangePickerProps & {};\r\n\r\nconst DateRangePicker: React.FC<DateRangePickerProps> = props => {\r\n const isMobile = useIsMobile();\r\n\r\n return isMobile ? <MobileDateRangePicker {...props} /> : <DesktopDateRangePicker {...props} />;\r\n};\r\n\r\nexport {\r\n DateRangePicker,\r\n DesktopDateRangePicker,\r\n MobileDateRangePicker,\r\n type DateRangePickerProps,\r\n type DesktopDateRangePickerProps,\r\n type MobileDateRangePickerProps,\r\n};\r\n"],"names":["DateRangePicker","props","useIsMobile","MobileDateRangePicker","jsx","DesktopDateRangePicker"],"mappings":";;;;AAUA,MAAMA,IAAkD,
|
|
1
|
+
{"version":3,"file":"daterangepicker.es.js","sources":["../src/components/date-picker/DateRangePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React from \"react\";\r\n\r\nimport { useIsMobile } from \"../../lib/hooks/use-mobile\";\r\nimport { MobileDateRangePicker, MobileDateRangePickerProps } from \"./MobileDateRangePicker\";\r\nimport { DesktopDateRangePicker, DesktopDateRangePickerProps } from \"./DesktopDateRangePicker\";\r\n\r\ntype DateRangePickerProps = DesktopDateRangePickerProps & MobileDateRangePickerProps & {};\r\n\r\nconst DateRangePicker: React.FC<DateRangePickerProps> = props => {\r\n const isMobile = useIsMobile();\r\n\r\n return isMobile ? <MobileDateRangePicker {...props} /> : <DesktopDateRangePicker {...props} />;\r\n};\r\n\r\nexport {\r\n DateRangePicker,\r\n DesktopDateRangePicker,\r\n MobileDateRangePicker,\r\n type DateRangePickerProps,\r\n type DesktopDateRangePickerProps,\r\n type MobileDateRangePickerProps,\r\n};\r\n"],"names":["DateRangePicker","props","useIsMobile","MobileDateRangePicker","jsx","DesktopDateRangePicker"],"mappings":";;;;AAUA,MAAMA,IAAkD,CAAAC,MACrCC,EAAA,sBAEEC,GAAA,EAAuB,GAAGF,GAAO,IAAK,gBAAAG,EAACC,GAAA,EAAwB,GAAGJ,EAAA,CAAO;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultoptions.es.js","sources":["../node_modules/date-fns/_lib/defaultOptions.js"],"sourcesContent":["let defaultOptions = {};\n\nexport function getDefaultOptions() {\n return defaultOptions;\n}\n\nexport function setDefaultOptions(newOptions) {\n defaultOptions = newOptions;\n}\n"],"names":["defaultOptions","getDefaultOptions"],"mappings":"AAAA,IAAIA,IAAiB,
|
|
1
|
+
{"version":3,"file":"defaultoptions.es.js","sources":["../node_modules/date-fns/_lib/defaultOptions.js"],"sourcesContent":["let defaultOptions = {};\n\nexport function getDefaultOptions() {\n return defaultOptions;\n}\n\nexport function setDefaultOptions(newOptions) {\n defaultOptions = newOptions;\n}\n"],"names":["defaultOptions","getDefaultOptions"],"mappings":"AAAA,IAAIA,IAAiB,CAAA;AAEd,SAASC,IAAoB;AAClC,SAAOD;AACT;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktopdatepicker.es.js","sources":["../src/components/date-picker/DesktopDatePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { format } from \"date-fns\";\r\nimport { Calendar as CalendarIcon } from \"@trsys-tech/matrix-icons\";\r\nimport { PropsBase, PropsSingle, DayEventHandler } from \"react-day-picker\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Calendar } from \"./calendar\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Popover, PopoverContent, PopoverTrigger } from \"../popover/Popover\";\r\n\r\ntype DesktopDatePickerProps = PropsBase &\r\n Omit<PropsSingle, \"mode\"> & {\r\n formatStr?: string;\r\n placeholder?: string;\r\n calendarClassName?: string;\r\n selected?: Date;\r\n required?: boolean;\r\n closeOnSelect?: boolean;\r\n disabled?: boolean;\r\n };\r\n\r\nconst DesktopDatePicker: React.FC<DesktopDatePickerProps> = ({\r\n formatStr,\r\n selected,\r\n placeholder,\r\n className,\r\n calendarClassName,\r\n closeOnSelect = true,\r\n onDayClick,\r\n disabled,\r\n ...props\r\n}) => {\r\n const [isOpen, setIsOpen] = React.useState(false);\r\n\r\n const handleDayClick: DayEventHandler<React.MouseEvent<Element, MouseEvent>> = (date, modifiers, e) => {\r\n onDayClick?.(date, modifiers, e);\r\n if (closeOnSelect) setIsOpen(false);\r\n };\r\n\r\n return (\r\n <Popover open={isOpen} onOpenChange={setIsOpen}>\r\n <PopoverTrigger asChild>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-sm ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!selected ? \"\" : undefined}\r\n aria-label={selected ? `Selected date: ${format(selected, formatStr ?? \"yyyy/MM/dd\")}` : \"Pick a date\"}\r\n disabled={disabled}\r\n >\r\n {selected ? format(selected, formatStr ?? \"yyyy/MM/dd\") : <span>{placeholder ?? \"Pick a date\"}</span>}\r\n <CalendarIcon className=\"mr-2 ms-auto\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent className=\"w-auto p-0\">\r\n <Calendar\r\n defaultMonth={selected}\r\n startMonth={new Date(2000, 0, 1)}\r\n endMonth={new Date(new Date().getFullYear() + 2, 11, 31)}\r\n {...props}\r\n mode=\"single\"\r\n selected={selected}\r\n captionLayout=\"dropdown-years\"\r\n className={calendarClassName}\r\n onDayClick={handleDayClick}\r\n />\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n};\r\n\r\nexport { DesktopDatePicker, type DesktopDatePickerProps };\r\n"],"names":["DesktopDatePicker","formatStr","selected","placeholder","className","calendarClassName","closeOnSelect","onDayClick","disabled","props","isOpen","setIsOpen","React","handleDayClick","date","modifiers","e","jsxs","Popover","jsx","PopoverTrigger","Button","cn","format","CalendarIcon","PopoverContent","Calendar"],"mappings":";;;;;;;;AAuBA,MAAMA,IAAsD,CAAC;AAAA,EAC3D,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAM,SAAS,EAAK,GAE1CC,IAAyE,CAACC,GAAMC,GAAWC,MAAM;
|
|
1
|
+
{"version":3,"file":"desktopdatepicker.es.js","sources":["../src/components/date-picker/DesktopDatePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { format } from \"date-fns\";\r\nimport { Calendar as CalendarIcon } from \"@trsys-tech/matrix-icons\";\r\nimport { PropsBase, PropsSingle, DayEventHandler } from \"react-day-picker\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Calendar } from \"./calendar\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Popover, PopoverContent, PopoverTrigger } from \"../popover/Popover\";\r\n\r\ntype DesktopDatePickerProps = PropsBase &\r\n Omit<PropsSingle, \"mode\"> & {\r\n formatStr?: string;\r\n placeholder?: string;\r\n calendarClassName?: string;\r\n selected?: Date;\r\n required?: boolean;\r\n closeOnSelect?: boolean;\r\n disabled?: boolean;\r\n };\r\n\r\nconst DesktopDatePicker: React.FC<DesktopDatePickerProps> = ({\r\n formatStr,\r\n selected,\r\n placeholder,\r\n className,\r\n calendarClassName,\r\n closeOnSelect = true,\r\n onDayClick,\r\n disabled,\r\n ...props\r\n}) => {\r\n const [isOpen, setIsOpen] = React.useState(false);\r\n\r\n const handleDayClick: DayEventHandler<React.MouseEvent<Element, MouseEvent>> = (date, modifiers, e) => {\r\n onDayClick?.(date, modifiers, e);\r\n if (closeOnSelect) setIsOpen(false);\r\n };\r\n\r\n return (\r\n <Popover open={isOpen} onOpenChange={setIsOpen}>\r\n <PopoverTrigger asChild>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-sm ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!selected ? \"\" : undefined}\r\n aria-label={selected ? `Selected date: ${format(selected, formatStr ?? \"yyyy/MM/dd\")}` : \"Pick a date\"}\r\n disabled={disabled}\r\n >\r\n {selected ? format(selected, formatStr ?? \"yyyy/MM/dd\") : <span>{placeholder ?? \"Pick a date\"}</span>}\r\n <CalendarIcon className=\"mr-2 ms-auto\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent className=\"w-auto p-0\">\r\n <Calendar\r\n defaultMonth={selected}\r\n startMonth={new Date(2000, 0, 1)}\r\n endMonth={new Date(new Date().getFullYear() + 2, 11, 31)}\r\n {...props}\r\n mode=\"single\"\r\n selected={selected}\r\n captionLayout=\"dropdown-years\"\r\n className={calendarClassName}\r\n onDayClick={handleDayClick}\r\n />\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n};\r\n\r\nexport { DesktopDatePicker, type DesktopDatePickerProps };\r\n"],"names":["DesktopDatePicker","formatStr","selected","placeholder","className","calendarClassName","closeOnSelect","onDayClick","disabled","props","isOpen","setIsOpen","React","handleDayClick","date","modifiers","e","jsxs","Popover","jsx","PopoverTrigger","Button","cn","format","CalendarIcon","PopoverContent","Calendar"],"mappings":";;;;;;;;AAuBA,MAAMA,IAAsD,CAAC;AAAA,EAC3D,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAM,SAAS,EAAK,GAE1CC,IAAyE,CAACC,GAAMC,GAAWC,MAAM;AACrG,IAAAT,IAAaO,GAAMC,GAAWC,CAAC,GAC3BV,OAAyB,EAAK;AAAA,EACpC;AAEA,SACE,gBAAAW,EAACC,GAAA,EAAQ,MAAMR,GAAQ,cAAcC,GACnC,UAAA;AAAA,IAAA,gBAAAQ,EAACC,GAAA,EAAe,SAAO,IACrB,UAAA,gBAAAH;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,SAAQ;AAAA,QACR,WAAWC;AAAA,UACT;AAAA,UACAlB;AAAA,QAAA;AAAA,QAEF,oBAAmBF,IAAgB,SAAL;AAAA,QAC9B,cAAYA,IAAW,kBAAkBqB,EAAOrB,GAAUD,KAAa,YAAY,CAAC,KAAK;AAAA,QACzF,UAAAO;AAAA,QAEC,UAAA;AAAA,UAAAN,IAAWqB,EAAOrB,GAAUD,KAAa,YAAY,IAAI,gBAAAkB,EAAC,QAAA,EAAM,eAAe,cAAA,CAAc;AAAA,UAC9F,gBAAAA,EAACK,GAAA,EAAa,WAAU,eAAA,CAAe;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAE3C;AAAA,IACA,gBAAAL,EAACM,GAAA,EAAe,WAAU,cACxB,UAAA,gBAAAN;AAAA,MAACO;AAAAA,MAAA;AAAA,QACC,cAAcxB;AAAA,QACd,YAAY,IAAI,KAAK,KAAM,GAAG,CAAC;AAAA,QAC/B,UAAU,IAAI,MAAK,oBAAI,KAAA,GAAO,gBAAgB,GAAG,IAAI,EAAE;AAAA,QACtD,GAAGO;AAAA,QACJ,MAAK;AAAA,QACL,UAAAP;AAAA,QACA,eAAc;AAAA,QACd,WAAWG;AAAA,QACX,YAAYQ;AAAA,MAAA;AAAA,IAAA,EACd,CACF;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktopdaterangepicker.es.js","sources":["../src/components/date-picker/DesktopDateRangePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { format } from \"date-fns\";\r\nimport { PropsBase, PropsRange, DateRange } from \"react-day-picker\";\r\nimport { Calendar as CalendarIcon } from \"@trsys-tech/matrix-icons\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Calendar } from \"./calendar\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Popover, PopoverContent, PopoverTrigger } from \"../popover/Popover\";\r\n\r\ntype DesktopDateRangePickerProps = PropsBase &\r\n Omit<PropsRange, \"mode\"> & {\r\n formatStr?: string;\r\n placeholder?: string;\r\n calendarClassName?: string;\r\n selected?: DateRange;\r\n required?: boolean;\r\n fromText?: string;\r\n toText?: string;\r\n disabled?: boolean;\r\n };\r\n\r\nconst DesktopDateRangePicker: React.FC<DesktopDateRangePickerProps> = ({\r\n formatStr,\r\n selected,\r\n placeholder,\r\n className,\r\n calendarClassName,\r\n fromText,\r\n toText,\r\n disabled,\r\n ...props\r\n}) => {\r\n const [isOpen, setIsOpen] = React.useState(false);\r\n\r\n return (\r\n <Popover\r\n open={isOpen}\r\n onOpenChange={open => {\r\n setIsOpen(open);\r\n }}\r\n >\r\n <PopoverTrigger asChild>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-sm ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!selected ? \"\" : undefined}\r\n aria-label={\r\n selected\r\n ? `Selected date: ${selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : \"\"} - ${selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : \"\"}`\r\n : placeholder\r\n }\r\n disabled={disabled}\r\n >\r\n {selected ? (\r\n <div className=\"grid grid-cols-2 flex-1 justify-items-start\">\r\n <span>\r\n {fromText ?? \"From\"}: {selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : \"-\"}\r\n </span>{\" \"}\r\n <span>\r\n {toText ?? \"To\"}: {selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : \"-\"}\r\n </span>\r\n </div>\r\n ) : (\r\n <span>{placeholder ?? \"Pick a Range\"}</span>\r\n )}\r\n <CalendarIcon className=\"mr-2 h-5 w-4 ms-auto\" />\r\n </Button>\r\n {/* <div className=\"flex gap-2\">\r\n <Button\r\n variant={\"outline\"}\r\n className={cn(\r\n \"border-gray-300 text-text focus:ring-0 active:ring-transparent justify-start\",\r\n !selected && \"text-muted-foreground\",\r\n className,\r\n )}\r\n >\r\n {selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : <span>{placeholder ?? \"From\"}</span>}\r\n <CalendarIcon className=\"mr-2 h-5 w-5 ms-auto\" />\r\n </Button>\r\n <Button\r\n variant={\"outline\"}\r\n className={cn(\r\n \"border-gray-300 text-text focus:ring-0 active:ring-transparent justify-start\",\r\n !selected && \"text-muted-foreground\",\r\n className,\r\n )}\r\n >\r\n {selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : <span>{placeholder ?? \"To\"}</span>}\r\n <CalendarIcon className=\"mr-2 h-5 w-5 ms-auto\" />\r\n </Button>\r\n </div> */}\r\n </PopoverTrigger>\r\n <PopoverContent className=\"w-auto p-0\" align=\"start\">\r\n <Calendar\r\n defaultMonth={selected?.from}\r\n startMonth={new Date(2000, 0, 1)}\r\n endMonth={new Date(new Date().getFullYear() + 2, 11, 31)}\r\n {...props}\r\n mode=\"range\"\r\n selected={selected}\r\n className={cn(calendarClassName, \"md:max-w-full md:w-[36rem]\")}\r\n numberOfMonths={2}\r\n />\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n};\r\n\r\nexport { DesktopDateRangePicker, type DesktopDateRangePickerProps };\r\n"],"names":["DesktopDateRangePicker","formatStr","selected","placeholder","className","calendarClassName","fromText","toText","disabled","props","isOpen","setIsOpen","React","jsxs","Popover","open","jsx","PopoverTrigger","Button","cn","format","CalendarIcon","PopoverContent","Calendar"],"mappings":";;;;;;;;AAwBA,MAAMA,IAAgE,CAAC;AAAA,EACrE,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAM,SAAS,EAAK;
|
|
1
|
+
{"version":3,"file":"desktopdaterangepicker.es.js","sources":["../src/components/date-picker/DesktopDateRangePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { format } from \"date-fns\";\r\nimport { PropsBase, PropsRange, DateRange } from \"react-day-picker\";\r\nimport { Calendar as CalendarIcon } from \"@trsys-tech/matrix-icons\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Calendar } from \"./calendar\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Popover, PopoverContent, PopoverTrigger } from \"../popover/Popover\";\r\n\r\ntype DesktopDateRangePickerProps = PropsBase &\r\n Omit<PropsRange, \"mode\"> & {\r\n formatStr?: string;\r\n placeholder?: string;\r\n calendarClassName?: string;\r\n selected?: DateRange;\r\n required?: boolean;\r\n fromText?: string;\r\n toText?: string;\r\n disabled?: boolean;\r\n };\r\n\r\nconst DesktopDateRangePicker: React.FC<DesktopDateRangePickerProps> = ({\r\n formatStr,\r\n selected,\r\n placeholder,\r\n className,\r\n calendarClassName,\r\n fromText,\r\n toText,\r\n disabled,\r\n ...props\r\n}) => {\r\n const [isOpen, setIsOpen] = React.useState(false);\r\n\r\n return (\r\n <Popover\r\n open={isOpen}\r\n onOpenChange={open => {\r\n setIsOpen(open);\r\n }}\r\n >\r\n <PopoverTrigger asChild>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-sm ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!selected ? \"\" : undefined}\r\n aria-label={\r\n selected\r\n ? `Selected date: ${selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : \"\"} - ${selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : \"\"}`\r\n : placeholder\r\n }\r\n disabled={disabled}\r\n >\r\n {selected ? (\r\n <div className=\"grid grid-cols-2 flex-1 justify-items-start\">\r\n <span>\r\n {fromText ?? \"From\"}: {selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : \"-\"}\r\n </span>{\" \"}\r\n <span>\r\n {toText ?? \"To\"}: {selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : \"-\"}\r\n </span>\r\n </div>\r\n ) : (\r\n <span>{placeholder ?? \"Pick a Range\"}</span>\r\n )}\r\n <CalendarIcon className=\"mr-2 h-5 w-4 ms-auto\" />\r\n </Button>\r\n {/* <div className=\"flex gap-2\">\r\n <Button\r\n variant={\"outline\"}\r\n className={cn(\r\n \"border-gray-300 text-text focus:ring-0 active:ring-transparent justify-start\",\r\n !selected && \"text-muted-foreground\",\r\n className,\r\n )}\r\n >\r\n {selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : <span>{placeholder ?? \"From\"}</span>}\r\n <CalendarIcon className=\"mr-2 h-5 w-5 ms-auto\" />\r\n </Button>\r\n <Button\r\n variant={\"outline\"}\r\n className={cn(\r\n \"border-gray-300 text-text focus:ring-0 active:ring-transparent justify-start\",\r\n !selected && \"text-muted-foreground\",\r\n className,\r\n )}\r\n >\r\n {selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : <span>{placeholder ?? \"To\"}</span>}\r\n <CalendarIcon className=\"mr-2 h-5 w-5 ms-auto\" />\r\n </Button>\r\n </div> */}\r\n </PopoverTrigger>\r\n <PopoverContent className=\"w-auto p-0\" align=\"start\">\r\n <Calendar\r\n defaultMonth={selected?.from}\r\n startMonth={new Date(2000, 0, 1)}\r\n endMonth={new Date(new Date().getFullYear() + 2, 11, 31)}\r\n {...props}\r\n mode=\"range\"\r\n selected={selected}\r\n className={cn(calendarClassName, \"md:max-w-full md:w-[36rem]\")}\r\n numberOfMonths={2}\r\n />\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n};\r\n\r\nexport { DesktopDateRangePicker, type DesktopDateRangePickerProps };\r\n"],"names":["DesktopDateRangePicker","formatStr","selected","placeholder","className","calendarClassName","fromText","toText","disabled","props","isOpen","setIsOpen","React","jsxs","Popover","open","jsx","PopoverTrigger","Button","cn","format","CalendarIcon","PopoverContent","Calendar"],"mappings":";;;;;;;;AAwBA,MAAMA,IAAgE,CAAC;AAAA,EACrE,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAM,SAAS,EAAK;AAEhD,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMJ;AAAA,MACN,cAAc,CAAAK,MAAQ;AACpB,QAAAJ,EAAUI,CAAI;AAAA,MAChB;AAAA,MAEA,UAAA;AAAA,QAAA,gBAAAC,EAACC,GAAA,EAAe,SAAO,IACrB,UAAA,gBAAAJ;AAAA,UAACK;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,WAAWC;AAAA,cACT;AAAA,cACAf;AAAA,YAAA;AAAA,YAEF,oBAAmBF,IAAgB,SAAL;AAAA,YAC9B,cACEA,IACI,kBAAkBA,GAAU,OAAOkB,EAAOlB,EAAS,MAAMD,KAAa,YAAY,IAAI,EAAE,MAAMC,GAAU,KAAKkB,EAAOlB,EAAS,IAAID,KAAa,YAAY,IAAI,EAAE,KAChKE;AAAA,YAEN,UAAAK;AAAA,YAEC,UAAA;AAAA,cAAAN,IACC,gBAAAW,EAAC,OAAA,EAAI,WAAU,+CACb,UAAA;AAAA,gBAAA,gBAAAA,EAAC,QAAA,EACE,UAAA;AAAA,kBAAAP,KAAY;AAAA,kBAAO;AAAA,kBAAGJ,GAAU,OAAOkB,EAAOlB,EAAS,MAAMD,KAAa,YAAY,IAAI;AAAA,gBAAA,GAC7F;AAAA,gBAAQ;AAAA,kCACP,QAAA,EACE,UAAA;AAAA,kBAAAM,KAAU;AAAA,kBAAK;AAAA,kBAAGL,GAAU,KAAKkB,EAAOlB,EAAS,IAAID,KAAa,YAAY,IAAI;AAAA,gBAAA,EAAA,CACrF;AAAA,cAAA,EAAA,CACF,IAEA,gBAAAe,EAAC,QAAA,EAAM,UAAAb,KAAe,gBAAe;AAAA,cAEvC,gBAAAa,EAACK,GAAA,EAAa,WAAU,uBAAA,CAAuB;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA,GA0BnD;AAAA,QACA,gBAAAL,EAACM,GAAA,EAAe,WAAU,cAAa,OAAM,SAC3C,UAAA,gBAAAN;AAAA,UAACO;AAAAA,UAAA;AAAA,YACC,cAAcrB,GAAU;AAAA,YACxB,YAAY,IAAI,KAAK,KAAM,GAAG,CAAC;AAAA,YAC/B,UAAU,IAAI,MAAK,oBAAI,KAAA,GAAO,gBAAgB,GAAG,IAAI,EAAE;AAAA,YACtD,GAAGO;AAAA,YACJ,MAAK;AAAA,YACL,UAAAP;AAAA,YACA,WAAWiB,EAAGd,GAAmB,4BAA4B;AAAA,YAC7D,gBAAgB;AAAA,UAAA;AAAA,QAAA,EAClB,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktoptimepicker.es.js","sources":["../src/components/date-picker/DesktopTimePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { HTMLAttributes, useState } from \"react\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Time, TimePickerContent } from \"./TimePickerContent\";\r\nimport { Popover, PopoverContent, PopoverTrigger } from \"../popover/Popover\";\r\n\r\ntype DesktopTimePickerProps = HTMLAttributes<HTMLButtonElement> & {\r\n time: Time | undefined;\r\n onTimeChange: (time: Time | undefined) => void;\r\n placeholder?: string;\r\n disabled?: boolean;\r\n slotsProps?: {\r\n content?: HTMLAttributes<HTMLDivElement>;\r\n };\r\n};\r\n\r\nconst DesktopTimePicker: React.FC<DesktopTimePickerProps> = ({\r\n time,\r\n onTimeChange,\r\n className,\r\n slotsProps,\r\n placeholder = \"Pick a Time\",\r\n ...restProps\r\n}) => {\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n return (\r\n <Popover open={isOpen} onOpenChange={setIsOpen}>\r\n <PopoverTrigger asChild>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-sm ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!time ? \"\" : undefined}\r\n aria-label={time?.hour ? `Selected time: ${time.hour}:${time.minute} ${time.ampm}` : placeholder}\r\n {...restProps}\r\n >\r\n {`${time?.hour?.toString()?.padStart(2, \"0\") ?? \"--\"} : ${time?.minute?.toString()?.padStart(2, \"0\") ?? \"--\"} ${time?.ampm ?? \"--\"}`}\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent {...(slotsProps?.content ?? {})} className={cn(\"w-auto p-0\", slotsProps?.content?.className)}>\r\n <TimePickerContent isOpen={isOpen} onTimeChange={onTimeChange} time={time} slotsProps={slotsProps} />\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n};\r\nexport { DesktopTimePicker, type DesktopTimePickerProps };\r\n"],"names":["DesktopTimePicker","time","onTimeChange","className","slotsProps","placeholder","restProps","isOpen","setIsOpen","useState","jsxs","Popover","jsx","PopoverTrigger","Button","cn","PopoverContent","TimePickerContent"],"mappings":";;;;;;AAmBA,MAAMA,IAAsD,CAAC;AAAA,EAC3D,MAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK;AAE1C,
|
|
1
|
+
{"version":3,"file":"desktoptimepicker.es.js","sources":["../src/components/date-picker/DesktopTimePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { HTMLAttributes, useState } from \"react\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Time, TimePickerContent } from \"./TimePickerContent\";\r\nimport { Popover, PopoverContent, PopoverTrigger } from \"../popover/Popover\";\r\n\r\ntype DesktopTimePickerProps = HTMLAttributes<HTMLButtonElement> & {\r\n time: Time | undefined;\r\n onTimeChange: (time: Time | undefined) => void;\r\n placeholder?: string;\r\n disabled?: boolean;\r\n slotsProps?: {\r\n content?: HTMLAttributes<HTMLDivElement>;\r\n };\r\n};\r\n\r\nconst DesktopTimePicker: React.FC<DesktopTimePickerProps> = ({\r\n time,\r\n onTimeChange,\r\n className,\r\n slotsProps,\r\n placeholder = \"Pick a Time\",\r\n ...restProps\r\n}) => {\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n return (\r\n <Popover open={isOpen} onOpenChange={setIsOpen}>\r\n <PopoverTrigger asChild>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-sm ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!time ? \"\" : undefined}\r\n aria-label={time?.hour ? `Selected time: ${time.hour}:${time.minute} ${time.ampm}` : placeholder}\r\n {...restProps}\r\n >\r\n {`${time?.hour?.toString()?.padStart(2, \"0\") ?? \"--\"} : ${time?.minute?.toString()?.padStart(2, \"0\") ?? \"--\"} ${time?.ampm ?? \"--\"}`}\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent {...(slotsProps?.content ?? {})} className={cn(\"w-auto p-0\", slotsProps?.content?.className)}>\r\n <TimePickerContent isOpen={isOpen} onTimeChange={onTimeChange} time={time} slotsProps={slotsProps} />\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n};\r\nexport { DesktopTimePicker, type DesktopTimePickerProps };\r\n"],"names":["DesktopTimePicker","time","onTimeChange","className","slotsProps","placeholder","restProps","isOpen","setIsOpen","useState","jsxs","Popover","jsx","PopoverTrigger","Button","cn","PopoverContent","TimePickerContent"],"mappings":";;;;;;AAmBA,MAAMA,IAAsD,CAAC;AAAA,EAC3D,MAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK;AAE1C,SACE,gBAAAC,EAACC,GAAA,EAAQ,MAAMJ,GAAQ,cAAcC,GACnC,UAAA;AAAA,IAAA,gBAAAI,EAACC,GAAA,EAAe,SAAO,IACrB,UAAA,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,SAAQ;AAAA,QACR,WAAWC;AAAA,UACT;AAAA,UACAZ;AAAA,QAAA;AAAA,QAEF,oBAAmBF,IAAY,SAAL;AAAA,QAC1B,cAAYA,GAAM,OAAO,kBAAkBA,EAAK,IAAI,IAAIA,EAAK,MAAM,IAAIA,EAAK,IAAI,KAAKI;AAAA,QACpF,GAAGC;AAAA,QAEH,UAAA,GAAGL,GAAM,MAAM,SAAA,GAAY,SAAS,GAAG,GAAG,KAAK,IAAI,MAAMA,GAAM,QAAQ,SAAA,GAAY,SAAS,GAAG,GAAG,KAAK,IAAI,IAAIA,GAAM,QAAQ,IAAI;AAAA,MAAA;AAAA,IAAA,GAEtI;AAAA,IACA,gBAAAW,EAACI,KAAgB,GAAIZ,GAAY,WAAW,CAAA,GAAK,WAAWW,EAAG,cAAcX,GAAY,SAAS,SAAS,GACzG,UAAA,gBAAAQ,EAACK,GAAA,EAAkB,QAAAV,GAAgB,cAAAL,GAA4B,MAAAD,GAAY,YAAAG,GAAwB,EAAA,CACrG;AAAA,EAAA,GACF;AAEJ;"}
|
package/dist/dialog.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.es.js","sources":["../src/components/dialog/Dialog.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\nimport type {\n DialogContentProps,\n DialogTriggerProps,\n DialogProps,\n DialogCloseProps,\n DialogTitleProps,\n DialogPortalProps,\n DialogOverlayProps,\n DialogDescriptionProps,\n} from \"@radix-ui/react-dialog\";\nimport { XMark } from \"@trsys-tech/matrix-icons\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst Dialog = DialogPrimitive.Root;\n\nconst DialogTrigger = DialogPrimitive.Trigger;\n\nconst DialogPortal = DialogPrimitive.Portal;\n\nconst DialogClose = DialogPrimitive.Close;\n\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Overlay\n ref={ref}\n className={cn(\n \"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n className,\n )}\n {...props}\n />\n));\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName;\n\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>\n>(({ className, children, ...props }, ref) => (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\n className={cn(\n \"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg\",\n className,\n )}\n {...props}\n >\n {children}\n <DialogPrimitive.Close className=\"absolute right-4 top-4 rounded-sm disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\">\n <XMark className=\"h-5 w-5\" />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n </DialogPrimitive.Content>\n </DialogPortal>\n));\nDialogContent.displayName = DialogPrimitive.Content.displayName;\n\nconst DialogHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn(\"flex flex-col space-y-1.5 text-left\", className)} {...props} />\n);\nDialogHeader.displayName = \"DialogHeader\";\n\nconst DialogFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn(\"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2\", className)} {...props} />\n);\nDialogFooter.displayName = \"DialogFooter\";\n\nconst DialogTitle = React.forwardRef<React.ElementRef<typeof DialogPrimitive.Title>, React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>>(\n ({ className, ...props }, ref) => (\n <DialogPrimitive.Title ref={ref} className={cn(\"text-lg font-semibold leading-none tracking-tight\", className)} {...props} />\n ),\n);\nDialogTitle.displayName = DialogPrimitive.Title.displayName;\n\nconst DialogDescription = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\n>(({ className, ...props }, ref) => <DialogPrimitive.Description ref={ref} className={cn(\"text-sm text-muted-foreground\", className)} {...props} />);\nDialogDescription.displayName = DialogPrimitive.Description.displayName;\n\nexport { Dialog, DialogPortal, DialogOverlay, DialogTrigger, DialogClose, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription };\nexport type {\n DialogContentProps,\n DialogTriggerProps,\n DialogProps,\n DialogCloseProps,\n DialogTitleProps,\n DialogPortalProps,\n DialogOverlayProps,\n DialogDescriptionProps,\n};\n"],"names":["Dialog","DialogPrimitive","DialogTrigger","DialogPortal","DialogClose","DialogOverlay","React","className","props","ref","jsx","cn","DialogContent","children","jsxs","XMark","DialogHeader","DialogFooter","DialogTitle","DialogDescription"],"mappings":";;;;;AAkBA,MAAMA,IAASC,EAAgB,MAEzBC,IAAgBD,EAAgB,SAEhCE,IAAeF,EAAgB,QAE/BG,IAAcH,EAAgB,OAE9BI,IAAgBC,EAAM,WAG1B,CAAC,EAAE,WAAAC,GAAW,GAAGC,
|
|
1
|
+
{"version":3,"file":"dialog.es.js","sources":["../src/components/dialog/Dialog.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\nimport type {\n DialogContentProps,\n DialogTriggerProps,\n DialogProps,\n DialogCloseProps,\n DialogTitleProps,\n DialogPortalProps,\n DialogOverlayProps,\n DialogDescriptionProps,\n} from \"@radix-ui/react-dialog\";\nimport { XMark } from \"@trsys-tech/matrix-icons\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst Dialog = DialogPrimitive.Root;\n\nconst DialogTrigger = DialogPrimitive.Trigger;\n\nconst DialogPortal = DialogPrimitive.Portal;\n\nconst DialogClose = DialogPrimitive.Close;\n\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Overlay\n ref={ref}\n className={cn(\n \"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n className,\n )}\n {...props}\n />\n));\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName;\n\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>\n>(({ className, children, ...props }, ref) => (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\n className={cn(\n \"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg\",\n className,\n )}\n {...props}\n >\n {children}\n <DialogPrimitive.Close className=\"absolute right-4 top-4 rounded-sm disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\">\n <XMark className=\"h-5 w-5\" />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n </DialogPrimitive.Content>\n </DialogPortal>\n));\nDialogContent.displayName = DialogPrimitive.Content.displayName;\n\nconst DialogHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn(\"flex flex-col space-y-1.5 text-left\", className)} {...props} />\n);\nDialogHeader.displayName = \"DialogHeader\";\n\nconst DialogFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn(\"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2\", className)} {...props} />\n);\nDialogFooter.displayName = \"DialogFooter\";\n\nconst DialogTitle = React.forwardRef<React.ElementRef<typeof DialogPrimitive.Title>, React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>>(\n ({ className, ...props }, ref) => (\n <DialogPrimitive.Title ref={ref} className={cn(\"text-lg font-semibold leading-none tracking-tight\", className)} {...props} />\n ),\n);\nDialogTitle.displayName = DialogPrimitive.Title.displayName;\n\nconst DialogDescription = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\n>(({ className, ...props }, ref) => <DialogPrimitive.Description ref={ref} className={cn(\"text-sm text-muted-foreground\", className)} {...props} />);\nDialogDescription.displayName = DialogPrimitive.Description.displayName;\n\nexport { Dialog, DialogPortal, DialogOverlay, DialogTrigger, DialogClose, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription };\nexport type {\n DialogContentProps,\n DialogTriggerProps,\n DialogProps,\n DialogCloseProps,\n DialogTitleProps,\n DialogPortalProps,\n DialogOverlayProps,\n DialogDescriptionProps,\n};\n"],"names":["Dialog","DialogPrimitive","DialogTrigger","DialogPortal","DialogClose","DialogOverlay","React","className","props","ref","jsx","cn","DialogContent","children","jsxs","XMark","DialogHeader","DialogFooter","DialogTitle","DialogDescription"],"mappings":";;;;;AAkBA,MAAMA,IAASC,EAAgB,MAEzBC,IAAgBD,EAAgB,SAEhCE,IAAeF,EAAgB,QAE/BG,IAAcH,EAAgB,OAE9BI,IAAgBC,EAAM,WAG1B,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAC;AAAA,EAACT,EAAgB;AAAA,EAAhB;AAAA,IACC,KAAAQ;AAAA,IACA,WAAWE;AAAA,MACT;AAAA,MACAJ;AAAA,IAAA;AAAA,IAED,GAAGC;AAAA,EAAA;AACN,CACD;AACDH,EAAc,cAAcJ,EAAgB,QAAQ;AAEpD,MAAMW,IAAgBN,EAAM,WAG1B,CAAC,EAAE,WAAAC,GAAW,UAAAM,GAAU,GAAGL,EAAA,GAASC,MACpC,gBAAAK,EAACX,GAAA,EACC,UAAA;AAAA,EAAA,gBAAAO,EAACL,GAAA,EAAc;AAAA,EACf,gBAAAS;AAAA,IAACb,EAAgB;AAAA,IAAhB;AAAA,MACC,KAAAQ;AAAA,MACA,WAAWE;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,MAEH,UAAA;AAAA,QAAAK;AAAA,QACD,gBAAAC,EAACb,EAAgB,OAAhB,EAAsB,WAAU,sIAC/B,UAAA;AAAA,UAAA,gBAAAS,EAACK,GAAA,EAAM,WAAU,UAAA,CAAU;AAAA,UAC3B,gBAAAL,EAAC,QAAA,EAAK,WAAU,WAAU,UAAA,QAAA,CAAK;AAAA,QAAA,EAAA,CACjC;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AACF,GACF,CACD;AACDE,EAAc,cAAcX,EAAgB,QAAQ;AAEpD,MAAMe,IAAe,CAAC,EAAE,WAAAT,GAAW,GAAGC,EAAA,MACpC,gBAAAE,EAAC,OAAA,EAAI,WAAWC,EAAG,uCAAuCJ,CAAS,GAAI,GAAGC,EAAA,CAAO;AAEnFQ,EAAa,cAAc;AAE3B,MAAMC,IAAe,CAAC,EAAE,WAAAV,GAAW,GAAGC,EAAA,MACpC,gBAAAE,EAAC,OAAA,EAAI,WAAWC,EAAG,iEAAiEJ,CAAS,GAAI,GAAGC,EAAA,CAAO;AAE7GS,EAAa,cAAc;AAE3B,MAAMC,IAAcZ,EAAM;AAAA,EACxB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MACxB,gBAAAC,EAACT,EAAgB,OAAhB,EAAsB,KAAAQ,GAAU,WAAWE,EAAG,qDAAqDJ,CAAS,GAAI,GAAGC,EAAA,CAAO;AAE/H;AACAU,EAAY,cAAcjB,EAAgB,MAAM;AAEhD,MAAMkB,IAAoBb,EAAM,WAG9B,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAAQ,gBAAAC,EAACT,EAAgB,aAAhB,EAA4B,KAAAQ,GAAU,WAAWE,EAAG,iCAAiCJ,CAAS,GAAI,GAAGC,GAAO,CAAE;AACnJW,EAAkB,cAAclB,EAAgB,YAAY;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"differenceincalendardays.es.js","sources":["../node_modules/date-fns/differenceInCalendarDays.js"],"sourcesContent":["import { getTimezoneOffsetInMilliseconds } from \"./_lib/getTimezoneOffsetInMilliseconds.js\";\nimport { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { millisecondsInDay } from \"./constants.js\";\nimport { startOfDay } from \"./startOfDay.js\";\n\n/**\n * The {@link differenceInCalendarDays} function options.\n */\n\n/**\n * @name differenceInCalendarDays\n * @category Day Helpers\n * @summary Get the number of calendar days between the given dates.\n *\n * @description\n * Get the number of calendar days between the given dates. This means that the times are removed\n * from the dates and then the difference in days is calculated.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - The options object\n *\n * @returns The number of calendar days\n *\n * @example\n * // How many calendar days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * const result = differenceInCalendarDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 366\n * // How many calendar days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * const result = differenceInCalendarDays(\n * new Date(2011, 6, 3, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 1\n */\nexport function differenceInCalendarDays(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n\n const laterStartOfDay = startOfDay(laterDate_);\n const earlierStartOfDay = startOfDay(earlierDate_);\n\n const laterTimestamp =\n +laterStartOfDay - getTimezoneOffsetInMilliseconds(laterStartOfDay);\n const earlierTimestamp =\n +earlierStartOfDay - getTimezoneOffsetInMilliseconds(earlierStartOfDay);\n\n // Round the number of days to the nearest integer because the number of\n // milliseconds in a day is not constant (e.g. it's different in the week of\n // the daylight saving time clock shift).\n return Math.round((laterTimestamp - earlierTimestamp) / millisecondsInDay);\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarDays;\n"],"names":["differenceInCalendarDays","laterDate","earlierDate","options","laterDate_","earlierDate_","normalizeDates","laterStartOfDay","startOfDay","earlierStartOfDay","laterTimestamp","getTimezoneOffsetInMilliseconds","earlierTimestamp","millisecondsInDay"],"mappings":";;;;AAwCO,SAASA,EAAyBC,GAAWC,GAAaC,GAAS;AACxE,QAAM,CAACC,GAAYC,CAAY,IAAIC;AAAA,IACjCH,GAAS;AAAA,IACTF;AAAA,IACAC;AAAA,
|
|
1
|
+
{"version":3,"file":"differenceincalendardays.es.js","sources":["../node_modules/date-fns/differenceInCalendarDays.js"],"sourcesContent":["import { getTimezoneOffsetInMilliseconds } from \"./_lib/getTimezoneOffsetInMilliseconds.js\";\nimport { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { millisecondsInDay } from \"./constants.js\";\nimport { startOfDay } from \"./startOfDay.js\";\n\n/**\n * The {@link differenceInCalendarDays} function options.\n */\n\n/**\n * @name differenceInCalendarDays\n * @category Day Helpers\n * @summary Get the number of calendar days between the given dates.\n *\n * @description\n * Get the number of calendar days between the given dates. This means that the times are removed\n * from the dates and then the difference in days is calculated.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - The options object\n *\n * @returns The number of calendar days\n *\n * @example\n * // How many calendar days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * const result = differenceInCalendarDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 366\n * // How many calendar days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * const result = differenceInCalendarDays(\n * new Date(2011, 6, 3, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 1\n */\nexport function differenceInCalendarDays(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n\n const laterStartOfDay = startOfDay(laterDate_);\n const earlierStartOfDay = startOfDay(earlierDate_);\n\n const laterTimestamp =\n +laterStartOfDay - getTimezoneOffsetInMilliseconds(laterStartOfDay);\n const earlierTimestamp =\n +earlierStartOfDay - getTimezoneOffsetInMilliseconds(earlierStartOfDay);\n\n // Round the number of days to the nearest integer because the number of\n // milliseconds in a day is not constant (e.g. it's different in the week of\n // the daylight saving time clock shift).\n return Math.round((laterTimestamp - earlierTimestamp) / millisecondsInDay);\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarDays;\n"],"names":["differenceInCalendarDays","laterDate","earlierDate","options","laterDate_","earlierDate_","normalizeDates","laterStartOfDay","startOfDay","earlierStartOfDay","laterTimestamp","getTimezoneOffsetInMilliseconds","earlierTimestamp","millisecondsInDay"],"mappings":";;;;AAwCO,SAASA,EAAyBC,GAAWC,GAAaC,GAAS;AACxE,QAAM,CAACC,GAAYC,CAAY,IAAIC;AAAA,IACjCH,GAAS;AAAA,IACTF;AAAA,IACAC;AAAA,EACJ,GAEQK,IAAkBC,EAAWJ,CAAU,GACvCK,IAAoBD,EAAWH,CAAY,GAE3CK,IACJ,CAACH,IAAkBI,EAAgCJ,CAAe,GAC9DK,IACJ,CAACH,IAAoBE,EAAgCF,CAAiB;AAKxE,SAAO,KAAK,OAAOC,IAAiBE,KAAoBC,CAAiB;AAC3E;","x_google_ignoreList":[0]}
|
package/dist/drawer.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawer.es.js","sources":["../src/components/drawer/Drawer.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { Slot } from \"@radix-ui/react-slot\";\r\nimport { ChevronsRight } from \"@trsys-tech/matrix-icons\";\r\nimport { createContextScope, Scope } from \"@radix-ui/react-context\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Modal } from \"../modal/Modal\";\r\nimport { IconButton } from \"../icon-botton/IconButton\";\r\nimport { useIsMobile } from \"../../lib/hooks/use-mobile\";\r\n\r\ntype ScopedProps<P> = P & { __scopeDrawer?: Scope };\r\n\r\nconst DRAWER_NAME = \"Drawer\";\r\n\r\nconst [createDrawerContext] = createContextScope(DRAWER_NAME);\r\n\r\ninterface DrawerProps extends React.HTMLAttributes<HTMLDivElement> {\r\n open: boolean;\r\n onClose?: () => void;\r\n anchor?: \"left\" | \"right\";\r\n width?: number;\r\n children?: React.ReactNode;\r\n asChild?: boolean;\r\n mobileBreakpoint?: number;\r\n}\r\n\r\ntype DrawerContextValue = {\r\n open: boolean;\r\n onClose?: () => void;\r\n anchor: \"left\" | \"right\";\r\n width: number;\r\n isMobile: boolean;\r\n};\r\n\r\nconst [DrawerProvider, useDrawerProvider] = createDrawerContext<DrawerContextValue>(DRAWER_NAME);\r\n\r\n/**\r\n * Drawer component\r\n * This is the wrapper component for Drawer content and main components\r\n * @param {React.HTMLAttributes<HTMLDivElement>} props\r\n * @param {boolean} open - Drawer open state\r\n * @param {() => void} onClose - Drawer close handler\r\n * @param {\"left\" | \"right\"} anchor - Drawer anchor position\r\n * @param {number} width - Drawer width\r\n * @param {React.ReactNode} children - Drawer children\r\n * @param {boolean} asChild - Render as child component\r\n * @returns {React.ReactElement}\r\n */\r\nconst Drawer = React.forwardRef<React.ElementRef<\"div\">, ScopedProps<DrawerProps>>((props, ref) => {\r\n const { asChild, anchor = \"right\", children, open, width = 240, className, onClose, __scopeDrawer, ...restProps } = props;\r\n const Comp = asChild ? Slot : \"div\";\r\n\r\n const isMobile = useIsMobile();\r\n\r\n return (\r\n <Comp ref={ref} className={cn(\"flex\", className)} {...restProps}>\r\n <DrawerProvider anchor={anchor} onClose={onClose} open={open} width={width} isMobile={isMobile} scope={__scopeDrawer}>\r\n {children}\r\n </DrawerProvider>\r\n </Comp>\r\n );\r\n});\r\n\r\nDrawer.displayName = DRAWER_NAME;\r\n\r\ninterface DrawerMainProps extends React.HTMLAttributes<HTMLDivElement> {\r\n asChild: boolean;\r\n}\r\n\r\nconst DRAWER_MAIN_NAME = \"DrawerMain\";\r\n\r\n/**\r\n * DrawerMain component\r\n * This is the main container for the tree that should be shown always\r\n * @param {React.HTMLAttributes<HTMLDivElement>} props\r\n * @param {boolean} asChild - Render as child component\r\n * @property {React.ReactNode} children - DrawerMain children\r\n * @property {string} className - DrawerMain class name\r\n * @property {React.CSSProperties} style - DrawerMain style\r\n * @property {ScopedProps<DrawerMainProps>} __scopeDrawer - DrawerMain scope\r\n * @property {React.Ref<HTMLDivElement>} ref - DrawerMain ref\r\n * @property {React.HTMLAttributes<HTMLDivElement>} props - DrawerMain props\r\n * @returns {React.ReactElement}\r\n */\r\nconst DrawerMain = React.forwardRef<HTMLDivElement, ScopedProps<DrawerMainProps>>(\r\n ({ asChild, children, className, style, __scopeDrawer, ...props }, ref) => {\r\n const Comp = asChild ? Slot : \"div\";\r\n const { anchor, open, width, isMobile } = useDrawerProvider(DRAWER_MAIN_NAME, __scopeDrawer);\r\n\r\n const marginStyle = React.useMemo(() => {\r\n if (isMobile) {\r\n return {};\r\n }\r\n if (anchor === \"left\") {\r\n return { marginInlineStart: open ? width : 0 };\r\n } else {\r\n return { marginInlineEnd: open ? width : 0 };\r\n }\r\n }, [anchor, open, width, isMobile]);\r\n\r\n return (\r\n <Comp ref={ref} className={cn(\"flex-grow overflow-hidden\", className)} style={{ ...style, ...marginStyle }} {...props}>\r\n {children}\r\n </Comp>\r\n );\r\n },\r\n);\r\n\r\nDrawerMain.displayName = DRAWER_MAIN_NAME;\r\n\r\ntype DrawerContentProps = {\r\n children?: React.ReactNode;\r\n title: React.ReactNode;\r\n};\r\n\r\nconst DRAWER_CONTENT_NAME = \"DrawerContent\";\r\n\r\n/**\r\n * DrawerContent component\r\n * This is the content container for the tree that should be shown when the drawer is open\r\n * @param {React.HTMLAttributes<HTMLDivElement>} props\r\n * @param {React.ReactNode} children - DrawerContent children\r\n * @param {React.ReactNode} title - DrawerContent title\r\n * @property {ScopedProps<DrawerContentProps>} __scopeDrawer - DrawerContent scope\r\n * @property {React.Ref<HTMLDivElement>} ref - DrawerContent ref\r\n * @property {React.HTMLAttributes<HTMLDivElement>} props - DrawerContent props\r\n * @returns {React.ReactElement}\r\n */\r\nconst DrawerContent = React.forwardRef<HTMLDivElement, ScopedProps<DrawerContentProps>>(({ children, title, __scopeDrawer }, ref) => {\r\n const { anchor, open, width, onClose, isMobile } = useDrawerProvider(DRAWER_CONTENT_NAME, __scopeDrawer);\r\n\r\n return (\r\n <>\r\n {isMobile ? (\r\n <Modal title={title} open={open} onOpenChange={onClose} ref={ref} fullScreen>\r\n {children}\r\n </Modal>\r\n ) : (\r\n <div className={cn(\"hidden md:block overflow-hidden\")} style={{ width }} ref={ref}>\r\n <div\r\n className={cn(\r\n \"overflow-y-auto flex flex-col h-full top-0 z-[120] bg-background transition-all border-gray-200\",\r\n open ? \"\" : anchor === \"left\" ? \"-translate-x-full rtl:translate-x-full invisible\" : \"translate-x-full rtl:-translate-x-full invisible\",\r\n anchor === \"left\" ? \"border-r\" : \"border-l\",\r\n )}\r\n >\r\n <div\r\n className={cn(\r\n \"h-9 flex items-center gap-2 p-2 bg-background w-full sticky top-0 border-b border-gray-200\",\r\n anchor === \"right\" ? \"justify-start rtl:justify-end\" : \"justify-end rtl:justify-start\",\r\n )}\r\n >\r\n <IconButton onClick={onClose} className=\"w-5 h-5 p-0\">\r\n <ChevronsRight className={cn(\"w-5 h-5\", anchor === \"right\" ? \"rtl:-scale-100\" : \"-scale-100 rtl:scale-100\")} />\r\n </IconButton>\r\n {typeof title === \"string\" || typeof title === \"number\" ? <h2 className=\"text-lg font-bold text-text\">{title}</h2> : title}\r\n </div>\r\n {children}\r\n </div>\r\n </div>\r\n )}\r\n </>\r\n );\r\n});\r\n\r\nDrawerContent.displayName = DRAWER_CONTENT_NAME;\r\n\r\nconst Root = Drawer;\r\nconst Main = DrawerMain;\r\nconst Content = DrawerContent;\r\n\r\nexport { Drawer, DrawerMain, DrawerContent, Root, Main, Content };\r\nexport type { DrawerContentProps, DrawerMainProps, DrawerProps };\r\n"],"names":["DRAWER_NAME","createDrawerContext","createContextScope","DrawerProvider","useDrawerProvider","Drawer","React","props","ref","asChild","anchor","children","open","width","className","onClose","__scopeDrawer","restProps","Comp","Slot","isMobile","useIsMobile","jsx","cn","DRAWER_MAIN_NAME","DrawerMain","style","marginStyle","DRAWER_CONTENT_NAME","DrawerContent","title","Fragment","Modal","jsxs","IconButton","ChevronsRight"],"mappings":";;;;;;;;;AAcA,MAAMA,IAAc,UAEd,CAACC,CAAmB,IAAIC,EAAmBF,CAAW,GAoBtD,CAACG,GAAgBC,CAAiB,IAAIH,EAAwCD,CAAW,GAczFK,IAASC,EAAM,WAA8D,CAACC,GAAOC,MAAQ;AACjG,QAAM,EAAE,SAAAC,GAAS,QAAAC,IAAS,SAAS,UAAAC,GAAU,MAAAC,GAAM,OAAAC,IAAQ,KAAK,WAAAC,GAAW,SAAAC,GAAS,eAAAC,GAAe,GAAGC,
|
|
1
|
+
{"version":3,"file":"drawer.es.js","sources":["../src/components/drawer/Drawer.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { Slot } from \"@radix-ui/react-slot\";\r\nimport { ChevronsRight } from \"@trsys-tech/matrix-icons\";\r\nimport { createContextScope, Scope } from \"@radix-ui/react-context\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Modal } from \"../modal/Modal\";\r\nimport { IconButton } from \"../icon-botton/IconButton\";\r\nimport { useIsMobile } from \"../../lib/hooks/use-mobile\";\r\n\r\ntype ScopedProps<P> = P & { __scopeDrawer?: Scope };\r\n\r\nconst DRAWER_NAME = \"Drawer\";\r\n\r\nconst [createDrawerContext] = createContextScope(DRAWER_NAME);\r\n\r\ninterface DrawerProps extends React.HTMLAttributes<HTMLDivElement> {\r\n open: boolean;\r\n onClose?: () => void;\r\n anchor?: \"left\" | \"right\";\r\n width?: number;\r\n children?: React.ReactNode;\r\n asChild?: boolean;\r\n mobileBreakpoint?: number;\r\n}\r\n\r\ntype DrawerContextValue = {\r\n open: boolean;\r\n onClose?: () => void;\r\n anchor: \"left\" | \"right\";\r\n width: number;\r\n isMobile: boolean;\r\n};\r\n\r\nconst [DrawerProvider, useDrawerProvider] = createDrawerContext<DrawerContextValue>(DRAWER_NAME);\r\n\r\n/**\r\n * Drawer component\r\n * This is the wrapper component for Drawer content and main components\r\n * @param {React.HTMLAttributes<HTMLDivElement>} props\r\n * @param {boolean} open - Drawer open state\r\n * @param {() => void} onClose - Drawer close handler\r\n * @param {\"left\" | \"right\"} anchor - Drawer anchor position\r\n * @param {number} width - Drawer width\r\n * @param {React.ReactNode} children - Drawer children\r\n * @param {boolean} asChild - Render as child component\r\n * @returns {React.ReactElement}\r\n */\r\nconst Drawer = React.forwardRef<React.ElementRef<\"div\">, ScopedProps<DrawerProps>>((props, ref) => {\r\n const { asChild, anchor = \"right\", children, open, width = 240, className, onClose, __scopeDrawer, ...restProps } = props;\r\n const Comp = asChild ? Slot : \"div\";\r\n\r\n const isMobile = useIsMobile();\r\n\r\n return (\r\n <Comp ref={ref} className={cn(\"flex\", className)} {...restProps}>\r\n <DrawerProvider anchor={anchor} onClose={onClose} open={open} width={width} isMobile={isMobile} scope={__scopeDrawer}>\r\n {children}\r\n </DrawerProvider>\r\n </Comp>\r\n );\r\n});\r\n\r\nDrawer.displayName = DRAWER_NAME;\r\n\r\ninterface DrawerMainProps extends React.HTMLAttributes<HTMLDivElement> {\r\n asChild: boolean;\r\n}\r\n\r\nconst DRAWER_MAIN_NAME = \"DrawerMain\";\r\n\r\n/**\r\n * DrawerMain component\r\n * This is the main container for the tree that should be shown always\r\n * @param {React.HTMLAttributes<HTMLDivElement>} props\r\n * @param {boolean} asChild - Render as child component\r\n * @property {React.ReactNode} children - DrawerMain children\r\n * @property {string} className - DrawerMain class name\r\n * @property {React.CSSProperties} style - DrawerMain style\r\n * @property {ScopedProps<DrawerMainProps>} __scopeDrawer - DrawerMain scope\r\n * @property {React.Ref<HTMLDivElement>} ref - DrawerMain ref\r\n * @property {React.HTMLAttributes<HTMLDivElement>} props - DrawerMain props\r\n * @returns {React.ReactElement}\r\n */\r\nconst DrawerMain = React.forwardRef<HTMLDivElement, ScopedProps<DrawerMainProps>>(\r\n ({ asChild, children, className, style, __scopeDrawer, ...props }, ref) => {\r\n const Comp = asChild ? Slot : \"div\";\r\n const { anchor, open, width, isMobile } = useDrawerProvider(DRAWER_MAIN_NAME, __scopeDrawer);\r\n\r\n const marginStyle = React.useMemo(() => {\r\n if (isMobile) {\r\n return {};\r\n }\r\n if (anchor === \"left\") {\r\n return { marginInlineStart: open ? width : 0 };\r\n } else {\r\n return { marginInlineEnd: open ? width : 0 };\r\n }\r\n }, [anchor, open, width, isMobile]);\r\n\r\n return (\r\n <Comp ref={ref} className={cn(\"flex-grow overflow-hidden\", className)} style={{ ...style, ...marginStyle }} {...props}>\r\n {children}\r\n </Comp>\r\n );\r\n },\r\n);\r\n\r\nDrawerMain.displayName = DRAWER_MAIN_NAME;\r\n\r\ntype DrawerContentProps = {\r\n children?: React.ReactNode;\r\n title: React.ReactNode;\r\n};\r\n\r\nconst DRAWER_CONTENT_NAME = \"DrawerContent\";\r\n\r\n/**\r\n * DrawerContent component\r\n * This is the content container for the tree that should be shown when the drawer is open\r\n * @param {React.HTMLAttributes<HTMLDivElement>} props\r\n * @param {React.ReactNode} children - DrawerContent children\r\n * @param {React.ReactNode} title - DrawerContent title\r\n * @property {ScopedProps<DrawerContentProps>} __scopeDrawer - DrawerContent scope\r\n * @property {React.Ref<HTMLDivElement>} ref - DrawerContent ref\r\n * @property {React.HTMLAttributes<HTMLDivElement>} props - DrawerContent props\r\n * @returns {React.ReactElement}\r\n */\r\nconst DrawerContent = React.forwardRef<HTMLDivElement, ScopedProps<DrawerContentProps>>(({ children, title, __scopeDrawer }, ref) => {\r\n const { anchor, open, width, onClose, isMobile } = useDrawerProvider(DRAWER_CONTENT_NAME, __scopeDrawer);\r\n\r\n return (\r\n <>\r\n {isMobile ? (\r\n <Modal title={title} open={open} onOpenChange={onClose} ref={ref} fullScreen>\r\n {children}\r\n </Modal>\r\n ) : (\r\n <div className={cn(\"hidden md:block overflow-hidden\")} style={{ width }} ref={ref}>\r\n <div\r\n className={cn(\r\n \"overflow-y-auto flex flex-col h-full top-0 z-[120] bg-background transition-all border-gray-200\",\r\n open ? \"\" : anchor === \"left\" ? \"-translate-x-full rtl:translate-x-full invisible\" : \"translate-x-full rtl:-translate-x-full invisible\",\r\n anchor === \"left\" ? \"border-r\" : \"border-l\",\r\n )}\r\n >\r\n <div\r\n className={cn(\r\n \"h-9 flex items-center gap-2 p-2 bg-background w-full sticky top-0 border-b border-gray-200\",\r\n anchor === \"right\" ? \"justify-start rtl:justify-end\" : \"justify-end rtl:justify-start\",\r\n )}\r\n >\r\n <IconButton onClick={onClose} className=\"w-5 h-5 p-0\">\r\n <ChevronsRight className={cn(\"w-5 h-5\", anchor === \"right\" ? \"rtl:-scale-100\" : \"-scale-100 rtl:scale-100\")} />\r\n </IconButton>\r\n {typeof title === \"string\" || typeof title === \"number\" ? <h2 className=\"text-lg font-bold text-text\">{title}</h2> : title}\r\n </div>\r\n {children}\r\n </div>\r\n </div>\r\n )}\r\n </>\r\n );\r\n});\r\n\r\nDrawerContent.displayName = DRAWER_CONTENT_NAME;\r\n\r\nconst Root = Drawer;\r\nconst Main = DrawerMain;\r\nconst Content = DrawerContent;\r\n\r\nexport { Drawer, DrawerMain, DrawerContent, Root, Main, Content };\r\nexport type { DrawerContentProps, DrawerMainProps, DrawerProps };\r\n"],"names":["DRAWER_NAME","createDrawerContext","createContextScope","DrawerProvider","useDrawerProvider","Drawer","React","props","ref","asChild","anchor","children","open","width","className","onClose","__scopeDrawer","restProps","Comp","Slot","isMobile","useIsMobile","jsx","cn","DRAWER_MAIN_NAME","DrawerMain","style","marginStyle","DRAWER_CONTENT_NAME","DrawerContent","title","Fragment","Modal","jsxs","IconButton","ChevronsRight"],"mappings":"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"}
|
package/dist/en-us.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en-us.es.js","sources":["../node_modules/date-fns/locale/en-US.js"],"sourcesContent":["import { formatDistance } from \"./en-US/_lib/formatDistance.js\";\nimport { formatLong } from \"./en-US/_lib/formatLong.js\";\nimport { formatRelative } from \"./en-US/_lib/formatRelative.js\";\nimport { localize } from \"./en-US/_lib/localize.js\";\nimport { match } from \"./en-US/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp)\n * @author Lesha Koss [@leshakoss](https://github.com/leshakoss)\n */\nexport const enUS = {\n code: \"en-US\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default enUS;\n"],"names":["enUS","formatDistance","formatLong","formatRelative","localize","match"],"mappings":";;;;;AAcY,MAACA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,gBAAgBC;AAAA,EAChB,YAAYC;AAAA,EACZ,gBAAgBC;AAAA,EAChB,UAAUC;AAAA,EACV,OAAOC;AAAA,EACP,SAAS;AAAA,IACP,cAAc;AAAA,IACd,uBAAuB;AAAA,
|
|
1
|
+
{"version":3,"file":"en-us.es.js","sources":["../node_modules/date-fns/locale/en-US.js"],"sourcesContent":["import { formatDistance } from \"./en-US/_lib/formatDistance.js\";\nimport { formatLong } from \"./en-US/_lib/formatLong.js\";\nimport { formatRelative } from \"./en-US/_lib/formatRelative.js\";\nimport { localize } from \"./en-US/_lib/localize.js\";\nimport { match } from \"./en-US/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp)\n * @author Lesha Koss [@leshakoss](https://github.com/leshakoss)\n */\nexport const enUS = {\n code: \"en-US\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default enUS;\n"],"names":["enUS","formatDistance","formatLong","formatRelative","localize","match"],"mappings":";;;;;AAcY,MAACA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,gBAAgBC;AAAA,EAChB,YAAYC;AAAA,EACZ,gBAAgBC;AAAA,EAChB,UAAUC;AAAA,EACV,OAAOC;AAAA,EACP,SAAS;AAAA,IACP,cAAc;AAAA,IACd,uBAAuB;AAAA,EAC3B;AACA;","x_google_ignoreList":[0]}
|