@egose/shadcn-theme 0.1.8 → 0.1.9
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/{chunk-RSFL2TUC.mjs → chunk-AGPEWIPR.mjs} +2 -2
- package/{chunk-RSFL2TUC.mjs.map → chunk-AGPEWIPR.mjs.map} +1 -1
- package/{chunk-S6HQ25BZ.js → chunk-YEGS4ETW.js} +2 -2
- package/chunk-YEGS4ETW.js.map +1 -0
- package/components/form/hook-multi-select.d.mts +2 -2
- package/components/form/hook-multi-select.d.ts +2 -2
- package/components/form/hook-multi-select.js +7 -6
- package/components/form/hook-multi-select.js.map +1 -1
- package/components/form/hook-multi-select.mjs +2 -1
- package/components/form/hook-multi-select.mjs.map +1 -1
- package/components/form/hook-tag-picker.d.mts +2 -2
- package/components/form/hook-tag-picker.d.ts +2 -2
- package/components/form/hook-tag-picker.js +5 -4
- package/components/form/hook-tag-picker.js.map +1 -1
- package/components/form/hook-tag-picker.mjs +1 -0
- package/components/form/hook-tag-picker.mjs.map +1 -1
- package/components/form/multi-select.js +2 -2
- package/components/form/multi-select.mjs +1 -1
- package/components/ui/multi-select.d.mts +1 -1
- package/components/ui/multi-select.d.ts +1 -1
- package/package.json +1 -1
- package/chunk-S6HQ25BZ.js.map +0 -1
|
@@ -18,9 +18,9 @@ import {
|
|
|
18
18
|
} from "./chunk-KGUUDFJE.mjs";
|
|
19
19
|
|
|
20
20
|
// components/form/multi-select.tsx
|
|
21
|
+
import React from "react";
|
|
21
22
|
import _isString from "lodash-es/isString";
|
|
22
23
|
import _kebabCase from "lodash-es/kebabCase";
|
|
23
|
-
import React from "react";
|
|
24
24
|
function FormMultiSelect({
|
|
25
25
|
id,
|
|
26
26
|
name,
|
|
@@ -79,4 +79,4 @@ function FormMultiSelect({
|
|
|
79
79
|
export {
|
|
80
80
|
FormMultiSelect
|
|
81
81
|
};
|
|
82
|
-
//# sourceMappingURL=chunk-
|
|
82
|
+
//# sourceMappingURL=chunk-AGPEWIPR.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../components/form/multi-select.tsx"],"sourcesContent":["\"use client\";\nimport _isString from 'lodash-es/isString';\nimport _kebabCase from 'lodash-es/kebabCase';\
|
|
1
|
+
{"version":3,"sources":["../components/form/multi-select.tsx"],"sourcesContent":["\"use client\";\nimport React from 'react';\nimport _isString from 'lodash-es/isString';\nimport _kebabCase from 'lodash-es/kebabCase';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport {\n MultiSelector,\n MultiSelectorInput,\n MultiSelectorItem,\n MultiSelectorList,\n MultiSelectorTrigger,\n type MultiSelectValue,\n} from '../ui/multi-select';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\n\nexport interface FormMultiSelectProps {\n id?: string;\n name: string;\n label?: string;\n placeholder?: string;\n data: MultiSelectValue[] | string[];\n value: string[];\n onChange: (values: string[]) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n trigger?: string;\n input?: string;\n content?: string;\n };\n required?: boolean;\n disabled?: boolean;\n loop?: boolean;\n}\n\nexport function FormMultiSelect({\n id,\n name,\n label,\n placeholder = 'Select options...',\n data,\n value = [],\n onChange,\n classNames,\n required,\n disabled,\n loop = false,\n}: FormMultiSelectProps) {\n const options: MultiSelectValue[] = React.useMemo(() => {\n if (!data || data.length === 0) return [];\n if (_isString(data[0])) {\n return (data as string[]).map((currentValue) => ({ label: currentValue, value: currentValue }));\n }\n return data as MultiSelectValue[];\n }, [data]);\n\n const selectedValues = React.useMemo(() => {\n return value\n .map((currentValue) => options.find((option) => option.value === currentValue))\n .filter((option): option is MultiSelectValue => !!option);\n }, [options, value]);\n\n const handleValueChange = (newValues: MultiSelectValue[]) => {\n onChange(newValues.map((currentValue) => currentValue.value));\n };\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('flex flex-col gap-2', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <MultiSelector\n values={selectedValues}\n onValuesChange={handleValueChange}\n loop={loop}\n disabled={disabled}\n className=\"p-0\"\n >\n <Popover>\n <PopoverTrigger asChild>\n <MultiSelectorTrigger className={cn('cursor-pointer', classNames?.trigger)}>\n <MultiSelectorInput\n id={id}\n disabled={disabled}\n placeholder={selectedValues.length === 0 ? placeholder : ''}\n className={classNames?.input}\n />\n </MultiSelectorTrigger>\n </PopoverTrigger>\n\n <PopoverContent\n align=\"start\"\n className={cn('w-[var(--radix-popover-trigger-width)] p-0', classNames?.content)}\n >\n <MultiSelectorList className=\"static relative border-none shadow-none\">\n {options.map((option) => (\n <MultiSelectorItem key={option.value} value={option.value} label={option.label}>\n <span>{option.label}</span>\n </MultiSelectorItem>\n ))}\n </MultiSelectorList>\n </PopoverContent>\n </Popover>\n </MultiSelector>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AACA,OAAO,WAAW;AAClB,OAAO,eAAe;AACtB,OAAO,gBAAgB;AAkChB,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA,QAAQ,CAAC;AAAA,EACT;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AACT,GAAyB;AACvB,QAAM,UAA8B,MAAM,QAAQ,MAAM;AACtD,QAAI,CAAC,QAAQ,KAAK,WAAW,EAAG,QAAO,CAAC;AACxC,QAAI,UAAU,KAAK,CAAC,CAAC,GAAG;AACtB,aAAQ,KAAkB,IAAI,CAAC,kBAAkB,EAAE,OAAO,cAAc,OAAO,aAAa,EAAE;AAAA,IAChG;AACA,WAAO;AAAA,EACT,GAAG,CAAC,IAAI,CAAC;AAET,QAAM,iBAAiB,MAAM,QAAQ,MAAM;AACzC,WAAO,MACJ,IAAI,CAAC,iBAAiB,QAAQ,KAAK,CAAC,WAAW,OAAO,UAAU,YAAY,CAAC,EAC7E,OAAO,CAAC,WAAuC,CAAC,CAAC,MAAM;AAAA,EAC5D,GAAG,CAAC,SAAS,KAAK,CAAC;AAEnB,QAAM,oBAAoB,CAAC,cAAkC;AAC3D,aAAS,UAAU,IAAI,CAAC,iBAAiB,aAAa,KAAK,CAAC;AAAA,EAC9D;AAEA,MAAI,CAAC,GAAI,MAAK,WAAW,IAAI;AAE7B,SACE,oCAAC,SAAI,WAAW,GAAG,uBAAuB,yCAAY,OAAO,KAC1D,SACC,oCAAC,SAAM,SAAS,IAAI,WAAW,yCAAY,OAAO,YAC/C,KACH,GAGF;AAAA,IAAC;AAAA;AAAA,MACC,QAAQ;AAAA,MACR,gBAAgB;AAAA,MAChB;AAAA,MACA;AAAA,MACA,WAAU;AAAA;AAAA,IAEV,oCAAC,eACC,oCAAC,kBAAe,SAAO,QACrB,oCAAC,wBAAqB,WAAW,GAAG,kBAAkB,yCAAY,OAAO,KACvE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,aAAa,eAAe,WAAW,IAAI,cAAc;AAAA,QACzD,WAAW,yCAAY;AAAA;AAAA,IACzB,CACF,CACF,GAEA;AAAA,MAAC;AAAA;AAAA,QACC,OAAM;AAAA,QACN,WAAW,GAAG,8CAA8C,yCAAY,OAAO;AAAA;AAAA,MAE/E,oCAAC,qBAAkB,WAAU,6CAC1B,QAAQ,IAAI,CAAC,WACZ,oCAAC,qBAAkB,KAAK,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,SACvE,oCAAC,cAAM,OAAO,KAAM,CACtB,CACD,CACH;AAAA,IACF,CACF;AAAA,EACF,CACF;AAEJ;","names":[]}
|
|
@@ -19,9 +19,9 @@ var _chunkCKGMFUU2js = require('./chunk-CKGMFUU2.js');
|
|
|
19
19
|
var _chunkPSPAJNNBjs = require('./chunk-PSPAJNNB.js');
|
|
20
20
|
|
|
21
21
|
// components/form/multi-select.tsx
|
|
22
|
+
var _react = require('react'); var _react2 = _interopRequireDefault(_react);
|
|
22
23
|
var _isString2 = require('lodash-es/isString'); var _isString3 = _interopRequireDefault(_isString2);
|
|
23
24
|
var _kebabCase2 = require('lodash-es/kebabCase'); var _kebabCase3 = _interopRequireDefault(_kebabCase2);
|
|
24
|
-
var _react = require('react'); var _react2 = _interopRequireDefault(_react);
|
|
25
25
|
function FormMultiSelect({
|
|
26
26
|
id,
|
|
27
27
|
name,
|
|
@@ -80,4 +80,4 @@ function FormMultiSelect({
|
|
|
80
80
|
|
|
81
81
|
|
|
82
82
|
exports.FormMultiSelect = FormMultiSelect;
|
|
83
|
-
//# sourceMappingURL=chunk-
|
|
83
|
+
//# sourceMappingURL=chunk-YEGS4ETW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-YEGS4ETW.js","../components/form/multi-select.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-YEGS4ETW.js","sourcesContent":[null,"\"use client\";\nimport React from 'react';\nimport _isString from 'lodash-es/isString';\nimport _kebabCase from 'lodash-es/kebabCase';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport {\n MultiSelector,\n MultiSelectorInput,\n MultiSelectorItem,\n MultiSelectorList,\n MultiSelectorTrigger,\n type MultiSelectValue,\n} from '../ui/multi-select';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\n\nexport interface FormMultiSelectProps {\n id?: string;\n name: string;\n label?: string;\n placeholder?: string;\n data: MultiSelectValue[] | string[];\n value: string[];\n onChange: (values: string[]) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n trigger?: string;\n input?: string;\n content?: string;\n };\n required?: boolean;\n disabled?: boolean;\n loop?: boolean;\n}\n\nexport function FormMultiSelect({\n id,\n name,\n label,\n placeholder = 'Select options...',\n data,\n value = [],\n onChange,\n classNames,\n required,\n disabled,\n loop = false,\n}: FormMultiSelectProps) {\n const options: MultiSelectValue[] = React.useMemo(() => {\n if (!data || data.length === 0) return [];\n if (_isString(data[0])) {\n return (data as string[]).map((currentValue) => ({ label: currentValue, value: currentValue }));\n }\n return data as MultiSelectValue[];\n }, [data]);\n\n const selectedValues = React.useMemo(() => {\n return value\n .map((currentValue) => options.find((option) => option.value === currentValue))\n .filter((option): option is MultiSelectValue => !!option);\n }, [options, value]);\n\n const handleValueChange = (newValues: MultiSelectValue[]) => {\n onChange(newValues.map((currentValue) => currentValue.value));\n };\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('flex flex-col gap-2', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <MultiSelector\n values={selectedValues}\n onValuesChange={handleValueChange}\n loop={loop}\n disabled={disabled}\n className=\"p-0\"\n >\n <Popover>\n <PopoverTrigger asChild>\n <MultiSelectorTrigger className={cn('cursor-pointer', classNames?.trigger)}>\n <MultiSelectorInput\n id={id}\n disabled={disabled}\n placeholder={selectedValues.length === 0 ? placeholder : ''}\n className={classNames?.input}\n />\n </MultiSelectorTrigger>\n </PopoverTrigger>\n\n <PopoverContent\n align=\"start\"\n className={cn('w-[var(--radix-popover-trigger-width)] p-0', classNames?.content)}\n >\n <MultiSelectorList className=\"static relative border-none shadow-none\">\n {options.map((option) => (\n <MultiSelectorItem key={option.value} value={option.value} label={option.label}>\n <span>{option.label}</span>\n </MultiSelectorItem>\n ))}\n </MultiSelectorList>\n </PopoverContent>\n </Popover>\n </MultiSelector>\n </div>\n );\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import { FieldValues, Path } from 'react-hook-form';
|
|
3
3
|
import { FormMultiSelectProps } from './multi-select.mjs';
|
|
4
4
|
import { HookFormRules } from './types.mjs';
|
|
@@ -9,6 +9,6 @@ declare function HookFormMultiSelect<T extends FieldValues>({ id, name, label, e
|
|
|
9
9
|
rules?: HookFormRules<T>;
|
|
10
10
|
name: Path<T>;
|
|
11
11
|
error?: string;
|
|
12
|
-
}):
|
|
12
|
+
}): React__default.JSX.Element;
|
|
13
13
|
|
|
14
14
|
export { HookFormMultiSelect };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import { FieldValues, Path } from 'react-hook-form';
|
|
3
3
|
import { FormMultiSelectProps } from './multi-select.js';
|
|
4
4
|
import { HookFormRules } from './types.js';
|
|
@@ -9,6 +9,6 @@ declare function HookFormMultiSelect<T extends FieldValues>({ id, name, label, e
|
|
|
9
9
|
rules?: HookFormRules<T>;
|
|
10
10
|
name: Path<T>;
|
|
11
11
|
error?: string;
|
|
12
|
-
}):
|
|
12
|
+
}): React__default.JSX.Element;
|
|
13
13
|
|
|
14
14
|
export { HookFormMultiSelect };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _chunkYEGS4ETWjs = require('../../chunk-YEGS4ETW.js');
|
|
6
6
|
require('../../chunk-WXEEDLLR.js');
|
|
7
7
|
require('../../chunk-LAIO3QZX.js');
|
|
8
8
|
require('../../chunk-LPDYWZN6.js');
|
|
@@ -26,6 +26,7 @@ var _chunkPSPAJNNBjs = require('../../chunk-PSPAJNNB.js');
|
|
|
26
26
|
var _chunk2NMEKWO5js = require('../../chunk-2NMEKWO5.js');
|
|
27
27
|
|
|
28
28
|
// components/form/hook-multi-select.tsx
|
|
29
|
+
var _react = require('react'); var _react2 = _interopRequireDefault(_react);
|
|
29
30
|
var _reacthookform = require('react-hook-form');
|
|
30
31
|
function HookFormMultiSelect(_a) {
|
|
31
32
|
var _b = _a, {
|
|
@@ -47,15 +48,15 @@ function HookFormMultiSelect(_a) {
|
|
|
47
48
|
]);
|
|
48
49
|
const { control } = _reacthookform.useFormContext.call(void 0, );
|
|
49
50
|
const _a2 = classNames != null ? classNames : {}, { wrapper } = _a2, restClassnames = _chunk2NMEKWO5js.__objRest.call(void 0, _a2, ["wrapper"]);
|
|
50
|
-
return /* @__PURE__ */
|
|
51
|
+
return /* @__PURE__ */ _react2.default.createElement("div", { className: _chunkPSPAJNNBjs.cn.call(void 0, "$hook-multi-select", wrapper) }, /* @__PURE__ */ _react2.default.createElement(
|
|
51
52
|
_reacthookform.Controller,
|
|
52
53
|
{
|
|
53
54
|
control,
|
|
54
55
|
name,
|
|
55
56
|
rules,
|
|
56
57
|
render: ({ field: { onChange, value } }) => {
|
|
57
|
-
return /* @__PURE__ */
|
|
58
|
-
|
|
58
|
+
return /* @__PURE__ */ _react2.default.createElement(
|
|
59
|
+
_chunkYEGS4ETWjs.FormMultiSelect,
|
|
59
60
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
60
61
|
id,
|
|
61
62
|
name,
|
|
@@ -68,7 +69,7 @@ function HookFormMultiSelect(_a) {
|
|
|
68
69
|
);
|
|
69
70
|
}
|
|
70
71
|
}
|
|
71
|
-
), /* @__PURE__ */
|
|
72
|
+
), /* @__PURE__ */ _react2.default.createElement(_chunk6POWZMNDjs.FormError, { field: name, className: "mt-1", message: error }));
|
|
72
73
|
}
|
|
73
74
|
|
|
74
75
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/hook-multi-select.js","../../../components/form/hook-multi-select.tsx"],"names":["_a"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/hook-multi-select.js","../../../components/form/hook-multi-select.tsx"],"names":["_a"],"mappings":"AAAA,qLAAY;AACZ;AACE;AACF,0DAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC;AACE;AACF,0DAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC;AACE;AACF,0DAAgC;AAChC;AACE;AACA;AACF,0DAAgC;AAChC;AACA;ACzBA,4EAAkB;AAClB,gDAAwE;AASjE,SAAS,mBAAA,CAA2C,EAAA,EAaxD;AAbwD,EAAA,IAAA,GAAA,EAAA,EAAA,EACzD;AAAA,IAAA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA,EAAW;AAAA,EAlBb,EAAA,EAW2D,EAAA,EAQtD,KAAA,EAAA,wCAAA,EARsD,EAQtD;AAAA,IAPH,IAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,OAAA;AAAA,IACA,OAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,EAAA,CAAA,CAAA;AAOA,EAAA,MAAM,EAAE,QAAQ,EAAA,EAAI,2CAAA,CAAkB;AACtC,EAAA,MAAuCA,IAAAA,EAAA,WAAA,GAAA,KAAA,EAAA,WAAA,EAAc,CAAC,CAAA,EAA9C,EAAA,QA1BV,EAAA,EA0ByCA,GAAAA,EAAnB,eAAA,EAAA,wCAAA,GAAmBA,EAAnB,CAAZ,SAAA,CAAA,CAAA;AAER,EAAA,uBACE,eAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,oBAAG,EAAsB,OAAO,EAAA,CAAA,kBAC9C,eAAA,CAAA,aAAA;AAAA,IAAC,yBAAA;AAAA,IAAA;AAAA,MACC,OAAA;AAAA,MACA,IAAA;AAAA,MACA,KAAA;AAAA,MACA,MAAA,EAAQ,CAAC,EAAE,KAAA,EAAO,EAAE,QAAA,EAAU,MAAM,EAAE,CAAA,EAAA,GAAM;AAC1C,QAAA,uBACE,eAAA,CAAA,aAAA;AAAA,UAAC,gCAAA;AAAA,UAAA,6CAAA;AAAA,YACC,EAAA;AAAA,YACA,IAAA;AAAA,YACA,KAAA;AAAA,YACA,KAAA,EAAO,MAAA,GAAA,KAAA,EAAA,MAAA,EAAS,CAAC,CAAA;AAAA,YACjB,QAAA;AAAA,YACA,QAAA;AAAA,YACA,UAAA,EAAY;AAAA,UAAA,CAAA,EACR,IAAA;AAAA,QACN,CAAA;AAAA,MAEJ;AAAA,IAAA;AAAA,EACF,CAAA,kBAEA,eAAA,CAAA,aAAA,CAAC,0BAAA,EAAA,EAAU,KAAA,EAAO,IAAA,EAAM,SAAA,EAAU,MAAA,EAAO,OAAA,EAAS,MAAA,CAAO,CAC3D,CAAA;AAEJ;ADmBA;AACE;AACF,kDAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/hook-multi-select.js","sourcesContent":[null,"\"use client\";\nimport React from 'react';\nimport { Controller, type FieldValues, type Path, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../utils/ui';\nimport { FormError } from './error';\nimport { FormMultiSelect } from './multi-select';\n\nimport type { FormMultiSelectProps } from './multi-select';\nimport type { HookFormRules } from './types';\n\nexport function HookFormMultiSelect<T extends FieldValues>({\n id,\n name,\n label,\n error,\n rules,\n classNames,\n disabled = false,\n ...rest\n}: Omit<FormMultiSelectProps, 'name' | 'onChange' | 'value'> & {\n rules?: HookFormRules<T>;\n name: Path<T>;\n error?: string;\n}) {\n const { control } = useFormContext<T>();\n const { wrapper, ...restClassnames } = classNames ?? {};\n\n return (\n <div className={cn('$hook-multi-select', wrapper)}>\n <Controller\n control={control}\n name={name}\n rules={rules}\n render={({ field: { onChange, value } }) => {\n return (\n <FormMultiSelect\n id={id}\n name={name}\n label={label}\n value={value ?? []}\n onChange={onChange}\n disabled={disabled}\n classNames={restClassnames}\n {...rest}\n />\n );\n }}\n />\n\n <FormError field={name} className=\"mt-1\" message={error} />\n </div>\n );\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
FormMultiSelect
|
|
4
|
-
} from "../../chunk-
|
|
4
|
+
} from "../../chunk-AGPEWIPR.mjs";
|
|
5
5
|
import "../../chunk-RNKMPQDZ.mjs";
|
|
6
6
|
import "../../chunk-ZFBUIBJH.mjs";
|
|
7
7
|
import "../../chunk-YDRPNCWF.mjs";
|
|
@@ -25,6 +25,7 @@ import {
|
|
|
25
25
|
} from "../../chunk-YOSPWY5K.mjs";
|
|
26
26
|
|
|
27
27
|
// components/form/hook-multi-select.tsx
|
|
28
|
+
import React from "react";
|
|
28
29
|
import { Controller, useFormContext } from "react-hook-form";
|
|
29
30
|
function HookFormMultiSelect(_a) {
|
|
30
31
|
var _b = _a, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../components/form/hook-multi-select.tsx"],"sourcesContent":["\"use client\";\nimport { Controller, type FieldValues, type Path, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../utils/ui';\nimport { FormError } from './error';\nimport { FormMultiSelect } from './multi-select';\n\nimport type { FormMultiSelectProps } from './multi-select';\nimport type { HookFormRules } from './types';\n\nexport function HookFormMultiSelect<T extends FieldValues>({\n id,\n name,\n label,\n error,\n rules,\n classNames,\n disabled = false,\n ...rest\n}: Omit<FormMultiSelectProps, 'name' | 'onChange' | 'value'> & {\n rules?: HookFormRules<T>;\n name: Path<T>;\n error?: string;\n}) {\n const { control } = useFormContext<T>();\n const { wrapper, ...restClassnames } = classNames ?? {};\n\n return (\n <div className={cn('$hook-multi-select', wrapper)}>\n <Controller\n control={control}\n name={name}\n rules={rules}\n render={({ field: { onChange, value } }) => {\n return (\n <FormMultiSelect\n id={id}\n name={name}\n label={label}\n value={value ?? []}\n onChange={onChange}\n disabled={disabled}\n classNames={restClassnames}\n {...rest}\n />\n );\n }}\n />\n\n <FormError field={name} className=\"mt-1\" message={error} />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,SAAS,YAAyC,sBAAsB;AASjE,SAAS,oBAA2C,IAaxD;AAbwD,eACzD;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../components/form/hook-multi-select.tsx"],"sourcesContent":["\"use client\";\nimport React from 'react';\nimport { Controller, type FieldValues, type Path, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../utils/ui';\nimport { FormError } from './error';\nimport { FormMultiSelect } from './multi-select';\n\nimport type { FormMultiSelectProps } from './multi-select';\nimport type { HookFormRules } from './types';\n\nexport function HookFormMultiSelect<T extends FieldValues>({\n id,\n name,\n label,\n error,\n rules,\n classNames,\n disabled = false,\n ...rest\n}: Omit<FormMultiSelectProps, 'name' | 'onChange' | 'value'> & {\n rules?: HookFormRules<T>;\n name: Path<T>;\n error?: string;\n}) {\n const { control } = useFormContext<T>();\n const { wrapper, ...restClassnames } = classNames ?? {};\n\n return (\n <div className={cn('$hook-multi-select', wrapper)}>\n <Controller\n control={control}\n name={name}\n rules={rules}\n render={({ field: { onChange, value } }) => {\n return (\n <FormMultiSelect\n id={id}\n name={name}\n label={label}\n value={value ?? []}\n onChange={onChange}\n disabled={disabled}\n classNames={restClassnames}\n {...rest}\n />\n );\n }}\n />\n\n <FormError field={name} className=\"mt-1\" message={error} />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,WAAW;AAClB,SAAS,YAAyC,sBAAsB;AASjE,SAAS,oBAA2C,IAaxD;AAbwD,eACzD;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,EAlBb,IAW2D,IAQtD,iBARsD,IAQtD;AAAA,IAPH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAOA,QAAM,EAAE,QAAQ,IAAI,eAAkB;AACtC,QAAuCA,MAAA,kCAAc,CAAC,GAA9C,UA1BV,IA0ByCA,KAAnB,2BAAmBA,KAAnB,CAAZ;AAER,SACE,oCAAC,SAAI,WAAW,GAAG,sBAAsB,OAAO,KAC9C;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,QAAQ,CAAC,EAAE,OAAO,EAAE,UAAU,MAAM,EAAE,MAAM;AAC1C,eACE;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA;AAAA,YACA,OAAO,wBAAS,CAAC;AAAA,YACjB;AAAA,YACA;AAAA,YACA,YAAY;AAAA,aACR;AAAA,QACN;AAAA,MAEJ;AAAA;AAAA,EACF,GAEA,oCAAC,aAAU,OAAO,MAAM,WAAU,QAAO,SAAS,OAAO,CAC3D;AAEJ;","names":["_a"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import { FieldValues, Path } from 'react-hook-form';
|
|
3
3
|
import { FormTagPickerProps } from './tag-picker.mjs';
|
|
4
4
|
import { HookFormRules } from './types.mjs';
|
|
@@ -7,6 +7,6 @@ declare function HookFormTagPicker<T extends FieldValues>({ id, name, label, err
|
|
|
7
7
|
rules?: HookFormRules<T>;
|
|
8
8
|
name: Path<T>;
|
|
9
9
|
error?: string;
|
|
10
|
-
}):
|
|
10
|
+
}): React__default.JSX.Element;
|
|
11
11
|
|
|
12
12
|
export { HookFormTagPicker };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import { FieldValues, Path } from 'react-hook-form';
|
|
3
3
|
import { FormTagPickerProps } from './tag-picker.js';
|
|
4
4
|
import { HookFormRules } from './types.js';
|
|
@@ -7,6 +7,6 @@ declare function HookFormTagPicker<T extends FieldValues>({ id, name, label, err
|
|
|
7
7
|
rules?: HookFormRules<T>;
|
|
8
8
|
name: Path<T>;
|
|
9
9
|
error?: string;
|
|
10
|
-
}):
|
|
10
|
+
}): React__default.JSX.Element;
|
|
11
11
|
|
|
12
12
|
export { HookFormTagPicker };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
var _chunkP6L4JTWOjs = require('../../chunk-P6L4JTWO.js');
|
|
@@ -18,6 +18,7 @@ var _chunkPSPAJNNBjs = require('../../chunk-PSPAJNNB.js');
|
|
|
18
18
|
var _chunk2NMEKWO5js = require('../../chunk-2NMEKWO5.js');
|
|
19
19
|
|
|
20
20
|
// components/form/hook-tag-picker.tsx
|
|
21
|
+
var _react = require('react'); var _react2 = _interopRequireDefault(_react);
|
|
21
22
|
var _reacthookform = require('react-hook-form');
|
|
22
23
|
function HookFormTagPicker(_a) {
|
|
23
24
|
var _b = _a, {
|
|
@@ -39,13 +40,13 @@ function HookFormTagPicker(_a) {
|
|
|
39
40
|
]);
|
|
40
41
|
const { control } = _reacthookform.useFormContext.call(void 0, );
|
|
41
42
|
const _a2 = classNames != null ? classNames : {}, { wrapper } = _a2, restClassnames = _chunk2NMEKWO5js.__objRest.call(void 0, _a2, ["wrapper"]);
|
|
42
|
-
return /* @__PURE__ */
|
|
43
|
+
return /* @__PURE__ */ _react2.default.createElement("div", { className: _chunkPSPAJNNBjs.cn.call(void 0, "$hook-tag-picker", wrapper) }, /* @__PURE__ */ _react2.default.createElement(
|
|
43
44
|
_reacthookform.Controller,
|
|
44
45
|
{
|
|
45
46
|
control,
|
|
46
47
|
name,
|
|
47
48
|
rules,
|
|
48
|
-
render: ({ field: { onChange, value } }) => /* @__PURE__ */
|
|
49
|
+
render: ({ field: { onChange, value } }) => /* @__PURE__ */ _react2.default.createElement(
|
|
49
50
|
_chunkP6L4JTWOjs.FormTagPicker,
|
|
50
51
|
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
51
52
|
id,
|
|
@@ -58,7 +59,7 @@ function HookFormTagPicker(_a) {
|
|
|
58
59
|
}, rest)
|
|
59
60
|
)
|
|
60
61
|
}
|
|
61
|
-
), /* @__PURE__ */
|
|
62
|
+
), /* @__PURE__ */ _react2.default.createElement(_chunk6POWZMNDjs.FormError, { field: name, className: "mt-1", message: error }));
|
|
62
63
|
}
|
|
63
64
|
|
|
64
65
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/hook-tag-picker.js","../../../components/form/hook-tag-picker.tsx"],"names":["_a"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/hook-tag-picker.js","../../../components/form/hook-tag-picker.tsx"],"names":["_a"],"mappings":"AAAA,qLAAY;AACZ;AACE;AACF,0DAAgC;AAChC,mCAAgC;AAChC,mCAAgC;AAChC;AACE;AACF,0DAAgC;AAChC,mCAAgC;AAChC;AACE;AACF,0DAAgC;AAChC;AACE;AACA;AACF,0DAAgC;AAChC;AACA;ACjBA,4EAAkB;AAClB,gDAAwE;AASjE,SAAS,iBAAA,CAAyC,EAAA,EAatD;AAbsD,EAAA,IAAA,GAAA,EAAA,EAAA,EACvD;AAAA,IAAA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA,EAAW;AAAA,EAlBb,EAAA,EAWyD,EAAA,EAQpD,KAAA,EAAA,wCAAA,EARoD,EAQpD;AAAA,IAPH,IAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,OAAA;AAAA,IACA,OAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,EAAA,CAAA,CAAA;AAOA,EAAA,MAAM,EAAE,QAAQ,EAAA,EAAI,2CAAA,CAAkB;AACtC,EAAA,MAAuCA,IAAAA,EAAA,WAAA,GAAA,KAAA,EAAA,WAAA,EAAc,CAAC,CAAA,EAA9C,EAAA,QA1BV,EAAA,EA0ByCA,GAAAA,EAAnB,eAAA,EAAA,wCAAA,GAAmBA,EAAnB,CAAZ,SAAA,CAAA,CAAA;AAER,EAAA,uBACE,eAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,kBAAG,EAAoB,OAAO,EAAA,CAAA,kBAC5C,eAAA,CAAA,aAAA;AAAA,IAAC,yBAAA;AAAA,IAAA;AAAA,MACC,OAAA;AAAA,MACA,IAAA;AAAA,MACA,KAAA;AAAA,MACA,MAAA,EAAQ,CAAC,EAAE,KAAA,EAAO,EAAE,QAAA,EAAU,MAAM,EAAE,CAAA,EAAA,mBACpC,eAAA,CAAA,aAAA;AAAA,QAAC,8BAAA;AAAA,QAAA,6CAAA;AAAA,UACC,EAAA;AAAA,UACA,IAAA;AAAA,UACA,KAAA;AAAA,UACA,KAAA,EAAO,MAAA,GAAA,KAAA,EAAA,MAAA,EAAS,CAAC,CAAA;AAAA,UACjB,QAAA;AAAA,UACA,QAAA;AAAA,UACA,UAAA,EAAY;AAAA,QAAA,CAAA,EACR,IAAA;AAAA,MACN;AAAA,IAAA;AAAA,EAEJ,CAAA,kBAEA,eAAA,CAAA,aAAA,CAAC,0BAAA,EAAA,EAAU,KAAA,EAAO,IAAA,EAAM,SAAA,EAAU,MAAA,EAAO,OAAA,EAAS,MAAA,CAAO,CAC3D,CAAA;AAEJ;ADWA;AACE;AACF,8CAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/hook-tag-picker.js","sourcesContent":[null,"\"use client\";\nimport React from 'react';\nimport { Controller, type FieldValues, type Path, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../utils/ui';\nimport { FormError } from './error';\nimport { FormTagPicker } from './tag-picker';\n\nimport type { FormTagPickerProps } from './tag-picker';\nimport type { HookFormRules } from './types';\n\nexport function HookFormTagPicker<T extends FieldValues>({\n id,\n name,\n label,\n error,\n rules,\n classNames,\n disabled = false,\n ...rest\n}: Omit<FormTagPickerProps, 'name' | 'onChange' | 'value'> & {\n rules?: HookFormRules<T>;\n name: Path<T>;\n error?: string;\n}) {\n const { control } = useFormContext<T>();\n const { wrapper, ...restClassnames } = classNames ?? {};\n\n return (\n <div className={cn('$hook-tag-picker', wrapper)}>\n <Controller\n control={control}\n name={name}\n rules={rules}\n render={({ field: { onChange, value } }) => (\n <FormTagPicker\n id={id}\n name={name}\n label={label}\n value={value ?? []}\n onChange={onChange}\n disabled={disabled}\n classNames={restClassnames}\n {...rest}\n />\n )}\n />\n\n <FormError field={name} className=\"mt-1\" message={error} />\n </div>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../components/form/hook-tag-picker.tsx"],"sourcesContent":["\"use client\";\nimport { Controller, type FieldValues, type Path, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../utils/ui';\nimport { FormError } from './error';\nimport { FormTagPicker } from './tag-picker';\n\nimport type { FormTagPickerProps } from './tag-picker';\nimport type { HookFormRules } from './types';\n\nexport function HookFormTagPicker<T extends FieldValues>({\n id,\n name,\n label,\n error,\n rules,\n classNames,\n disabled = false,\n ...rest\n}: Omit<FormTagPickerProps, 'name' | 'onChange' | 'value'> & {\n rules?: HookFormRules<T>;\n name: Path<T>;\n error?: string;\n}) {\n const { control } = useFormContext<T>();\n const { wrapper, ...restClassnames } = classNames ?? {};\n\n return (\n <div className={cn('$hook-tag-picker', wrapper)}>\n <Controller\n control={control}\n name={name}\n rules={rules}\n render={({ field: { onChange, value } }) => (\n <FormTagPicker\n id={id}\n name={name}\n label={label}\n value={value ?? []}\n onChange={onChange}\n disabled={disabled}\n classNames={restClassnames}\n {...rest}\n />\n )}\n />\n\n <FormError field={name} className=\"mt-1\" message={error} />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AACA,SAAS,YAAyC,sBAAsB;AASjE,SAAS,kBAAyC,IAatD;AAbsD,eACvD;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../components/form/hook-tag-picker.tsx"],"sourcesContent":["\"use client\";\nimport React from 'react';\nimport { Controller, type FieldValues, type Path, useFormContext } from 'react-hook-form';\n\nimport { cn } from '../../utils/ui';\nimport { FormError } from './error';\nimport { FormTagPicker } from './tag-picker';\n\nimport type { FormTagPickerProps } from './tag-picker';\nimport type { HookFormRules } from './types';\n\nexport function HookFormTagPicker<T extends FieldValues>({\n id,\n name,\n label,\n error,\n rules,\n classNames,\n disabled = false,\n ...rest\n}: Omit<FormTagPickerProps, 'name' | 'onChange' | 'value'> & {\n rules?: HookFormRules<T>;\n name: Path<T>;\n error?: string;\n}) {\n const { control } = useFormContext<T>();\n const { wrapper, ...restClassnames } = classNames ?? {};\n\n return (\n <div className={cn('$hook-tag-picker', wrapper)}>\n <Controller\n control={control}\n name={name}\n rules={rules}\n render={({ field: { onChange, value } }) => (\n <FormTagPicker\n id={id}\n name={name}\n label={label}\n value={value ?? []}\n onChange={onChange}\n disabled={disabled}\n classNames={restClassnames}\n {...rest}\n />\n )}\n />\n\n <FormError field={name} className=\"mt-1\" message={error} />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AACA,OAAO,WAAW;AAClB,SAAS,YAAyC,sBAAsB;AASjE,SAAS,kBAAyC,IAatD;AAbsD,eACvD;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,EAlBb,IAWyD,IAQpD,iBARoD,IAQpD;AAAA,IAPH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAOA,QAAM,EAAE,QAAQ,IAAI,eAAkB;AACtC,QAAuCA,MAAA,kCAAc,CAAC,GAA9C,UA1BV,IA0ByCA,KAAnB,2BAAmBA,KAAnB,CAAZ;AAER,SACE,oCAAC,SAAI,WAAW,GAAG,oBAAoB,OAAO,KAC5C;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,QAAQ,CAAC,EAAE,OAAO,EAAE,UAAU,MAAM,EAAE,MACpC;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA,UACA,OAAO,wBAAS,CAAC;AAAA,UACjB;AAAA,UACA;AAAA,UACA,YAAY;AAAA,WACR;AAAA,MACN;AAAA;AAAA,EAEJ,GAEA,oCAAC,aAAU,OAAO,MAAM,WAAU,QAAO,SAAS,OAAO,CAC3D;AAEJ;","names":["_a"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _chunkYEGS4ETWjs = require('../../chunk-YEGS4ETW.js');
|
|
6
6
|
require('../../chunk-WXEEDLLR.js');
|
|
7
7
|
require('../../chunk-LAIO3QZX.js');
|
|
8
8
|
require('../../chunk-LPDYWZN6.js');
|
|
@@ -18,5 +18,5 @@ require('../../chunk-PSPAJNNB.js');
|
|
|
18
18
|
require('../../chunk-2NMEKWO5.js');
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
exports.FormMultiSelect =
|
|
21
|
+
exports.FormMultiSelect = _chunkYEGS4ETWjs.FormMultiSelect;
|
|
22
22
|
//# sourceMappingURL=multi-select.js.map
|
|
@@ -20,7 +20,7 @@ declare const MultiSelectorInput: React.ForwardRefExoticComponent<Omit<Omit<Pick
|
|
|
20
20
|
ref?: React.Ref<HTMLInputElement>;
|
|
21
21
|
} & {
|
|
22
22
|
asChild?: boolean;
|
|
23
|
-
}, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "
|
|
23
|
+
}, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "type" | "value" | "onChange"> & {
|
|
24
24
|
value?: string;
|
|
25
25
|
onValueChange?: (search: string) => void;
|
|
26
26
|
} & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
@@ -20,7 +20,7 @@ declare const MultiSelectorInput: React.ForwardRefExoticComponent<Omit<Omit<Pick
|
|
|
20
20
|
ref?: React.Ref<HTMLInputElement>;
|
|
21
21
|
} & {
|
|
22
22
|
asChild?: boolean;
|
|
23
|
-
}, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "
|
|
23
|
+
}, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "type" | "value" | "onChange"> & {
|
|
24
24
|
value?: string;
|
|
25
25
|
onValueChange?: (search: string) => void;
|
|
26
26
|
} & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
package/package.json
CHANGED
package/chunk-S6HQ25BZ.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-S6HQ25BZ.js","../components/form/multi-select.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-S6HQ25BZ.js","sourcesContent":[null,"\"use client\";\nimport _isString from 'lodash-es/isString';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport React from 'react';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport {\n MultiSelector,\n MultiSelectorInput,\n MultiSelectorItem,\n MultiSelectorList,\n MultiSelectorTrigger,\n type MultiSelectValue,\n} from '../ui/multi-select';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\n\nexport interface FormMultiSelectProps {\n id?: string;\n name: string;\n label?: string;\n placeholder?: string;\n data: MultiSelectValue[] | string[];\n value: string[];\n onChange: (values: string[]) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n trigger?: string;\n input?: string;\n content?: string;\n };\n required?: boolean;\n disabled?: boolean;\n loop?: boolean;\n}\n\nexport function FormMultiSelect({\n id,\n name,\n label,\n placeholder = 'Select options...',\n data,\n value = [],\n onChange,\n classNames,\n required,\n disabled,\n loop = false,\n}: FormMultiSelectProps) {\n const options: MultiSelectValue[] = React.useMemo(() => {\n if (!data || data.length === 0) return [];\n if (_isString(data[0])) {\n return (data as string[]).map((currentValue) => ({ label: currentValue, value: currentValue }));\n }\n return data as MultiSelectValue[];\n }, [data]);\n\n const selectedValues = React.useMemo(() => {\n return value\n .map((currentValue) => options.find((option) => option.value === currentValue))\n .filter((option): option is MultiSelectValue => !!option);\n }, [options, value]);\n\n const handleValueChange = (newValues: MultiSelectValue[]) => {\n onChange(newValues.map((currentValue) => currentValue.value));\n };\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('flex flex-col gap-2', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <MultiSelector\n values={selectedValues}\n onValuesChange={handleValueChange}\n loop={loop}\n disabled={disabled}\n className=\"p-0\"\n >\n <Popover>\n <PopoverTrigger asChild>\n <MultiSelectorTrigger className={cn('cursor-pointer', classNames?.trigger)}>\n <MultiSelectorInput\n id={id}\n disabled={disabled}\n placeholder={selectedValues.length === 0 ? placeholder : ''}\n className={classNames?.input}\n />\n </MultiSelectorTrigger>\n </PopoverTrigger>\n\n <PopoverContent\n align=\"start\"\n className={cn('w-[var(--radix-popover-trigger-width)] p-0', classNames?.content)}\n >\n <MultiSelectorList className=\"static relative border-none shadow-none\">\n {options.map((option) => (\n <MultiSelectorItem key={option.value} value={option.value} label={option.label}>\n <span>{option.label}</span>\n </MultiSelectorItem>\n ))}\n </MultiSelectorList>\n </PopoverContent>\n </Popover>\n </MultiSelector>\n </div>\n );\n}\n"]}
|