componentables 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +272 -0
  2. package/dist/componentables.css +1 -0
  3. package/dist/components/Button.d.ts +27 -0
  4. package/dist/components/Button.d.ts.map +1 -0
  5. package/dist/components/Calendar.d.ts +27 -0
  6. package/dist/components/Calendar.d.ts.map +1 -0
  7. package/dist/components/Dropdown.d.ts +44 -0
  8. package/dist/components/Dropdown.d.ts.map +1 -0
  9. package/dist/components/ExpandableCard.d.ts +28 -0
  10. package/dist/components/ExpandableCard.d.ts.map +1 -0
  11. package/dist/components/Input.d.ts +63 -0
  12. package/dist/components/Input.d.ts.map +1 -0
  13. package/dist/components/Pagination.d.ts +31 -0
  14. package/dist/components/Pagination.d.ts.map +1 -0
  15. package/dist/components/SearchInput.d.ts +28 -0
  16. package/dist/components/SearchInput.d.ts.map +1 -0
  17. package/dist/components/Table.d.ts +49 -0
  18. package/dist/components/Table.d.ts.map +1 -0
  19. package/dist/components/Tabs.d.ts +47 -0
  20. package/dist/components/Tabs.d.ts.map +1 -0
  21. package/dist/components/Toggle.d.ts +29 -0
  22. package/dist/components/Toggle.d.ts.map +1 -0
  23. package/dist/components/index.d.ts +22 -0
  24. package/dist/components/index.d.ts.map +1 -0
  25. package/dist/context/ThemeProvider.d.ts +86 -0
  26. package/dist/context/ThemeProvider.d.ts.map +1 -0
  27. package/dist/context/index.d.ts +3 -0
  28. package/dist/context/index.d.ts.map +1 -0
  29. package/dist/index.cjs +2 -0
  30. package/dist/index.cjs.map +1 -0
  31. package/dist/index.d.ts +6 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +3744 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/lib/index.d.ts +2 -0
  36. package/dist/lib/index.d.ts.map +1 -0
  37. package/dist/lib/utils.d.ts +23 -0
  38. package/dist/lib/utils.d.ts.map +1 -0
  39. package/dist/vite.svg +1 -0
  40. package/package.json +66 -0
@@ -0,0 +1,47 @@
1
+ import { default as React } from 'react';
2
+ export type ColorScheme = "primary" | "secondary";
3
+ export type TabVariant = "underline" | "filled" | "pills";
4
+ export interface TabOption {
5
+ value: string | number;
6
+ label: string;
7
+ disabled?: boolean;
8
+ }
9
+ export interface TabsProps {
10
+ options: TabOption[];
11
+ value?: string | number;
12
+ onChange?: (value: string | number) => void;
13
+ children: React.ReactNode;
14
+ className?: string;
15
+ colorScheme?: ColorScheme;
16
+ variant?: TabVariant;
17
+ }
18
+ export interface TabPanelProps {
19
+ value: string | number;
20
+ children: React.ReactNode;
21
+ className?: string;
22
+ }
23
+ /**
24
+ * TabPanel component for tab content
25
+ */
26
+ export declare function TabPanel({ children, className }: TabPanelProps): import("react/jsx-runtime").JSX.Element;
27
+ /**
28
+ * Tabs component for organizing content in tabbed interface
29
+ *
30
+ * @example
31
+ * ```tsx
32
+ * <Tabs
33
+ * options={[
34
+ * { value: 'tab1', label: 'Tab 1' },
35
+ * { value: 'tab2', label: 'Tab 2' },
36
+ * ]}
37
+ * value={activeTab}
38
+ * onChange={setActiveTab}
39
+ * >
40
+ * <TabPanel value="tab1">Content 1</TabPanel>
41
+ * <TabPanel value="tab2">Content 2</TabPanel>
42
+ * </Tabs>
43
+ * ```
44
+ */
45
+ export declare function Tabs({ options, value, onChange, children, className, colorScheme, variant, }: TabsProps): import("react/jsx-runtime").JSX.Element;
46
+ export default Tabs;
47
+ //# sourceMappingURL=Tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../src/components/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAGxC,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE1D,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,EAAE,UAAU,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAc,EAAE,EAAE,aAAa,2CAEnE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,IAAI,CAAC,EACnB,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAc,EACd,WAAuB,EACvB,OAAqB,GACtB,EAAE,SAAS,2CAwGX;AAED,eAAe,IAAI,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { InputHTMLAttributes } from 'react';
2
+ export type ColorScheme = "primary" | "secondary";
3
+ export type ToggleSize = "sm" | "md" | "lg";
4
+ export interface ToggleProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "onChange" | "size"> {
5
+ id?: string;
6
+ name?: string;
7
+ checked?: boolean;
8
+ onChange?: (checked: boolean) => void;
9
+ disabled?: boolean;
10
+ label?: string;
11
+ colorScheme?: ColorScheme;
12
+ size?: ToggleSize;
13
+ className?: string;
14
+ }
15
+ /**
16
+ * Toggle switch component
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * <Toggle
21
+ * checked={enabled}
22
+ * onChange={setEnabled}
23
+ * label="Enable notifications"
24
+ * />
25
+ * ```
26
+ */
27
+ export declare function Toggle({ id, name, checked, onChange, disabled, label, colorScheme, size, className, ...props }: ToggleProps): import("react/jsx-runtime").JSX.Element;
28
+ export default Toggle;
29
+ //# sourceMappingURL=Toggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../../src/components/Toggle.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAGjD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,WACf,SAAQ,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,EACrB,EAAE,EACF,IAAI,EACJ,OAAe,EACf,QAAQ,EACR,QAAgB,EAChB,KAAK,EACL,WAAyB,EACzB,IAAW,EACX,SAAc,EACd,GAAG,KAAK,EACT,EAAE,WAAW,2CAgHb;AAED,eAAe,MAAM,CAAC"}
@@ -0,0 +1,22 @@
1
+ export { Button } from './Button';
2
+ export type { ButtonProps, ButtonVariant, ButtonSize } from './Button';
3
+ export { Input, InputArea } from './Input';
4
+ export type { InputProps, InputAreaProps } from './Input';
5
+ export { Toggle } from './Toggle';
6
+ export type { ToggleProps, ToggleSize } from './Toggle';
7
+ export { SearchInput } from './SearchInput';
8
+ export type { SearchInputProps } from './SearchInput';
9
+ export { Pagination } from './Pagination';
10
+ export type { PaginationProps, PaginationState } from './Pagination';
11
+ export { ExpandableCard } from './ExpandableCard';
12
+ export type { ExpandableCardProps } from './ExpandableCard';
13
+ export { Tabs, TabPanel } from './Tabs';
14
+ export type { TabsProps, TabPanelProps, TabOption, TabVariant } from './Tabs';
15
+ export { Calendar } from './Calendar';
16
+ export type { CalendarProps } from './Calendar';
17
+ export { Table } from './Table';
18
+ export type { TableProps, TableAction } from './Table';
19
+ export { Dropdown } from './Dropdown';
20
+ export type { DropdownProps, DropdownOption } from './Dropdown';
21
+ export type { ColorScheme } from './Input';
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEvE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE1D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAErE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACxC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE9E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGhE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,86 @@
1
+ import { default as React, ReactNode } from 'react';
2
+ /**
3
+ * Theme configuration interface
4
+ */
5
+ export interface ThemeConfig {
6
+ colors?: {
7
+ primary?: string;
8
+ secondary?: string;
9
+ danger?: string;
10
+ text?: string;
11
+ textMuted?: string;
12
+ textLight?: string;
13
+ border?: string;
14
+ borderDark?: string;
15
+ background?: string;
16
+ backgroundDark?: string;
17
+ backgroundLight?: string;
18
+ disabled?: string;
19
+ light?: string;
20
+ active?: string;
21
+ };
22
+ }
23
+ /**
24
+ * Complete theme with all color variants
25
+ */
26
+ export interface Theme {
27
+ colors: {
28
+ primary: string;
29
+ primaryLight: string;
30
+ primaryDark: string;
31
+ secondary: string;
32
+ secondaryLight: string;
33
+ secondaryDark: string;
34
+ danger: string;
35
+ dangerLight: string;
36
+ dangerDark: string;
37
+ text: string;
38
+ textMuted: string;
39
+ textLight: string;
40
+ border: string;
41
+ borderDark: string;
42
+ background: string;
43
+ backgroundDark: string;
44
+ backgroundLight: string;
45
+ disabled: string;
46
+ light: string;
47
+ active: string;
48
+ };
49
+ }
50
+ /**
51
+ * Default theme values
52
+ */
53
+ declare const defaultTheme: Theme;
54
+ /**
55
+ * Hook to access the current theme
56
+ */
57
+ export declare function useTheme(): Theme;
58
+ interface ThemeProviderProps {
59
+ children: ReactNode;
60
+ theme?: ThemeConfig;
61
+ }
62
+ /**
63
+ * ThemeProvider component
64
+ * Wraps your app to provide theming capabilities to all componentables components
65
+ *
66
+ * @example
67
+ * ```tsx
68
+ * import { ThemeProvider } from 'componentables';
69
+ *
70
+ * function App() {
71
+ * return (
72
+ * <ThemeProvider theme={{
73
+ * colors: {
74
+ * primary: '#3b82f6',
75
+ * secondary: '#8b5cf6',
76
+ * }
77
+ * }}>
78
+ * <YourApp />
79
+ * </ThemeProvider>
80
+ * );
81
+ * }
82
+ * ```
83
+ */
84
+ export declare function ThemeProvider({ children, theme: themeConfig, }: ThemeProviderProps): React.FunctionComponentElement<React.ProviderProps<Theme>>;
85
+ export { defaultTheme };
86
+ //# sourceMappingURL=ThemeProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeProvider.d.ts","sourceRoot":"","sources":["../../src/context/ThemeProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAKZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,QAAA,MAAM,YAAY,EAAE,KAuBnB,CAAC;AAIF;;GAEG;AACH,wBAAgB,QAAQ,IAAI,KAAK,CAEhC;AAED,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAyED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,KAAK,EAAE,WAAW,GACnB,EAAE,kBAAkB,8DAmDpB;AAED,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { ThemeProvider, useTheme, defaultTheme } from './ThemeProvider';
2
+ export type { ThemeConfig, Theme } from './ThemeProvider';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACxE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC"}
package/dist/index.cjs ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("react"),n=require("react/jsx-runtime");function be(e){var r,t,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(r=0;r<s;r++)e[r]&&(t=be(e[r]))&&(o&&(o+=" "),o+=t)}else for(t in e)e[t]&&(o&&(o+=" "),o+=t);return o}function Ce(){for(var e,r,t=0,o="",s=arguments.length;t<s;t++)(e=arguments[t])&&(r=be(e))&&(o&&(o+=" "),o+=r);return o}const ae="-",Ne=e=>{const r=Se(e),{conflictingClassGroups:t,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:i=>{const l=i.split(ae);return l[0]===""&&l.length!==1&&l.shift(),me(l,r)||Me(i)},getConflictingClassGroupIds:(i,l)=>{const p=t[i]||[];return l&&o[i]?[...p,...o[i]]:p}}},me=(e,r)=>{if(e.length===0)return r.classGroupId;const t=e[0],o=r.nextPart.get(t),s=o?me(e.slice(1),o):void 0;if(s)return s;if(r.validators.length===0)return;const a=e.join(ae);return r.validators.find(({validator:i})=>i(a))?.classGroupId},le=/^\[(.+)\]$/,Me=e=>{if(le.test(e)){const r=le.exec(e)[1],t=r?.substring(0,r.indexOf(":"));if(t)return"arbitrary.."+t}},Se=e=>{const{theme:r,prefix:t}=e,o={nextPart:new Map,validators:[]};return Pe(Object.entries(e.classGroups),t).forEach(([a,i])=>{oe(i,o,a,r)}),o},oe=(e,r,t,o)=>{e.forEach(s=>{if(typeof s=="string"){const a=s===""?r:ie(r,s);a.classGroupId=t;return}if(typeof s=="function"){if(ze(s)){oe(s(o),r,t,o);return}r.validators.push({validator:s,classGroupId:t});return}Object.entries(s).forEach(([a,i])=>{oe(i,ie(r,a),t,o)})})},ie=(e,r)=>{let t=e;return r.split(ae).forEach(o=>{t.nextPart.has(o)||t.nextPart.set(o,{nextPart:new Map,validators:[]}),t=t.nextPart.get(o)}),t},ze=e=>e.isThemeGetter,Pe=(e,r)=>r?e.map(([t,o])=>{const s=o.map(a=>typeof a=="string"?r+a:typeof a=="object"?Object.fromEntries(Object.entries(a).map(([i,l])=>[r+i,l])):a);return[t,s]}):e,Le=e=>{if(e<1)return{get:()=>{},set:()=>{}};let r=0,t=new Map,o=new Map;const s=(a,i)=>{t.set(a,i),r++,r>e&&(r=0,o=t,t=new Map)};return{get(a){let i=t.get(a);if(i!==void 0)return i;if((i=o.get(a))!==void 0)return s(a,i),i},set(a,i){t.has(a)?t.set(a,i):s(a,i)}}},ge="!",De=e=>{const{separator:r,experimentalParseClassName:t}=e,o=r.length===1,s=r[0],a=r.length,i=l=>{const p=[];let c=0,b=0,j;for(let u=0;u<l.length;u++){let x=l[u];if(c===0){if(x===s&&(o||l.slice(u,u+a)===r)){p.push(l.slice(b,u)),b=u+a;continue}if(x==="/"){j=u;continue}}x==="["?c++:x==="]"&&c--}const w=p.length===0?l:l.substring(b),v=w.startsWith(ge),g=v?w.substring(1):w,m=j&&j>b?j-b:void 0;return{modifiers:p,hasImportantModifier:v,baseClassName:g,maybePostfixModifierPosition:m}};return t?l=>t({className:l,parseClassName:i}):i},Ae=e=>{if(e.length<=1)return e;const r=[];let t=[];return e.forEach(o=>{o[0]==="["?(r.push(...t.sort(),o),t=[]):t.push(o)}),r.push(...t.sort()),r},Te=e=>({cache:Le(e.cacheSize),parseClassName:De(e),...Ne(e)}),Ee=/\s+/,Oe=(e,r)=>{const{parseClassName:t,getClassGroupId:o,getConflictingClassGroupIds:s}=r,a=[],i=e.trim().split(Ee);let l="";for(let p=i.length-1;p>=0;p-=1){const c=i[p],{modifiers:b,hasImportantModifier:j,baseClassName:w,maybePostfixModifierPosition:v}=t(c);let g=!!v,m=o(g?w.substring(0,v):w);if(!m){if(!g){l=c+(l.length>0?" "+l:l);continue}if(m=o(w),!m){l=c+(l.length>0?" "+l:l);continue}g=!1}const u=Ae(b).join(":"),x=j?u+ge:u,h=x+m;if(a.includes(h))continue;a.push(h);const P=s(m,g);for(let N=0;N<P.length;++N){const A=P[N];a.push(x+A)}l=c+(l.length>0?" "+l:l)}return l};function Ie(){let e=0,r,t,o="";for(;e<arguments.length;)(r=arguments[e++])&&(t=fe(r))&&(o&&(o+=" "),o+=t);return o}const fe=e=>{if(typeof e=="string")return e;let r,t="";for(let o=0;o<e.length;o++)e[o]&&(r=fe(e[o]))&&(t&&(t+=" "),t+=r);return t};function Re(e,...r){let t,o,s,a=i;function i(p){const c=r.reduce((b,j)=>j(b),e());return t=Te(c),o=t.cache.get,s=t.cache.set,a=l,l(p)}function l(p){const c=o(p);if(c)return c;const b=Oe(p,t);return s(p,b),b}return function(){return a(Ie.apply(null,arguments))}}const L=e=>{const r=t=>t[e]||[];return r.isThemeGetter=!0,r},he=/^\[(?:([a-z-]+):)?(.+)\]$/i,Ve=/^\d+\/\d+$/,Ge=new Set(["px","full","screen"]),Be=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Fe=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,_e=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,$e=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,We=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,I=e=>U(e)||Ge.has(e)||Ve.test(e),R=e=>Y(e,"length",Ze),U=e=>!!e&&!Number.isNaN(Number(e)),te=e=>Y(e,"number",U),J=e=>!!e&&Number.isInteger(Number(e)),He=e=>e.endsWith("%")&&U(e.slice(0,-1)),y=e=>he.test(e),V=e=>Be.test(e),Ue=new Set(["length","size","percentage"]),Ye=e=>Y(e,Ue,xe),Ke=e=>Y(e,"position",xe),Je=new Set(["image","url"]),qe=e=>Y(e,Je,er),Xe=e=>Y(e,"",Qe),q=()=>!0,Y=(e,r,t)=>{const o=he.exec(e);return o?o[1]?typeof r=="string"?o[1]===r:r.has(o[1]):t(o[2]):!1},Ze=e=>Fe.test(e)&&!_e.test(e),xe=()=>!1,Qe=e=>$e.test(e),er=e=>We.test(e),rr=()=>{const e=L("colors"),r=L("spacing"),t=L("blur"),o=L("brightness"),s=L("borderColor"),a=L("borderRadius"),i=L("borderSpacing"),l=L("borderWidth"),p=L("contrast"),c=L("grayscale"),b=L("hueRotate"),j=L("invert"),w=L("gap"),v=L("gradientColorStops"),g=L("gradientColorStopPositions"),m=L("inset"),u=L("margin"),x=L("opacity"),h=L("padding"),P=L("saturate"),N=L("scale"),A=L("sepia"),C=L("skew"),M=L("space"),_=L("translate"),O=()=>["auto","contain","none"],B=()=>["auto","hidden","clip","visible","scroll"],K=()=>["auto",y,r],z=()=>[y,r],$=()=>["",I,R],W=()=>["auto",U,y],X=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],F=()=>["solid","dashed","dotted","double","none"],Z=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],f=()=>["start","end","center","between","around","evenly","stretch"],S=()=>["","0",y],T=()=>["auto","avoid","all","avoid-page","page","left","right","column"],E=()=>[U,y];return{cacheSize:500,separator:":",theme:{colors:[q],spacing:[I,R],blur:["none","",V,y],brightness:E(),borderColor:[e],borderRadius:["none","","full",V,y],borderSpacing:z(),borderWidth:$(),contrast:E(),grayscale:S(),hueRotate:E(),invert:S(),gap:z(),gradientColorStops:[e],gradientColorStopPositions:[He,R],inset:K(),margin:K(),opacity:E(),padding:z(),saturate:E(),scale:E(),sepia:S(),skew:E(),space:z(),translate:z()},classGroups:{aspect:[{aspect:["auto","square","video",y]}],container:["container"],columns:[{columns:[V]}],"break-after":[{"break-after":T()}],"break-before":[{"break-before":T()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...X(),y]}],overflow:[{overflow:B()}],"overflow-x":[{"overflow-x":B()}],"overflow-y":[{"overflow-y":B()}],overscroll:[{overscroll:O()}],"overscroll-x":[{"overscroll-x":O()}],"overscroll-y":[{"overscroll-y":O()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[m]}],"inset-x":[{"inset-x":[m]}],"inset-y":[{"inset-y":[m]}],start:[{start:[m]}],end:[{end:[m]}],top:[{top:[m]}],right:[{right:[m]}],bottom:[{bottom:[m]}],left:[{left:[m]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",J,y]}],basis:[{basis:K()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",y]}],grow:[{grow:S()}],shrink:[{shrink:S()}],order:[{order:["first","last","none",J,y]}],"grid-cols":[{"grid-cols":[q]}],"col-start-end":[{col:["auto",{span:["full",J,y]},y]}],"col-start":[{"col-start":W()}],"col-end":[{"col-end":W()}],"grid-rows":[{"grid-rows":[q]}],"row-start-end":[{row:["auto",{span:[J,y]},y]}],"row-start":[{"row-start":W()}],"row-end":[{"row-end":W()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",y]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",y]}],gap:[{gap:[w]}],"gap-x":[{"gap-x":[w]}],"gap-y":[{"gap-y":[w]}],"justify-content":[{justify:["normal",...f()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...f(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...f(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[h]}],px:[{px:[h]}],py:[{py:[h]}],ps:[{ps:[h]}],pe:[{pe:[h]}],pt:[{pt:[h]}],pr:[{pr:[h]}],pb:[{pb:[h]}],pl:[{pl:[h]}],m:[{m:[u]}],mx:[{mx:[u]}],my:[{my:[u]}],ms:[{ms:[u]}],me:[{me:[u]}],mt:[{mt:[u]}],mr:[{mr:[u]}],mb:[{mb:[u]}],ml:[{ml:[u]}],"space-x":[{"space-x":[M]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[M]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",y,r]}],"min-w":[{"min-w":[y,r,"min","max","fit"]}],"max-w":[{"max-w":[y,r,"none","full","min","max","fit","prose",{screen:[V]},V]}],h:[{h:[y,r,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[y,r,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[y,r,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[y,r,"auto","min","max","fit"]}],"font-size":[{text:["base",V,R]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",te]}],"font-family":[{font:[q]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",y]}],"line-clamp":[{"line-clamp":["none",U,te]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",I,y]}],"list-image":[{"list-image":["none",y]}],"list-style-type":[{list:["none","disc","decimal",y]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[x]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[x]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...F(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",I,R]}],"underline-offset":[{"underline-offset":["auto",I,y]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:z()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",y]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",y]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[x]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...X(),Ke]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",Ye]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},qe]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[g]}],"gradient-via-pos":[{via:[g]}],"gradient-to-pos":[{to:[g]}],"gradient-from":[{from:[v]}],"gradient-via":[{via:[v]}],"gradient-to":[{to:[v]}],rounded:[{rounded:[a]}],"rounded-s":[{"rounded-s":[a]}],"rounded-e":[{"rounded-e":[a]}],"rounded-t":[{"rounded-t":[a]}],"rounded-r":[{"rounded-r":[a]}],"rounded-b":[{"rounded-b":[a]}],"rounded-l":[{"rounded-l":[a]}],"rounded-ss":[{"rounded-ss":[a]}],"rounded-se":[{"rounded-se":[a]}],"rounded-ee":[{"rounded-ee":[a]}],"rounded-es":[{"rounded-es":[a]}],"rounded-tl":[{"rounded-tl":[a]}],"rounded-tr":[{"rounded-tr":[a]}],"rounded-br":[{"rounded-br":[a]}],"rounded-bl":[{"rounded-bl":[a]}],"border-w":[{border:[l]}],"border-w-x":[{"border-x":[l]}],"border-w-y":[{"border-y":[l]}],"border-w-s":[{"border-s":[l]}],"border-w-e":[{"border-e":[l]}],"border-w-t":[{"border-t":[l]}],"border-w-r":[{"border-r":[l]}],"border-w-b":[{"border-b":[l]}],"border-w-l":[{"border-l":[l]}],"border-opacity":[{"border-opacity":[x]}],"border-style":[{border:[...F(),"hidden"]}],"divide-x":[{"divide-x":[l]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[l]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[x]}],"divide-style":[{divide:F()}],"border-color":[{border:[s]}],"border-color-x":[{"border-x":[s]}],"border-color-y":[{"border-y":[s]}],"border-color-s":[{"border-s":[s]}],"border-color-e":[{"border-e":[s]}],"border-color-t":[{"border-t":[s]}],"border-color-r":[{"border-r":[s]}],"border-color-b":[{"border-b":[s]}],"border-color-l":[{"border-l":[s]}],"divide-color":[{divide:[s]}],"outline-style":[{outline:["",...F()]}],"outline-offset":[{"outline-offset":[I,y]}],"outline-w":[{outline:[I,R]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:$()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[x]}],"ring-offset-w":[{"ring-offset":[I,R]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",V,Xe]}],"shadow-color":[{shadow:[q]}],opacity:[{opacity:[x]}],"mix-blend":[{"mix-blend":[...Z(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":Z()}],filter:[{filter:["","none"]}],blur:[{blur:[t]}],brightness:[{brightness:[o]}],contrast:[{contrast:[p]}],"drop-shadow":[{"drop-shadow":["","none",V,y]}],grayscale:[{grayscale:[c]}],"hue-rotate":[{"hue-rotate":[b]}],invert:[{invert:[j]}],saturate:[{saturate:[P]}],sepia:[{sepia:[A]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[t]}],"backdrop-brightness":[{"backdrop-brightness":[o]}],"backdrop-contrast":[{"backdrop-contrast":[p]}],"backdrop-grayscale":[{"backdrop-grayscale":[c]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[b]}],"backdrop-invert":[{"backdrop-invert":[j]}],"backdrop-opacity":[{"backdrop-opacity":[x]}],"backdrop-saturate":[{"backdrop-saturate":[P]}],"backdrop-sepia":[{"backdrop-sepia":[A]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[i]}],"border-spacing-x":[{"border-spacing-x":[i]}],"border-spacing-y":[{"border-spacing-y":[i]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",y]}],duration:[{duration:E()}],ease:[{ease:["linear","in","out","in-out",y]}],delay:[{delay:E()}],animate:[{animate:["none","spin","ping","pulse","bounce",y]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[N]}],"scale-x":[{"scale-x":[N]}],"scale-y":[{"scale-y":[N]}],rotate:[{rotate:[J,y]}],"translate-x":[{"translate-x":[_]}],"translate-y":[{"translate-y":[_]}],"skew-x":[{"skew-x":[C]}],"skew-y":[{"skew-y":[C]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",y]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",y]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":z()}],"scroll-mx":[{"scroll-mx":z()}],"scroll-my":[{"scroll-my":z()}],"scroll-ms":[{"scroll-ms":z()}],"scroll-me":[{"scroll-me":z()}],"scroll-mt":[{"scroll-mt":z()}],"scroll-mr":[{"scroll-mr":z()}],"scroll-mb":[{"scroll-mb":z()}],"scroll-ml":[{"scroll-ml":z()}],"scroll-p":[{"scroll-p":z()}],"scroll-px":[{"scroll-px":z()}],"scroll-py":[{"scroll-py":z()}],"scroll-ps":[{"scroll-ps":z()}],"scroll-pe":[{"scroll-pe":z()}],"scroll-pt":[{"scroll-pt":z()}],"scroll-pr":[{"scroll-pr":z()}],"scroll-pb":[{"scroll-pb":z()}],"scroll-pl":[{"scroll-pl":z()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",y]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[I,R,te]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},tr=Re(rr);function d(...e){return tr(Ce(e))}function ye(e){const r=parseInt(e.slice(1,3),16)/255,t=parseInt(e.slice(3,5),16)/255,o=parseInt(e.slice(5,7),16)/255,s=Math.max(r,t,o),a=Math.min(r,t,o);let i=0,l=0;const p=(s+a)/2;if(s!==a){const c=s-a;switch(l=p>.5?c/(2-s-a):c/(s+a),s){case r:i=((t-o)/c+(t<o?6:0))/6;break;case t:i=((o-r)/c+2)/6;break;case o:i=((r-t)/c+4)/6;break}}return[i*360,l*100,p*100]}function ne(e,r,t){t/=100;const o=r*Math.min(t,1-t)/100,s=a=>{const i=(a+e/30)%12,l=t-o*Math.max(Math.min(i-3,9-i,1),-1);return Math.round(255*l).toString(16).padStart(2,"0")};return`#${s(0)}${s(8)}${s(4)}`}function Q(e){const[r,t,o]=ye(e);return{base:e,light:ne(r,Math.max(0,t-10),Math.min(100,o+15)),dark:ne(r,Math.min(100,t+10),Math.max(0,o-15))}}const D={colors:{primary:"#6366f1",primaryLight:"#818cf8",primaryDark:"#4f46e5",secondary:"#8b5cf6",secondaryLight:"#a78bfa",secondaryDark:"#7c3aed",danger:"#ef4444",dangerLight:"#f87171",dangerDark:"#dc2626",text:"#1f2937",textMuted:"#6b7280",textLight:"#9ca3af",border:"#e5e7eb",borderDark:"#d1d5db",background:"#ffffff",backgroundDark:"#f9fafb",backgroundLight:"#f3f4f6",disabled:"#e5e7eb",light:"#f9fafb",active:"#4338ca"}},ve=k.createContext(D);function or(){return k.useContext(ve)}function nr(e){const r=document.documentElement;r.style.setProperty("--componentables-primary",e.colors.primary),r.style.setProperty("--componentables-primary-light",e.colors.primaryLight),r.style.setProperty("--componentables-primary-dark",e.colors.primaryDark),r.style.setProperty("--componentables-secondary",e.colors.secondary),r.style.setProperty("--componentables-secondary-light",e.colors.secondaryLight),r.style.setProperty("--componentables-secondary-dark",e.colors.secondaryDark),r.style.setProperty("--componentables-danger",e.colors.danger),r.style.setProperty("--componentables-danger-light",e.colors.dangerLight),r.style.setProperty("--componentables-danger-dark",e.colors.dangerDark),r.style.setProperty("--componentables-text",e.colors.text),r.style.setProperty("--componentables-text-muted",e.colors.textMuted),r.style.setProperty("--componentables-text-light",e.colors.textLight),r.style.setProperty("--componentables-border",e.colors.border),r.style.setProperty("--componentables-border-dark",e.colors.borderDark),r.style.setProperty("--componentables-background",e.colors.background),r.style.setProperty("--componentables-background-dark",e.colors.backgroundDark),r.style.setProperty("--componentables-background-light",e.colors.backgroundLight),r.style.setProperty("--componentables-disabled",e.colors.disabled),r.style.setProperty("--componentables-light",e.colors.light),r.style.setProperty("--componentables-active",e.colors.active)}function sr({children:e,theme:r}){const t=k.useMemo(()=>{const o=r?.colors||{},s=o.primary?Q(o.primary):null,a=o.secondary?Q(o.secondary):null,i=o.danger?Q(o.danger):null;return{colors:{primary:o.primary||D.colors.primary,primaryLight:s?.light||D.colors.primaryLight,primaryDark:s?.dark||D.colors.primaryDark,secondary:o.secondary||D.colors.secondary,secondaryLight:a?.light||D.colors.secondaryLight,secondaryDark:a?.dark||D.colors.secondaryDark,danger:o.danger||D.colors.danger,dangerLight:i?.light||D.colors.dangerLight,dangerDark:i?.dark||D.colors.dangerDark,text:o.text||D.colors.text,textMuted:o.textMuted||D.colors.textMuted,textLight:o.textLight||D.colors.textLight,border:o.border||D.colors.border,borderDark:o.borderDark||D.colors.borderDark,background:o.background||D.colors.background,backgroundDark:o.backgroundDark||D.colors.backgroundDark,backgroundLight:o.backgroundLight||D.colors.backgroundLight,disabled:o.disabled||D.colors.disabled,light:o.light||D.colors.light,active:o.active||D.colors.active}}},[r]);return k.useEffect(()=>{nr(t)},[t]),k.createElement(ve.Provider,{value:t},e)}const ar={primary:"bg-primary text-white border-primary hover:bg-primary-dark hover:border-primary-dark active:bg-active",secondary:"bg-secondary text-white border-secondary hover:bg-secondary-dark hover:border-secondary-dark",outline:"bg-transparent text-primary border-primary hover:bg-primary hover:text-white",ghost:"bg-transparent text-primary border-transparent hover:bg-primary hover:text-white hover:border-primary",light:"bg-light text-text border-border hover:bg-background-light",danger:"bg-transparent text-danger border-danger hover:text-white hover:bg-danger hover:border-danger active:bg-danger-dark"},lr={sm:"px-3 py-1.5 text-sm",md:"px-4 py-2 text-base",lg:"px-6 py-3 text-lg",xl:"px-8 py-4 text-xl"};function se({children:e,onClick:r,disabled:t=!1,type:o="button",variant:s="primary",size:a="md",fullWidth:i=!1,loading:l=!1,className:p="",...c}){return n.jsxs("button",{type:o,onClick:t||l?void 0:r,disabled:t||l,className:d("inline-flex shadow-md hover:shadow-lg cursor-pointer items-center justify-center font-medium rounded-lg border transition-all duration-300 focus:outline-none focus:ring-2 focus:ring-primary focus:ring-opacity-50",t||l?"bg-disabled text-text-muted border-disabled cursor-not-allowed hover:bg-disabled hover:border-disabled hover:text-text-muted":ar[s],lr[a],i&&"w-full",l&&"cursor-wait opacity-75",p),...c,children:[l&&n.jsxs("svg",{className:"w-4 h-4 mr-2 animate-spin",fill:"none",viewBox:"0 0 24 24",children:[n.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),n.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),e]})}function ir({id:e,name:r,type:t="text",value:o,onChange:s,placeholder:a,label:i,error:l,disabled:p=!1,required:c=!1,colorScheme:b="secondary",className:j="",...w}){const v=()=>{const m="w-full p-4 border-2 rounded-lg text-base bg-background transition-all duration-300 focus:outline-none focus:ring-1 disabled:bg-light disabled:text-text-muted disabled:cursor-not-allowed placeholder:text-text-muted";if(l)return d(m,"border-danger focus:border-danger focus:shadow-danger-light");switch(b){case"primary":return d(m,"text-primary border-primary focus:border-primary");case"secondary":default:return d(m,"text-secondary border-secondary focus:border-secondary")}},g=()=>b==="primary"?"text-primary":"text-secondary";return n.jsxs("div",{className:d("mb-6",j),children:[i&&n.jsxs("label",{htmlFor:e,className:d("block mb-2 text-sm font-medium",g()),children:[i,c&&n.jsx("span",{className:"text-danger ml-1",children:"*"})]}),n.jsx("input",{id:e,name:r,type:t,value:o,onChange:s,placeholder:a,disabled:p,required:c,className:v(),...w}),l&&n.jsx("span",{className:"block mt-1 text-xs text-danger font-medium",children:l})]})}function cr({id:e,name:r,value:t,onChange:o,placeholder:s,label:a,error:i,disabled:l=!1,required:p=!1,colorScheme:c="secondary",className:b="",rows:j=4,...w}){const v=()=>{const m="w-full p-4 border-2 rounded-lg text-base bg-background transition-all duration-300 focus:outline-none focus:ring-1 disabled:bg-light disabled:text-text-muted disabled:cursor-not-allowed placeholder:text-text-muted resize-none";if(i)return d(m,"border-danger focus:border-danger focus:shadow-danger-light");switch(c){case"primary":return d(m,"text-primary border-primary focus:border-primary");case"secondary":default:return d(m,"text-secondary border-secondary focus:border-secondary")}},g=()=>c==="primary"?"text-primary":"text-secondary";return n.jsxs("div",{className:d("mb-6",b),children:[a&&n.jsxs("label",{htmlFor:e,className:d("block mb-2 text-sm font-medium",g()),children:[a,p&&n.jsx("span",{className:"text-danger ml-1",children:"*"})]}),n.jsx("textarea",{id:e,name:r,value:t,onChange:o,placeholder:s,disabled:l,required:p,rows:j,className:v(),...w}),i&&n.jsx("span",{className:"block mt-1 text-xs text-danger font-medium",children:i})]})}function dr({id:e,name:r,checked:t=!1,onChange:o,disabled:s=!1,label:a,colorScheme:i="secondary",size:l="md",className:p="",...c}){const[b,j]=k.useState(t),w=h=>{const P=h.target.checked;j(P),o?.(P)},v=()=>({primary:{bg:"bg-primary",border:"border-primary",text:"text-primary"},secondary:{bg:"bg-secondary",border:"border-secondary",text:"text-secondary"}})[i],g=()=>{switch(l){case"sm":return"w-10 h-6";case"lg":return"w-16 h-8";case"md":default:return"w-13 h-7"}},m=()=>{switch(l){case"sm":return"w-5 h-5";case"lg":return"w-7 h-7";case"md":default:return"w-6 h-6"}},u=()=>{if(!b)return"translate-x-0";switch(l){case"sm":return"translate-x-5";case"lg":return"translate-x-8";case"md":default:return"translate-x-6"}},x=v();return n.jsxs("div",{className:d("flex items-center gap-3",p),children:[n.jsxs("div",{className:"relative",children:[n.jsx("input",{type:"checkbox",id:e,name:r,checked:b,onChange:w,disabled:s,className:"sr-only",...c}),n.jsx("label",{htmlFor:e,className:d("block cursor-pointer transition-all duration-300 rounded-full border-2",g(),b?d(x.bg,x.border):"bg-gray-200 border-gray-300",s?"opacity-50 cursor-not-allowed":"hover:shadow-md"),children:n.jsx("span",{className:d("absolute top-0.5 left-0.5 inline-block rounded-full bg-white transition-all duration-300 shadow-sm",m(),u())})})]}),a&&n.jsx("label",{htmlFor:e,className:d("text-sm font-medium cursor-pointer select-none",x.text,s&&"opacity-50 cursor-not-allowed"),children:a})]})}var we={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},ce=k.createContext&&k.createContext(we),ur=["attr","size","title"];function pr(e,r){if(e==null)return{};var t=br(e,r),o,s;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(s=0;s<a.length;s++)o=a[s],!(r.indexOf(o)>=0)&&Object.prototype.propertyIsEnumerable.call(e,o)&&(t[o]=e[o])}return t}function br(e,r){if(e==null)return{};var t={};for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){if(r.indexOf(o)>=0)continue;t[o]=e[o]}return t}function ee(){return ee=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},ee.apply(this,arguments)}function de(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),t.push.apply(t,o)}return t}function re(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?de(Object(t),!0).forEach(function(o){mr(e,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):de(Object(t)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(t,o))})}return e}function mr(e,r,t){return r=gr(r),r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function gr(e){var r=fr(e,"string");return typeof r=="symbol"?r:r+""}function fr(e,r){if(typeof e!="object"||!e)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var o=t.call(e,r);if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}function ke(e){return e&&e.map((r,t)=>k.createElement(r.tag,re({key:t},r.attr),ke(r.child)))}function G(e){return r=>k.createElement(hr,ee({attr:re({},e.attr)},r),ke(e.child))}function hr(e){var r=t=>{var{attr:o,size:s,title:a}=e,i=pr(e,ur),l=s||t.size||"1em",p;return t.className&&(p=t.className),e.className&&(p=(p?p+" ":"")+e.className),k.createElement("svg",ee({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},t.attr,o,i,{className:p,style:re(re({color:e.color||t.color},t.style),e.style),height:l,width:l,xmlns:"http://www.w3.org/2000/svg"}),a&&k.createElement("title",null,a),e.children)};return ce!==void 0?k.createElement(ce.Consumer,null,t=>r(t)):r(we)}function xr(e){return G({attr:{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},child:[{tag:"circle",attr:{cx:"11",cy:"11",r:"8"},child:[]},{tag:"line",attr:{x1:"21",y1:"21",x2:"16.65",y2:"16.65"},child:[]}]})(e)}function yr(e,r){const[t,o]=k.useState(e);return k.useEffect(()=>{const s=setTimeout(()=>{o(e)},r);return()=>{clearTimeout(s)}},[e,r]),t}function vr({value:e,onChange:r,placeholder:t="Search...",disabled:o=!1,colorScheme:s="secondary",label:a,className:i="",debounceDelay:l=500,...p}){const[c,b]=k.useState(e||""),j=yr(c,l),w=k.useCallback(r,[r]);k.useEffect(()=>{w(j)},[j,w]);const v=()=>{const u="w-full px-4 py-4 pl-10 border-2 rounded-lg text-base bg-background transition-all duration-300 focus:outline-none focus:ring-1 disabled:bg-light disabled:text-text-muted disabled:cursor-not-allowed placeholder:text-text-muted";switch(s){case"primary":return d(u,"text-primary border-primary focus:border-primary");case"secondary":default:return d(u,"text-secondary border-secondary focus:border-secondary")}},g=()=>s==="primary"?"text-primary":"text-secondary",m=()=>s==="primary"?"text-primary":"text-secondary";return n.jsxs("div",{className:d("mb-0",i),children:[a&&n.jsx("label",{className:d("block mb-2 text-sm font-medium",m()),children:a}),n.jsxs("div",{className:"relative w-full",children:[n.jsx(xr,{className:d("absolute left-3 top-1/2 -translate-y-1/2 text-base pointer-events-none",g())}),n.jsx("input",{type:"text",value:c,onChange:u=>b(u.target.value),placeholder:t,disabled:o,className:v(),...p})]})]})}function wr(e){return G({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"},child:[]}]})(e)}function kr(e){return G({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"},child:[]}]})(e)}function jr({labelPage:e="Page",labelOf:r="of",setPagination:t,totalPages:o,currentPage:s,showLabel:a=!0,className:i="",isLoading:l=!1,fetchPage:p}){const c=parseInt(String(s))===1||parseInt(String(o))===0||l,b=parseInt(String(s))===parseInt(String(o))||parseInt(String(o))===0||l,j=()=>{l||(p?p(s-1):t&&t(v=>({...v,page:v.page-1})))},w=()=>{l||(p?p(s+1):t&&t(v=>({...v,page:v.page+1})))};return n.jsxs("div",{className:d("flex justify-center items-center mt-8",i),children:[n.jsx(se,{disabled:c,onClick:j,variant:"secondary",children:n.jsx(wr,{size:14})}),n.jsx("h5",{className:"font-bold mx-2.5 text-text",children:`${a?e:""} ${s}${a?` ${r} `:" / "}${o}`}),n.jsx(se,{disabled:b,onClick:w,variant:"primary",children:n.jsx(kr,{size:14})})]})}function je(e){return G({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"48",d:"m112 184 144 144 144-144"},child:[]}]})(e)}function Cr(e){return G({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"m289.94 256 95-95A24 24 0 0 0 351 127l-95 95-95-95a24 24 0 0 0-34 34l95 95-95 95a24 24 0 1 0 34 34l95-95 95 95a24 24 0 0 0 34-34z"},child:[]}]})(e)}function Nr(e){return G({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M456.69 421.39 362.6 327.3a173.81 173.81 0 0 0 34.84-104.58C397.44 126.38 319.06 48 222.72 48S48 126.38 48 222.72s78.38 174.72 174.72 174.72A173.81 173.81 0 0 0 327.3 362.6l94.09 94.09a25 25 0 0 0 35.3-35.3zM97.92 222.72a124.8 124.8 0 1 1 124.8 124.8 124.95 124.95 0 0 1-124.8-124.8z"},child:[]}]})(e)}function Mr({title:e,subtitle:r,children:t,defaultExpanded:o=!1,expanded:s,onToggle:a,className:i="",colorScheme:l="primary",icon:p,disabled:c=!1,headerExtra:b}){const[j,w]=k.useState(o),v=s!==void 0?s:j,g=()=>{if(c)return;const h=!v;s===void 0&&w(h),a?.(h)},m=()=>l==="primary"?"border-primary":"border-secondary",u=()=>l==="primary"?"text-primary":"text-secondary",x=()=>l==="primary"?"hover:bg-primary/5":"hover:bg-secondary/5";return n.jsxs("div",{className:d("w-full rounded-lg border-2 bg-background transition-all duration-300",m(),v&&"shadow-lg",i),children:[n.jsxs("button",{type:"button",onClick:g,disabled:c,className:d("w-full flex cursor-pointer items-center justify-between p-4 text-left transition-all duration-300 rounded-lg",!c&&x(),c&&"opacity-50"),"aria-expanded":v,children:[n.jsxs("div",{className:"flex items-center gap-3 flex-1 min-w-0",children:[p&&n.jsx("div",{className:d("shrink-0",u()),children:p}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("h3",{className:d("text-base font-medium truncate",u()),children:e}),r&&n.jsx("p",{className:"text-sm text-text-muted truncate mt-0.5",children:r})]})]}),n.jsxs("div",{className:"flex items-center gap-3 shrink-0",children:[b&&n.jsx("div",{onClick:h=>h.stopPropagation(),children:b}),n.jsx("div",{className:d("h-5 w-5 transition-transform duration-300",u(),v&&"rotate-180"),children:n.jsx(je,{className:"h-5 w-5"})})]})]}),n.jsx("div",{className:d("overflow-hidden transition-all duration-300 ease-in-out",v?"max-h-[2000px] opacity-100":"max-h-0 opacity-0"),children:n.jsx("div",{className:d("p-4 pt-0 border-t-0",m()),children:n.jsx("div",{className:"border-t border-border pt-4",children:t})})})]})}function Sr({children:e,className:r=""}){return n.jsx("div",{className:d("py-4",r),children:e})}function zr({options:e,value:r,onChange:t,children:o,className:s="",colorScheme:a="primary",variant:i="underline"}){const[l,p]=k.useState(r??e[0]?.value??""),c=r!==void 0?r:l,b=g=>{r===void 0&&p(g),t?.(g)},j=(g,m)=>{const u=c===g,x="px-4 py-3 cursor-pointer text-sm font-medium transition-all duration-300 focus:outline-none disabled:opacity-50 disabled:cursor-not-allowed";if(m)return d(x,"text-text-muted");switch(i){case"filled":return d(x,"rounded-lg",u?a==="primary"?"bg-primary text-white":"bg-secondary text-white":"text-text-muted hover:bg-background-light");case"pills":return d(x,"rounded-full",u?a==="primary"?"bg-primary/10 text-primary border-2 border-primary":"bg-secondary/10 text-secondary border-2 border-secondary":"text-text-muted hover:bg-background-light border-2 border-transparent");case"underline":default:return d(x,"border-b-2",u?a==="primary"?"border-primary text-primary":"border-secondary text-secondary":"border-transparent text-text-muted hover:text-text hover:border-border")}},w=()=>{switch(i){case"filled":return"flex gap-1 p-1 bg-background-light rounded-lg";case"pills":return"flex gap-2 flex-wrap";case"underline":default:return"flex border-b-2 border-border"}},v=k.Children.toArray(o).find(g=>k.isValidElement(g)?g.props.value===c:!1);return n.jsxs("div",{className:d("w-full",s),children:[n.jsx("div",{className:w(),role:"tablist",children:e.map(g=>n.jsx("button",{type:"button",role:"tab","aria-selected":c===g.value,"aria-controls":`tabpanel-${g.value}`,disabled:g.disabled,onClick:()=>!g.disabled&&b(g.value),className:j(g.value,g.disabled),children:g.label},g.value))}),n.jsx("div",{role:"tabpanel",id:`tabpanel-${c}`,children:v})]})}function ue(e){return G({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"M15.41 7.41 14 6l-6 6 6 6 1.41-1.41L10.83 12z"},child:[]}]})(e)}function pe(e){return G({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"},child:[]}]})(e)}const Pr=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Lr=["January","February","March","April","May","June","July","August","September","October","November","December"];function Dr(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function Ar(e){const r=new Date(e.getFullYear(),e.getMonth(),1).getDay();return r===0?6:r-1}function Tr({value:e,onChange:r,disabled:t=!1,className:o="",colorScheme:s="secondary",locale:a="en-US",dayNames:i=Pr,monthNames:l=Lr,...p}){const[c,b]=k.useState(e||new Date),j=Dr(c),w=Ar(c),v=[];for(let C=0;C<w;C++)v.push(null);for(let C=1;C<=j;C++){const M=new Date(c.getFullYear(),c.getMonth(),C,12,0,0);v.push(M)}const g=()=>{b(new Date(c.getFullYear(),c.getMonth()-1,1,12,0,0))},m=()=>{b(new Date(c.getFullYear(),c.getMonth()+1,1,12,0,0))},u=()=>{b(new Date(c.getFullYear()-1,c.getMonth(),1,12,0,0))},x=()=>{b(new Date(c.getFullYear()+1,c.getMonth(),1,12,0,0))},h=C=>{if(C&&!t){const M=new Date(C.getFullYear(),C.getMonth(),C.getDate(),12,0,0);b(M),r?.(M)}},N=(()=>{switch(s){case"primary":return{header:"text-primary",selected:"bg-primary text-white",hover:"hover:bg-primary/10",button:"text-primary border-primary hover:bg-primary/20"};case"secondary":default:return{header:"text-secondary",selected:"bg-secondary text-white",hover:"hover:bg-secondary/10",button:"text-secondary border-secondary hover:bg-secondary/20"}}})(),A=C=>C&&e?C.toDateString()===e.toDateString():!1;return n.jsxs("div",{className:d("w-full max-w-sm bg-background border-2 border-border rounded-lg p-6 shadow-md",o),...p,children:[n.jsxs("div",{className:"mb-6",children:[n.jsxs("div",{className:d("flex items-center justify-between mb-4",N.header),children:[n.jsx("button",{type:"button",onClick:u,disabled:t,className:d("p-2 rounded-lg border transition-all duration-300",N.button,t&&"opacity-50 cursor-not-allowed"),children:n.jsx(ue,{size:18})}),n.jsx("h2",{className:"font-semibold text-lg",children:c.getFullYear()}),n.jsx("button",{type:"button",onClick:x,disabled:t,className:d("p-2 rounded-lg border transition-all duration-300",N.button,t&&"opacity-50 cursor-not-allowed"),children:n.jsx(pe,{size:18})})]}),n.jsxs("div",{className:d("flex items-center justify-between",N.header),children:[n.jsx("button",{type:"button",onClick:g,disabled:t,className:d("p-2 rounded-lg border transition-all duration-300",N.button,t&&"opacity-50 cursor-not-allowed"),children:n.jsx(ue,{size:18})}),n.jsx("h2",{className:"font-semibold text-lg",children:l[c.getMonth()]}),n.jsx("button",{type:"button",onClick:m,disabled:t,className:d("p-2 rounded-lg border transition-all duration-300",N.button,t&&"opacity-50 cursor-not-allowed"),children:n.jsx(pe,{size:18})})]})]}),n.jsx("div",{className:"grid grid-cols-7 gap-2 mb-4",children:i.map(C=>n.jsx("div",{className:d("text-center text-sm font-medium py-2",N.header),children:C},C))}),n.jsx("div",{className:"grid grid-cols-7 gap-2",children:v.map((C,M)=>n.jsx("button",{type:"button",onClick:()=>h(C),disabled:!C||t,className:d("p-2 rounded-lg text-sm font-medium transition-all duration-300",C?d("cursor-pointer",N.hover,A(C)?N.selected:"text-text border border-transparent hover:border-border",t&&"opacity-50 cursor-not-allowed"):"cursor-default"),children:C?C.getDate():""},M))}),e&&n.jsx("div",{className:d("mt-6 p-3 rounded-lg bg-background-dark border border-border text-center text-sm font-medium",N.header),children:e.toLocaleDateString(a,{year:"numeric",month:"long",day:"numeric"})})]})}function Er({headers:e,data:r,loading:t,loadingText:o="Loading...",actions:s,actionsHeader:a="Actions",onRowClick:i,className:l="",rowClassName:p="",cellClassName:c="",headerClassName:b="",emptyText:j="No data available",showCount:w=!0,countText:v=m=>`Showing ${m} record${m!==1?"s":""}`,keyExtractor:g=(m,u)=>m._id||m.id||u}){if(t)return n.jsx("div",{className:"flex justify-center items-center min-h-[400px]",children:n.jsx("div",{className:"text-lg text-text-light",children:o})});if(r.length===0)return n.jsx("div",{className:"flex justify-center items-center min-h-[200px]",children:n.jsx("div",{className:"text-lg text-text-muted",children:j})});const m=(u,x)=>{const h=x.toLowerCase().replace(/\s+/g,"_");let P=u[h];if(P===void 0){const N=[h.replace(/_/g,""),x.toLowerCase().replace(/\s+/g,""),h.replace(/_([a-z])/g,(A,C)=>C.toUpperCase())];for(const A of N)if(u[A]!==void 0){P=u[A];break}}if(P===void 0){const N=x.toLowerCase().split(" "),A=Object.keys(u).find(C=>N.some(M=>C.toLowerCase().includes(M)));A&&(P=u[A])}return P!=null?String(P):"N/A"};return n.jsxs("div",{className:d("overflow-x-auto",l),children:[n.jsxs("table",{className:"w-full border-collapse",children:[n.jsx("thead",{children:n.jsxs("tr",{className:"border-b-2 border-border",children:[e.map((u,x)=>n.jsx("th",{className:d("text-left py-3 px-4 font-semibold text-text",b),children:u},x)),s&&n.jsx("th",{className:d("text-center py-3 px-4 font-semibold text-text",b),children:a})]})}),n.jsx("tbody",{children:r.map((u,x)=>n.jsxs("tr",{className:d("border-b border-border-dark hover:bg-background-light transition-colors",i&&"cursor-pointer",p),onClick:()=>i?.(u),children:[e.map((h,P)=>n.jsx("td",{className:d("py-4 px-4",c),children:n.jsx("div",{className:"text-text-light",children:m(u,h)})},P)),s&&n.jsx("td",{className:d("py-4 px-4",c),children:n.jsx("div",{className:"flex gap-2 justify-center",children:s.map((h,P)=>{const N=h.component||"button";return n.jsxs(N,{onClick:A=>{A.stopPropagation(),h.onClick?.(u)},className:h.className||"",...h.props||{},children:[h.icon&&n.jsx("span",{className:"inline-block",children:k.createElement(h.icon)}),h.label&&h.label]},P)})})})]},g(u,x)))})]}),w&&r.length>0&&n.jsx("div",{className:"mt-6 text-center text-text-light text-sm",children:v(r.length)})]})}function Or({label:e,options:r,value:t="",onChange:o,multiple:s=!1,className:a="",searchable:i=!1,onSearchInputCustom:l,placeholder:p="Select...",disabled:c=!1,error:b,required:j=!1,colorScheme:w="primary",noResultsText:v="No results found",searchPlaceholder:g="Search...",...m}){const[u,x]=k.useState(!1),[h,P]=k.useState(""),[N,A]=k.useState({top:0,left:0,openUpward:!1}),C=Array.isArray(t)?t:t?[t]:[],[M,_]=k.useState(C.map(f=>r.find(S=>S.value===f)).filter(Boolean)),O=k.useRef(null),B=k.useRef(null),K=()=>{const f="w-full p-4 border-2 rounded-lg text-base bg-background transition-all duration-300 focus:outline-none focus:ring-1 disabled:bg-light disabled:text-text-muted disabled:cursor-not-allowed";if(b)return d(f,"border-danger focus:border-danger");switch(w){case"primary":return d(f,"text-primary border-primary focus:border-primary");case"secondary":default:return d(f,"text-secondary border-secondary focus:border-secondary")}},z=()=>w==="primary"?"text-primary":"text-secondary";k.useEffect(()=>{const S=(Array.isArray(t)?t:t!==""&&t!==null&&t!==void 0?[t]:[]).map(T=>r.find(E=>E.value===T)).filter(Boolean);_(S)},[t,r]),k.useEffect(()=>{u&&i&&B.current&&B.current.focus()},[u,i]);const $=k.useCallback(()=>{if(!O.current)return;const f=O.current.getBoundingClientRect(),S=window.innerHeight,T=250,H=S-f.bottom<T&&f.top>T;A({top:H?f.top:f.bottom,left:f.left,width:f.width,openUpward:H})},[]);k.useEffect(()=>{function f(T){O.current&&!O.current.contains(T.target)&&x(!1)}function S(){u&&$()}return document.addEventListener("mousedown",f),window.addEventListener("scroll",S,!0),window.addEventListener("resize",S),()=>{document.removeEventListener("mousedown",f),window.removeEventListener("scroll",S,!0),window.removeEventListener("resize",S)}},[u,$]);const W=f=>{const S=r.find(E=>E.value===f);if(!S)return;let T;s?(T=M.some(H=>H.value===f)?M.filter(H=>H.value!==f):[...M,S],_(T),o(T)):(T=[S],_(T),o(S),x(!1),P(""))},X=f=>{P(f),l?.(f)},F=i?r.filter(f=>f.label.toLowerCase().includes(h.toLowerCase())):r,Z=()=>M.length===0?p:s?M.length===1?M[0].label:`${M.length} selected`:M[0]?.label||p;return n.jsxs("div",{className:d("mb-6",a),children:[e&&n.jsxs("label",{className:d("block mb-2 text-sm font-medium",z()),children:[e,j&&n.jsx("span",{className:"text-danger ml-1",children:"*"})]}),n.jsxs("div",{ref:O,className:"relative w-full",children:[n.jsxs("button",{type:"button",onClick:f=>{f.preventDefault(),f.stopPropagation(),u||$(),x(!u)},className:d(K(),"inline-flex items-center justify-between cursor-pointer h-auto min-h-14",c&&"cursor-not-allowed",u&&"ring-1"),disabled:c,...m,children:[n.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[M.length>0&&M[0].hex&&n.jsx("div",{className:"h-4 w-4 rounded border border-border",style:{backgroundColor:M[0].hex}}),n.jsx("span",{className:M.length>0?"":"text-text-muted",children:Z()})]}),n.jsx("div",{className:d("h-5 w-5 transition-transform duration-200",u&&"rotate-180"),children:n.jsx(je,{className:"h-5 w-5"})})]}),u&&n.jsxs("div",{className:d("fixed z-[9999] rounded-lg border-2 bg-background shadow-xl",b?"border-danger":w==="primary"?"border-primary":"border-secondary"),style:{top:`${N.top+(N.openUpward?0:8)}px`,left:`${N.left}px`,width:`${N.width}px`,transform:N.openUpward?"translateY(-100%)":"none"},children:[i&&n.jsx("div",{className:"border-b border-border p-3",children:n.jsxs("div",{className:"relative",children:[n.jsx(Nr,{className:"absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2 transform text-text-muted"}),n.jsx("input",{ref:B,type:"text",value:h,onChange:f=>X(f.target.value),placeholder:g,className:d("w-full rounded-lg border-2 py-2 pr-10 pl-10 text-sm transition-all duration-300 focus:outline-none focus:ring-1",w==="primary"?"border-primary text-primary":"border-secondary text-secondary")}),h&&n.jsx("button",{type:"button",onClick:()=>P(""),className:"absolute top-1/2 right-3 h-4 w-4 -translate-y-1/2 transform text-text-muted hover:text-text",children:n.jsx(Cr,{className:"h-4 w-4"})})]})}),n.jsxs("div",{className:"max-h-60 overflow-y-auto py-1",children:[F.map(f=>n.jsx("button",{type:"button",onClick:()=>W(f.value??""),className:d("w-full px-4 py-3 text-left text-sm transition-colors",M.some(S=>S.value===f.value)?w==="primary"?"bg-primary/10 text-primary font-medium":"bg-secondary/10 text-secondary font-medium":"text-text hover:bg-background-light"),children:n.jsxs("div",{className:"flex items-center gap-3",children:[s&&n.jsx("div",{className:d("flex h-4 w-4 items-center justify-center rounded border-2 transition-colors",M.some(S=>S.value===f.value)?w==="primary"?"border-primary bg-primary":"border-secondary bg-secondary":"border-border"),children:M.some(S=>S.value===f.value)&&n.jsx("svg",{className:"h-3 w-3 text-white",fill:"currentColor",viewBox:"0 0 20 20",children:n.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})})}),f.hex&&n.jsx("div",{className:"h-4 w-4 rounded border border-border",style:{backgroundColor:f.hex}}),n.jsx("span",{children:f.label})]})},f.value)),F.length===0&&h&&r.length>0&&n.jsx("div",{className:"px-4 py-3",children:n.jsx("span",{className:"text-sm text-text-muted",children:v})})]})]})]}),b&&n.jsx("span",{className:"block mt-1 text-xs text-danger font-medium",children:b})]})}exports.Button=se;exports.Calendar=Tr;exports.Dropdown=Or;exports.ExpandableCard=Mr;exports.Input=ir;exports.InputArea=cr;exports.Pagination=jr;exports.SearchInput=vr;exports.TabPanel=Sr;exports.Table=Er;exports.Tabs=zr;exports.ThemeProvider=sr;exports.Toggle=dr;exports.cn=d;exports.defaultTheme=D;exports.generateColorVariants=Q;exports.hexToHsl=ye;exports.hslToHex=ne;exports.useTheme=or;
2
+ //# sourceMappingURL=index.cjs.map