@egose/shadcn-theme 0.1.8 → 0.1.10

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.
Files changed (44) hide show
  1. package/{chunk-D6YGFMSG.mjs → chunk-3JPKE36M.mjs} +4 -4
  2. package/{chunk-RSFL2TUC.mjs → chunk-AGPEWIPR.mjs} +2 -2
  3. package/{chunk-RSFL2TUC.mjs.map → chunk-AGPEWIPR.mjs.map} +1 -1
  4. package/{chunk-ELSPE6GB.mjs → chunk-K23YFVYE.mjs} +2 -1
  5. package/chunk-K23YFVYE.mjs.map +1 -0
  6. package/{chunk-NRCL342G.js → chunk-NMJ6372G.js} +4 -4
  7. package/{chunk-NRCL342G.js.map → chunk-NMJ6372G.js.map} +1 -1
  8. package/{chunk-P6L4JTWO.js → chunk-VYXQVM7A.js} +3 -2
  9. package/chunk-VYXQVM7A.js.map +1 -0
  10. package/{chunk-S6HQ25BZ.js → chunk-YEGS4ETW.js} +2 -2
  11. package/chunk-YEGS4ETW.js.map +1 -0
  12. package/components/form/hook-multi-select.d.mts +2 -2
  13. package/components/form/hook-multi-select.d.ts +2 -2
  14. package/components/form/hook-multi-select.js +7 -6
  15. package/components/form/hook-multi-select.js.map +1 -1
  16. package/components/form/hook-multi-select.mjs +2 -1
  17. package/components/form/hook-multi-select.mjs.map +1 -1
  18. package/components/form/hook-tag-picker.d.mts +2 -2
  19. package/components/form/hook-tag-picker.d.ts +2 -2
  20. package/components/form/hook-tag-picker.js +7 -6
  21. package/components/form/hook-tag-picker.js.map +1 -1
  22. package/components/form/hook-tag-picker.mjs +2 -1
  23. package/components/form/hook-tag-picker.mjs.map +1 -1
  24. package/components/form/multi-select.js +2 -2
  25. package/components/form/multi-select.mjs +1 -1
  26. package/components/form/tag-picker.d.mts +2 -2
  27. package/components/form/tag-picker.d.ts +2 -2
  28. package/components/form/tag-picker.js +2 -2
  29. package/components/form/tag-picker.mjs +1 -1
  30. package/components/ui/alert.d.mts +1 -1
  31. package/components/ui/alert.d.ts +1 -1
  32. package/components/ui/multi-select.d.mts +1 -1
  33. package/components/ui/multi-select.d.ts +1 -1
  34. package/layouts/sidebar1/app-sidebar.js +4 -4
  35. package/layouts/sidebar1/app-sidebar.mjs +3 -3
  36. package/layouts/sidebar1/index.js +4 -4
  37. package/layouts/sidebar1/index.mjs +3 -3
  38. package/layouts/simple/index.js +2 -2
  39. package/layouts/simple/index.mjs +3 -3
  40. package/package.json +1 -1
  41. package/chunk-ELSPE6GB.mjs.map +0 -1
  42. package/chunk-P6L4JTWO.js.map +0 -1
  43. package/chunk-S6HQ25BZ.js.map +0 -1
  44. /package/{chunk-D6YGFMSG.mjs.map → chunk-3JPKE36M.mjs.map} +0 -0
@@ -1,12 +1,12 @@
1
+ import {
2
+ NavUser
3
+ } from "./chunk-P4DW3EEW.mjs";
1
4
  import {
2
5
  ContextSwitcher
3
6
  } from "./chunk-CNYC22IA.mjs";
4
7
  import {
5
8
  NavMenus
6
9
  } from "./chunk-5CBMRDT7.mjs";
7
- import {
8
- NavUser
9
- } from "./chunk-P4DW3EEW.mjs";
10
10
  import {
11
11
  Sidebar,
12
12
  SidebarContent,
@@ -67,4 +67,4 @@ function AppSidebar(_a) {
67
67
  export {
68
68
  AppSidebar
69
69
  };
70
- //# sourceMappingURL=chunk-D6YGFMSG.mjs.map
70
+ //# sourceMappingURL=chunk-3JPKE36M.mjs.map
@@ -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-RSFL2TUC.mjs.map
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';\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"],"mappings":";;;;;;;;;;;;;;;;;;;;AACA,OAAO,eAAe;AACtB,OAAO,gBAAgB;AACvB,OAAO,WAAW;AAkCX,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":[]}
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":[]}
@@ -9,6 +9,7 @@ import {
9
9
  } from "./chunk-KGUUDFJE.mjs";
10
10
 
11
11
  // components/form/tag-picker.tsx
12
+ import React from "react";
12
13
  import _kebabCase from "lodash-es/kebabCase";
13
14
  function FormTagPicker({
14
15
  id,
@@ -40,4 +41,4 @@ function FormTagPicker({
40
41
  export {
41
42
  FormTagPicker
42
43
  };
43
- //# sourceMappingURL=chunk-ELSPE6GB.mjs.map
44
+ //# sourceMappingURL=chunk-K23YFVYE.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../components/form/tag-picker.tsx"],"sourcesContent":["\"use client\";\nimport React from 'react';\nimport _kebabCase from 'lodash-es/kebabCase';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport { TagPicker } from '../ui/tag-picker';\n\nexport interface FormTagPickerProps {\n id?: string;\n name: string;\n label?: string;\n value: string[];\n onChange: (values: string[]) => void;\n suggestions?: string[];\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTagPicker({\n id,\n name,\n label,\n value,\n onChange,\n suggestions = [],\n placeholder = 'Add tags...',\n disabled = false,\n required = false,\n classNames,\n}: FormTagPickerProps) {\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('space-y-2', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <TagPicker\n id={id}\n value={value}\n onChange={onChange}\n suggestions={suggestions}\n placeholder={placeholder}\n disabled={disabled}\n className={classNames?.input}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;AACA,OAAO,WAAW;AAClB,OAAO,gBAAgB;AAuBhB,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc,CAAC;AAAA,EACf,cAAc;AAAA,EACd,WAAW;AAAA,EACX,WAAW;AAAA,EACX;AACF,GAAuB;AACrB,MAAI,CAAC,GAAI,MAAK,WAAW,IAAI;AAE7B,SACE,oCAAC,SAAI,WAAW,GAAG,aAAa,yCAAY,OAAO,KAChD,SACC,oCAAC,SAAM,SAAS,IAAI,WAAW,yCAAY,OAAO,YAC/C,KACH,GAGF;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW,yCAAY;AAAA;AAAA,EACzB,CACF;AAEJ;","names":[]}
@@ -1,13 +1,13 @@
1
1
  "use client";
2
2
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
3
3
 
4
- var _chunkVBPJD7U3js = require('./chunk-VBPJD7U3.js');
4
+ var _chunkFOEQYO2Qjs = require('./chunk-FOEQYO2Q.js');
5
5
 
6
6
 
7
- var _chunkAQIBLBXWjs = require('./chunk-AQIBLBXW.js');
7
+ var _chunkVBPJD7U3js = require('./chunk-VBPJD7U3.js');
8
8
 
9
9
 
10
- var _chunkFOEQYO2Qjs = require('./chunk-FOEQYO2Q.js');
10
+ var _chunkAQIBLBXWjs = require('./chunk-AQIBLBXW.js');
11
11
 
12
12
 
13
13
 
@@ -68,4 +68,4 @@ function AppSidebar(_a) {
68
68
 
69
69
 
70
70
  exports.AppSidebar = AppSidebar;
71
- //# sourceMappingURL=chunk-NRCL342G.js.map
71
+ //# sourceMappingURL=chunk-NMJ6372G.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-NRCL342G.js","../layouts/sidebar1/app-sidebar.tsx"],"names":["_a","context"],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-NRCL342G.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { NavMenus } from './nav-menus';\nimport { NavUser, INavUser, INavUserMenuItem } from './nav-user';\nimport { ContextSwitcher, INavContext } from './context-switcher';\nimport { INavMenu } from './nav-menus';\nimport { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarRail } from '../../components/ui/sidebar';\nimport { Button } from '../../components/ui/button';\n\nexport interface ISidebarContext {\n title?: string;\n addText?: string;\n items?: INavContext[];\n canAdd?: boolean;\n}\n\nexport interface ISidebarData {\n user?: INavUser;\n context?: ISidebarContext;\n menus: INavMenu[];\n userMenus: INavUserMenuItem[];\n events?: {\n login?: () => void;\n logout?: (user: INavUser) => void;\n newContext?: () => void;\n contextSelect?: (context: INavContext) => void;\n };\n}\n\nexport function AppSidebar({\n ...props\n}: React.ComponentProps<typeof Sidebar> & {\n data: ISidebarData;\n aslink: React.ElementType;\n}) {\n const { data, aslink, ...rest } = props;\n const { context } = data;\n\n return (\n <Sidebar collapsible=\"icon\" {...rest}>\n {context?.items && context.items.length > 0 && (\n <SidebarHeader>\n <ContextSwitcher\n items={context.items}\n title={context.title}\n newContextText={context.addText}\n canAdd={context.canAdd}\n onContextAdd={() => {\n if (data.events?.newContext) {\n data.events.newContext();\n }\n }}\n onContextSelected={(context: INavContext) => {\n if (data.events?.contextSelect) {\n data.events.contextSelect(context);\n }\n }}\n />\n </SidebarHeader>\n )}\n\n <SidebarContent>\n <NavMenus menus={data.menus} aslink={aslink} />\n </SidebarContent>\n\n <SidebarFooter>\n {data.user ? (\n <NavUser user={data.user} menus={data.userMenus} aslink={aslink} onLogout={data.events?.logout} />\n ) : (\n <Button\n variant=\"action\"\n onClick={() => {\n if (data.events?.login) {\n data.events.login();\n }\n }}\n >\n Sign in\n </Button>\n )}\n </SidebarFooter>\n\n <SidebarRail />\n </Sidebar>\n );\n}\n"]}
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-NMJ6372G.js","../layouts/sidebar1/app-sidebar.tsx"],"names":["_a","context"],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-NMJ6372G.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { NavMenus } from './nav-menus';\nimport { NavUser, INavUser, INavUserMenuItem } from './nav-user';\nimport { ContextSwitcher, INavContext } from './context-switcher';\nimport { INavMenu } from './nav-menus';\nimport { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarRail } from '../../components/ui/sidebar';\nimport { Button } from '../../components/ui/button';\n\nexport interface ISidebarContext {\n title?: string;\n addText?: string;\n items?: INavContext[];\n canAdd?: boolean;\n}\n\nexport interface ISidebarData {\n user?: INavUser;\n context?: ISidebarContext;\n menus: INavMenu[];\n userMenus: INavUserMenuItem[];\n events?: {\n login?: () => void;\n logout?: (user: INavUser) => void;\n newContext?: () => void;\n contextSelect?: (context: INavContext) => void;\n };\n}\n\nexport function AppSidebar({\n ...props\n}: React.ComponentProps<typeof Sidebar> & {\n data: ISidebarData;\n aslink: React.ElementType;\n}) {\n const { data, aslink, ...rest } = props;\n const { context } = data;\n\n return (\n <Sidebar collapsible=\"icon\" {...rest}>\n {context?.items && context.items.length > 0 && (\n <SidebarHeader>\n <ContextSwitcher\n items={context.items}\n title={context.title}\n newContextText={context.addText}\n canAdd={context.canAdd}\n onContextAdd={() => {\n if (data.events?.newContext) {\n data.events.newContext();\n }\n }}\n onContextSelected={(context: INavContext) => {\n if (data.events?.contextSelect) {\n data.events.contextSelect(context);\n }\n }}\n />\n </SidebarHeader>\n )}\n\n <SidebarContent>\n <NavMenus menus={data.menus} aslink={aslink} />\n </SidebarContent>\n\n <SidebarFooter>\n {data.user ? (\n <NavUser user={data.user} menus={data.userMenus} aslink={aslink} onLogout={data.events?.logout} />\n ) : (\n <Button\n variant=\"action\"\n onClick={() => {\n if (data.events?.login) {\n data.events.login();\n }\n }}\n >\n Sign in\n </Button>\n )}\n </SidebarFooter>\n\n <SidebarRail />\n </Sidebar>\n );\n}\n"]}
@@ -10,6 +10,7 @@ var _chunkCKGMFUU2js = require('./chunk-CKGMFUU2.js');
10
10
  var _chunkPSPAJNNBjs = require('./chunk-PSPAJNNB.js');
11
11
 
12
12
  // components/form/tag-picker.tsx
13
+ var _react = require('react'); var _react2 = _interopRequireDefault(_react);
13
14
  var _kebabCase2 = require('lodash-es/kebabCase'); var _kebabCase3 = _interopRequireDefault(_kebabCase2);
14
15
  function FormTagPicker({
15
16
  id,
@@ -24,7 +25,7 @@ function FormTagPicker({
24
25
  classNames
25
26
  }) {
26
27
  if (!id) id = _kebabCase3.default.call(void 0, name);
27
- return /* @__PURE__ */ React.createElement("div", { className: _chunkPSPAJNNBjs.cn.call(void 0, "space-y-2", classNames == null ? void 0 : classNames.wrapper) }, label && /* @__PURE__ */ React.createElement(_chunkCKGMFUU2js.Label, { htmlFor: id, className: classNames == null ? void 0 : classNames.label, required }, label), /* @__PURE__ */ React.createElement(
28
+ return /* @__PURE__ */ _react2.default.createElement("div", { className: _chunkPSPAJNNBjs.cn.call(void 0, "space-y-2", classNames == null ? void 0 : classNames.wrapper) }, label && /* @__PURE__ */ _react2.default.createElement(_chunkCKGMFUU2js.Label, { htmlFor: id, className: classNames == null ? void 0 : classNames.label, required }, label), /* @__PURE__ */ _react2.default.createElement(
28
29
  _chunkWK4MG4VTjs.TagPicker,
29
30
  {
30
31
  id,
@@ -41,4 +42,4 @@ function FormTagPicker({
41
42
 
42
43
 
43
44
  exports.FormTagPicker = FormTagPicker;
44
- //# sourceMappingURL=chunk-P6L4JTWO.js.map
45
+ //# sourceMappingURL=chunk-VYXQVM7A.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-VYXQVM7A.js","../components/form/tag-picker.tsx"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;ACTA,4EAAkB;AAClB,wGAAuB;AAuBhB,SAAS,aAAA,CAAc;AAAA,EAC5B,EAAA;AAAA,EACA,IAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,YAAA,EAAc,CAAC,CAAA;AAAA,EACf,YAAA,EAAc,aAAA;AAAA,EACd,SAAA,EAAW,KAAA;AAAA,EACX,SAAA,EAAW,KAAA;AAAA,EACX;AACF,CAAA,EAAuB;AACrB,EAAA,GAAA,CAAI,CAAC,EAAA,EAAI,GAAA,EAAK,iCAAA,IAAe,CAAA;AAE7B,EAAA,uBACE,eAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,WAAG,EAAa,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,OAAO,EAAA,CAAA,EAChD,MAAA,mBACC,eAAA,CAAA,aAAA,CAAC,sBAAA,EAAA,EAAM,OAAA,EAAS,EAAA,EAAI,SAAA,EAAW,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAA,EAAO,SAAA,CAAA,EAC/C,KACH,CAAA,kBAGF,eAAA,CAAA,aAAA;AAAA,IAAC,0BAAA;AAAA,IAAA;AAAA,MACC,EAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA,WAAA;AAAA,MACA,WAAA;AAAA,MACA,QAAA;AAAA,MACA,SAAA,EAAW,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY;AAAA,IAAA;AAAA,EACzB,CACF,CAAA;AAEJ;ADnBA;AACA;AACE;AACF,sCAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-VYXQVM7A.js","sourcesContent":[null,"\"use client\";\nimport React from 'react';\nimport _kebabCase from 'lodash-es/kebabCase';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport { TagPicker } from '../ui/tag-picker';\n\nexport interface FormTagPickerProps {\n id?: string;\n name: string;\n label?: string;\n value: string[];\n onChange: (values: string[]) => void;\n suggestions?: string[];\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTagPicker({\n id,\n name,\n label,\n value,\n onChange,\n suggestions = [],\n placeholder = 'Add tags...',\n disabled = false,\n required = false,\n classNames,\n}: FormTagPickerProps) {\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('space-y-2', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <TagPicker\n id={id}\n value={value}\n onChange={onChange}\n suggestions={suggestions}\n placeholder={placeholder}\n disabled={disabled}\n className={classNames?.input}\n />\n </div>\n );\n}\n"]}
@@ -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-S6HQ25BZ.js.map
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 * as React from 'react';
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
- }): React.JSX.Element;
12
+ }): React__default.JSX.Element;
13
13
 
14
14
  export { HookFormMultiSelect };
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
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
- }): React.JSX.Element;
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 _chunkS6HQ25BZjs = require('../../chunk-S6HQ25BZ.js');
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__ */ React.createElement("div", { className: _chunkPSPAJNNBjs.cn.call(void 0, "$hook-multi-select", wrapper) }, /* @__PURE__ */ React.createElement(
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__ */ React.createElement(
58
- _chunkS6HQ25BZjs.FormMultiSelect,
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__ */ React.createElement(_chunk6POWZMNDjs.FormError, { field: name, className: "mt-1", message: error }));
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,qFAAY;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,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,EAjBb,EAAA,EAU2D,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,QAzBV,EAAA,EAyByCA,GAAAA,EAAnB,eAAA,EAAA,wCAAA,GAAmBA,EAAnB,CAAZ,SAAA,CAAA,CAAA;AAER,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,oBAAG,EAAsB,OAAO,EAAA,CAAA,kBAC9C,KAAA,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,KAAA,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,KAAA,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 { 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
+ {"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-RSFL2TUC.mjs";
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,EAjBb,IAU2D,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,UAzBV,IAyByCA,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
+ {"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 * as React from 'react';
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
- }): React.JSX.Element;
10
+ }): React__default.JSX.Element;
11
11
 
12
12
  export { HookFormTagPicker };
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
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
- }): React.JSX.Element;
10
+ }): React__default.JSX.Element;
11
11
 
12
12
  export { HookFormTagPicker };
@@ -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 _chunkP6L4JTWOjs = require('../../chunk-P6L4JTWO.js');
5
+ var _chunkVYXQVM7Ajs = require('../../chunk-VYXQVM7A.js');
6
6
  require('../../chunk-WK4MG4VT.js');
7
7
  require('../../chunk-2YMMYND2.js');
8
8
 
@@ -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,14 +40,14 @@ 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__ */ React.createElement("div", { className: _chunkPSPAJNNBjs.cn.call(void 0, "$hook-tag-picker", wrapper) }, /* @__PURE__ */ React.createElement(
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__ */ React.createElement(
49
- _chunkP6L4JTWOjs.FormTagPicker,
49
+ render: ({ field: { onChange, value } }) => /* @__PURE__ */ _react2.default.createElement(
50
+ _chunkVYXQVM7Ajs.FormTagPicker,
50
51
  _chunk2NMEKWO5js.__spreadValues.call(void 0, {
51
52
  id,
52
53
  name,
@@ -58,7 +59,7 @@ function HookFormTagPicker(_a) {
58
59
  }, rest)
59
60
  )
60
61
  }
61
- ), /* @__PURE__ */ React.createElement(_chunk6POWZMNDjs.FormError, { field: name, className: "mt-1", message: error }));
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,qFAAY;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,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,EAjBb,EAAA,EAUyD,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,QAzBV,EAAA,EAyByCA,GAAAA,EAAnB,eAAA,EAAA,wCAAA,GAAmBA,EAAnB,CAAZ,SAAA,CAAA,CAAA;AAER,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,kBAAG,EAAoB,OAAO,EAAA,CAAA,kBAC5C,KAAA,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,KAAA,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,KAAA,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 { 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
+ {"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,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  FormTagPicker
4
- } from "../../chunk-ELSPE6GB.mjs";
4
+ } from "../../chunk-K23YFVYE.mjs";
5
5
  import "../../chunk-NCJI2DCV.mjs";
6
6
  import "../../chunk-WIISPZZE.mjs";
7
7
  import {
@@ -17,6 +17,7 @@ import {
17
17
  } from "../../chunk-YOSPWY5K.mjs";
18
18
 
19
19
  // components/form/hook-tag-picker.tsx
20
+ import React from "react";
20
21
  import { Controller, useFormContext } from "react-hook-form";
21
22
  function HookFormTagPicker(_a) {
22
23
  var _b = _a, {
@@ -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,EAjBb,IAUyD,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,UAzBV,IAyByCA,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"]}
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 _chunkS6HQ25BZjs = require('../../chunk-S6HQ25BZ.js');
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 = _chunkS6HQ25BZjs.FormMultiSelect;
21
+ exports.FormMultiSelect = _chunkYEGS4ETWjs.FormMultiSelect;
22
22
  //# sourceMappingURL=multi-select.js.map
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  FormMultiSelect
4
- } from "../../chunk-RSFL2TUC.mjs";
4
+ } from "../../chunk-AGPEWIPR.mjs";
5
5
  import "../../chunk-RNKMPQDZ.mjs";
6
6
  import "../../chunk-ZFBUIBJH.mjs";
7
7
  import "../../chunk-YDRPNCWF.mjs";
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import React__default from 'react';
2
2
 
3
3
  interface FormTagPickerProps {
4
4
  id?: string;
@@ -16,6 +16,6 @@ interface FormTagPickerProps {
16
16
  input?: string;
17
17
  };
18
18
  }
19
- declare function FormTagPicker({ id, name, label, value, onChange, suggestions, placeholder, disabled, required, classNames, }: FormTagPickerProps): React.JSX.Element;
19
+ declare function FormTagPicker({ id, name, label, value, onChange, suggestions, placeholder, disabled, required, classNames, }: FormTagPickerProps): React__default.JSX.Element;
20
20
 
21
21
  export { FormTagPicker, type FormTagPickerProps };
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import React__default from 'react';
2
2
 
3
3
  interface FormTagPickerProps {
4
4
  id?: string;
@@ -16,6 +16,6 @@ interface FormTagPickerProps {
16
16
  input?: string;
17
17
  };
18
18
  }
19
- declare function FormTagPicker({ id, name, label, value, onChange, suggestions, placeholder, disabled, required, classNames, }: FormTagPickerProps): React.JSX.Element;
19
+ declare function FormTagPicker({ id, name, label, value, onChange, suggestions, placeholder, disabled, required, classNames, }: FormTagPickerProps): React__default.JSX.Element;
20
20
 
21
21
  export { FormTagPicker, type FormTagPickerProps };
@@ -2,7 +2,7 @@
2
2
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
3
3
 
4
4
 
5
- var _chunkP6L4JTWOjs = require('../../chunk-P6L4JTWO.js');
5
+ var _chunkVYXQVM7Ajs = require('../../chunk-VYXQVM7A.js');
6
6
  require('../../chunk-WK4MG4VT.js');
7
7
  require('../../chunk-2YMMYND2.js');
8
8
  require('../../chunk-CKGMFUU2.js');
@@ -10,5 +10,5 @@ require('../../chunk-PSPAJNNB.js');
10
10
  require('../../chunk-2NMEKWO5.js');
11
11
 
12
12
 
13
- exports.FormTagPicker = _chunkP6L4JTWOjs.FormTagPicker;
13
+ exports.FormTagPicker = _chunkVYXQVM7Ajs.FormTagPicker;
14
14
  //# sourceMappingURL=tag-picker.js.map
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  FormTagPicker
4
- } from "../../chunk-ELSPE6GB.mjs";
4
+ } from "../../chunk-K23YFVYE.mjs";
5
5
  import "../../chunk-NCJI2DCV.mjs";
6
6
  import "../../chunk-WIISPZZE.mjs";
7
7
  import "../../chunk-MM5OJOOR.mjs";
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
 
5
5
  declare const alertVariants: (props?: ({
6
- variant?: "link" | "primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "dark" | "accent" | "destructive" | "muted" | "ghost" | null | undefined;
6
+ variant?: "primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "dark" | "accent" | "destructive" | "muted" | "link" | "ghost" | null | undefined;
7
7
  appearance?: "light" | "solid" | null | undefined;
8
8
  } & class_variance_authority_types.ClassProp) | undefined) => string;
9
9
  interface AlertProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
 
5
5
  declare const alertVariants: (props?: ({
6
- variant?: "link" | "primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "dark" | "accent" | "destructive" | "muted" | "ghost" | null | undefined;
6
+ variant?: "primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "dark" | "accent" | "destructive" | "muted" | "link" | "ghost" | null | undefined;
7
7
  appearance?: "light" | "solid" | null | undefined;
8
8
  } & class_variance_authority_types.ClassProp) | undefined) => string;
9
9
  interface AlertProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
@@ -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>>, "value" | "onChange" | "type"> & {
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>>, "value" | "onChange" | "type"> & {
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>>;
@@ -2,11 +2,11 @@
2
2
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
3
3
 
4
4
 
5
- var _chunkNRCL342Gjs = require('../../chunk-NRCL342G.js');
6
- require('../../chunk-VBPJD7U3.js');
7
- require('../../chunk-AQIBLBXW.js');
5
+ var _chunkNMJ6372Gjs = require('../../chunk-NMJ6372G.js');
8
6
  require('../../chunk-FOEQYO2Q.js');
9
7
  require('../../chunk-5TXFHYQ5.js');
8
+ require('../../chunk-VBPJD7U3.js');
9
+ require('../../chunk-AQIBLBXW.js');
10
10
  require('../../chunk-P4EDRIBH.js');
11
11
  require('../../chunk-WKQDHQAS.js');
12
12
  require('../../chunk-BMAIJZN6.js');
@@ -23,5 +23,5 @@ require('../../chunk-PSPAJNNB.js');
23
23
  require('../../chunk-2NMEKWO5.js');
24
24
 
25
25
 
26
- exports.AppSidebar = _chunkNRCL342Gjs.AppSidebar;
26
+ exports.AppSidebar = _chunkNMJ6372Gjs.AppSidebar;
27
27
  //# sourceMappingURL=app-sidebar.js.map
@@ -1,11 +1,11 @@
1
1
  "use client";
2
2
  import {
3
3
  AppSidebar
4
- } from "../../chunk-D6YGFMSG.mjs";
5
- import "../../chunk-CNYC22IA.mjs";
6
- import "../../chunk-5CBMRDT7.mjs";
4
+ } from "../../chunk-3JPKE36M.mjs";
7
5
  import "../../chunk-P4DW3EEW.mjs";
8
6
  import "../../chunk-LVXIGNFJ.mjs";
7
+ import "../../chunk-CNYC22IA.mjs";
8
+ import "../../chunk-5CBMRDT7.mjs";
9
9
  import "../../chunk-4IDPSNL3.mjs";
10
10
  import "../../chunk-ICOZ5BK7.mjs";
11
11
  import "../../chunk-O6PHWGJH.mjs";
@@ -2,11 +2,11 @@
2
2
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
3
3
 
4
4
 
5
- var _chunkNRCL342Gjs = require('../../chunk-NRCL342G.js');
6
- require('../../chunk-VBPJD7U3.js');
7
- require('../../chunk-AQIBLBXW.js');
5
+ var _chunkNMJ6372Gjs = require('../../chunk-NMJ6372G.js');
8
6
  require('../../chunk-FOEQYO2Q.js');
9
7
  require('../../chunk-5TXFHYQ5.js');
8
+ require('../../chunk-VBPJD7U3.js');
9
+ require('../../chunk-AQIBLBXW.js');
10
10
 
11
11
 
12
12
 
@@ -61,7 +61,7 @@ function SidebarLayout({
61
61
  }
62
62
  });
63
63
  });
64
- return /* @__PURE__ */ React.createElement(_nextthemes.ThemeProvider, { attribute: "class", defaultTheme: "system", enableSystem: true }, /* @__PURE__ */ React.createElement(_chunkP4EDRIBHjs.SidebarProvider, null, /* @__PURE__ */ React.createElement(_chunkNRCL342Gjs.AppSidebar, { aslink, data, className: _chunkPSPAJNNBjs.cn.call(void 0, classNames == null ? void 0 : classNames.sidebar) }), /* @__PURE__ */ React.createElement(_chunkP4EDRIBHjs.SidebarInset, { className: _chunkPSPAJNNBjs.cn.call(void 0, classNames == null ? void 0 : classNames.inset) }, /* @__PURE__ */ React.createElement(
64
+ return /* @__PURE__ */ React.createElement(_nextthemes.ThemeProvider, { attribute: "class", defaultTheme: "system", enableSystem: true }, /* @__PURE__ */ React.createElement(_chunkP4EDRIBHjs.SidebarProvider, null, /* @__PURE__ */ React.createElement(_chunkNMJ6372Gjs.AppSidebar, { aslink, data, className: _chunkPSPAJNNBjs.cn.call(void 0, classNames == null ? void 0 : classNames.sidebar) }), /* @__PURE__ */ React.createElement(_chunkP4EDRIBHjs.SidebarInset, { className: _chunkPSPAJNNBjs.cn.call(void 0, classNames == null ? void 0 : classNames.inset) }, /* @__PURE__ */ React.createElement(
65
65
  "header",
66
66
  {
67
67
  className: _chunkPSPAJNNBjs.cn.call(void 0,
@@ -1,11 +1,11 @@
1
1
  "use client";
2
2
  import {
3
3
  AppSidebar
4
- } from "../../chunk-D6YGFMSG.mjs";
5
- import "../../chunk-CNYC22IA.mjs";
6
- import "../../chunk-5CBMRDT7.mjs";
4
+ } from "../../chunk-3JPKE36M.mjs";
7
5
  import "../../chunk-P4DW3EEW.mjs";
8
6
  import "../../chunk-LVXIGNFJ.mjs";
7
+ import "../../chunk-CNYC22IA.mjs";
8
+ import "../../chunk-5CBMRDT7.mjs";
9
9
  import {
10
10
  SidebarInset,
11
11
  SidebarProvider,
@@ -2,10 +2,10 @@
2
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 _chunkOUVM5NSTjs = require('../../chunk-OUVM5NST.js');
5
+ var _chunkOMQVDSR6js = require('../../chunk-OMQVDSR6.js');
6
6
 
7
7
 
8
- var _chunkOMQVDSR6js = require('../../chunk-OMQVDSR6.js');
8
+ var _chunkOUVM5NSTjs = require('../../chunk-OUVM5NST.js');
9
9
  require('../../chunk-UKPBHVOT.js');
10
10
 
11
11
 
@@ -1,10 +1,10 @@
1
1
  "use client";
2
- import {
3
- UserMenus
4
- } from "../../chunk-RIBB6GXJ.mjs";
5
2
  import {
6
3
  MobileMenu
7
4
  } from "../../chunk-OVHPXYDN.mjs";
5
+ import {
6
+ UserMenus
7
+ } from "../../chunk-RIBB6GXJ.mjs";
8
8
  import "../../chunk-RPF753T2.mjs";
9
9
  import {
10
10
  cn
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.8",
2
+ "version": "0.1.10",
3
3
  "description": "shadcn UI theme",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../components/form/tag-picker.tsx"],"sourcesContent":["\"use client\";\nimport _kebabCase from 'lodash-es/kebabCase';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport { TagPicker } from '../ui/tag-picker';\n\nexport interface FormTagPickerProps {\n id?: string;\n name: string;\n label?: string;\n value: string[];\n onChange: (values: string[]) => void;\n suggestions?: string[];\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTagPicker({\n id,\n name,\n label,\n value,\n onChange,\n suggestions = [],\n placeholder = 'Add tags...',\n disabled = false,\n required = false,\n classNames,\n}: FormTagPickerProps) {\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('space-y-2', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <TagPicker\n id={id}\n value={value}\n onChange={onChange}\n suggestions={suggestions}\n placeholder={placeholder}\n disabled={disabled}\n className={classNames?.input}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;AACA,OAAO,gBAAgB;AAuBhB,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc,CAAC;AAAA,EACf,cAAc;AAAA,EACd,WAAW;AAAA,EACX,WAAW;AAAA,EACX;AACF,GAAuB;AACrB,MAAI,CAAC,GAAI,MAAK,WAAW,IAAI;AAE7B,SACE,oCAAC,SAAI,WAAW,GAAG,aAAa,yCAAY,OAAO,KAChD,SACC,oCAAC,SAAM,SAAS,IAAI,WAAW,yCAAY,OAAO,YAC/C,KACH,GAGF;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW,yCAAY;AAAA;AAAA,EACzB,CACF;AAEJ;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-P6L4JTWO.js","../components/form/tag-picker.tsx"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;ACTA,wGAAuB;AAuBhB,SAAS,aAAA,CAAc;AAAA,EAC5B,EAAA;AAAA,EACA,IAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,YAAA,EAAc,CAAC,CAAA;AAAA,EACf,YAAA,EAAc,aAAA;AAAA,EACd,SAAA,EAAW,KAAA;AAAA,EACX,SAAA,EAAW,KAAA;AAAA,EACX;AACF,CAAA,EAAuB;AACrB,EAAA,GAAA,CAAI,CAAC,EAAA,EAAI,GAAA,EAAK,iCAAA,IAAe,CAAA;AAE7B,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,WAAG,EAAa,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,OAAO,EAAA,CAAA,EAChD,MAAA,mBACC,KAAA,CAAA,aAAA,CAAC,sBAAA,EAAA,EAAM,OAAA,EAAS,EAAA,EAAI,SAAA,EAAW,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAA,EAAO,SAAA,CAAA,EAC/C,KACH,CAAA,kBAGF,KAAA,CAAA,aAAA;AAAA,IAAC,0BAAA;AAAA,IAAA;AAAA,MACC,EAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA,WAAA;AAAA,MACA,WAAA;AAAA,MACA,QAAA;AAAA,MACA,SAAA,EAAW,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY;AAAA,IAAA;AAAA,EACzB,CACF,CAAA;AAEJ;ADnBA;AACA;AACE;AACF,sCAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-P6L4JTWO.js","sourcesContent":[null,"\"use client\";\nimport _kebabCase from 'lodash-es/kebabCase';\n\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport { TagPicker } from '../ui/tag-picker';\n\nexport interface FormTagPickerProps {\n id?: string;\n name: string;\n label?: string;\n value: string[];\n onChange: (values: string[]) => void;\n suggestions?: string[];\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTagPicker({\n id,\n name,\n label,\n value,\n onChange,\n suggestions = [],\n placeholder = 'Add tags...',\n disabled = false,\n required = false,\n classNames,\n}: FormTagPickerProps) {\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('space-y-2', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <TagPicker\n id={id}\n value={value}\n onChange={onChange}\n suggestions={suggestions}\n placeholder={placeholder}\n disabled={disabled}\n className={classNames?.input}\n />\n </div>\n );\n}\n"]}
@@ -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"]}