@oneplatformdev/ui 0.1.99-beta.273 → 0.1.99-beta.274
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/Combobox/ComboboxRenderTrigger.js +23 -23
- package/Combobox/ComboboxRenderTrigger.js.map +1 -1
- package/DatePicker/DatePicker.d.ts.map +1 -1
- package/DatePicker/DatePicker.js +32 -30
- package/DatePicker/DatePicker.js.map +1 -1
- package/Select/SelectRoot.js +6 -6
- package/Select/SelectRoot.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { jsx as r, jsxs as p, Fragment as
|
|
2
|
-
import { DEFAULT_COMBOBOX_TYPE as
|
|
3
|
-
import { cn as
|
|
1
|
+
import { jsx as r, jsxs as p, Fragment as h } from "react/jsx-runtime";
|
|
2
|
+
import { DEFAULT_COMBOBOX_TYPE as g } from "./Combobox.types.js";
|
|
3
|
+
import { cn as u } from "@oneplatformdev/utils";
|
|
4
4
|
import { XIcon as f, ChevronDown as v } from "lucide-react";
|
|
5
5
|
import { useMemo as w } from "react";
|
|
6
6
|
import { PopoverTrigger as x } from "../Popover/Popover.js";
|
|
7
7
|
import { Button as y } from "../Button/Button.js";
|
|
8
8
|
import { LoadingMask as C } from "../LoadingMask/LoadingMask.js";
|
|
9
|
-
import { ScrollArea as
|
|
10
|
-
const
|
|
9
|
+
import { ScrollArea as F } from "../ScrollArea/ScrollArea.js";
|
|
10
|
+
const b = (o) => {
|
|
11
11
|
const { value: n, flattenOptions: a = [], selectedOptions: t = /* @__PURE__ */ new Map() } = o;
|
|
12
12
|
return w(() => {
|
|
13
13
|
if (!n) return [];
|
|
14
|
-
const c = Array.from(t.values()), l = Array.isArray(n) ? n : [n],
|
|
15
|
-
return
|
|
14
|
+
const c = Array.from(t.values()), l = Array.isArray(n) ? n : [n], d = [...a.filter((i) => l.find((s) => String(s).toLowerCase() === String(i.value).toLowerCase())), ...c].reduce((i, s) => (!s || i.has(s.value) || i.set(s.value, { ...s, label: s.label || s.value }), i), /* @__PURE__ */ new Map());
|
|
15
|
+
return d.size ? Array.from(d.values()) : l.map((i) => ({ value: i, label: String(i) }));
|
|
16
16
|
}, [n, a, t]);
|
|
17
|
-
},
|
|
18
|
-
const { type: n =
|
|
17
|
+
}, N = (o) => {
|
|
18
|
+
const { type: n = g, placeholder: a, onSelect: t, open: c } = o, l = b(o);
|
|
19
19
|
return l.length ? n === "single" ? /* @__PURE__ */ r("span", { className: "truncate overflow-hidden whitespace-nowrap break-words line-clamp-1 pr-8", children: l[0].label }) : n === "multi" ? /* @__PURE__ */ r(
|
|
20
|
-
|
|
20
|
+
F,
|
|
21
21
|
{
|
|
22
|
-
className:
|
|
22
|
+
className: u(
|
|
23
23
|
"w-full h-auto min-h-5 max-h-20.25",
|
|
24
24
|
"overflow-y-auto overflow-x-hidden"
|
|
25
25
|
),
|
|
@@ -31,7 +31,7 @@ const g = (o) => {
|
|
|
31
31
|
children: /* @__PURE__ */ r("div", { className: "p-0 gap-1 flex flex-wrap w-full pr-11", children: l.map((e) => e ? /* @__PURE__ */ p(
|
|
32
32
|
"div",
|
|
33
33
|
{
|
|
34
|
-
className:
|
|
34
|
+
className: u(
|
|
35
35
|
"flex items-center justify-center",
|
|
36
36
|
"py-1 px-2 min-h-5 w-fit gap-1",
|
|
37
37
|
"bg-[#9368FF] rounded-sm",
|
|
@@ -39,8 +39,8 @@ const g = (o) => {
|
|
|
39
39
|
"cursor-pointer",
|
|
40
40
|
"truncate"
|
|
41
41
|
),
|
|
42
|
-
onClick: (
|
|
43
|
-
c && (
|
|
42
|
+
onClick: (d) => {
|
|
43
|
+
c && (d.preventDefault(), d.stopPropagation(), t?.(e));
|
|
44
44
|
},
|
|
45
45
|
children: [
|
|
46
46
|
/* @__PURE__ */ r("span", { className: "whitespace-pre-wrap wrap-break-word line-clamp-1", children: e.label }),
|
|
@@ -57,7 +57,7 @@ const g = (o) => {
|
|
|
57
57
|
"div",
|
|
58
58
|
{
|
|
59
59
|
...l,
|
|
60
|
-
className:
|
|
60
|
+
className: u(
|
|
61
61
|
"absolute top-1/2 -translate-y-1/2 right-1",
|
|
62
62
|
"flex items-center justify-center",
|
|
63
63
|
"w-10 h-10 [&_svg]:size-5!",
|
|
@@ -71,8 +71,8 @@ const g = (o) => {
|
|
|
71
71
|
children: n
|
|
72
72
|
}
|
|
73
73
|
);
|
|
74
|
-
},
|
|
75
|
-
const { open: n, onClearSelections: a } = o, t =
|
|
74
|
+
}, k = (o) => {
|
|
75
|
+
const { open: n, onClearSelections: a } = o, t = b(o);
|
|
76
76
|
return n ? t.length ? /* @__PURE__ */ r(m, { onClick: () => a?.(), children: /* @__PURE__ */ r(f, {}) }) : null : /* @__PURE__ */ r(m, { prevented: !1, children: /* @__PURE__ */ r(v, {}) });
|
|
77
77
|
}, E = (o) => {
|
|
78
78
|
const {
|
|
@@ -90,13 +90,13 @@ const g = (o) => {
|
|
|
90
90
|
color: "secondary",
|
|
91
91
|
role: "combobox",
|
|
92
92
|
"aria-expanded": a,
|
|
93
|
-
className:
|
|
93
|
+
className: u(
|
|
94
94
|
"relative w-full justify-between bg-transparent",
|
|
95
95
|
!e && "font-normal text-sm",
|
|
96
96
|
"border border-border",
|
|
97
|
-
a && "border-1 outline-hidden ring-
|
|
97
|
+
a && "border-1 border-[#9368FF] outline-hidden ring-0 hover:border-[#9368FF] hover:bg-transparent",
|
|
98
98
|
n === "multi" && "pr-0",
|
|
99
|
-
"focus-visible:outline-hidden focus-visible:ring-
|
|
99
|
+
"focus-visible:outline-hidden focus-visible:ring-0 focus-visible:border-[#9368FF]",
|
|
100
100
|
e && "p-0",
|
|
101
101
|
e && a && "p-0 border-1 ring-0 ring-transparent"
|
|
102
102
|
),
|
|
@@ -104,9 +104,9 @@ const g = (o) => {
|
|
|
104
104
|
children: [
|
|
105
105
|
t && /* @__PURE__ */ r(C, { fullWidth: !0 }),
|
|
106
106
|
!t && e && e(c),
|
|
107
|
-
!t && !e && /* @__PURE__ */ p(
|
|
108
|
-
/* @__PURE__ */ r(
|
|
109
|
-
/* @__PURE__ */ r(
|
|
107
|
+
!t && !e && /* @__PURE__ */ p(h, { children: [
|
|
108
|
+
/* @__PURE__ */ r(N, { ...o }),
|
|
109
|
+
/* @__PURE__ */ r(k, { ...o })
|
|
110
110
|
] })
|
|
111
111
|
]
|
|
112
112
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxRenderTrigger.js","sources":["../../src/Combobox/ComboboxRenderTrigger.tsx"],"sourcesContent":["import {\r\n ComboboxCallbackStateParamsRenderHandler,\r\n ComboboxCallbackStateParamsUnion,\r\n ComboboxOption,\r\n ComboboxProps, ComboboxSelectedType,\r\n DEFAULT_COMBOBOX_TYPE\r\n} from \"./Combobox.types\";\r\nimport { Button } from \"../Button\";\r\nimport { cn } from \"@oneplatformdev/utils\";\r\nimport { LoadingMask } from \"../LoadingMask\";\r\nimport { ChevronDown, XIcon } from \"lucide-react\";\r\nimport { PopoverTrigger } from \"../Popover\";\r\nimport { HTMLAttributes, useMemo } from \"react\";\r\nimport { ScrollArea } from \"../ScrollArea\";\r\n\r\ntype ComboboxRenderTriggerProps<Data extends object = object> = {\r\n type: ComboboxSelectedType,\r\n value: ComboboxProps<Data, 'single'>['value'] | ComboboxProps<Data, 'multi'>['value'];\r\n open: boolean;\r\n initialLoading: boolean;\r\n flattenOptions: ComboboxOption<Data>[];\r\n selectedOptions?: Map<ComboboxOption<Data>['value'], ComboboxOption<Data>>;\r\n onSelect?: (option: ComboboxOption<Data>) => void;\r\n onClearSelections?: () => void;\r\n\r\n callbackStateParams: ComboboxCallbackStateParamsUnion<Data>;\r\n renderTrigger?: ComboboxCallbackStateParamsRenderHandler<Data>;\r\n\r\n placeholder?: string;\r\n disabled?: boolean;\r\n}\r\n\r\nconst useValues = <Data extends object>(\r\n props: ComboboxRenderTriggerProps<Data>\r\n): ComboboxOption<Data>[] => {\r\n const { value, flattenOptions = [], selectedOptions = new Map() } = props;\r\n return useMemo(() => {\r\n if (!value) return [];\r\n const selectedOption = Array.from(selectedOptions.values());\r\n const vls = Array.isArray(value) ? value : [ value ];\r\n const flattenedOptionValues = flattenOptions.filter(o => {\r\n return vls.find(v => String(v).toLowerCase() === String(o.value).toLowerCase())\r\n });\r\n\r\n const labels = [ ...flattenedOptionValues, ...selectedOption ]\r\n .reduce<Map<ComboboxOption<Data>['value'], ComboboxOption<Data>>>((acc, o) => {\r\n if (!o) return acc;\r\n if (acc.has(o.value)) return acc;\r\n acc.set(o.value, { ...o, label: o.label || o.value });\r\n return acc;\r\n }, new Map())\r\n if (!labels.size) return vls.map(v => ({ value: v, label: String(v) }));\r\n return Array.from(labels.values());\r\n }, [ value, flattenOptions, selectedOptions ])\r\n}\r\n\r\nconst ComboboxRenderTriggerLabel = <Data extends object = object>(\r\n props: ComboboxRenderTriggerProps<Data>\r\n) => {\r\n const { type = DEFAULT_COMBOBOX_TYPE, placeholder, onSelect, open } = props;\r\n const values = useValues(props);\r\n\r\n if (!values.length) {\r\n return (\r\n <span className=\"text-gray-400 whitespace-pre-wrap break-words line-clamp-1 pr-11\">\r\n {placeholder}\r\n </span>\r\n )\r\n }\r\n\r\n if (type === 'single') {\r\n return (\r\n <span className=\"truncate overflow-hidden whitespace-nowrap break-words line-clamp-1 pr-8\">\r\n {values[0].label}\r\n </span>\r\n )\r\n }\r\n\r\n if (type === 'multi') {\r\n return (\r\n <ScrollArea\r\n className={cn(\r\n \"w-full h-auto min-h-5 max-h-20.25\",\r\n 'overflow-y-auto overflow-x-hidden',\r\n )}\r\n slotProps={{\r\n viewport: {\r\n className: '[&>div]:block!',\r\n }\r\n }}\r\n >\r\n <div className=\"p-0 gap-1 flex flex-wrap w-full pr-11\">\r\n {values.map((item) => {\r\n if (!item) return null;\r\n return (\r\n <div\r\n key={item.value}\r\n className={cn(\r\n 'flex items-center justify-center',\r\n 'py-1 px-2 min-h-5 w-fit gap-1',\r\n 'bg-[#9368FF] rounded-sm',\r\n 'text-[#FCFCFC] leading-none text-xs font-semibold',\r\n 'cursor-pointer',\r\n 'truncate',\r\n )}\r\n onClick={(e) => {\r\n if(!open) return;\r\n e.preventDefault();\r\n e.stopPropagation();\r\n onSelect?.(item)\r\n }}\r\n >\r\n <span className='whitespace-pre-wrap wrap-break-word line-clamp-1'>\r\n {item.label}\r\n </span>\r\n <XIcon className='size-3! shrink-0 text-white!'/>\r\n </div>\r\n );\r\n })}\r\n </div>\r\n </ScrollArea>\r\n )\r\n }\r\n\r\n return 'No supported to render'\r\n}\r\n\r\nconst EndAdornmentWrapper = (\r\n props: HTMLAttributes<HTMLDivElement> & {\r\n prevented?: boolean;\r\n }\r\n) => {\r\n const { children, prevented = true, onClick, className, ...rest } = props;\r\n return (\r\n <div\r\n {...rest}\r\n className={cn(\r\n 'absolute top-1/2 -translate-y-1/2 right-1',\r\n 'flex items-center justify-center',\r\n 'w-10 h-10 [&_svg]:size-5!',\r\n 'opacity-50 cursor-pointer hover:opacity-100',\r\n className,\r\n )}\r\n onClick={(e) => {\r\n if (!prevented) return onClick?.(e);\r\n e.stopPropagation();\r\n e.preventDefault();\r\n onClick?.(e);\r\n }}\r\n >\r\n {children}\r\n </div>\r\n )\r\n}\r\nconst ComboboxRenderTriggerEndAdornment = <Data extends object = object>(\r\n props: ComboboxRenderTriggerProps<Data>\r\n) => {\r\n const { open, onClearSelections } = props;\r\n const values = useValues(props);\r\n\r\n if (!open) {\r\n return (\r\n <EndAdornmentWrapper prevented={false}>\r\n <ChevronDown/>\r\n </EndAdornmentWrapper>\r\n )\r\n }\r\n\r\n if (!values.length) return null\r\n\r\n return (\r\n <EndAdornmentWrapper onClick={() => onClearSelections?.()}>\r\n <XIcon/>\r\n </EndAdornmentWrapper>\r\n )\r\n}\r\n\r\nexport const ComboboxRenderTrigger = <Data extends object>(\r\n props: ComboboxRenderTriggerProps<Data>\r\n) => {\r\n const {\r\n type,\r\n open,\r\n initialLoading,\r\n callbackStateParams,\r\n disabled,\r\n renderTrigger,\r\n } = props;\r\n\r\n return (\r\n <PopoverTrigger asChild className=\"border-input\">\r\n <Button\r\n variant={renderTrigger ? 'none' : 'contained'}\r\n color='secondary'\r\n role=\"combobox\"\r\n aria-expanded={open}\r\n className={cn(\r\n 'relative w-full justify-between bg-transparent',\r\n !renderTrigger && 'font-normal text-sm',\r\n 'border border-border',\r\n open && 'border-1 outline-hidden ring-1 ring-ring',\r\n type === 'multi' && 'pr-0',\r\n 'focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring',\r\n renderTrigger && 'p-0',\r\n renderTrigger && open && 'p-0 border-1 ring-0 ring-transparent',\r\n )}\r\n disabled={disabled || initialLoading}\r\n >\r\n {initialLoading && <LoadingMask fullWidth/>}\r\n {!initialLoading && renderTrigger && renderTrigger(callbackStateParams)}\r\n {!initialLoading && !renderTrigger && (\r\n <>\r\n <ComboboxRenderTriggerLabel {...props} />\r\n <ComboboxRenderTriggerEndAdornment {...props} />\r\n </>\r\n )}\r\n </Button>\r\n </PopoverTrigger>\r\n )\r\n}\r\n"],"names":["useValues","props","value","flattenOptions","selectedOptions","useMemo","selectedOption","vls","labels","o","v","acc","ComboboxRenderTriggerLabel","type","DEFAULT_COMBOBOX_TYPE","placeholder","onSelect","open","values","jsx","ScrollArea","cn","item","jsxs","e","XIcon","EndAdornmentWrapper","children","prevented","onClick","className","rest","ComboboxRenderTriggerEndAdornment","onClearSelections","ChevronDown","ComboboxRenderTrigger","initialLoading","callbackStateParams","disabled","renderTrigger","PopoverTrigger","Button","LoadingMask","Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ComboboxRenderTrigger.js","sources":["../../src/Combobox/ComboboxRenderTrigger.tsx"],"sourcesContent":["import {\r\n ComboboxCallbackStateParamsRenderHandler,\r\n ComboboxCallbackStateParamsUnion,\r\n ComboboxOption,\r\n ComboboxProps, ComboboxSelectedType,\r\n DEFAULT_COMBOBOX_TYPE\r\n} from \"./Combobox.types\";\r\nimport { Button } from \"../Button\";\r\nimport { cn } from \"@oneplatformdev/utils\";\r\nimport { LoadingMask } from \"../LoadingMask\";\r\nimport { ChevronDown, XIcon } from \"lucide-react\";\r\nimport { PopoverTrigger } from \"../Popover\";\r\nimport { HTMLAttributes, useMemo } from \"react\";\r\nimport { ScrollArea } from \"../ScrollArea\";\r\n\r\ntype ComboboxRenderTriggerProps<Data extends object = object> = {\r\n type: ComboboxSelectedType,\r\n value: ComboboxProps<Data, 'single'>['value'] | ComboboxProps<Data, 'multi'>['value'];\r\n open: boolean;\r\n initialLoading: boolean;\r\n flattenOptions: ComboboxOption<Data>[];\r\n selectedOptions?: Map<ComboboxOption<Data>['value'], ComboboxOption<Data>>;\r\n onSelect?: (option: ComboboxOption<Data>) => void;\r\n onClearSelections?: () => void;\r\n\r\n callbackStateParams: ComboboxCallbackStateParamsUnion<Data>;\r\n renderTrigger?: ComboboxCallbackStateParamsRenderHandler<Data>;\r\n\r\n placeholder?: string;\r\n disabled?: boolean;\r\n}\r\n\r\nconst useValues = <Data extends object>(\r\n props: ComboboxRenderTriggerProps<Data>\r\n): ComboboxOption<Data>[] => {\r\n const { value, flattenOptions = [], selectedOptions = new Map() } = props;\r\n return useMemo(() => {\r\n if (!value) return [];\r\n const selectedOption = Array.from(selectedOptions.values());\r\n const vls = Array.isArray(value) ? value : [ value ];\r\n const flattenedOptionValues = flattenOptions.filter(o => {\r\n return vls.find(v => String(v).toLowerCase() === String(o.value).toLowerCase())\r\n });\r\n\r\n const labels = [ ...flattenedOptionValues, ...selectedOption ]\r\n .reduce<Map<ComboboxOption<Data>['value'], ComboboxOption<Data>>>((acc, o) => {\r\n if (!o) return acc;\r\n if (acc.has(o.value)) return acc;\r\n acc.set(o.value, { ...o, label: o.label || o.value });\r\n return acc;\r\n }, new Map())\r\n if (!labels.size) return vls.map(v => ({ value: v, label: String(v) }));\r\n return Array.from(labels.values());\r\n }, [ value, flattenOptions, selectedOptions ])\r\n}\r\n\r\nconst ComboboxRenderTriggerLabel = <Data extends object = object>(\r\n props: ComboboxRenderTriggerProps<Data>\r\n) => {\r\n const { type = DEFAULT_COMBOBOX_TYPE, placeholder, onSelect, open } = props;\r\n const values = useValues(props);\r\n\r\n if (!values.length) {\r\n return (\r\n <span className=\"text-gray-400 whitespace-pre-wrap break-words line-clamp-1 pr-11\">\r\n {placeholder}\r\n </span>\r\n )\r\n }\r\n\r\n if (type === 'single') {\r\n return (\r\n <span className=\"truncate overflow-hidden whitespace-nowrap break-words line-clamp-1 pr-8\">\r\n {values[0].label}\r\n </span>\r\n )\r\n }\r\n\r\n if (type === 'multi') {\r\n return (\r\n <ScrollArea\r\n className={cn(\r\n \"w-full h-auto min-h-5 max-h-20.25\",\r\n 'overflow-y-auto overflow-x-hidden',\r\n )}\r\n slotProps={{\r\n viewport: {\r\n className: '[&>div]:block!',\r\n }\r\n }}\r\n >\r\n <div className=\"p-0 gap-1 flex flex-wrap w-full pr-11\">\r\n {values.map((item) => {\r\n if (!item) return null;\r\n return (\r\n <div\r\n key={item.value}\r\n className={cn(\r\n 'flex items-center justify-center',\r\n 'py-1 px-2 min-h-5 w-fit gap-1',\r\n 'bg-[#9368FF] rounded-sm',\r\n 'text-[#FCFCFC] leading-none text-xs font-semibold',\r\n 'cursor-pointer',\r\n 'truncate',\r\n )}\r\n onClick={(e) => {\r\n if(!open) return;\r\n e.preventDefault();\r\n e.stopPropagation();\r\n onSelect?.(item)\r\n }}\r\n >\r\n <span className='whitespace-pre-wrap wrap-break-word line-clamp-1'>\r\n {item.label}\r\n </span>\r\n <XIcon className='size-3! shrink-0 text-white!'/>\r\n </div>\r\n );\r\n })}\r\n </div>\r\n </ScrollArea>\r\n )\r\n }\r\n\r\n return 'No supported to render'\r\n}\r\n\r\nconst EndAdornmentWrapper = (\r\n props: HTMLAttributes<HTMLDivElement> & {\r\n prevented?: boolean;\r\n }\r\n) => {\r\n const { children, prevented = true, onClick, className, ...rest } = props;\r\n return (\r\n <div\r\n {...rest}\r\n className={cn(\r\n 'absolute top-1/2 -translate-y-1/2 right-1',\r\n 'flex items-center justify-center',\r\n 'w-10 h-10 [&_svg]:size-5!',\r\n 'opacity-50 cursor-pointer hover:opacity-100',\r\n className,\r\n )}\r\n onClick={(e) => {\r\n if (!prevented) return onClick?.(e);\r\n e.stopPropagation();\r\n e.preventDefault();\r\n onClick?.(e);\r\n }}\r\n >\r\n {children}\r\n </div>\r\n )\r\n}\r\nconst ComboboxRenderTriggerEndAdornment = <Data extends object = object>(\r\n props: ComboboxRenderTriggerProps<Data>\r\n) => {\r\n const { open, onClearSelections } = props;\r\n const values = useValues(props);\r\n\r\n if (!open) {\r\n return (\r\n <EndAdornmentWrapper prevented={false}>\r\n <ChevronDown/>\r\n </EndAdornmentWrapper>\r\n )\r\n }\r\n\r\n if (!values.length) return null\r\n\r\n return (\r\n <EndAdornmentWrapper onClick={() => onClearSelections?.()}>\r\n <XIcon/>\r\n </EndAdornmentWrapper>\r\n )\r\n}\r\n\r\nexport const ComboboxRenderTrigger = <Data extends object>(\r\n props: ComboboxRenderTriggerProps<Data>\r\n) => {\r\n const {\r\n type,\r\n open,\r\n initialLoading,\r\n callbackStateParams,\r\n disabled,\r\n renderTrigger,\r\n } = props;\r\n\r\n return (\r\n <PopoverTrigger asChild className=\"border-input\">\r\n <Button\r\n variant={renderTrigger ? 'none' : 'contained'}\r\n color='secondary'\r\n role=\"combobox\"\r\n aria-expanded={open}\r\n className={cn(\r\n 'relative w-full justify-between bg-transparent',\r\n !renderTrigger && 'font-normal text-sm',\r\n 'border border-border',\r\n open && 'border-1 border-[#9368FF] outline-hidden ring-0 hover:border-[#9368FF] hover:bg-transparent',\r\n type === 'multi' && 'pr-0',\r\n 'focus-visible:outline-hidden focus-visible:ring-0 focus-visible:border-[#9368FF]',\r\n renderTrigger && 'p-0',\r\n renderTrigger && open && 'p-0 border-1 ring-0 ring-transparent',\r\n )}\r\n disabled={disabled || initialLoading}\r\n >\r\n {initialLoading && <LoadingMask fullWidth/>}\r\n {!initialLoading && renderTrigger && renderTrigger(callbackStateParams)}\r\n {!initialLoading && !renderTrigger && (\r\n <>\r\n <ComboboxRenderTriggerLabel {...props} />\r\n <ComboboxRenderTriggerEndAdornment {...props} />\r\n </>\r\n )}\r\n </Button>\r\n </PopoverTrigger>\r\n )\r\n}\r\n"],"names":["useValues","props","value","flattenOptions","selectedOptions","useMemo","selectedOption","vls","labels","o","v","acc","ComboboxRenderTriggerLabel","type","DEFAULT_COMBOBOX_TYPE","placeholder","onSelect","open","values","jsx","ScrollArea","cn","item","jsxs","e","XIcon","EndAdornmentWrapper","children","prevented","onClick","className","rest","ComboboxRenderTriggerEndAdornment","onClearSelections","ChevronDown","ComboboxRenderTrigger","initialLoading","callbackStateParams","disabled","renderTrigger","PopoverTrigger","Button","LoadingMask","Fragment"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../src/DatePicker/DatePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../src/DatePicker/DatePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAO,MAAM,UAAU,2FA4CtB,CAAC"}
|
package/DatePicker/DatePicker.js
CHANGED
|
@@ -1,53 +1,55 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import * as
|
|
3
|
-
import { format as
|
|
4
|
-
import { Calendar as
|
|
5
|
-
import { cn as
|
|
6
|
-
import { uk as
|
|
7
|
-
import { Button as
|
|
8
|
-
import { Calendar as
|
|
9
|
-
import { Popover as
|
|
10
|
-
const
|
|
11
|
-
(
|
|
1
|
+
import { jsxs as t, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import * as a from "react";
|
|
3
|
+
import { format as c } from "date-fns";
|
|
4
|
+
import { Calendar as f } from "lucide-react";
|
|
5
|
+
import { cn as p } from "@oneplatformdev/utils";
|
|
6
|
+
import { uk as n } from "date-fns/locale";
|
|
7
|
+
import { Button as u } from "../Button/Button.js";
|
|
8
|
+
import { Calendar as h } from "../Calendar/Calendar.js";
|
|
9
|
+
import { Popover as g, PopoverTrigger as b, PopoverContent as y } from "../Popover/Popover.js";
|
|
10
|
+
const v = a.forwardRef(
|
|
11
|
+
(i, l) => {
|
|
12
12
|
const {
|
|
13
|
-
selectedDate:
|
|
14
|
-
onDateChange:
|
|
15
|
-
disabled:
|
|
16
|
-
} = a;
|
|
17
|
-
return /* @__PURE__ */
|
|
18
|
-
/* @__PURE__ */
|
|
19
|
-
|
|
13
|
+
selectedDate: o,
|
|
14
|
+
onDateChange: s,
|
|
15
|
+
disabled: d = !1
|
|
16
|
+
} = i, [r, m] = a.useState(!1);
|
|
17
|
+
return /* @__PURE__ */ t(g, { open: r, onOpenChange: m, children: [
|
|
18
|
+
/* @__PURE__ */ e(b, { asChild: !0, children: /* @__PURE__ */ t(
|
|
19
|
+
u,
|
|
20
20
|
{
|
|
21
21
|
ref: l,
|
|
22
|
-
disabled:
|
|
22
|
+
disabled: d,
|
|
23
23
|
variant: "outline-solid",
|
|
24
|
-
className:
|
|
24
|
+
className: p(
|
|
25
25
|
"w-full justify-start text-left font-normal border h-10",
|
|
26
|
-
!
|
|
26
|
+
!o && "text-muted-foreground",
|
|
27
|
+
"focus-visible:outline-hidden focus-visible:ring-0 focus-visible:border-[#9368FF]",
|
|
28
|
+
r && "outline-hidden ring-0 border-[#9368FF]"
|
|
27
29
|
),
|
|
28
30
|
children: [
|
|
29
|
-
|
|
30
|
-
/* @__PURE__ */
|
|
31
|
+
o ? c(o, "LLL dd, y", { locale: n }) : /* @__PURE__ */ e("span", { children: "dd/mm/yyyy" }),
|
|
32
|
+
/* @__PURE__ */ e(f, { className: "mr-2 h-4 w-4 ml-auto" })
|
|
31
33
|
]
|
|
32
34
|
}
|
|
33
35
|
) }),
|
|
34
|
-
/* @__PURE__ */
|
|
35
|
-
|
|
36
|
+
/* @__PURE__ */ e(y, { align: "start", className: "w-auto p-0", children: /* @__PURE__ */ e(
|
|
37
|
+
h,
|
|
36
38
|
{
|
|
37
39
|
mode: "single",
|
|
38
40
|
captionLayout: "dropdown-buttons",
|
|
39
|
-
selected:
|
|
40
|
-
onSelect:
|
|
41
|
+
selected: o,
|
|
42
|
+
onSelect: s,
|
|
41
43
|
fromYear: 1960,
|
|
42
44
|
toYear: 2030,
|
|
43
|
-
locale:
|
|
45
|
+
locale: n
|
|
44
46
|
}
|
|
45
47
|
) })
|
|
46
48
|
] });
|
|
47
49
|
}
|
|
48
50
|
);
|
|
49
|
-
|
|
51
|
+
v.displayName = "DatePicker";
|
|
50
52
|
export {
|
|
51
|
-
|
|
53
|
+
v as DatePicker
|
|
52
54
|
};
|
|
53
55
|
//# sourceMappingURL=DatePicker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.js","sources":["../../src/DatePicker/DatePicker.tsx"],"sourcesContent":["'use client';\r\n\r\nimport * as React from 'react';\r\nimport { format } from 'date-fns';\r\nimport { Calendar as CalendarIcon } from 'lucide-react';\r\nimport { cn } from '@oneplatformdev/utils';\r\nimport { Button } from '../Button';\r\nimport { Calendar } from '../Calendar';\r\nimport { Popover, PopoverContent, PopoverTrigger } from '../Popover';\r\nimport { uk } from 'date-fns/locale';\r\nimport { DatePickerProps } from './DatePicker.types';\r\n\r\nexport const DatePicker = React.forwardRef<HTMLButtonElement, DatePickerProps>(\r\n (props, ref) => {\r\n const {\r\n selectedDate,\r\n onDateChange,\r\n disabled = false\r\n } = props;\r\n return (\r\n <Popover>\r\n <PopoverTrigger asChild>\r\n <Button\r\n ref={ref}\r\n disabled={disabled}\r\n variant={'outline-solid'}\r\n className={cn(\r\n 'w-full justify-start text-left font-normal border h-10',\r\n !selectedDate && 'text-muted-foreground'\r\n )}\r\n >\r\n {selectedDate ? (\r\n format(selectedDate, 'LLL dd, y', { locale: uk })\r\n ) : (\r\n <span>dd/mm/yyyy</span>\r\n )}\r\n <CalendarIcon className=\"mr-2 h-4 w-4 ml-auto\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent align=\"start\" className=\"w-auto p-0\">\r\n <Calendar\r\n mode=\"single\"\r\n captionLayout=\"dropdown-buttons\"\r\n selected={selectedDate}\r\n onSelect={onDateChange}\r\n fromYear={1960}\r\n toYear={2030}\r\n locale={uk}\r\n />\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n }\r\n);\r\n\r\nDatePicker.displayName = 'DatePicker';\r\n"],"names":["DatePicker","React","props","ref","selectedDate","onDateChange","disabled","Popover","jsx","PopoverTrigger","
|
|
1
|
+
{"version":3,"file":"DatePicker.js","sources":["../../src/DatePicker/DatePicker.tsx"],"sourcesContent":["'use client';\r\n\r\nimport * as React from 'react';\r\nimport { format } from 'date-fns';\r\nimport { Calendar as CalendarIcon } from 'lucide-react';\r\nimport { cn } from '@oneplatformdev/utils';\r\nimport { Button } from '../Button';\r\nimport { Calendar } from '../Calendar';\r\nimport { Popover, PopoverContent, PopoverTrigger } from '../Popover';\r\nimport { uk } from 'date-fns/locale';\r\nimport { DatePickerProps } from './DatePicker.types';\r\n\r\nexport const DatePicker = React.forwardRef<HTMLButtonElement, DatePickerProps>(\r\n (props, ref) => {\r\n const {\r\n selectedDate,\r\n onDateChange,\r\n disabled = false\r\n } = props;\r\n const [open, setOpen] = React.useState(false);\r\n return (\r\n <Popover open={open} onOpenChange={setOpen}>\r\n <PopoverTrigger asChild>\r\n <Button\r\n ref={ref}\r\n disabled={disabled}\r\n variant={'outline-solid'}\r\n className={cn(\r\n 'w-full justify-start text-left font-normal border h-10',\r\n !selectedDate && 'text-muted-foreground',\r\n 'focus-visible:outline-hidden focus-visible:ring-0 focus-visible:border-[#9368FF]',\r\n open && 'outline-hidden ring-0 border-[#9368FF]'\r\n )}\r\n >\r\n {selectedDate ? (\r\n format(selectedDate, 'LLL dd, y', { locale: uk })\r\n ) : (\r\n <span>dd/mm/yyyy</span>\r\n )}\r\n <CalendarIcon className=\"mr-2 h-4 w-4 ml-auto\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent align=\"start\" className=\"w-auto p-0\">\r\n <Calendar\r\n mode=\"single\"\r\n captionLayout=\"dropdown-buttons\"\r\n selected={selectedDate}\r\n onSelect={onDateChange}\r\n fromYear={1960}\r\n toYear={2030}\r\n locale={uk}\r\n />\r\n </PopoverContent>\r\n </Popover>\r\n );\r\n }\r\n);\r\n\r\nDatePicker.displayName = 'DatePicker';\r\n\r\n"],"names":["DatePicker","React","props","ref","selectedDate","onDateChange","disabled","open","setOpen","jsxs","Popover","jsx","PopoverTrigger","Button","cn","format","uk","CalendarIcon","PopoverContent","Calendar"],"mappings":";;;;;;;;;AAYO,MAAMA,IAAaC,EAAM;AAAA,EAC9B,CAACC,GAAOC,MAAQ;AACd,UAAM;AAAA,MACJ,cAAAC;AAAA,MACA,cAAAC;AAAA,MACA,UAAAC,IAAW;AAAA,IAAA,IACTJ,GACE,CAACK,GAAMC,CAAO,IAAIP,EAAM,SAAS,EAAK;AAC5C,WACE,gBAAAQ,EAACC,GAAA,EAAQ,MAAAH,GAAY,cAAcC,GACjC,UAAA;AAAA,MAAA,gBAAAG,EAACC,GAAA,EAAe,SAAO,IACrB,UAAA,gBAAAH;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,KAAAV;AAAA,UACA,UAAAG;AAAA,UACA,SAAS;AAAA,UACT,WAAWQ;AAAA,YACT;AAAA,YACA,CAACV,KAAgB;AAAA,YACjB;AAAA,YACAG,KAAQ;AAAA,UAAA;AAAA,UAGT,UAAA;AAAA,YAAAH,IACCW,EAAOX,GAAc,aAAa,EAAE,QAAQY,GAAI,IAEhD,gBAAAL,EAAC,QAAA,EAAK,UAAA,aAAA,CAAU;AAAA,YAElB,gBAAAA,EAACM,GAAA,EAAa,WAAU,uBAAA,CAAuB;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA,GAEnD;AAAA,MACA,gBAAAN,EAACO,GAAA,EAAe,OAAM,SAAQ,WAAU,cACtC,UAAA,gBAAAP;AAAA,QAACQ;AAAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,eAAc;AAAA,UACd,UAAUf;AAAA,UACV,UAAUC;AAAA,UACV,UAAU;AAAA,UACV,QAAQ;AAAA,UACR,QAAQW;AAAA,QAAA;AAAA,MAAA,EACV,CACF;AAAA,IAAA,GACF;AAAA,EAEJ;AACF;AAEAhB,EAAW,cAAc;"}
|
package/Select/SelectRoot.js
CHANGED
|
@@ -35,8 +35,8 @@ function w(t) {
|
|
|
35
35
|
"border border-[#E1E1E5] outline-none text-[#06080D]",
|
|
36
36
|
"data-[placeholder]:text-gray-400 [&_svg:not([class*='text-'])]:text-muted-foreground transition-[color,box-shadow,background-color,border-color]",
|
|
37
37
|
"hover:bg-[#F9FAFB] hover:border-[#E1E1E5]",
|
|
38
|
-
"focus-visible:outline-hidden focus-visible:ring-
|
|
39
|
-
"data-[state=open]:outline-hidden data-[state=open]:ring-
|
|
38
|
+
"focus-visible:outline-hidden focus-visible:ring-0 focus-visible:border-[#9368FF]",
|
|
39
|
+
"data-[state=open]:outline-hidden data-[state=open]:ring-0 data-[state=open]:border-[#9368FF]",
|
|
40
40
|
"data-[state=open]:[&_[data-slot=select-trigger-icon]]:opacity-0 data-[state=open]:[&_[data-slot=select-trigger-icon]]:pointer-events-none",
|
|
41
41
|
"*:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2",
|
|
42
42
|
"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
@@ -109,7 +109,7 @@ function z({
|
|
|
109
109
|
}
|
|
110
110
|
);
|
|
111
111
|
}
|
|
112
|
-
function
|
|
112
|
+
function N({
|
|
113
113
|
className: t,
|
|
114
114
|
children: o,
|
|
115
115
|
...r
|
|
@@ -130,7 +130,7 @@ function C({
|
|
|
130
130
|
}
|
|
131
131
|
);
|
|
132
132
|
}
|
|
133
|
-
function
|
|
133
|
+
function F({
|
|
134
134
|
className: t,
|
|
135
135
|
...o
|
|
136
136
|
}) {
|
|
@@ -180,13 +180,13 @@ function f({
|
|
|
180
180
|
export {
|
|
181
181
|
S as SelectContent,
|
|
182
182
|
b as SelectGroup,
|
|
183
|
-
|
|
183
|
+
N as SelectItem,
|
|
184
184
|
z as SelectLabel,
|
|
185
185
|
a as SelectPrimitive,
|
|
186
186
|
v as SelectRoot,
|
|
187
187
|
f as SelectScrollDownButton,
|
|
188
188
|
m as SelectScrollUpButton,
|
|
189
|
-
|
|
189
|
+
F as SelectSeparator,
|
|
190
190
|
w as SelectTrigger,
|
|
191
191
|
y as SelectValue
|
|
192
192
|
};
|
package/Select/SelectRoot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectRoot.js","sources":["../../src/Select/SelectRoot.tsx"],"sourcesContent":["\"use client\"\r\n\r\nimport * as React from \"react\"\r\nimport * as SelectPrimitive from \"@radix-ui/react-select\"\r\nimport { CheckIcon, ChevronDownIcon, ChevronUpIcon } from \"lucide-react\"\r\n\r\nimport { cn } from \"@oneplatformdev/utils\"\r\n\r\nfunction SelectRoot({\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Root>) {\r\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />\r\n}\r\n\r\nfunction SelectGroup({\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Group>) {\r\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />\r\n}\r\n\r\nfunction SelectValue({\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Value>) {\r\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />\r\n}\r\n\r\nfunction SelectTrigger(props: React.ComponentProps<typeof SelectPrimitive.Trigger> & {\r\n size?: \"sm\" | \"default\";\r\n showIcon?: boolean;\r\n}) {\r\n const {\r\n className,\r\n size = \"default\",\r\n children,\r\n showIcon = true,\r\n ...rest\r\n } = props\r\n return (\r\n <SelectPrimitive.Trigger\r\n data-slot=\"select-trigger\"\r\n data-size={size}\r\n className={cn(\r\n \"relative flex w-inherit items-center justify-between gap-2 rounded-lg bg-[#FCFCFC] px-3 py-2 text-sm font-normal whitespace-nowrap\",\r\n \"border border-[#E1E1E5] outline-none text-[#06080D]\",\r\n \"data-[placeholder]:text-gray-400 [&_svg:not([class*='text-'])]:text-muted-foreground transition-[color,box-shadow,background-color,border-color]\",\r\n \"hover:bg-[#F9FAFB] hover:border-[#E1E1E5]\",\r\n \"focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:border-[#C5C7CD]\",\r\n \"data-[state=open]:outline-hidden data-[state=open]:ring-1 data-[state=open]:ring-ring data-[state=open]:border-[#C5C7CD]\",\r\n \"data-[state=open]:[&_[data-slot=select-trigger-icon]]:opacity-0 data-[state=open]:[&_[data-slot=select-trigger-icon]]:pointer-events-none\",\r\n \"*:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2\",\r\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\r\n 'cursor-pointer',\r\n 'disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-10 data-[size=sm]:h-8',\r\n className\r\n )}\r\n {...rest}\r\n >\r\n {children}\r\n {showIcon && (\r\n <SelectPrimitive.Icon asChild>\r\n <span\r\n data-slot=\"select-trigger-icon\"\r\n className=\"flex items-center justify-center opacity-50 transition-opacity hover:opacity-100\"\r\n >\r\n <ChevronDownIcon className=\"size-5 text-[#06080D]\" />\r\n </span>\r\n </SelectPrimitive.Icon>\r\n )}\r\n </SelectPrimitive.Trigger>\r\n )\r\n}\r\n\r\nfunction SelectContent({\r\n className,\r\n children,\r\n position = \"popper\",\r\n align = \"center\",\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Content>) {\r\n return (\r\n <SelectPrimitive.Portal>\r\n <SelectPrimitive.Content\r\n data-slot=\"select-content\"\r\n className={cn(\r\n \"bg-popover text-popover-foreground 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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md\",\r\n position === \"popper\" &&\r\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\r\n 'p-1 rounded-xl shadow-md',\r\n className\r\n )}\r\n position={position}\r\n align={align}\r\n {...props}\r\n >\r\n <SelectScrollUpButton />\r\n <SelectPrimitive.Viewport\r\n className={cn(\r\n \"p-1\",\r\n position === \"popper\" &&\r\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1\"\r\n )}\r\n >\r\n {children}\r\n </SelectPrimitive.Viewport>\r\n <SelectScrollDownButton />\r\n </SelectPrimitive.Content>\r\n </SelectPrimitive.Portal>\r\n )\r\n}\r\n\r\nfunction SelectLabel({\r\n className,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Label>) {\r\n return (\r\n <SelectPrimitive.Label\r\n data-slot=\"select-label\"\r\n className={cn(\"text-muted-foreground px-2 py-1.5 text-xs\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nfunction SelectItem({\r\n className,\r\n children,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Item>) {\r\n return (\r\n <SelectPrimitive.Item\r\n data-slot=\"select-item\"\r\n className={cn(\r\n \"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-lg py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\r\n <SelectPrimitive.ItemIndicator>\r\n <CheckIcon className=\"size-4\" />\r\n </SelectPrimitive.ItemIndicator>\r\n </span>\r\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\r\n </SelectPrimitive.Item>\r\n )\r\n}\r\n\r\nfunction SelectSeparator({\r\n className,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Separator>) {\r\n return (\r\n <SelectPrimitive.Separator\r\n data-slot=\"select-separator\"\r\n className={cn(\"bg-border pointer-events-none -mx-1 my-1 h-px\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nfunction SelectScrollUpButton({\r\n className,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\r\n return (\r\n <SelectPrimitive.ScrollUpButton\r\n data-slot=\"select-scroll-up-button\"\r\n className={cn(\r\n \"flex cursor-default items-center justify-center py-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <ChevronUpIcon className=\"size-4\" />\r\n </SelectPrimitive.ScrollUpButton>\r\n )\r\n}\r\n\r\nfunction SelectScrollDownButton({\r\n className,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\r\n return (\r\n <SelectPrimitive.ScrollDownButton\r\n data-slot=\"select-scroll-down-button\"\r\n className={cn(\r\n \"flex cursor-default items-center justify-center py-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <ChevronDownIcon className=\"size-4\" />\r\n </SelectPrimitive.ScrollDownButton>\r\n )\r\n}\r\n\r\nexport {\r\n SelectRoot,\r\n SelectContent,\r\n SelectGroup,\r\n SelectItem,\r\n SelectLabel,\r\n SelectScrollDownButton,\r\n SelectScrollUpButton,\r\n SelectSeparator,\r\n SelectTrigger,\r\n SelectValue,\r\n SelectPrimitive,\r\n}\r\n"],"names":["SelectRoot","props","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","className","size","children","showIcon","rest","jsxs","cn","jsx","ChevronDownIcon","SelectContent","position","align","SelectScrollUpButton","SelectScrollDownButton","SelectLabel","SelectItem","CheckIcon","SelectSeparator","ChevronUpIcon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SelectRoot.js","sources":["../../src/Select/SelectRoot.tsx"],"sourcesContent":["\"use client\"\r\n\r\nimport * as React from \"react\"\r\nimport * as SelectPrimitive from \"@radix-ui/react-select\"\r\nimport { CheckIcon, ChevronDownIcon, ChevronUpIcon } from \"lucide-react\"\r\n\r\nimport { cn } from \"@oneplatformdev/utils\"\r\n\r\nfunction SelectRoot({\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Root>) {\r\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />\r\n}\r\n\r\nfunction SelectGroup({\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Group>) {\r\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />\r\n}\r\n\r\nfunction SelectValue({\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Value>) {\r\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />\r\n}\r\n\r\nfunction SelectTrigger(props: React.ComponentProps<typeof SelectPrimitive.Trigger> & {\r\n size?: \"sm\" | \"default\";\r\n showIcon?: boolean;\r\n}) {\r\n const {\r\n className,\r\n size = \"default\",\r\n children,\r\n showIcon = true,\r\n ...rest\r\n } = props\r\n return (\r\n <SelectPrimitive.Trigger\r\n data-slot=\"select-trigger\"\r\n data-size={size}\r\n className={cn(\r\n \"relative flex w-inherit items-center justify-between gap-2 rounded-lg bg-[#FCFCFC] px-3 py-2 text-sm font-normal whitespace-nowrap\",\r\n \"border border-[#E1E1E5] outline-none text-[#06080D]\",\r\n \"data-[placeholder]:text-gray-400 [&_svg:not([class*='text-'])]:text-muted-foreground transition-[color,box-shadow,background-color,border-color]\",\r\n \"hover:bg-[#F9FAFB] hover:border-[#E1E1E5]\",\r\n \"focus-visible:outline-hidden focus-visible:ring-0 focus-visible:border-[#9368FF]\",\r\n \"data-[state=open]:outline-hidden data-[state=open]:ring-0 data-[state=open]:border-[#9368FF]\",\r\n \"data-[state=open]:[&_[data-slot=select-trigger-icon]]:opacity-0 data-[state=open]:[&_[data-slot=select-trigger-icon]]:pointer-events-none\",\r\n \"*:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2\",\r\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\r\n 'cursor-pointer',\r\n 'disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-10 data-[size=sm]:h-8',\r\n className\r\n )}\r\n {...rest}\r\n >\r\n {children}\r\n {showIcon && (\r\n <SelectPrimitive.Icon asChild>\r\n <span\r\n data-slot=\"select-trigger-icon\"\r\n className=\"flex items-center justify-center opacity-50 transition-opacity hover:opacity-100\"\r\n >\r\n <ChevronDownIcon className=\"size-5 text-[#06080D]\" />\r\n </span>\r\n </SelectPrimitive.Icon>\r\n )}\r\n </SelectPrimitive.Trigger>\r\n )\r\n}\r\n\r\nfunction SelectContent({\r\n className,\r\n children,\r\n position = \"popper\",\r\n align = \"center\",\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Content>) {\r\n return (\r\n <SelectPrimitive.Portal>\r\n <SelectPrimitive.Content\r\n data-slot=\"select-content\"\r\n className={cn(\r\n \"bg-popover text-popover-foreground 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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md\",\r\n position === \"popper\" &&\r\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\r\n 'p-1 rounded-xl shadow-md',\r\n className\r\n )}\r\n position={position}\r\n align={align}\r\n {...props}\r\n >\r\n <SelectScrollUpButton />\r\n <SelectPrimitive.Viewport\r\n className={cn(\r\n \"p-1\",\r\n position === \"popper\" &&\r\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1\"\r\n )}\r\n >\r\n {children}\r\n </SelectPrimitive.Viewport>\r\n <SelectScrollDownButton />\r\n </SelectPrimitive.Content>\r\n </SelectPrimitive.Portal>\r\n )\r\n}\r\n\r\nfunction SelectLabel({\r\n className,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Label>) {\r\n return (\r\n <SelectPrimitive.Label\r\n data-slot=\"select-label\"\r\n className={cn(\"text-muted-foreground px-2 py-1.5 text-xs\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nfunction SelectItem({\r\n className,\r\n children,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Item>) {\r\n return (\r\n <SelectPrimitive.Item\r\n data-slot=\"select-item\"\r\n className={cn(\r\n \"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-lg py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\r\n <SelectPrimitive.ItemIndicator>\r\n <CheckIcon className=\"size-4\" />\r\n </SelectPrimitive.ItemIndicator>\r\n </span>\r\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\r\n </SelectPrimitive.Item>\r\n )\r\n}\r\n\r\nfunction SelectSeparator({\r\n className,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.Separator>) {\r\n return (\r\n <SelectPrimitive.Separator\r\n data-slot=\"select-separator\"\r\n className={cn(\"bg-border pointer-events-none -mx-1 my-1 h-px\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nfunction SelectScrollUpButton({\r\n className,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\r\n return (\r\n <SelectPrimitive.ScrollUpButton\r\n data-slot=\"select-scroll-up-button\"\r\n className={cn(\r\n \"flex cursor-default items-center justify-center py-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <ChevronUpIcon className=\"size-4\" />\r\n </SelectPrimitive.ScrollUpButton>\r\n )\r\n}\r\n\r\nfunction SelectScrollDownButton({\r\n className,\r\n ...props\r\n }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\r\n return (\r\n <SelectPrimitive.ScrollDownButton\r\n data-slot=\"select-scroll-down-button\"\r\n className={cn(\r\n \"flex cursor-default items-center justify-center py-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <ChevronDownIcon className=\"size-4\" />\r\n </SelectPrimitive.ScrollDownButton>\r\n )\r\n}\r\n\r\nexport {\r\n SelectRoot,\r\n SelectContent,\r\n SelectGroup,\r\n SelectItem,\r\n SelectLabel,\r\n SelectScrollDownButton,\r\n SelectScrollUpButton,\r\n SelectSeparator,\r\n SelectTrigger,\r\n SelectValue,\r\n SelectPrimitive,\r\n}\r\n"],"names":["SelectRoot","props","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","className","size","children","showIcon","rest","jsxs","cn","jsx","ChevronDownIcon","SelectContent","position","align","SelectScrollUpButton","SelectScrollDownButton","SelectLabel","SelectItem","CheckIcon","SelectSeparator","ChevronUpIcon"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oneplatformdev/ui",
|
|
3
|
-
"version": "0.1.99-beta.
|
|
3
|
+
"version": "0.1.99-beta.274",
|
|
4
4
|
"description": "UI component library for OnePlatform",
|
|
5
5
|
"author": "One Platform Development Team",
|
|
6
6
|
"keywords": [
|
|
@@ -109,9 +109,9 @@
|
|
|
109
109
|
"recharts": "^3.2.0",
|
|
110
110
|
"sonner": "^2.0.7",
|
|
111
111
|
"vaul": "^1.1.2",
|
|
112
|
-
"@oneplatformdev/tokens": "^0.1.99-beta.
|
|
113
|
-
"@oneplatformdev/
|
|
114
|
-
"@oneplatformdev/
|
|
112
|
+
"@oneplatformdev/tokens": "^0.1.99-beta.274",
|
|
113
|
+
"@oneplatformdev/utils": "^0.1.99-beta.274",
|
|
114
|
+
"@oneplatformdev/hooks": "^0.1.99-beta.274"
|
|
115
115
|
},
|
|
116
116
|
"scripts": {
|
|
117
117
|
"chromatic": "chromatic"
|