@oneplatformdev/ui 0.1.10-70 → 0.1.10-71
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/CHANGELOG.md +8 -0
- package/Combobox/Combobox.d.ts.map +1 -1
- package/Combobox/Combobox.js +96 -92
- package/Combobox/Combobox.js.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
## 0.1.10-71 (2025-11-03)
|
|
2
|
+
|
|
3
|
+
### 🧱 Updated Dependencies
|
|
4
|
+
|
|
5
|
+
- Updated @oneplatformdev/utils to 0.1.1-120
|
|
6
|
+
- Updated @oneplatformdev/hooks to 0.1.0-106
|
|
7
|
+
- Updated @oneplatformdev/tokens to 0.0.1-93
|
|
8
|
+
|
|
1
9
|
## 0.1.10-70 (2025-10-22)
|
|
2
10
|
|
|
3
11
|
### 🧱 Updated Dependencies
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../src/Combobox/Combobox.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAGL,aAAa,EACd,MAAM,kBAAkB,CAAC;AAI1B,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../src/Combobox/Combobox.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAGL,aAAa,EACd,MAAM,kBAAkB,CAAC;AAI1B,eAAO,MAAM,QAAQ,0GAuPpB,CAAC"}
|
package/Combobox/Combobox.js
CHANGED
|
@@ -1,112 +1,116 @@
|
|
|
1
|
-
import { jsx as t, jsxs as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
import { LoadingMask as
|
|
1
|
+
import { jsx as t, jsxs as l, Fragment as F } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as $, useRef as ee, useState as c, useCallback as p, useEffect as te, useMemo as k, useLayoutEffect as oe } from "react";
|
|
3
|
+
import { LoadingMask as ne } from "../LoadingMask/LoadingMask.js";
|
|
4
4
|
import "../LoadingMask/RenderLoadingMask.js";
|
|
5
|
-
import { Popover as
|
|
6
|
-
import { Button as
|
|
5
|
+
import { Popover as re, PopoverTrigger as ae, PopoverContent as se } from "../Popover/Popover.js";
|
|
6
|
+
import { Button as ie } from "../Button/Button.js";
|
|
7
7
|
import "../Button/buttonVariants.js";
|
|
8
|
-
import { Command as
|
|
8
|
+
import { Command as le, CommandInput as ce, CommandList as pe, CommandGroup as me, CommandEmpty as I, CommandItem as de } from "../Command/Command.js";
|
|
9
9
|
import { cn as P } from "@oneplatformdev/utils";
|
|
10
|
-
import { useDebounceCallback as
|
|
11
|
-
import { X as
|
|
12
|
-
import { ComboboxOptions as
|
|
13
|
-
const
|
|
14
|
-
(
|
|
10
|
+
import { useDebounceCallback as ue } from "@oneplatformdev/hooks";
|
|
11
|
+
import { X as he, ChevronsUpDown as fe } from "lucide-react";
|
|
12
|
+
import { ComboboxOptions as ge } from "./ComboboxOptions.js";
|
|
13
|
+
const Ee = $(
|
|
14
|
+
(z, G) => {
|
|
15
15
|
const {
|
|
16
16
|
value: u,
|
|
17
|
-
onChange:
|
|
18
|
-
placeholder:
|
|
19
|
-
disabled:
|
|
20
|
-
searchLabel:
|
|
21
|
-
fetchOptions:
|
|
22
|
-
options:
|
|
23
|
-
emptyLabel:
|
|
17
|
+
onChange: R,
|
|
18
|
+
placeholder: U,
|
|
19
|
+
disabled: _,
|
|
20
|
+
searchLabel: q = "Type to search...",
|
|
21
|
+
fetchOptions: H,
|
|
22
|
+
options: y,
|
|
23
|
+
emptyLabel: E = "No options",
|
|
24
24
|
emptyAction: h,
|
|
25
|
-
commandInputAction:
|
|
25
|
+
commandInputAction: C,
|
|
26
26
|
listHeadAction: f,
|
|
27
|
-
onMount:
|
|
28
|
-
} =
|
|
27
|
+
onMount: x
|
|
28
|
+
} = z, v = ee(!1), [s, w] = c(!1), [r, O] = c(""), [N, L] = c(), [o, i] = c(!1), [n, V] = c([]), [W, X] = c([]), S = p((e) => {
|
|
29
29
|
const d = (g) => {
|
|
30
|
-
const
|
|
31
|
-
|
|
30
|
+
const a = [], T = (A) => {
|
|
31
|
+
if (A)
|
|
32
|
+
for (const b of A)
|
|
33
|
+
a.push(b), b.items && b.items.length && T(b.items);
|
|
34
|
+
};
|
|
35
|
+
T(g), X(a);
|
|
32
36
|
};
|
|
33
|
-
|
|
34
|
-
let
|
|
35
|
-
return typeof e == "function" ?
|
|
37
|
+
V((g) => {
|
|
38
|
+
let a = g;
|
|
39
|
+
return typeof e == "function" ? a = e(g) : a = e, d(a), a;
|
|
36
40
|
});
|
|
37
41
|
}, []);
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}, [
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
},
|
|
44
|
-
|
|
42
|
+
te(() => {
|
|
43
|
+
y?.length && S(y);
|
|
44
|
+
}, [y]);
|
|
45
|
+
const J = async () => {
|
|
46
|
+
s || (M(), O(""));
|
|
47
|
+
}, M = p(async (e) => {
|
|
48
|
+
i(!0);
|
|
45
49
|
try {
|
|
46
|
-
const d = await
|
|
47
|
-
|
|
50
|
+
const d = await H(e);
|
|
51
|
+
S(d);
|
|
48
52
|
} catch (d) {
|
|
49
53
|
console.error("Unexpected error while get option:", d);
|
|
50
54
|
} finally {
|
|
51
|
-
|
|
55
|
+
i(!1);
|
|
52
56
|
}
|
|
53
|
-
}, []),
|
|
57
|
+
}, []), K = ue(M, 1e3, {
|
|
54
58
|
leading: !1,
|
|
55
59
|
trailing: !0
|
|
56
|
-
}),
|
|
57
|
-
|
|
58
|
-
}, []),
|
|
59
|
-
|
|
60
|
-
}, []),
|
|
61
|
-
|
|
62
|
-
}, []),
|
|
60
|
+
}), Q = p((e) => {
|
|
61
|
+
i(!0), O(e), K(e);
|
|
62
|
+
}, []), j = p((e) => {
|
|
63
|
+
R(e.value), L(e), i(!1);
|
|
64
|
+
}, []), Y = p(() => {
|
|
65
|
+
j({ value: "", label: "" }), L(void 0), i(!1);
|
|
66
|
+
}, []), B = k(() => !!r && !n.length && !o, [o, n.length, r]), D = k(() => !n.length && !o, [o, n.length, r]), m = k(() => ({
|
|
63
67
|
options: n,
|
|
64
|
-
setOptions:
|
|
65
|
-
selectedOption:
|
|
66
|
-
setSelectedOption:
|
|
68
|
+
setOptions: S,
|
|
69
|
+
selectedOption: N,
|
|
70
|
+
setSelectedOption: L,
|
|
67
71
|
search: r || "",
|
|
68
|
-
setSearch:
|
|
69
|
-
open:
|
|
70
|
-
setOpen:
|
|
72
|
+
setSearch: O,
|
|
73
|
+
open: s,
|
|
74
|
+
setOpen: w,
|
|
71
75
|
loading: o,
|
|
72
|
-
setLoading:
|
|
73
|
-
isEmptyList:
|
|
74
|
-
isSearchedEmptyList:
|
|
75
|
-
}), [o,
|
|
76
|
-
if (!
|
|
77
|
-
|
|
76
|
+
setLoading: i,
|
|
77
|
+
isEmptyList: D,
|
|
78
|
+
isSearchedEmptyList: B
|
|
79
|
+
}), [o, s, n, r, N, D, B]), Z = p(() => {
|
|
80
|
+
if (!x) {
|
|
81
|
+
v.current = !0;
|
|
78
82
|
return;
|
|
79
83
|
}
|
|
80
|
-
|
|
81
|
-
|
|
84
|
+
x(m).finally(() => {
|
|
85
|
+
v.current = !0;
|
|
82
86
|
});
|
|
83
|
-
}, [m,
|
|
84
|
-
return
|
|
85
|
-
|
|
86
|
-
}), []), /* @__PURE__ */ t("div", { className: "w-full", ref:
|
|
87
|
-
|
|
87
|
+
}, [m, x]);
|
|
88
|
+
return oe(() => (Z(), () => {
|
|
89
|
+
v.current = !1;
|
|
90
|
+
}), []), /* @__PURE__ */ t("div", { className: "w-full", ref: G, children: /* @__PURE__ */ l(
|
|
91
|
+
re,
|
|
88
92
|
{
|
|
89
|
-
open:
|
|
93
|
+
open: s,
|
|
90
94
|
onOpenChange: (e) => {
|
|
91
|
-
|
|
95
|
+
w(e), e && J();
|
|
92
96
|
},
|
|
93
97
|
children: [
|
|
94
|
-
/* @__PURE__ */ t(
|
|
95
|
-
|
|
98
|
+
/* @__PURE__ */ t(ae, { asChild: !0, className: "border-input", children: /* @__PURE__ */ l(
|
|
99
|
+
ie,
|
|
96
100
|
{
|
|
97
101
|
variant: "outline",
|
|
98
102
|
role: "combobox",
|
|
99
103
|
size: "lg",
|
|
100
|
-
"aria-expanded":
|
|
104
|
+
"aria-expanded": s,
|
|
101
105
|
className: P(
|
|
102
106
|
"w-full justify-between font-normal text-sm bg-transparent relative p-3",
|
|
103
107
|
"border border-border",
|
|
104
|
-
|
|
108
|
+
s && "border-2 outline-hidden ring-1 ring-ring",
|
|
105
109
|
"focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring"
|
|
106
110
|
),
|
|
107
|
-
disabled:
|
|
111
|
+
disabled: _,
|
|
108
112
|
children: [
|
|
109
|
-
/* @__PURE__ */ t("span", { className: "truncate max-w-[calc(100%-1.5rem)] overflow-hidden whitespace-nowrap", children: u ?
|
|
113
|
+
/* @__PURE__ */ t("span", { className: "truncate max-w-[calc(100%-1.5rem)] overflow-hidden whitespace-nowrap", children: u ? W.find((e) => e.value === u)?.label || N?.label : /* @__PURE__ */ t("span", { className: "text-gray-400", children: U }) }),
|
|
110
114
|
u ? /* @__PURE__ */ t(
|
|
111
115
|
"div",
|
|
112
116
|
{
|
|
@@ -117,42 +121,42 @@ const Pe = Y(
|
|
|
117
121
|
"opacity-50 cursor-pointer hover:opacity-100"
|
|
118
122
|
),
|
|
119
123
|
onClick: (e) => {
|
|
120
|
-
e.stopPropagation(),
|
|
124
|
+
e.stopPropagation(), Y();
|
|
121
125
|
},
|
|
122
|
-
children: /* @__PURE__ */ t(
|
|
126
|
+
children: /* @__PURE__ */ t(he, {})
|
|
123
127
|
}
|
|
124
|
-
) : /* @__PURE__ */ t(
|
|
128
|
+
) : /* @__PURE__ */ t(fe, { className: "opacity-50 w-4 h-4" })
|
|
125
129
|
]
|
|
126
130
|
}
|
|
127
131
|
) }),
|
|
128
132
|
/* @__PURE__ */ t(
|
|
129
|
-
|
|
133
|
+
se,
|
|
130
134
|
{
|
|
131
135
|
className: "w-(--radix-popper-anchor-width) max-w-none p-0",
|
|
132
136
|
align: "start",
|
|
133
|
-
children: /* @__PURE__ */
|
|
137
|
+
children: /* @__PURE__ */ l(le, { shouldFilter: !1, children: [
|
|
134
138
|
/* @__PURE__ */ t(
|
|
135
|
-
|
|
139
|
+
ce,
|
|
136
140
|
{
|
|
137
|
-
placeholder:
|
|
141
|
+
placeholder: q,
|
|
138
142
|
value: r,
|
|
139
|
-
onValueChange:
|
|
143
|
+
onValueChange: Q
|
|
140
144
|
}
|
|
141
145
|
),
|
|
142
|
-
typeof
|
|
143
|
-
/* @__PURE__ */ t(
|
|
144
|
-
|
|
146
|
+
typeof C == "function" ? C(m) : C,
|
|
147
|
+
/* @__PURE__ */ t(pe, { children: /* @__PURE__ */ l(
|
|
148
|
+
me,
|
|
145
149
|
{
|
|
146
150
|
className: P(!n.length && "p-0 shadow-none"),
|
|
147
151
|
children: [
|
|
148
|
-
o && /* @__PURE__ */ t(
|
|
149
|
-
!o && !!r && /* @__PURE__ */ t(
|
|
150
|
-
/* @__PURE__ */ t("span", { children:
|
|
152
|
+
o && /* @__PURE__ */ t(ne, { fullWidth: !0 }),
|
|
153
|
+
!o && !!r && /* @__PURE__ */ t(F, { children: h ? /* @__PURE__ */ l(I, { className: "flex flex-col gap-3 py-5 px-3 items-center", children: [
|
|
154
|
+
/* @__PURE__ */ t("span", { children: E }),
|
|
151
155
|
typeof h == "function" ? h(m) : h
|
|
152
|
-
] }) : /* @__PURE__ */ t(
|
|
153
|
-
!o && /* @__PURE__ */
|
|
156
|
+
] }) : /* @__PURE__ */ t(I, { children: E }) }),
|
|
157
|
+
!o && /* @__PURE__ */ l(F, { children: [
|
|
154
158
|
!!n.length && f && /* @__PURE__ */ t(
|
|
155
|
-
|
|
159
|
+
de,
|
|
156
160
|
{
|
|
157
161
|
asChild: !0,
|
|
158
162
|
className: "w-full",
|
|
@@ -161,12 +165,12 @@ const Pe = Y(
|
|
|
161
165
|
"combobox-list-head-action"
|
|
162
166
|
),
|
|
163
167
|
/* @__PURE__ */ t(
|
|
164
|
-
|
|
168
|
+
ge,
|
|
165
169
|
{
|
|
166
170
|
value: u,
|
|
167
171
|
options: n,
|
|
168
|
-
onChangeOption:
|
|
169
|
-
setOpen:
|
|
172
|
+
onChangeOption: j,
|
|
173
|
+
setOpen: w
|
|
170
174
|
}
|
|
171
175
|
)
|
|
172
176
|
] })
|
|
@@ -182,6 +186,6 @@ const Pe = Y(
|
|
|
182
186
|
}
|
|
183
187
|
);
|
|
184
188
|
export {
|
|
185
|
-
|
|
189
|
+
Ee as Combobox
|
|
186
190
|
};
|
|
187
191
|
//# sourceMappingURL=Combobox.js.map
|
package/Combobox/Combobox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.js","sources":["../../src/Combobox/Combobox.tsx"],"sourcesContent":["import {\n Dispatch,\n forwardRef, SetStateAction,\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { LoadingMask } from '../LoadingMask';\nimport { Popover, PopoverContent, PopoverTrigger } from '../Popover';\nimport { Button } from '../Button';\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from '../Command';\nimport { cn } from '@oneplatformdev/utils';\nimport { useDebounceCallback } from '@oneplatformdev/hooks';\nimport { ChevronsUpDown, X } from 'lucide-react';\nimport {\n ComboboxCallbackStateParams,\n ComboboxOption,\n ComboboxProps,\n} from './Combobox.types';\nimport { ComboboxOptions } from './ComboboxOptions'; // TODO: refactor next component | nlt code\n\n// TODO: refactor next component | nlt code\nexport const Combobox = forwardRef<HTMLDivElement, ComboboxProps>(\n (props, ref) => {\n const {\n value,\n onChange,\n placeholder,\n disabled,\n searchLabel = 'Type to search...',\n fetchOptions,\n options: itemOptions,\n emptyLabel = 'No options',\n emptyAction,\n commandInputAction,\n listHeadAction,\n onMount,\n } = props;\n const isMounted = useRef(false);\n const [open, setOpen] = useState(false);\n const [searchTerm, setSearchTerm] = useState('');\n const [selectedOption, setSelectedOption] = useState<ComboboxOption>();\n const [loading, setLoading] = useState(false);\n\n const [options, _setOptions] = useState<ComboboxOption[]>([]);\n const [flattenOptions, setFlattenOptions] = useState<ComboboxOption[]>([]);\n const setOptions: Dispatch<SetStateAction<ComboboxOption[]>> = useCallback((stater) => {\n const flatten = (next: ComboboxOption[]) => {\n const res = next.map(o => [o, ...(o.items || []).flat()]).flat();\n setFlattenOptions(res);\n }\n _setOptions((prev) => {\n let next: ComboboxOption[] = prev;\n if(typeof stater === 'function') next = stater(prev)\n else next = stater;\n flatten(next);\n return next;\n });\n }, [])\n\n useEffect(() => {\n itemOptions?.length && setOptions(itemOptions);\n }, [itemOptions]);\n\n const handlePopoverOpen = async () => {\n if (!open) {\n getData();\n setSearchTerm('');\n }\n };\n\n const getData = useCallback(async (search?: string) => {\n setLoading(true);\n try {\n const fetchedOptions = await fetchOptions(search);\n setOptions(fetchedOptions);\n } catch (error) {\n console.error('Unexpected error while get option:', error);\n } finally {\n setLoading(false);\n }\n }, []);\n\n const debouncedGetData = useDebounceCallback(getData, 1000, {\n leading: false,\n trailing: true,\n });\n\n const handleSearchChange = useCallback((value: string) => {\n setLoading(true);\n setSearchTerm(value);\n debouncedGetData(value);\n }, []);\n\n const onChangeOption = useCallback((option: ComboboxOption) => {\n onChange(option.value);\n setSelectedOption(option);\n setLoading(false);\n }, []);\n\n const handleClearSelection = useCallback(() => {\n onChangeOption({ value: '', label: '' });\n setSelectedOption(undefined);\n setLoading(false);\n }, []);\n\n const isSearchedEmptyList = useMemo(() => {\n return Boolean(searchTerm) && !options.length && !loading;\n }, [loading, options.length, searchTerm])\n\n const isEmptyList = useMemo(() => {\n return !options.length && !loading;\n }, [loading, options.length, searchTerm])\n\n const comboboxCallbackStateParams =\n useMemo((): ComboboxCallbackStateParams => {\n return {\n options,\n setOptions,\n selectedOption,\n setSelectedOption,\n search: searchTerm || '',\n setSearch: setSearchTerm,\n open,\n setOpen,\n loading,\n setLoading,\n isEmptyList,\n isSearchedEmptyList,\n };\n }, [loading, open, options, searchTerm, selectedOption, isEmptyList, isSearchedEmptyList]);\n\n const runOnMount = useCallback(() => {\n if (!onMount) {\n isMounted.current = true;\n return;\n }\n onMount(comboboxCallbackStateParams).finally(() => {\n isMounted.current = true;\n });\n }, [comboboxCallbackStateParams, onMount]);\n\n useLayoutEffect(() => {\n runOnMount();\n return () => {\n isMounted.current = false;\n };\n }, []);\n\n return (\n <div className=\"w-full\" ref={ref}>\n <Popover\n open={open}\n onOpenChange={(newOpen) => {\n setOpen(newOpen);\n if (newOpen) handlePopoverOpen();\n }}\n >\n <PopoverTrigger asChild className=\"border-input\">\n <Button\n variant=\"outline\"\n role=\"combobox\"\n size=\"lg\"\n aria-expanded={open}\n className={cn(\n 'w-full justify-between font-normal text-sm bg-transparent relative p-3',\n 'border border-border',\n open && 'border-2 outline-hidden ring-1 ring-ring',\n 'focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring'\n )}\n disabled={disabled}\n >\n <span className=\"truncate max-w-[calc(100%-1.5rem)] overflow-hidden whitespace-nowrap\">\n {value ? (\n flattenOptions.find((option) => option.value === value)?.label ||\n selectedOption?.label\n ) : (\n <span className=\"text-gray-400\">{placeholder}</span>\n )}\n </span>\n {value ? (\n <div\n className={cn(\n 'absolute top-0 right-1',\n 'flex items-center justify-center',\n 'w-9 aspect-square [&_svg]:size-5',\n 'opacity-50 cursor-pointer hover:opacity-100'\n )}\n onClick={(e) => {\n e.stopPropagation();\n handleClearSelection();\n }}\n >\n <X />\n </div>\n ) : (\n <ChevronsUpDown className=\"opacity-50 w-4 h-4\" />\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className=\"w-(--radix-popper-anchor-width) max-w-none p-0\"\n align=\"start\"\n >\n <Command shouldFilter={false}>\n <CommandInput\n placeholder={searchLabel}\n value={searchTerm}\n onValueChange={handleSearchChange}\n />\n {typeof commandInputAction === 'function'\n ? commandInputAction(comboboxCallbackStateParams)\n : commandInputAction}\n <CommandList>\n <CommandGroup\n className={cn(!options.length && 'p-0 shadow-none')}\n >\n {loading && <LoadingMask fullWidth />}\n {!loading && Boolean(searchTerm) && (\n <>\n {emptyAction ? (\n <CommandEmpty className=\"flex flex-col gap-3 py-5 px-3 items-center\">\n <span>{emptyLabel}</span>\n {typeof emptyAction === 'function'\n ? emptyAction(comboboxCallbackStateParams)\n : emptyAction}\n </CommandEmpty>\n ) : (\n <CommandEmpty>{emptyLabel}</CommandEmpty>\n )}\n </>\n )}\n {!loading && (\n <>\n {Boolean(options.length) && listHeadAction && (\n <CommandItem\n key='combobox-list-head-action'\n asChild\n className='w-full'\n >\n {typeof listHeadAction === 'function'\n ? listHeadAction(comboboxCallbackStateParams)\n : listHeadAction}\n </CommandItem>\n )}\n <ComboboxOptions\n value={value}\n options={options}\n onChangeOption={onChangeOption}\n setOpen={setOpen}\n />\n </>\n )}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n </div>\n );\n }\n);\n"],"names":["Combobox","forwardRef","props","ref","value","onChange","placeholder","disabled","searchLabel","fetchOptions","itemOptions","emptyLabel","emptyAction","commandInputAction","listHeadAction","onMount","isMounted","useRef","open","setOpen","useState","searchTerm","setSearchTerm","selectedOption","setSelectedOption","loading","setLoading","options","_setOptions","flattenOptions","setFlattenOptions","setOptions","useCallback","stater","flatten","next","res","o","prev","useEffect","handlePopoverOpen","getData","search","fetchedOptions","error","debouncedGetData","useDebounceCallback","handleSearchChange","onChangeOption","option","handleClearSelection","isSearchedEmptyList","useMemo","isEmptyList","comboboxCallbackStateParams","runOnMount","useLayoutEffect","jsx","jsxs","Popover","newOpen","PopoverTrigger","Button","cn","X","ChevronsUpDown","PopoverContent","Command","CommandInput","CommandList","CommandGroup","LoadingMask","CommandEmpty","Fragment","CommandItem","ComboboxOptions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Combobox.js","sources":["../../src/Combobox/Combobox.tsx"],"sourcesContent":["import {\n Dispatch,\n forwardRef, SetStateAction,\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { LoadingMask } from '../LoadingMask';\nimport { Popover, PopoverContent, PopoverTrigger } from '../Popover';\nimport { Button } from '../Button';\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from '../Command';\nimport { cn } from '@oneplatformdev/utils';\nimport { useDebounceCallback } from '@oneplatformdev/hooks';\nimport { ChevronsUpDown, X } from 'lucide-react';\nimport {\n ComboboxCallbackStateParams,\n ComboboxOption,\n ComboboxProps,\n} from './Combobox.types';\nimport { ComboboxOptions } from './ComboboxOptions'; // TODO: refactor next component | nlt code\n\n// TODO: refactor next component | nlt code\nexport const Combobox = forwardRef<HTMLDivElement, ComboboxProps>(\n (props, ref) => {\n const {\n value,\n onChange,\n placeholder,\n disabled,\n searchLabel = 'Type to search...',\n fetchOptions,\n options: itemOptions,\n emptyLabel = 'No options',\n emptyAction,\n commandInputAction,\n listHeadAction,\n onMount,\n } = props;\n const isMounted = useRef(false);\n const [open, setOpen] = useState(false);\n const [searchTerm, setSearchTerm] = useState('');\n const [selectedOption, setSelectedOption] = useState<ComboboxOption>();\n const [loading, setLoading] = useState(false);\n\n const [options, _setOptions] = useState<ComboboxOption[]>([]);\n const [flattenOptions, setFlattenOptions] = useState<ComboboxOption[]>([]);\n const setOptions: Dispatch<SetStateAction<ComboboxOption[]>> = useCallback((stater) => {\n const flatten = (next: ComboboxOption[]) => {\n const res: ComboboxOption[] = [];\n const walk = (nodes?: ComboboxOption[]) => {\n if (!nodes) return;\n for (const node of nodes) {\n res.push(node);\n if (node.items && node.items.length) walk(node.items);\n }\n };\n walk(next);\n setFlattenOptions(res);\n }\n _setOptions((prev) => {\n let next: ComboboxOption[] = prev;\n if(typeof stater === 'function') next = stater(prev)\n else next = stater;\n flatten(next);\n return next;\n });\n }, [])\n\n useEffect(() => {\n itemOptions?.length && setOptions(itemOptions);\n }, [itemOptions]);\n\n const handlePopoverOpen = async () => {\n if (!open) {\n getData();\n setSearchTerm('');\n }\n };\n\n const getData = useCallback(async (search?: string) => {\n setLoading(true);\n try {\n const fetchedOptions = await fetchOptions(search);\n setOptions(fetchedOptions);\n } catch (error) {\n console.error('Unexpected error while get option:', error);\n } finally {\n setLoading(false);\n }\n }, []);\n\n const debouncedGetData = useDebounceCallback(getData, 1000, {\n leading: false,\n trailing: true,\n });\n\n const handleSearchChange = useCallback((value: string) => {\n setLoading(true);\n setSearchTerm(value);\n debouncedGetData(value);\n }, []);\n\n const onChangeOption = useCallback((option: ComboboxOption) => {\n onChange(option.value);\n setSelectedOption(option);\n setLoading(false);\n }, []);\n\n const handleClearSelection = useCallback(() => {\n onChangeOption({ value: '', label: '' });\n setSelectedOption(undefined);\n setLoading(false);\n }, []);\n\n const isSearchedEmptyList = useMemo(() => {\n return Boolean(searchTerm) && !options.length && !loading;\n }, [loading, options.length, searchTerm])\n\n const isEmptyList = useMemo(() => {\n return !options.length && !loading;\n }, [loading, options.length, searchTerm])\n\n const comboboxCallbackStateParams =\n useMemo((): ComboboxCallbackStateParams => {\n return {\n options,\n setOptions,\n selectedOption,\n setSelectedOption,\n search: searchTerm || '',\n setSearch: setSearchTerm,\n open,\n setOpen,\n loading,\n setLoading,\n isEmptyList,\n isSearchedEmptyList,\n };\n }, [loading, open, options, searchTerm, selectedOption, isEmptyList, isSearchedEmptyList]);\n\n const runOnMount = useCallback(() => {\n if (!onMount) {\n isMounted.current = true;\n return;\n }\n onMount(comboboxCallbackStateParams).finally(() => {\n isMounted.current = true;\n });\n }, [comboboxCallbackStateParams, onMount]);\n\n useLayoutEffect(() => {\n runOnMount();\n return () => {\n isMounted.current = false;\n };\n }, []);\n\n return (\n <div className=\"w-full\" ref={ref}>\n <Popover\n open={open}\n onOpenChange={(newOpen) => {\n setOpen(newOpen);\n if (newOpen) handlePopoverOpen();\n }}\n >\n <PopoverTrigger asChild className=\"border-input\">\n <Button\n variant=\"outline\"\n role=\"combobox\"\n size=\"lg\"\n aria-expanded={open}\n className={cn(\n 'w-full justify-between font-normal text-sm bg-transparent relative p-3',\n 'border border-border',\n open && 'border-2 outline-hidden ring-1 ring-ring',\n 'focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring'\n )}\n disabled={disabled}\n >\n <span className=\"truncate max-w-[calc(100%-1.5rem)] overflow-hidden whitespace-nowrap\">\n {value ? (\n flattenOptions.find((option) => option.value === value)?.label ||\n selectedOption?.label\n ) : (\n <span className=\"text-gray-400\">{placeholder}</span>\n )}\n </span>\n {value ? (\n <div\n className={cn(\n 'absolute top-0 right-1',\n 'flex items-center justify-center',\n 'w-9 aspect-square [&_svg]:size-5',\n 'opacity-50 cursor-pointer hover:opacity-100'\n )}\n onClick={(e) => {\n e.stopPropagation();\n handleClearSelection();\n }}\n >\n <X />\n </div>\n ) : (\n <ChevronsUpDown className=\"opacity-50 w-4 h-4\" />\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className=\"w-(--radix-popper-anchor-width) max-w-none p-0\"\n align=\"start\"\n >\n <Command shouldFilter={false}>\n <CommandInput\n placeholder={searchLabel}\n value={searchTerm}\n onValueChange={handleSearchChange}\n />\n {typeof commandInputAction === 'function'\n ? commandInputAction(comboboxCallbackStateParams)\n : commandInputAction}\n <CommandList>\n <CommandGroup\n className={cn(!options.length && 'p-0 shadow-none')}\n >\n {loading && <LoadingMask fullWidth />}\n {!loading && Boolean(searchTerm) && (\n <>\n {emptyAction ? (\n <CommandEmpty className=\"flex flex-col gap-3 py-5 px-3 items-center\">\n <span>{emptyLabel}</span>\n {typeof emptyAction === 'function'\n ? emptyAction(comboboxCallbackStateParams)\n : emptyAction}\n </CommandEmpty>\n ) : (\n <CommandEmpty>{emptyLabel}</CommandEmpty>\n )}\n </>\n )}\n {!loading && (\n <>\n {Boolean(options.length) && listHeadAction && (\n <CommandItem\n key='combobox-list-head-action'\n asChild\n className='w-full'\n >\n {typeof listHeadAction === 'function'\n ? listHeadAction(comboboxCallbackStateParams)\n : listHeadAction}\n </CommandItem>\n )}\n <ComboboxOptions\n value={value}\n options={options}\n onChangeOption={onChangeOption}\n setOpen={setOpen}\n />\n </>\n )}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n </div>\n );\n }\n);\n"],"names":["Combobox","forwardRef","props","ref","value","onChange","placeholder","disabled","searchLabel","fetchOptions","itemOptions","emptyLabel","emptyAction","commandInputAction","listHeadAction","onMount","isMounted","useRef","open","setOpen","useState","searchTerm","setSearchTerm","selectedOption","setSelectedOption","loading","setLoading","options","_setOptions","flattenOptions","setFlattenOptions","setOptions","useCallback","stater","flatten","next","res","walk","nodes","node","prev","useEffect","handlePopoverOpen","getData","search","fetchedOptions","error","debouncedGetData","useDebounceCallback","handleSearchChange","onChangeOption","option","handleClearSelection","isSearchedEmptyList","useMemo","isEmptyList","comboboxCallbackStateParams","runOnMount","useLayoutEffect","jsx","jsxs","Popover","newOpen","PopoverTrigger","Button","cn","X","ChevronsUpDown","PopoverContent","Command","CommandInput","CommandList","CommandGroup","LoadingMask","CommandEmpty","Fragment","CommandItem","ComboboxOptions"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oneplatformdev/ui",
|
|
3
|
-
"version": "0.1.10-
|
|
3
|
+
"version": "0.1.10-71",
|
|
4
4
|
"description": "UI component library for OnePlatform",
|
|
5
5
|
"author": "One Platform Development Team",
|
|
6
6
|
"keywords": [
|
|
@@ -105,8 +105,8 @@
|
|
|
105
105
|
"recharts": "^3.2.0",
|
|
106
106
|
"sonner": "^2.0.7",
|
|
107
107
|
"vaul": "^1.1.2",
|
|
108
|
-
"@oneplatformdev/
|
|
109
|
-
"@oneplatformdev/
|
|
110
|
-
"@oneplatformdev/
|
|
108
|
+
"@oneplatformdev/hooks": "^0.1.0-106",
|
|
109
|
+
"@oneplatformdev/tokens": "^0.0.1-93",
|
|
110
|
+
"@oneplatformdev/utils": "^0.1.1-120"
|
|
111
111
|
}
|
|
112
112
|
}
|