@neuctra/ui 0.2.8 → 0.2.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.
- package/dist/index.cjs.js +107 -138
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +1555 -2367
- package/dist/index.es.js.map +1 -1
- package/dist/{components → types/components}/basic/Alert.d.ts +3 -2
- package/dist/{components → types/components}/basic/Avatar.d.ts +1 -0
- package/dist/{components → types/components}/basic/Badge.d.ts +1 -2
- package/dist/{components → types/components}/basic/Button.d.ts +2 -2
- package/dist/{components → types/components}/basic/Input.d.ts +1 -1
- package/dist/types/components/basic/Tabs.d.ts +76 -0
- package/dist/{components → types/components}/basic/Text.d.ts +25 -20
- package/dist/{index.d.ts → types/index.d.ts} +3 -7
- package/dist/ui.css +1 -1
- package/package.json +9 -2
- package/dist/components/basic/Tabs.d.ts +0 -47
- package/dist/src/components/basic/Accordation.js +0 -73
- package/dist/src/components/basic/Alert.js +0 -36
- package/dist/src/components/basic/AudioGallery.js +0 -425
- package/dist/src/components/basic/AudioPlayer.js +0 -130
- package/dist/src/components/basic/Avatar.js +0 -68
- package/dist/src/components/basic/Badge.js +0 -27
- package/dist/src/components/basic/Button.js +0 -25
- package/dist/src/components/basic/CheckboxGroup.js +0 -63
- package/dist/src/components/basic/Container.js +0 -26
- package/dist/src/components/basic/Drawer.js +0 -43
- package/dist/src/components/basic/DropDown.js +0 -98
- package/dist/src/components/basic/FlexView.js +0 -19
- package/dist/src/components/basic/GridView.js +0 -18
- package/dist/src/components/basic/Image.js +0 -55
- package/dist/src/components/basic/Input.js +0 -82
- package/dist/src/components/basic/List.js +0 -29
- package/dist/src/components/basic/Modal.js +0 -34
- package/dist/src/components/basic/RadioGroup.js +0 -54
- package/dist/src/components/basic/Stack.js +0 -22
- package/dist/src/components/basic/SwitchGroup.js +0 -76
- package/dist/src/components/basic/Table.js +0 -30
- package/dist/src/components/basic/Tabs.js +0 -140
- package/dist/src/components/basic/Text.js +0 -25
- package/dist/src/index.js +0 -44
- package/dist/types/src/components/basic/Accordation.d.ts +0 -40
- package/dist/types/src/components/basic/Alert.d.ts +0 -17
- package/dist/types/src/components/basic/AudioGallery.d.ts +0 -23
- package/dist/types/src/components/basic/AudioPlayer.d.ts +0 -16
- package/dist/types/src/components/basic/Avatar.d.ts +0 -23
- package/dist/types/src/components/basic/Badge.d.ts +0 -21
- package/dist/types/src/components/basic/Button.d.ts +0 -15
- package/dist/types/src/components/basic/CheckboxGroup.d.ts +0 -27
- package/dist/types/src/components/basic/Container.d.ts +0 -15
- package/dist/types/src/components/basic/Drawer.d.ts +0 -22
- package/dist/types/src/components/basic/DropDown.d.ts +0 -33
- package/dist/types/src/components/basic/FlexView.d.ts +0 -16
- package/dist/types/src/components/basic/GridView.d.ts +0 -14
- package/dist/types/src/components/basic/Image.d.ts +0 -37
- package/dist/types/src/components/basic/Input.d.ts +0 -33
- package/dist/types/src/components/basic/List.d.ts +0 -20
- package/dist/types/src/components/basic/Modal.d.ts +0 -17
- package/dist/types/src/components/basic/RadioGroup.d.ts +0 -26
- package/dist/types/src/components/basic/Stack.d.ts +0 -17
- package/dist/types/src/components/basic/SwitchGroup.d.ts +0 -26
- package/dist/types/src/components/basic/Table.d.ts +0 -28
- package/dist/types/src/components/basic/Tabs.d.ts +0 -47
- package/dist/types/src/components/basic/Text.d.ts +0 -1121
- package/dist/types/src/index.d.ts +0 -24
- package/dist/types/vite.config.d.ts +0 -2
- package/dist/vite.config.js +0 -34
- /package/dist/{components/basic/Accordation.d.ts → types/components/basic/Accordion.d.ts} +0 -0
- /package/dist/{components → types/components}/basic/AudioGallery.d.ts +0 -0
- /package/dist/{components → types/components}/basic/AudioPlayer.d.ts +0 -0
- /package/dist/{components → types/components}/basic/CheckboxGroup.d.ts +0 -0
- /package/dist/{components → types/components}/basic/Container.d.ts +0 -0
- /package/dist/{components → types/components}/basic/Drawer.d.ts +0 -0
- /package/dist/{components → types/components}/basic/DropDown.d.ts +0 -0
- /package/dist/{components → types/components}/basic/FlexView.d.ts +0 -0
- /package/dist/{components → types/components}/basic/GridView.d.ts +0 -0
- /package/dist/{components → types/components}/basic/Image.d.ts +0 -0
- /package/dist/{components → types/components}/basic/List.d.ts +0 -0
- /package/dist/{components → types/components}/basic/Modal.d.ts +0 -0
- /package/dist/{components → types/components}/basic/RadioGroup.d.ts +0 -0
- /package/dist/{components → types/components}/basic/Stack.d.ts +0 -0
- /package/dist/{components → types/components}/basic/SwitchGroup.d.ts +0 -0
- /package/dist/{components → types/components}/basic/Table.d.ts +0 -0
package/dist/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react");var K={exports:{}},X={};/**
|
|
2
2
|
* @license React
|
|
3
3
|
* react-jsx-runtime.production.js
|
|
4
4
|
*
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
|
-
*/var
|
|
9
|
+
*/var re;function he(){if(re)return X;re=1;var r=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function s(n,o,l){var c=null;if(l!==void 0&&(c=""+l),o.key!==void 0&&(c=""+o.key),"key"in o){l={};for(var i in o)i!=="key"&&(l[i]=o[i])}else l=o;return o=l.ref,{$$typeof:r,type:n,key:c,ref:o!==void 0?o:null,props:l}}return X.Fragment=t,X.jsx=s,X.jsxs=s,X}var J={};/**
|
|
10
10
|
* @license React
|
|
11
11
|
* react-jsx-runtime.development.js
|
|
12
12
|
*
|
|
@@ -14,211 +14,180 @@
|
|
|
14
14
|
*
|
|
15
15
|
* This source code is licensed under the MIT license found in the
|
|
16
16
|
* LICENSE file in the root directory of this source tree.
|
|
17
|
-
*/var
|
|
17
|
+
*/var se;function ye(){return se||(se=1,process.env.NODE_ENV!=="production"&&(function(){function r(a){if(a==null)return null;if(typeof a=="function")return a.$$typeof===Y?null:a.displayName||a.name||null;if(typeof a=="string")return a;switch(a){case z:return"Fragment";case N:return"Profiler";case j:return"StrictMode";case x:return"Suspense";case h:return"SuspenseList";case O:return"Activity"}if(typeof a=="object")switch(typeof a.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),a.$$typeof){case T:return"Portal";case R:return a.displayName||"Context";case _:return(a._context.displayName||"Context")+".Consumer";case v:var w=a.render;return a=a.displayName,a||(a=w.displayName||w.name||"",a=a!==""?"ForwardRef("+a+")":"ForwardRef"),a;case m:return w=a.displayName||null,w!==null?w:r(a.type)||"Memo";case $:w=a._payload,a=a._init;try{return r(a(w))}catch{}}return null}function t(a){return""+a}function s(a){try{t(a);var w=!1}catch{w=!0}if(w){w=console;var k=w.error,L=typeof Symbol=="function"&&Symbol.toStringTag&&a[Symbol.toStringTag]||a.constructor.name||"Object";return k.call(w,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",L),t(a)}}function n(a){if(a===z)return"<>";if(typeof a=="object"&&a!==null&&a.$$typeof===$)return"<...>";try{var w=r(a);return w?"<"+w+">":"<...>"}catch{return"<...>"}}function o(){var a=M.A;return a===null?null:a.getOwner()}function l(){return Error("react-stack-top-frame")}function c(a){if(B.call(a,"key")){var w=Object.getOwnPropertyDescriptor(a,"key").get;if(w&&w.isReactWarning)return!1}return a.key!==void 0}function i(a,w){function k(){I||(I=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",w))}k.isReactWarning=!0,Object.defineProperty(a,"key",{get:k,configurable:!0})}function f(){var a=r(this.type);return A[a]||(A[a]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),a=this.props.ref,a!==void 0?a:null}function y(a,w,k,L,V,H){var D=k.ref;return a={$$typeof:C,type:a,key:w,props:k,_owner:L},(D!==void 0?D:null)!==null?Object.defineProperty(a,"ref",{enumerable:!1,get:f}):Object.defineProperty(a,"ref",{enumerable:!1,value:null}),a._store={},Object.defineProperty(a._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(a,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(a,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:V}),Object.defineProperty(a,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:H}),Object.freeze&&(Object.freeze(a.props),Object.freeze(a)),a}function p(a,w,k,L,V,H){var D=w.children;if(D!==void 0)if(L)if(P(D)){for(L=0;L<D.length;L++)u(D[L]);Object.freeze&&Object.freeze(D)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else u(D);if(B.call(w,"key")){D=r(a);var G=Object.keys(w).filter(function(be){return be!=="key"});L=0<G.length?"{key: someKey, "+G.join(": ..., ")+": ...}":"{key: someKey}",U[D+L]||(G=0<G.length?"{"+G.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
|
|
18
18
|
let props = %s;
|
|
19
19
|
<%s {...props} />
|
|
20
20
|
React keys must be passed directly to JSX without using spread:
|
|
21
21
|
let props = %s;
|
|
22
|
-
<%s key={someKey} {...props} />`,
|
|
22
|
+
<%s key={someKey} {...props} />`,L,D,G,D),U[D+L]=!0)}if(D=null,k!==void 0&&(s(k),D=""+k),c(w)&&(s(w.key),D=""+w.key),"key"in w){k={};for(var Q in w)Q!=="key"&&(k[Q]=w[Q])}else k=w;return D&&i(k,typeof a=="function"?a.displayName||a.name||"Unknown":a),y(a,D,k,o(),V,H)}function u(a){b(a)?a._store&&(a._store.validated=1):typeof a=="object"&&a!==null&&a.$$typeof===$&&(a._payload.status==="fulfilled"?b(a._payload.value)&&a._payload.value._store&&(a._payload.value._store.validated=1):a._store&&(a._store.validated=1))}function b(a){return typeof a=="object"&&a!==null&&a.$$typeof===C}var g=d,C=Symbol.for("react.transitional.element"),T=Symbol.for("react.portal"),z=Symbol.for("react.fragment"),j=Symbol.for("react.strict_mode"),N=Symbol.for("react.profiler"),_=Symbol.for("react.consumer"),R=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),x=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),$=Symbol.for("react.lazy"),O=Symbol.for("react.activity"),Y=Symbol.for("react.client.reference"),M=g.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,B=Object.prototype.hasOwnProperty,P=Array.isArray,S=console.createTask?console.createTask:function(){return null};g={react_stack_bottom_frame:function(a){return a()}};var I,A={},F=g.react_stack_bottom_frame.bind(g,l)(),W=S(n(l)),U={};J.Fragment=z,J.jsx=function(a,w,k){var L=1e4>M.recentlyCreatedOwnerStacks++;return p(a,w,k,!1,L?Error("react-stack-top-frame"):F,L?S(n(a)):W)},J.jsxs=function(a,w,k){var L=1e4>M.recentlyCreatedOwnerStacks++;return p(a,w,k,!0,L?Error("react-stack-top-frame"):F,L?S(n(a)):W)}})()),J}var ne;function ge(){return ne||(ne=1,process.env.NODE_ENV==="production"?K.exports=he():K.exports=ye()),K.exports}var e=ge();/**
|
|
23
23
|
* @license lucide-react v0.536.0 - ISC
|
|
24
24
|
*
|
|
25
25
|
* This source code is licensed under the ISC license.
|
|
26
26
|
* See the LICENSE file in the root directory of this source tree.
|
|
27
|
-
*/const
|
|
27
|
+
*/const ve=r=>r.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),we=r=>r.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,s,n)=>n?n.toUpperCase():s.toLowerCase()),ae=r=>{const t=we(r);return t.charAt(0).toUpperCase()+t.slice(1)},oe=(...r)=>r.filter((t,s,n)=>!!t&&t.trim()!==""&&n.indexOf(t)===s).join(" ").trim(),ke=r=>{for(const t in r)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};/**
|
|
28
28
|
* @license lucide-react v0.536.0 - ISC
|
|
29
29
|
*
|
|
30
30
|
* This source code is licensed under the ISC license.
|
|
31
31
|
* See the LICENSE file in the root directory of this source tree.
|
|
32
|
-
*/var
|
|
32
|
+
*/var je={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
|
|
33
33
|
* @license lucide-react v0.536.0 - ISC
|
|
34
34
|
*
|
|
35
35
|
* This source code is licensed under the ISC license.
|
|
36
36
|
* See the LICENSE file in the root directory of this source tree.
|
|
37
|
-
*/const
|
|
37
|
+
*/const Ne=d.forwardRef(({color:r="currentColor",size:t=24,strokeWidth:s=2,absoluteStrokeWidth:n,className:o="",children:l,iconNode:c,...i},f)=>d.createElement("svg",{ref:f,...je,width:t,height:t,stroke:r,strokeWidth:n?Number(s)*24/Number(t):s,className:oe("lucide",o),...!l&&!ke(i)&&{"aria-hidden":"true"},...i},[...c.map(([y,p])=>d.createElement(y,p)),...Array.isArray(l)?l:[l]]));/**
|
|
38
38
|
* @license lucide-react v0.536.0 - ISC
|
|
39
39
|
*
|
|
40
40
|
* This source code is licensed under the ISC license.
|
|
41
41
|
* See the LICENSE file in the root directory of this source tree.
|
|
42
|
-
*/const
|
|
42
|
+
*/const q=(r,t)=>{const s=d.forwardRef(({className:n,...o},l)=>d.createElement(Ne,{ref:l,iconNode:t,className:oe(`lucide-${ve(ae(r))}`,`lucide-${r}`,n),...o}));return s.displayName=ae(r),s};/**
|
|
43
43
|
* @license lucide-react v0.536.0 - ISC
|
|
44
44
|
*
|
|
45
45
|
* This source code is licensed under the ISC license.
|
|
46
46
|
* See the LICENSE file in the root directory of this source tree.
|
|
47
|
-
*/const
|
|
47
|
+
*/const Ee=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],le=q("chevron-down",Ee);/**
|
|
48
48
|
* @license lucide-react v0.536.0 - ISC
|
|
49
49
|
*
|
|
50
50
|
* This source code is licensed under the ISC license.
|
|
51
51
|
* See the LICENSE file in the root directory of this source tree.
|
|
52
|
-
*/const
|
|
52
|
+
*/const Te=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],Re=q("chevron-up",Te);/**
|
|
53
53
|
* @license lucide-react v0.536.0 - ISC
|
|
54
54
|
*
|
|
55
55
|
* This source code is licensed under the ISC license.
|
|
56
56
|
* See the LICENSE file in the root directory of this source tree.
|
|
57
|
-
*/const
|
|
57
|
+
*/const Ce=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],$e=q("circle-alert",Ce);/**
|
|
58
58
|
* @license lucide-react v0.536.0 - ISC
|
|
59
59
|
*
|
|
60
60
|
* This source code is licensed under the ISC license.
|
|
61
61
|
* See the LICENSE file in the root directory of this source tree.
|
|
62
|
-
*/const
|
|
62
|
+
*/const Se=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],_e=q("circle-check-big",Se);/**
|
|
63
63
|
* @license lucide-react v0.536.0 - ISC
|
|
64
64
|
*
|
|
65
65
|
* This source code is licensed under the ISC license.
|
|
66
66
|
* See the LICENSE file in the root directory of this source tree.
|
|
67
|
-
*/const
|
|
67
|
+
*/const Ae=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],ze=q("eye-off",Ae);/**
|
|
68
68
|
* @license lucide-react v0.536.0 - ISC
|
|
69
69
|
*
|
|
70
70
|
* This source code is licensed under the ISC license.
|
|
71
71
|
* See the LICENSE file in the root directory of this source tree.
|
|
72
|
-
*/const
|
|
72
|
+
*/const Ie=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Pe=q("eye",Ie);/**
|
|
73
73
|
* @license lucide-react v0.536.0 - ISC
|
|
74
74
|
*
|
|
75
75
|
* This source code is licensed under the ISC license.
|
|
76
76
|
* See the LICENSE file in the root directory of this source tree.
|
|
77
|
-
*/const
|
|
77
|
+
*/const Le=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],Me=q("info",Le);/**
|
|
78
78
|
* @license lucide-react v0.536.0 - ISC
|
|
79
79
|
*
|
|
80
80
|
* This source code is licensed under the ISC license.
|
|
81
81
|
* See the LICENSE file in the root directory of this source tree.
|
|
82
|
-
*/const
|
|
82
|
+
*/const De=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Oe=q("triangle-alert",De);/**
|
|
83
83
|
* @license lucide-react v0.536.0 - ISC
|
|
84
84
|
*
|
|
85
85
|
* This source code is licensed under the ISC license.
|
|
86
86
|
* See the LICENSE file in the root directory of this source tree.
|
|
87
|
-
*/const
|
|
87
|
+
*/const Ye=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],Fe=q("user",Ye);/**
|
|
88
88
|
* @license lucide-react v0.536.0 - ISC
|
|
89
89
|
*
|
|
90
90
|
* This source code is licensed under the ISC license.
|
|
91
91
|
* See the LICENSE file in the root directory of this source tree.
|
|
92
|
-
*/const
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
* This source code is licensed under the ISC license.
|
|
126
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
127
|
-
*/const pt=[["path",{d:"M21 4v16",key:"7j8fe9"}],["path",{d:"M6.029 4.285A2 2 0 0 0 3 6v12a2 2 0 0 0 3.029 1.715l9.997-5.998a2 2 0 0 0 .003-3.432z",key:"zs4d6"}]],xe=U("skip-forward",pt);/**
|
|
128
|
-
* @license lucide-react v0.536.0 - ISC
|
|
129
|
-
*
|
|
130
|
-
* This source code is licensed under the ISC license.
|
|
131
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
132
|
-
*/const ht=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],mt=U("triangle-alert",ht);/**
|
|
133
|
-
* @license lucide-react v0.536.0 - ISC
|
|
134
|
-
*
|
|
135
|
-
* This source code is licensed under the ISC license.
|
|
136
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
137
|
-
*/const bt=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],gt=U("user",bt);/**
|
|
138
|
-
* @license lucide-react v0.536.0 - ISC
|
|
139
|
-
*
|
|
140
|
-
* This source code is licensed under the ISC license.
|
|
141
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
142
|
-
*/const yt=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]],Ne=U("volume-2",yt);/**
|
|
143
|
-
* @license lucide-react v0.536.0 - ISC
|
|
144
|
-
*
|
|
145
|
-
* This source code is licensed under the ISC license.
|
|
146
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
147
|
-
*/const vt=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]],Te=U("volume-x",vt);/**
|
|
148
|
-
* @license lucide-react v0.536.0 - ISC
|
|
149
|
-
*
|
|
150
|
-
* This source code is licensed under the ISC license.
|
|
151
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
152
|
-
*/const wt=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],pe=U("x",wt),Se=i.createContext(void 0),jt=()=>{const s=i.useContext(Se);if(!s)throw new Error("useToast must be used within ToastProvider");return s},kt=({children:s})=>{const[t,n]=i.useState([]),r=i.useCallback(l=>{n(c=>c.filter(u=>u.id!==l))},[]),o=i.useCallback(l=>{const c=Date.now()+Math.random();n(u=>[...u,{...l,id:c}]),l.duration!==0&&setTimeout(()=>r(c),l.duration??4e3)},[r]);return e.jsxs(Se.Provider,{value:{addToast:o},children:[s,e.jsx("div",{className:"fixed top-5 right-5 flex flex-col gap-3 z-50",children:t.map(l=>e.jsx(Nt,{toast:l,onClose:()=>r(l.id)},l.id))})]})},$t={success:{bg:"bg-green-50",border:"border-green-400",icon:e.jsx(Ge,{size:20,className:"text-green-600"})},error:{bg:"bg-red-50",border:"border-red-400",icon:e.jsx(He,{size:20,className:"text-red-600"})},warning:{bg:"bg-yellow-50",border:"border-yellow-400",icon:e.jsx(mt,{size:20,className:"text-yellow-600"})},info:{bg:"bg-blue-50",border:"border-blue-400",icon:e.jsx(rt,{size:20,className:"text-blue-600"})}},Nt=({toast:s,onClose:t})=>{const{title:n,description:r,type:o="info"}=s,{bg:l,border:c,icon:u}=$t[o];return e.jsxs("div",{className:`flex items-start gap-3 p-4 border-l-4 rounded shadow ${l} ${c} animate-slide-in-right`,role:"alert",children:[e.jsx("div",{children:u}),e.jsxs("div",{className:"flex-1 min-w-0",children:[n&&e.jsx("div",{className:"font-semibold text-sm mb-1",children:n}),r&&e.jsx("div",{className:"text-sm text-gray-700",children:r})]}),e.jsx("button",{onClick:t,className:"text-gray-500 hover:text-gray-700",children:e.jsx(pe,{size:16})})]})},Re=i.memo(({items:s,allowMultiple:t=!1,defaultOpen:n=[],borderColor:r="#e5e7eb",backgroundColor:o="#fff",textColor:l="#111827",hoverBgColor:c="#f3f4f6",hoverTextColor:u="#111827",contentBgColor:j="#fff",contentTextColor:m="#374151",paddingY:y="1rem",paddingX:d="1rem",marginY:x="0.5rem",borderRadius:T="0.5rem",contentPadding:E="1rem",fontSize:k="1rem",fontWeight:A=600,contentFontSize:$="0.95rem",contentFontWeight:_=400,iconOpen:I,iconClose:R,iconSize:v="1.25rem",transitionDuration:b="300ms",shadow:h="0 1px 4px rgba(0,0,0,0.08)",className:p="",style:L})=>{const[O,H]=i.useState(n),V=i.useRef([]);i.useEffect(()=>{V.current.forEach((N,f)=>{N&&(N.style.maxHeight=O.includes(f)?`${N.scrollHeight}px`:"0px")})},[O]);const W=N=>{H(f=>t?f.includes(N)?f.filter(M=>M!==N):[...f,N]:f.includes(N)?[]:[N])},F=N=>N!==void 0?typeof N=="number"?`${N}px`:N:void 0;return e.jsx("div",{className:`space-y-2 ${p}`,style:{width:"100%",...L},children:s.map((N,f)=>{const M=O.includes(f);return e.jsxs("div",{className:"border shadow-sm overflow-hidden transition-all duration-300",style:{borderColor:r,borderRadius:F(T),margin:`${F(x)} 0`,boxShadow:h},children:[e.jsxs("button",{onClick:()=>W(f),className:"w-full flex justify-between items-center transition-colors duration-300",style:{backgroundColor:o,color:l,padding:`${F(y)} ${F(d)}`,fontWeight:A,fontSize:F(k),cursor:"pointer",border:"none",outline:"none"},onMouseEnter:Y=>{Y.currentTarget.style.backgroundColor=c,Y.currentTarget.style.color=u},onMouseLeave:Y=>{Y.currentTarget.style.backgroundColor=o,Y.currentTarget.style.color=l},children:[e.jsx("span",{children:N.title}),e.jsx("span",{style:{fontSize:F(v)},children:M?I||e.jsx(Ue,{size:16}):R||e.jsx(ke,{size:16})})]}),e.jsx("div",{ref:Y=>{V.current[f]=Y},className:"overflow-hidden transition-all duration-300",style:{maxHeight:M?`${V.current[f]?.scrollHeight??0}px`:"0px",transition:`max-height ${b} ease-in-out`},children:e.jsx("div",{style:{borderTop:`1px solid ${r}`,backgroundColor:j,color:m,padding:F(E),fontSize:F($),fontWeight:_},children:N.content})})]},f)})})});Re.displayName="Accordion";const Tt={xs:24,sm:32,md:40,lg:48,xl:56,"2xl":64},St={xs:"text-[10px]",sm:"text-[12px]",md:"text-[14px]",lg:"text-[16px]",xl:"text-[18px]","2xl":"text-[20px]"},Rt={xs:"w-6 h-6",sm:"w-8 h-8",md:"w-10 h-10",lg:"w-12 h-12",xl:"w-14 h-14","2xl":"w-16 h-16"},ie={circular:"rounded-full",rounded:"rounded-lg",square:"rounded-none"},zt={"top-left":"top-0 left-0","top-right":"top-0 right-0","bottom-left":"bottom-0 left-0","bottom-right":"bottom-0 right-0"},Et=({src:s,alt:t="User avatar",size:n="md",variant:r="circular",isOnline:o=!1,isOffline:l=!1,fallback:c,ring:u=!1,ringColor:j="#3b82f6",onClick:m,statusPosition:y="bottom-right",className:d="",statusClassName:x="",style:T,statusStyle:E})=>{const[k,A]=i.useState(!1),$=!!m,_=c||t.split(" ").map(v=>v[0]).join("").toUpperCase().slice(0,2),I=o?"bg-green-500":l?"bg-gray-400":"",R=Tt[n];return e.jsxs("div",{role:$?"button":"img",tabIndex:$?0:-1,"aria-label":t,onClick:m,className:`relative inline-flex items-center justify-center overflow-hidden ${Rt[n]} ${ie[r]} transition-all duration-200 ${$?"cursor-pointer hover:scale-105":""} ${u?"ring-2":""} ${d}`,style:{...T,...u?{boxShadow:`0 0 0 2px ${j}`}:{}},onKeyDown:v=>{$&&(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),m?.())},children:[s&&!k?e.jsx("img",{src:s,alt:t,onError:()=>A(!0),className:`w-full h-full object-cover ${ie[r]} transition-opacity duration-300`}):e.jsx("div",{className:`w-full h-full flex items-center justify-center bg-gradient-to-tr from-purple-500 to-blue-500 text-white font-semibold ${St[n]} ${ie[r]}`,children:_||e.jsx(gt,{className:"text-white"})}),(o||l)&&e.jsx("span",{"aria-label":o?"Online":"Offline",title:o?"Online":"Offline",className:`absolute ${zt[y]} ${I} border-2 border-white rounded-full shadow-sm ${x}`,style:{width:R/3,height:R/3,...E}})]})},_t=({src:s,thumbnail:t,autoPlay:n=!1,loop:r=!1,backgroundColor:o="#0a0a0a",primaryColor:l="#10b981",secondaryColor:c="#ffffff",borderRadius:u="12px",padding:j="12px",width:m="100%",className:y})=>{const d=i.useRef(null),x=i.useRef(null),[T,E]=i.useState(n),[k,A]=i.useState(0),[$,_]=i.useState(0),[I,R]=i.useState(.7),[v,b]=i.useState(!1),[h,p]=i.useState(r);i.useEffect(()=>{d.current&&(d.current.volume=I)},[I]),i.useEffect(()=>{d.current&&(d.current.loop=h)},[h]);const L=()=>{d.current&&(T?d.current.pause():d.current.play(),E(!T))},O=()=>{d.current&&(A(d.current.currentTime),_(d.current.duration))},H=N=>{if(!d.current)return;const f=N.currentTarget.getBoundingClientRect(),M=(N.clientX-f.left)/f.width;d.current.currentTime=M*$,A(M*$)},V=N=>{d.current&&(d.current.currentTime+=N)},W=()=>{x.current&&(v?document.exitFullscreen?.():x.current.requestFullscreen?.(),b(!v))},F=N=>{const f=Math.floor(N/60),M=Math.floor(N%60);return`${f}:${M<10?"0":""}${M}`};return e.jsxs("div",{ref:x,className:y,style:{display:"flex",alignItems:"center",gap:"12px",width:m,backgroundColor:o,borderRadius:u,padding:j,boxSizing:"border-box",color:c,boxShadow:"0 6px 16px rgba(0,0,0,0.2)",flexWrap:"wrap"},children:[e.jsx("audio",{ref:d,src:s,autoPlay:n,loop:r,onTimeUpdate:O,onLoadedMetadata:O}),t&&e.jsx("img",{src:t,alt:"Audio Thumbnail",style:{width:"60px",height:"60px",borderRadius:"50%",objectFit:"cover",flexShrink:0}}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1,minWidth:"0"},children:[e.jsx("button",{onClick:()=>V(-10),style:{background:"transparent",border:"none",color:c,cursor:"pointer"},"aria-label":"Skip Back 10s",children:e.jsx(fe,{size:20})}),e.jsx("button",{onClick:L,style:{background:l,borderRadius:"50%",padding:"10px",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center"},"aria-label":T?"Pause":"Play",children:T?e.jsx(de,{size:20}):e.jsx(ue,{size:20})}),e.jsx("button",{onClick:()=>V(10),style:{background:"transparent",border:"none",color:c,cursor:"pointer"},"aria-label":"Skip Forward 10s",children:e.jsx(xe,{size:20})}),e.jsx("div",{onClick:H,style:{flex:1,height:"6px",background:"#444",borderRadius:"3px",cursor:"pointer",position:"relative"},children:e.jsx("div",{style:{width:`${k/$*100||0}%`,height:"100%",background:l,borderRadius:"3px"}})}),e.jsxs("div",{style:{minWidth:"70px",textAlign:"right",fontSize:"0.8rem"},children:[F(k)," / ",F($)]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("button",{onClick:()=>p(!h),style:{background:"transparent",border:"none",cursor:"pointer",color:h?l:c},"aria-label":"Toggle Loop",children:e.jsx($e,{size:18})}),e.jsx("button",{onClick:()=>R(I>0?0:.7),style:{background:"transparent",border:"none",cursor:"pointer",color:c},"aria-label":"Toggle Mute",children:I>0?e.jsx(Ne,{size:18}):e.jsx(Te,{size:18})}),e.jsx("button",{onClick:W,style:{background:"transparent",border:"none",cursor:"pointer",color:c},"aria-label":"Toggle Fullscreen",children:v?e.jsx(ot,{size:18}):e.jsx(nt,{size:18})})]})]})]})},Mt=[{src:"https://www.soundjay.com/misc/sounds/bell-ringing-05.wav",title:"Morning Bell",artist:"Nature Sounds",duration:"0:15",thumbnail:"https://images.unsplash.com/photo-1493225457124-a3eb161ffa5f?w=300&h=300&fit=crop"},{src:"https://www.soundjay.com/buttons/sounds/button-4.wav",title:"Digital Click",artist:"Tech Audio",duration:"0:05",thumbnail:"https://images.unsplash.com/photo-1514525253161-7a46d19cd819?w=300&h=300&fit=crop"},{src:"https://www.soundjay.com/buttons/sounds/button-10.wav",title:"Soft Chime",artist:"Ambient Studio",duration:"0:08",thumbnail:"https://images.unsplash.com/photo-1493225457124-a3eb161ffa5f?w=300&h=300&fit=crop"}];function At({tracks:s=Mt,className:t="",galleryTitle:n="Audio Gallery",primaryColor:r="#8b5cf6",backgroundColor:o="#0f0f23",textColor:l="#e4e4e7",secondaryColor:c="#1a1a2e",border:u=0,borderColor:j,maxWidth:m=420,autoplay:y=!1,loop:d=!1}){const[x,T]=i.useState(null),[E,k]=i.useState(!1),[A,$]=i.useState(0),[_,I]=i.useState(0),[R,v]=i.useState(.7),[b,h]=i.useState(!1),[p,L]=i.useState(d),[O,H]=i.useState(!1),[V,W]=i.useState(!1),[F,N]=i.useState(!1),f=i.useRef(null),M=i.useRef(null),Y=i.useRef(null);i.useEffect(()=>{f.current&&(f.current.volume=R)},[R]),i.useEffect(()=>{f.current&&(f.current.loop=p)},[p]),i.useEffect(()=>{x===null&&f.current&&(f.current.pause(),k(!1),$(0),I(0))},[x]);const G=z=>{if(x===z){if(!f.current)return;f.current.paused?(f.current.play().catch(()=>{}),k(!0)):(f.current.pause(),k(!1))}else T(z),setTimeout(()=>{f.current&&(f.current.play().catch(()=>{}),k(!0))},100)},J=()=>{f.current&&($(f.current.currentTime),f.current.duration&&I(f.current.duration))},a=z=>{if(!f.current||!_)return;const S=z.currentTarget.getBoundingClientRect(),ee=(z.clientX-S.left)/S.width*_;f.current.currentTime=ee,$(ee)},g=z=>{const S=z.currentTarget.getBoundingClientRect(),Z=(z.clientX-S.left)/S.width,ee=Math.max(0,Math.min(1,Z));v(ee)},w=z=>{if(f.current&&_){let S=f.current.currentTime+z;S=Math.min(Math.max(S,0),_),f.current.currentTime=S,$(S)}},C=()=>{if(x===null)return;let z;O?z=Math.floor(Math.random()*s.length):z=(x+1)%s.length,G(z)},q=()=>{if(x===null)return;let z;O?z=Math.floor(Math.random()*s.length):z=(x-1+s.length)%s.length,G(z)},Q=()=>{v(z=>z>0?0:.7)},B=()=>{N(!0),Y.current&&clearTimeout(Y.current),Y.current=setTimeout(()=>{N(!1)},3e3)},K=z=>{if(isNaN(z))return"0:00";const S=Math.floor(z/60),D=Math.floor(z%60);return`${S}:${D<10?"0":""}${D}`},X=x!==null?s[x]:null;return e.jsxs("div",{className:t,style:{maxWidth:`${m}px`,margin:"20px auto",background:`linear-gradient(145deg, ${o}, ${c})`,color:l,borderRadius:"24px",padding:"24px 16px",fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",userSelect:"none",backdropFilter:"blur(20px)",border:`${u}px solid ${j}40`},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"24px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[e.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:`linear-gradient(135deg, ${r}, ${c})`,display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(ve,{size:20,color:"white"})}),e.jsxs("div",{children:[e.jsx("h2",{style:{margin:0,fontSize:"1.25rem",fontWeight:"700",color:r},children:n}),e.jsxs("p",{style:{margin:0,fontSize:"0.875rem",opacity:.7},children:[s.length," tracks"]})]})]}),e.jsx("button",{onClick:()=>H(!O),style:{background:O?r:"transparent",border:"none",borderRadius:"12px",padding:"8px",cursor:"pointer",transition:"all 0.3s ease",opacity:O?1:.6},"aria-label":"Toggle Shuffle",children:e.jsx(ft,{size:18,color:O?"white":l})})]}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"8px",marginBottom:"20px",maxHeight:"240px",overflowY:"auto",paddingRight:"4px"},children:s.map((z,S)=>{const D=x===S,Z=D&&E;return e.jsxs("div",{onClick:()=>G(S),style:{display:"flex",alignItems:"center",padding:"12px 16px",borderRadius:"16px",background:D?`linear-gradient(135deg, ${r}20, ${r}10)`:"rgba(255,255,255,0.05)",border:D?`1px solid ${r}40`:"1px solid transparent",cursor:"pointer",transition:"all 0.3s ease",backdropFilter:D?"blur(20px)":"none"},children:[e.jsxs("div",{style:{width:"48px",height:"48px",borderRadius:"12px",background:z.thumbnail?`url(${z.thumbnail}) center/cover`:r,display:"flex",alignItems:"center",justifyContent:"center",marginRight:"12px",position:"relative",overflow:"hidden"},children:[!z.thumbnail&&e.jsx(ve,{size:20,color:"white"}),Z&&e.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,background:"rgba(0,0,0,0.6)",display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx("div",{style:{width:"16px",height:"16px",display:"flex",gap:"2px",alignItems:"end",justifyContent:"center"},children:[0,1,2].map(ee=>e.jsx("div",{style:{width:"3px",background:"white",borderRadius:"2px",animation:`equalizer 1s ease-in-out infinite ${ee*.2}s`,height:"12px"}},ee))})})]}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx("div",{style:{fontWeight:"600",fontSize:"0.95rem",color:D?r:l,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:z.title}),z.artist&&e.jsx("div",{style:{fontSize:"0.8rem",opacity:.7,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:z.artist})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[z.duration&&e.jsx("span",{style:{fontSize:"0.8rem",opacity:.6},children:z.duration}),e.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"8px",background:D?r:"rgba(255,255,255,0.1)",display:"flex",alignItems:"center",justifyContent:"center",transition:"all 0.3s ease"},children:Z?e.jsx(de,{size:16,color:"white"}):e.jsx(ue,{size:16,color:"white"})})]})]},S)})}),X&&e.jsxs("div",{ref:M,style:{background:`linear-gradient(135deg, ${c}, ${o})`,borderRadius:"20px",padding:"20px",border:`1px solid ${r}40`,backdropFilter:"blur(20px)",position:"relative",overflow:"hidden"},children:[X.thumbnail&&e.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundImage:`url(${X.thumbnail})`,backgroundSize:"cover",backgroundPosition:"center",filter:"blur(60px) opacity(0.1)",transform:"scale(1.1)"}}),e.jsxs("div",{style:{position:"relative",zIndex:1},children:[e.jsxs("div",{style:{textAlign:"center",marginBottom:"20px"},children:[e.jsx("h3",{style:{margin:"0 0 4px 0",fontSize:"1.1rem",fontWeight:"700",color:r},children:X.title}),X.artist&&e.jsx("p",{style:{margin:0,opacity:.7,fontSize:"0.9rem"},children:X.artist})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:"20px",marginBottom:"20px"},children:[e.jsx("button",{onClick:q,style:te(l,"rgba(255,255,255,0.1)"),"aria-label":"Previous Track",children:e.jsx(fe,{size:20})}),e.jsxs("button",{onClick:()=>w(-10),style:te(l,"rgba(255,255,255,0.1)"),"aria-label":"Skip back 10 seconds",children:[e.jsx(fe,{size:16}),e.jsx("span",{style:{fontSize:"0.7rem",marginLeft:"2px"},children:"10"})]}),e.jsx("button",{onClick:()=>{f.current&&(E?(f.current.pause(),k(!1)):(f.current.play().catch(()=>{}),k(!0)))},style:{...te("#fff",r),width:"60px",height:"60px",borderRadius:"50%",boxShadow:`0 8px 25px ${r}40`},"aria-label":E?"Pause":"Play",children:E?e.jsx(de,{size:24}):e.jsx(ue,{size:24})}),e.jsxs("button",{onClick:()=>w(10),style:te(l,"rgba(255,255,255,0.1)"),"aria-label":"Skip forward 10 seconds",children:[e.jsx("span",{style:{fontSize:"0.7rem",marginRight:"2px"},children:"10"}),e.jsx(xe,{size:16})]}),e.jsx("button",{onClick:C,style:te(l,"rgba(255,255,255,0.1)"),"aria-label":"Next Track",children:e.jsx(xe,{size:20})})]}),e.jsxs("div",{style:{marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"8px",fontSize:"0.8rem",opacity:.7},children:[e.jsx("span",{children:K(A)}),e.jsx("span",{children:K(_)})]}),e.jsx("div",{onClick:a,style:{height:"6px",background:"rgba(255,255,255,0.2)",borderRadius:"3px",cursor:"pointer",position:"relative",overflow:"hidden"},children:e.jsx("div",{style:{width:`${A/_*100||0}%`,height:"100%",background:`linear-gradient(90deg, ${r}, #ec4899)`,borderRadius:"3px",position:"relative"},children:e.jsx("div",{style:{position:"absolute",right:"-6px",top:"50%",transform:"translateY(-50%)",width:"12px",height:"12px",background:r,borderRadius:"50%",boxShadow:`0 2px 8px ${r}60`}})})})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",gap:"8px"},children:[e.jsx("button",{onClick:()=>W(!V),style:te(V?"#ec4899":l,"rgba(255,255,255,0.1)"),"aria-label":"Like",children:e.jsx(et,{size:16,fill:V?"#ec4899":"none"})}),e.jsx("button",{onClick:()=>L(!p),style:te(p?r:l,"rgba(255,255,255,0.1)"),"aria-label":"Toggle Loop",children:e.jsx($e,{size:16})})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",position:"relative"},children:[F&&e.jsx("div",{onClick:g,style:{width:"80px",height:"4px",background:"rgba(255,255,255,0.2)",borderRadius:"2px",cursor:"pointer",position:"relative"},children:e.jsx("div",{style:{width:`${R*100}%`,height:"100%",background:r,borderRadius:"2px"}})}),e.jsx("button",{onClick:Q,onMouseEnter:B,style:te(l,"rgba(255,255,255,0.1)"),"aria-label":R>0?"Mute":"Unmute",children:R>0?e.jsx(Ne,{size:16}):e.jsx(Te,{size:16})})]})]})]}),e.jsx("audio",{ref:f,src:X.src,autoPlay:y,loop:p,onTimeUpdate:J,onEnded:()=>{k(!1),p||C()},onLoadedMetadata:J,preload:"metadata",style:{display:"none"}})]}),e.jsx("style",{children:`
|
|
153
|
-
@keyframes equalizer {
|
|
154
|
-
0%, 100% { height: 4px; }
|
|
155
|
-
50% { height: 12px; }
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
/* Custom Scrollbar */
|
|
159
|
-
div::-webkit-scrollbar {
|
|
160
|
-
width: 4px;
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
div::-webkit-scrollbar-track {
|
|
164
|
-
background: rgba(255,255,255,0.1);
|
|
165
|
-
border-radius: 2px;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
div::-webkit-scrollbar-thumb {
|
|
169
|
-
background: ${r};
|
|
170
|
-
border-radius: 2px;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
div::-webkit-scrollbar-thumb:hover {
|
|
174
|
-
background: ${r}dd;
|
|
175
|
-
}
|
|
176
|
-
`})]})}function te(s,t){return{border:"none",backgroundColor:t,color:s,cursor:"pointer",padding:"10px",borderRadius:"12px",display:"flex",alignItems:"center",justifyContent:"center",transition:"all 0.3s ease",backdropFilter:"blur(10px)"}}function ze(s){var t,n,r="";if(typeof s=="string"||typeof s=="number")r+=s;else if(typeof s=="object")if(Array.isArray(s)){var o=s.length;for(t=0;t<o;t++)s[t]&&(n=ze(s[t]))&&(r&&(r+=" "),r+=n)}else for(n in s)s[n]&&(r&&(r+=" "),r+=n);return r}function P(){for(var s,t,n=0,r="",o=arguments.length;n<o;n++)(s=arguments[n])&&(t=ze(s))&&(r&&(r+=" "),r+=t);return r}const Ee=i.memo(({text:s,icon:t,iconPosition:n="left",primaryTheme:r=!0,primaryColor:o="#3b82f6",size:l="md",rounded:c=!0,notificationDot:u=!1,dotColor:j="#ef4444",count:m,pulse:y=!1,className:d,onClick:x})=>{const T={sm:"px-2 py-0.5 text-xs",md:"px-3 py-1 text-xs",lg:"px-4 py-1.5 text-sm"},E=r?"bg-[var(--primary)] text-white":"",k=r?{}:{backgroundColor:o,color:"#fff"};return e.jsxs("span",{onClick:x,style:r?void 0:k,className:P("relative inline-flex items-center justify-center gap-1 font-medium","transition-all duration-200 select-none",c?"rounded-full":"rounded-md",T[l],E,x&&"cursor-pointer hover:opacity-90",d),children:[u&&e.jsx("span",{style:r?void 0:{backgroundColor:j},className:P("absolute -top-1 -right-1 w-2 h-2 rounded-full",y&&"animate-ping",r?"bg-red-500":"")}),m!==void 0&&e.jsx("span",{style:r?void 0:{backgroundColor:j},className:P("absolute -top-2 -right-2 min-w-[18px] h-[18px] px-1 text-[10px]","flex items-center justify-center rounded-full text-white",r?"bg-red-500":""),children:m}),t&&n==="left"&&e.jsx("span",{className:"flex items-center",children:t}),s&&e.jsx("span",{children:s}),t&&n==="right"&&e.jsx("span",{className:"flex items-center",children:t})]})});Ee.displayName="Badge";const _e=i.forwardRef(({children:s,iconBefore:t,iconAfter:n,loading:r=!1,loadingText:o="Loading...",fullWidth:l=!1,variant:c="default",size:u="md",disabled:j,className:m,type:y="button",...d},x)=>{const T=j||r,E={sm:"h-8 px-3 text-sm",md:"h-10 px-4 text-sm",lg:"h-12 px-6 text-base"},k={default:"bg-blue-600 text-white hover:bg-blue-600/90",outline:"border border-zinc-300 text-zinc-900 hover:bg-zinc-100 dark:border-zinc-700 dark:text-white dark:hover:bg-zinc-800",ghost:"text-zinc-900 hover:bg-zinc-100 dark:text-white dark:hover:bg-zinc-800"};return e.jsx("button",{ref:x,type:y,disabled:T,className:P("inline-flex items-center justify-center gap-2 rounded-lg font-medium transition-all duration-200","focus:outline-none focus:ring-2 focus:ring-blue-500/30","active:scale-[0.98]",E[u],k[c],l&&"w-full",T&&"opacity-60 cursor-not-allowed pointer-events-none",m),...d,children:r?e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin"}),e.jsx("span",{children:o})]}):e.jsxs(e.Fragment,{children:[t&&e.jsx("span",{className:"flex",children:t}),e.jsx("span",{children:s}),n&&e.jsx("span",{className:"flex",children:n})]})})});_e.displayName="Button";const It=({name:s,options:t,selectedValues:n=[],onChange:r,disabled:o=!1,readOnly:l=!1,required:c=!1,error:u,className:j,customIcon:m,style:y,labelStyle:d,iconSize:x=20,iconCheckedBgColor:T="#2563eb",iconUncheckedBorderColor:E="#9ca3af",textColor:k="#374151",errorStyle:A,darkMode:$=!1})=>{const _=i.useRef(null),[I,R]=i.useState(null),v=b=>{if(!r||o||l)return;const h=n.includes(b)?n.filter(p=>p!==b):[...n,b];r(h)};return i.useEffect(()=>{const b=_.current;if(!b)return;const h=p=>{if(o||I===null)return;const L=I;(p.key==="ArrowDown"||p.key==="ArrowRight")&&(p.preventDefault(),R((L+1)%t.length)),(p.key==="ArrowUp"||p.key==="ArrowLeft")&&(p.preventDefault(),R((L-1+t.length)%t.length)),(p.key===" "||p.key==="Enter")&&(p.preventDefault(),v(t[L].value))};return b.addEventListener("keydown",h),()=>b.removeEventListener("keydown",h)},[I,t,n,o]),e.jsxs("div",{ref:_,role:"group","aria-disabled":o,"aria-invalid":!!u,tabIndex:0,className:P("flex flex-col gap-2",j),style:{...y},children:[t.map((b,h)=>{const p=n.includes(b.value),L=I===h;return e.jsxs("label",{className:P("flex items-center justify-between cursor-pointer select-none transition-opacity",o?"opacity-50 cursor-not-allowed":"opacity-100",L?"ring-2 ring-blue-400":""),style:{...d},onFocus:()=>R(h),children:[e.jsx("span",{style:{color:k,fontSize:14},children:b.label}),e.jsx("input",{type:"checkbox",name:s,value:b.value,checked:p,disabled:o||l,required:c,onChange:()=>v(b.value),style:{display:"none"}}),m?m(p):e.jsx("span",{style:{display:"inline-flex",justifyContent:"center",alignItems:"center",width:x,height:x,borderRadius:4,border:`2px solid ${p?T:E}`,backgroundColor:p?T:"transparent",transition:"all 0.25s ease"},children:p&&e.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:3,strokeLinecap:"round",strokeLinejoin:"round",style:{width:x*.6,height:x*.6},children:e.jsx("polyline",{points:"20 6 9 17 4 12"})})})]},b.value)}),u&&e.jsx("p",{role:"alert",style:{color:"#dc2626",fontSize:12,marginTop:4,...A},children:u})]})},Ct=({name:s,options:t,selectedValue:n,onChange:r,disabled:o=!1,readOnly:l=!1,required:c=!1,error:u,className:j,style:m,labelStyle:y,iconSize:d=20,iconCheckedBgColor:x="#2563eb",iconUncheckedBorderColor:T="#9ca3af",textColor:E="#374151",errorStyle:k,darkMode:A=!1})=>{const $=i.useRef(null),[_,I]=i.useState(null);return i.useEffect(()=>{const R=$.current;if(!R)return;const v=b=>{if(o)return;const h=_??t.findIndex(p=>p.value===n)??0;if(b.key==="ArrowDown"||b.key==="ArrowRight"){b.preventDefault();const p=(h+1)%t.length;r&&r(t[p].value),I(p)}if(b.key==="ArrowUp"||b.key==="ArrowLeft"){b.preventDefault();const p=(h-1+t.length)%t.length;r&&r(t[p].value),I(p)}};return R.addEventListener("keydown",v),()=>R.removeEventListener("keydown",v)},[_,t,n,r,o]),e.jsxs("div",{ref:$,role:"radiogroup","aria-disabled":o,"aria-invalid":!!u,className:P("flex flex-col gap-2",j),style:{...m},tabIndex:0,children:[t.map((R,v)=>{const b=n===R.value,h=_===v;return e.jsxs("label",{className:P("flex items-center justify-between cursor-pointer select-none gap-2",o?"opacity-50 cursor-not-allowed":"opacity-100",h?"ring-2 ring-blue-400":""),style:{...y},children:[e.jsx("span",{style:{color:E,fontSize:14},children:R.label}),e.jsx("input",{type:"radio",name:s,value:R.value,checked:b,disabled:o||l,required:c,onChange:()=>r&&r(R.value),style:{display:"none"}}),e.jsx("span",{className:P("inline-flex items-center justify-center rounded-full transition-all"),style:{width:d,height:d,border:`2px solid ${b?x:T}`,backgroundColor:b?x:"transparent",transition:"all 0.2s ease"},children:b&&e.jsx("span",{style:{width:d/2,height:d/2,borderRadius:"50%",backgroundColor:"#fff"}})})]},R.value)}),u&&e.jsx("p",{role:"alert",style:{color:"#dc2626",fontSize:12,marginTop:4,...k},children:u})]})},Pt=({name:s,options:t,selectedValues:n=[],onChange:r,disabled:o=!1,readOnly:l=!1,required:c=!1,error:u,className:j,style:m,labelStyle:y,iconSize:d=20,iconCheckedBgColor:x="#2563eb",switchBgColor:T="#d1d5db",textColor:E="#374151",errorStyle:k,darkMode:A=!1})=>{const $=i.useRef(null),[_,I]=i.useState(null),R=v=>{if(!r||o||l)return;const b=n.includes(v)?n.filter(h=>h!==v):[...n,v];r(b)};return i.useEffect(()=>{const v=$.current;if(!v)return;const b=h=>{if(o||_===null)return;const p=_;if(h.key==="ArrowRight"||h.key==="ArrowDown"){h.preventDefault();const L=(p+1)%t.length;I(L)}if(h.key==="ArrowLeft"||h.key==="ArrowUp"){h.preventDefault();const L=(p-1+t.length)%t.length;I(L)}(h.key===" "||h.key==="Enter")&&(h.preventDefault(),R(t[p].value))};return v.addEventListener("keydown",b),()=>v.removeEventListener("keydown",b)},[_,t,n,o]),e.jsxs("div",{ref:$,role:"group","aria-disabled":o,"aria-invalid":!!u,tabIndex:0,className:P("flex flex-col gap-2",j),style:{...m},children:[t.map((v,b)=>{const h=n.includes(v.value),p=_===b;return e.jsxs("label",{className:P("flex items-center justify-between cursor-pointer select-none transition-opacity",o?"opacity-50 cursor-not-allowed":"opacity-100",p?"ring-2 ring-blue-400":""),style:{...y},onFocus:()=>I(b),children:[e.jsx("span",{style:{color:E,fontSize:14},children:v.label}),e.jsx("input",{type:"checkbox",name:s,value:v.value,checked:h,disabled:o||l,required:c,onChange:()=>R(v.value),style:{display:"none"}}),e.jsx("span",{className:P("relative inline-flex rounded-full transition-colors"),style:{width:d*2,height:d*1.1,backgroundColor:h?x:T,transition:"background-color 0.25s ease",borderRadius:9999},children:e.jsx("span",{style:{position:"absolute",top:"50%",left:h?`calc(100% - ${d-4}px - 2px)`:"2px",transform:"translateY(-50%)",width:d-4,height:d-4,borderRadius:"50%",backgroundColor:"#fff",boxShadow:"0 1px 2px rgba(0,0,0,0.3)",transition:"left 0.25s ease"}})})]},v.value)}),u&&e.jsx("p",{role:"alert",style:{color:"#dc2626",fontSize:12,marginTop:4,...k},children:u})]})},Lt={sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg",xl:"max-w-xl","2xl":"max-w-2xl",full:"w-full"},Dt={none:"p-0",sm:"p-4",md:"p-6",lg:"p-8",xl:"p-12"},Ot=({size:s="lg",padding:t="md",center:n=!0,className:r="",children:o})=>{const l=P("w-full box-border",Lt[s],Dt[t],n&&"mx-auto",r);return e.jsx("div",{className:l,children:o})},se=(s,t)=>t==null?"":typeof t!="object"?`${s}-${t}`:Object.entries(t).map(([n,r])=>`${n}:${s}-${r}`).join(" "),Ft=({direction:s={sm:"column",md:"row"},align:t="center",justify:n="between",wrap:r="wrap",gap:o,padding:l,margin:c,className:u,children:j})=>{const m=P("flex",se("flex",s),se("items",t),se("justify",n),se("flex",r),o?se("gap",o):"",l?se("p",l):"",c?se("m",c):"",u);return e.jsx("div",{className:m,children:j})},we=(s,t)=>t==null?"":typeof t!="object"?`${s}-${t}`:Object.entries(t).map(([n,r])=>`${n}:${s}-${r}`).join(" "),he=({direction:s={sm:"vertical",md:"horizontal"},gap:t=4,align:n="center",justify:r="start",wrap:o="nowrap",className:l,children:c})=>{const u=P("flex",we("flex",s),we("gap",t),n!=="stretch"?`items-${n}`:"items-stretch",r!=="start"?`justify-${r}`:"justify-start",o!=="nowrap"?`flex-${o}`:"flex-nowrap",l);return e.jsx("div",{className:u,children:c})},Bt=s=>e.jsx(he,{direction:"horizontal",...s}),Vt=s=>e.jsx(he,{direction:"vertical",...s}),ce=(s,t)=>t==null?"":typeof t!="object"?`${s}-${t}`:Object.entries(t).map(([n,r])=>`${n}:${s}-${r}`).join(" "),Yt=({columns:s={sm:1,md:2,lg:3},gap:t=4,padding:n=4,alignItems:r="stretch",justifyItems:o="stretch",className:l,children:c})=>{const u=P("grid",ce("grid-cols",s),ce("gap",t),ce("p",n),r!=="stretch"?`items-${r}`:"items-stretch",o!=="stretch"?`justify-items-${o}`:"justify-items-stretch",l);return e.jsx("div",{className:u,children:c})},Ut=({label:s="Open Drawer",icon:t,iconPosition:n="left",onClick:r,className:o=""})=>e.jsxs("button",{type:"button",onClick:r,className:`inline-flex items-center justify-center gap-2 px-4 py-2 rounded-md font-medium text-white bg-blue-600 hover:bg-blue-700 transition-colors focus:outline-none focus:ring-2 focus:ring-blue-400 ${o}`,children:[t&&n==="left"&&t,s,t&&n==="right"&&t]}),Wt=({open:s,onClose:t,position:n="right",size:r="320px",children:o,showCloseButton:l=!0,className:c="",overlayClassName:u="",closeButtonClassName:j=""})=>{const[m,y]=i.useState(s);i.useEffect(()=>{s?y(!0):setTimeout(()=>y(!1),300)},[s]);const d=i.useMemo(()=>{if(s)return"translate(0,0)";switch(n){case"left":return"translateX(-100%)";case"right":return"translateX(100%)";case"top":return"translateY(-100%)";case"bottom":return"translateY(100%)";default:return"translate(0,0)"}},[s,n]);return!m&&!s?null:e.jsxs(e.Fragment,{children:[e.jsx("div",{onClick:t,className:`fixed inset-0 bg-black/50 transition-opacity ${s?"opacity-100":"opacity-0"} ${u}`}),e.jsxs("div",{className:`fixed bg-white shadow-lg flex flex-col transition-transform duration-300 ${c}`,style:{width:n==="left"||n==="right"?r:"100%",height:n==="top"||n==="bottom"?r:"100%",top:(n==="bottom"||n==="top")&&n==="bottom"?"auto":0,bottom:n==="bottom"?0:"auto",left:n==="left"?0:n==="right"?"auto":0,right:n==="right"?0:n==="left"?"auto":0,transform:d},children:[l&&e.jsx("button",{onClick:t,className:`absolute top-4 right-4 p-1 rounded-full hover:bg-gray-200 transition-colors ${j}`,"aria-label":"Close drawer",children:e.jsx(pe,{size:20})}),e.jsx("div",{className:"flex-1 overflow-auto p-4",children:o})]})]})},Me=i.forwardRef((s,t)=>{const{label:n,name:r="",value:o,defaultValue:l,onChange:c,options:u=[],placeholder:j="Select an option",required:m,disabled:y,error:d,success:x,helperText:T,labelIcon:E,prefixIcon:k,variant:A="dark",primaryTheme:$=!0,primaryColor:_="#3b82f6",containerClassName:I="",labelClassName:R="",triggerClassName:v="",dropdownClassName:b="",optionClassName:h="",className:p=""}=s,L=i.useRef(null);i.useImperativeHandle(t,()=>L.current);const[O,H]=i.useState(!1),[V,W]=i.useState(l||""),F=o!==void 0?o:V,N=u.find(w=>w.value===F);i.useEffect(()=>{const w=C=>{L.current&&!L.current.contains(C.target)&&H(!1)};return document.addEventListener("mousedown",w),()=>document.removeEventListener("mousedown",w)},[]);const f=w=>{W(w.value),c?.(r,w.value),H(!1)},M={dark:{bg:"bg-zinc-900",text:"text-white",border:"border-zinc-800",dropdown:"bg-black border-zinc-800",option:"text-zinc-300 hover:bg-zinc-800"},light:{bg:"bg-white",text:"text-gray-900",border:"border-gray-300",dropdown:"bg-white border-gray-200",option:"text-gray-700 hover:bg-gray-100"}}[A],Y=$?{}:{color:_},G=$?{}:{borderColor:_},J=$?{}:{backgroundColor:`${_}20`},a=d?"border-rose-500":x?"border-emerald-500":M.border,g=k?"pl-12 pr-10":"px-4";return e.jsxs("div",{ref:L,className:`w-full space-y-1 ${I} ${p}`,children:[n&&e.jsxs("label",{className:`flex items-center gap-2 text-[13px] font-medium ${R}`,children:[E&&e.jsx(E,{className:$?"w-4 h-4 text-[var(--primary)]":"w-4 h-4",style:$?void 0:Y}),n,m&&e.jsx("span",{className:"text-rose-500",children:"*"})]}),e.jsxs("div",{className:"relative group",children:[k&&e.jsx("div",{className:"absolute left-4 top-1/2 -translate-y-1/2 z-10",children:e.jsx(k,{className:$?"w-4 h-4 text-zinc-500 group-focus-within:text-[var(--primary)]":"w-4 h-4 text-zinc-500",style:$?void 0:Y})}),e.jsxs("button",{type:"button",disabled:y,onClick:()=>H(w=>!w),style:$?void 0:G,className:`
|
|
92
|
+
*/const Be=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],te=q("x",Be),ce=d.createContext(void 0),We=()=>{const r=d.useContext(ce);if(!r)throw new Error("useToast must be used within ToastProvider");return r},Ue=({children:r})=>{const[t,s]=d.useState([]),n=d.useCallback(l=>{s(l?c=>c.filter(i=>i.id!==l):[])},[]),o=d.useCallback(({title:l,description:c,type:i="info",duration:f=4e3})=>{const y=Math.random().toString(36).substring(2,9);s(p=>[...p,{id:y,title:l,description:c,type:i,duration:f}]),f!==0&&setTimeout(()=>n(y),f)},[n]);return e.jsxs(ce.Provider,{value:{toast:o,dismiss:n},children:[r,e.jsx("div",{className:"fixed bottom-4 right-4 z-50 flex flex-col gap-2 sm:bottom-6 sm:right-6",children:t.map(l=>e.jsx(He,{toast:l,onClose:()=>n(l.id)},l.id))})]})},qe={success:{bg:"bg-white dark:bg-zinc-900",border:"border-green-500",text:"text-green-600 dark:text-green-500",iconColor:"text-green-500",icon:_e},error:{bg:"bg-white dark:bg-zinc-900",border:"border-red-500",text:"text-red-600 dark:text-red-500",iconColor:"text-red-500",icon:$e},warning:{bg:"bg-white dark:bg-zinc-900",border:"border-yellow-500",text:"text-yellow-600 dark:text-yellow-500",iconColor:"text-yellow-500",icon:Oe},info:{bg:"bg-white dark:bg-zinc-900",border:"border-blue-500",text:"text-blue-600 dark:text-blue-500",iconColor:"text-blue-500",icon:Me}},He=({toast:r,onClose:t})=>{const{title:s,description:n,type:o="info"}=r,l=qe[o],c=l.icon;return d.useEffect(()=>{const i=f=>{f.key==="Escape"&&t()};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[t]),e.jsxs("div",{className:`
|
|
93
|
+
group relative flex w-full max-w-sm items-start gap-3 rounded-lg border shadow-lg
|
|
94
|
+
${l.bg} ${l.border}
|
|
95
|
+
p-4 pr-8
|
|
96
|
+
transition-all duration-300 ease-out
|
|
97
|
+
animate-in slide-in-from-right-full fade-in
|
|
98
|
+
hover:shadow-xl hover:scale-105
|
|
99
|
+
dark:border-zinc-800
|
|
100
|
+
`,role:"alert",children:[e.jsx(c,{className:`h-5 w-5 flex-shrink-0 ${l.iconColor}`}),e.jsxs("div",{className:"flex-1 space-y-1",children:[s&&e.jsx("div",{className:`text-sm font-semibold ${l.text}`,children:s}),n&&e.jsx("div",{className:"text-sm text-zinc-600 dark:text-zinc-400",children:n})]}),e.jsx("button",{onClick:t,className:`
|
|
101
|
+
absolute right-2 top-2 rounded-md p-1
|
|
102
|
+
text-zinc-400 hover:text-zinc-700
|
|
103
|
+
dark:text-zinc-600 dark:hover:text-zinc-300
|
|
104
|
+
transition-colors
|
|
105
|
+
focus:outline-none focus:ring-2 focus:ring-zinc-400
|
|
106
|
+
`,"aria-label":"Close toast",children:e.jsx(te,{className:"h-4 w-4"})})]})},ie=d.memo(({items:r,allowMultiple:t=!1,defaultOpen:s=[],borderColor:n="#e5e7eb",backgroundColor:o="#fff",textColor:l="#111827",hoverBgColor:c="#f3f4f6",hoverTextColor:i="#111827",contentBgColor:f="#fff",contentTextColor:y="#374151",paddingY:p="1rem",paddingX:u="1rem",marginY:b="0.5rem",borderRadius:g="0.5rem",contentPadding:C="1rem",fontSize:T="1rem",fontWeight:z=600,contentFontSize:j="0.95rem",contentFontWeight:N=400,iconOpen:_,iconClose:R,iconSize:v="1.25rem",transitionDuration:x="300ms",shadow:h="0 1px 4px rgba(0,0,0,0.08)",className:m="",style:$})=>{const[O,Y]=d.useState(s),M=d.useRef([]);d.useEffect(()=>{M.current.forEach((S,I)=>{S&&(S.style.maxHeight=O.includes(I)?`${S.scrollHeight}px`:"0px")})},[O]);const B=S=>{Y(I=>t?I.includes(S)?I.filter(A=>A!==S):[...I,S]:I.includes(S)?[]:[S])},P=S=>S!==void 0?typeof S=="number"?`${S}px`:S:void 0;return e.jsx("div",{className:`space-y-2 ${m}`,style:{width:"100%",...$},children:r.map((S,I)=>{const A=O.includes(I);return e.jsxs("div",{className:"border shadow-sm overflow-hidden transition-all duration-300",style:{borderColor:n,borderRadius:P(g),margin:`${P(b)} 0`,boxShadow:h},children:[e.jsxs("button",{onClick:()=>B(I),className:"w-full flex justify-between items-center transition-colors duration-300",style:{backgroundColor:o,color:l,padding:`${P(p)} ${P(u)}`,fontWeight:z,fontSize:P(T),cursor:"pointer",border:"none",outline:"none"},onMouseEnter:F=>{F.currentTarget.style.backgroundColor=c,F.currentTarget.style.color=i},onMouseLeave:F=>{F.currentTarget.style.backgroundColor=o,F.currentTarget.style.color=l},children:[e.jsx("span",{children:S.title}),e.jsx("span",{style:{fontSize:P(v)},children:A?_||e.jsx(Re,{size:16}):R||e.jsx(le,{size:16})})]}),e.jsx("div",{ref:F=>{M.current[I]=F},className:"overflow-hidden transition-all duration-300",style:{maxHeight:A?`${M.current[I]?.scrollHeight??0}px`:"0px",transition:`max-height ${x} ease-in-out`},children:e.jsx("div",{style:{borderTop:`1px solid ${n}`,backgroundColor:f,color:y,padding:P(C),fontSize:P(j),fontWeight:N},children:S.content})})]},I)})})});ie.displayName="Accordion";const Ve={xs:"text-[10px]",sm:"text-[12px]",md:"text-[14px]",lg:"text-[16px]",xl:"text-[18px]","2xl":"text-[20px]"},Ge={xs:"w-6 h-6",sm:"w-8 h-8",md:"w-10 h-10",lg:"w-12 h-12",xl:"w-14 h-14","2xl":"w-16 h-16"},ee={circular:"rounded-full",rounded:"rounded-lg",square:"rounded-none"},Xe={"top-left":"-top-0.5 -left-0.5","top-right":"-top-0.5 -right-0.5","bottom-left":"-bottom-0.5 -left-0.5","bottom-right":"-bottom-0.5 -right-0.5"},Je=r=>({xs:"w-2 h-2",sm:"w-2.5 h-2.5",md:"w-3 h-3",lg:"w-3.5 h-3.5",xl:"w-4 h-4","2xl":"w-4.5 h-4.5"})[r],Ke=r=>({xs:"border",sm:"border",md:"border-2",lg:"border-2",xl:"border-[3px]","2xl":"border-[3px]"})[r],Ze=({src:r,alt:t="User avatar",size:s="md",variant:n="circular",isOnline:o=!1,isOffline:l=!1,fallback:c,ring:i=!1,ringColor:f="#3b82f6",onClick:y,statusPosition:p="bottom-right",className:u="",statusClassName:b="",style:g,statusStyle:C})=>{const[T,z]=d.useState(!1),j=!!y,N=s==="responsive"?"md":s,_=c||t.split(" ").map(h=>h[0]).join("").toUpperCase().slice(0,2),R=o?"bg-green-500":l?"bg-gray-400":"",v=Je(N),x=Ke(N);return e.jsxs("div",{role:j?"button":"img",tabIndex:j?0:-1,"aria-label":t,onClick:y,className:`relative inline-flex items-center justify-center overflow-hidden
|
|
107
|
+
${Ge[N]}
|
|
108
|
+
${ee[n]}
|
|
109
|
+
transition-all duration-200
|
|
110
|
+
${j?"cursor-pointer hover:scale-105 active:scale-95":""}
|
|
111
|
+
${i?"ring-2 ring-offset-2":""}
|
|
112
|
+
${u}`,style:{...g,...i?{ringColor:f}:{}},onKeyDown:h=>{j&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),y?.())},children:[r&&!T?e.jsx("img",{src:r,alt:t,onError:()=>z(!0),className:`w-full h-full object-cover ${ee[n]}`}):e.jsx("div",{className:`w-full h-full flex items-center justify-center bg-gradient-to-br from-purple-500 via-purple-600 to-blue-600 text-white font-semibold
|
|
113
|
+
${Ve[N]}
|
|
114
|
+
${ee[n]}`,children:_||e.jsx(Fe,{className:"w-1/2 h-1/2"})}),(o||l)&&e.jsx("span",{"aria-label":o?"Online":"Offline",title:o?"Online":"Offline",className:`
|
|
115
|
+
absolute
|
|
116
|
+
${Xe[p]}
|
|
117
|
+
${R}
|
|
118
|
+
${v}
|
|
119
|
+
${x}
|
|
120
|
+
border-white
|
|
121
|
+
rounded-full
|
|
122
|
+
shadow-md
|
|
123
|
+
z-10
|
|
124
|
+
${b}
|
|
125
|
+
`,style:{...C}})]})};function de(r){var t,s,n="";if(typeof r=="string"||typeof r=="number")n+=r;else if(typeof r=="object")if(Array.isArray(r)){var o=r.length;for(t=0;t<o;t++)r[t]&&(s=de(r[t]))&&(n&&(n+=" "),n+=s)}else for(s in r)r[s]&&(n&&(n+=" "),n+=s);return n}function E(){for(var r,t,s=0,n="",o=arguments.length;s<o;s++)(r=arguments[s])&&(t=de(r))&&(n&&(n+=" "),n+=t);return n}const ue=d.memo(({text:r,icon:t,iconPosition:s="left",primaryColor:n="#3b82f6",size:o="md",rounded:l=!0,notificationDot:c=!1,dotColor:i="#ef4444",count:f,pulse:y=!1,className:p,onClick:u})=>{const b={sm:"px-2 py-0.5 text-xs",md:"px-3 py-1 text-xs",lg:"px-4 py-1.5 text-sm"},g={backgroundColor:n,color:"#fff"};return e.jsxs("span",{onClick:u,style:g,className:E("relative inline-flex items-center justify-center gap-1 font-medium","transition-all duration-200 select-none",l?"rounded-full":"rounded-md",b[o],u&&"cursor-pointer hover:opacity-90",p),children:[c&&e.jsx("span",{style:{backgroundColor:i},className:E("absolute -top-1 -right-1 w-2 h-2 rounded-full",y&&"animate-ping")}),f!==void 0&&e.jsx("span",{style:{backgroundColor:i},className:"absolute -top-2 -right-2 min-w-[18px] h-[18px] px-1 text-[10px] flex items-center justify-center rounded-full text-white",children:f}),t&&s==="left"&&e.jsx("span",{className:"flex items-center",children:t}),r&&e.jsx("span",{children:r}),t&&s==="right"&&e.jsx("span",{className:"flex items-center",children:t})]})});ue.displayName="Badge";const fe=d.forwardRef(function({children:t,iconBefore:s,iconAfter:n,loading:o=!1,loadingText:l="Loading...",fullWidth:c=!1,variant:i="default",size:f="md",weight:y=400,primaryColor:p="#3b82f6",disabled:u,className:b,type:g="button",style:C,...T},z){const j=u||o,N=p,_={sm:"h-8 px-3 text-sm",md:"h-10 px-4 text-sm",lg:"h-12 px-6 text-base"},R={default:{backgroundColor:N,color:"#fff"},outline:{border:`1px solid ${N}`,color:N,backgroundColor:"transparent"},ghost:{color:N,backgroundColor:"transparent"}},v={sm:16,md:20,lg:24},x={width:v[f],height:v[f],display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0};return e.jsx("button",{ref:z,type:g,disabled:j,className:E("inline-flex items-center justify-center gap-2 rounded-lg","transition-all duration-200",_[f],c&&"w-full",j&&"opacity-60 cursor-not-allowed pointer-events-none",b),style:{fontWeight:y,...R[i],...C},...T,children:o?e.jsxs("span",{className:"inline-flex items-center gap-2",children:[e.jsx("span",{className:"border-2 border-current border-t-transparent rounded-full animate-spin",style:{width:v[f],height:v[f],flexShrink:0}}),e.jsx("span",{children:l})]}):e.jsxs(e.Fragment,{children:[s&&e.jsx("span",{style:x,children:s}),e.jsx("span",{className:"whitespace-nowrap",children:t}),n&&e.jsx("span",{style:x,children:n})]})})});fe.displayName="Button";const Qe=({name:r,options:t,selectedValues:s=[],onChange:n,disabled:o=!1,readOnly:l=!1,required:c=!1,error:i,className:f,customIcon:y,style:p,labelStyle:u,iconSize:b=20,iconCheckedBgColor:g="#2563eb",iconUncheckedBorderColor:C="#9ca3af",textColor:T="#374151",errorStyle:z,darkMode:j=!1})=>{const N=d.useRef(null),[_,R]=d.useState(null),v=x=>{if(!n||o||l)return;const h=s.includes(x)?s.filter(m=>m!==x):[...s,x];n(h)};return d.useEffect(()=>{const x=N.current;if(!x)return;const h=m=>{if(o||_===null)return;const $=_;(m.key==="ArrowDown"||m.key==="ArrowRight")&&(m.preventDefault(),R(($+1)%t.length)),(m.key==="ArrowUp"||m.key==="ArrowLeft")&&(m.preventDefault(),R(($-1+t.length)%t.length)),(m.key===" "||m.key==="Enter")&&(m.preventDefault(),v(t[$].value))};return x.addEventListener("keydown",h),()=>x.removeEventListener("keydown",h)},[_,t,s,o]),e.jsxs("div",{ref:N,role:"group","aria-disabled":o,"aria-invalid":!!i,tabIndex:0,className:E("flex flex-col gap-2",f),style:{...p},children:[t.map((x,h)=>{const m=s.includes(x.value),$=_===h;return e.jsxs("label",{className:E("flex items-center justify-between cursor-pointer select-none transition-opacity",o?"opacity-50 cursor-not-allowed":"opacity-100",$?"ring-2 ring-blue-400":""),style:{...u},onFocus:()=>R(h),children:[e.jsx("span",{style:{color:T,fontSize:14},children:x.label}),e.jsx("input",{type:"checkbox",name:r,value:x.value,checked:m,disabled:o||l,required:c,onChange:()=>v(x.value),style:{display:"none"}}),y?y(m):e.jsx("span",{style:{display:"inline-flex",justifyContent:"center",alignItems:"center",width:b,height:b,borderRadius:4,border:`2px solid ${m?g:C}`,backgroundColor:m?g:"transparent",transition:"all 0.25s ease"},children:m&&e.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:3,strokeLinecap:"round",strokeLinejoin:"round",style:{width:b*.6,height:b*.6},children:e.jsx("polyline",{points:"20 6 9 17 4 12"})})})]},x.value)}),i&&e.jsx("p",{role:"alert",style:{color:"#dc2626",fontSize:12,marginTop:4,...z},children:i})]})},et=({name:r,options:t,selectedValue:s,onChange:n,disabled:o=!1,readOnly:l=!1,required:c=!1,error:i,className:f,style:y,labelStyle:p,iconSize:u=20,iconCheckedBgColor:b="#2563eb",iconUncheckedBorderColor:g="#9ca3af",textColor:C="#374151",errorStyle:T,darkMode:z=!1})=>{const j=d.useRef(null),[N,_]=d.useState(null);return d.useEffect(()=>{const R=j.current;if(!R)return;const v=x=>{if(o)return;const h=N??t.findIndex(m=>m.value===s)??0;if(x.key==="ArrowDown"||x.key==="ArrowRight"){x.preventDefault();const m=(h+1)%t.length;n&&n(t[m].value),_(m)}if(x.key==="ArrowUp"||x.key==="ArrowLeft"){x.preventDefault();const m=(h-1+t.length)%t.length;n&&n(t[m].value),_(m)}};return R.addEventListener("keydown",v),()=>R.removeEventListener("keydown",v)},[N,t,s,n,o]),e.jsxs("div",{ref:j,role:"radiogroup","aria-disabled":o,"aria-invalid":!!i,className:E("flex flex-col gap-2",f),style:{...y},tabIndex:0,children:[t.map((R,v)=>{const x=s===R.value,h=N===v;return e.jsxs("label",{className:E("flex items-center justify-between cursor-pointer select-none gap-2",o?"opacity-50 cursor-not-allowed":"opacity-100",h?"ring-2 ring-blue-400":""),style:{...p},children:[e.jsx("span",{style:{color:C,fontSize:14},children:R.label}),e.jsx("input",{type:"radio",name:r,value:R.value,checked:x,disabled:o||l,required:c,onChange:()=>n&&n(R.value),style:{display:"none"}}),e.jsx("span",{className:E("inline-flex items-center justify-center rounded-full transition-all"),style:{width:u,height:u,border:`2px solid ${x?b:g}`,backgroundColor:x?b:"transparent",transition:"all 0.2s ease"},children:x&&e.jsx("span",{style:{width:u/2,height:u/2,borderRadius:"50%",backgroundColor:"#fff"}})})]},R.value)}),i&&e.jsx("p",{role:"alert",style:{color:"#dc2626",fontSize:12,marginTop:4,...T},children:i})]})},tt=({name:r,options:t,selectedValues:s=[],onChange:n,disabled:o=!1,readOnly:l=!1,required:c=!1,error:i,className:f,style:y,labelStyle:p,iconSize:u=20,iconCheckedBgColor:b="#2563eb",switchBgColor:g="#d1d5db",textColor:C="#374151",errorStyle:T,darkMode:z=!1})=>{const j=d.useRef(null),[N,_]=d.useState(null),R=v=>{if(!n||o||l)return;const x=s.includes(v)?s.filter(h=>h!==v):[...s,v];n(x)};return d.useEffect(()=>{const v=j.current;if(!v)return;const x=h=>{if(o||N===null)return;const m=N;if(h.key==="ArrowRight"||h.key==="ArrowDown"){h.preventDefault();const $=(m+1)%t.length;_($)}if(h.key==="ArrowLeft"||h.key==="ArrowUp"){h.preventDefault();const $=(m-1+t.length)%t.length;_($)}(h.key===" "||h.key==="Enter")&&(h.preventDefault(),R(t[m].value))};return v.addEventListener("keydown",x),()=>v.removeEventListener("keydown",x)},[N,t,s,o]),e.jsxs("div",{ref:j,role:"group","aria-disabled":o,"aria-invalid":!!i,tabIndex:0,className:E("flex flex-col gap-2",f),style:{...y},children:[t.map((v,x)=>{const h=s.includes(v.value),m=N===x;return e.jsxs("label",{className:E("flex items-center justify-between cursor-pointer select-none transition-opacity",o?"opacity-50 cursor-not-allowed":"opacity-100",m?"ring-2 ring-blue-400":""),style:{...p},onFocus:()=>_(x),children:[e.jsx("span",{style:{color:C,fontSize:14},children:v.label}),e.jsx("input",{type:"checkbox",name:r,value:v.value,checked:h,disabled:o||l,required:c,onChange:()=>R(v.value),style:{display:"none"}}),e.jsx("span",{className:E("relative inline-flex rounded-full transition-colors"),style:{width:u*2,height:u*1.1,backgroundColor:h?b:g,transition:"background-color 0.25s ease",borderRadius:9999},children:e.jsx("span",{style:{position:"absolute",top:"50%",left:h?`calc(100% - ${u-4}px - 2px)`:"2px",transform:"translateY(-50%)",width:u-4,height:u-4,borderRadius:"50%",backgroundColor:"#fff",boxShadow:"0 1px 2px rgba(0,0,0,0.3)",transition:"left 0.25s ease"}})})]},v.value)}),i&&e.jsx("p",{role:"alert",style:{color:"#dc2626",fontSize:12,marginTop:4,...T},children:i})]})},rt={sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg",xl:"max-w-xl","2xl":"max-w-2xl",full:"w-full h-full"},st={none:"p-0",sm:"p-4",md:"p-6",lg:"p-8",xl:"p-12"},nt=({size:r="full",padding:t="none",center:s=!0,className:n="",children:o})=>{const l=E("w-full box-border",rt[r],st[t],s&&"mx-auto",n);return e.jsx("div",{className:l,children:o})},at=({label:r="Open Drawer",icon:t,iconPosition:s="left",onClick:n,className:o=""})=>e.jsxs("button",{type:"button",onClick:n,className:`inline-flex items-center justify-center gap-2 px-4 py-2 rounded-md font-medium text-white bg-blue-600 hover:bg-blue-700 transition-colors focus:outline-none focus:ring-2 focus:ring-blue-400 ${o}`,children:[t&&s==="left"&&t,r,t&&s==="right"&&t]}),ot=({open:r,onClose:t,position:s="right",size:n="320px",children:o,showCloseButton:l=!0,className:c="",overlayClassName:i="",closeButtonClassName:f=""})=>{const[y,p]=d.useState(r);d.useEffect(()=>{r?p(!0):setTimeout(()=>p(!1),300)},[r]);const u=d.useMemo(()=>{if(r)return"translate(0,0)";switch(s){case"left":return"translateX(-100%)";case"right":return"translateX(100%)";case"top":return"translateY(-100%)";case"bottom":return"translateY(100%)";default:return"translate(0,0)"}},[r,s]);return!y&&!r?null:e.jsxs(e.Fragment,{children:[e.jsx("div",{onClick:t,className:`fixed inset-0 bg-black/50 transition-opacity ${r?"opacity-100":"opacity-0"} ${i}`}),e.jsxs("div",{className:`fixed bg-white shadow-lg flex flex-col transition-transform duration-300 ${c}`,style:{width:s==="left"||s==="right"?n:"100%",height:s==="top"||s==="bottom"?n:"100%",top:(s==="bottom"||s==="top")&&s==="bottom"?"auto":0,bottom:s==="bottom"?0:"auto",left:s==="left"?0:s==="right"?"auto":0,right:s==="right"?0:s==="left"?"auto":0,transform:u},children:[l&&e.jsx("button",{onClick:t,className:`absolute top-4 right-4 p-1 rounded-full hover:bg-gray-200 transition-colors ${f}`,"aria-label":"Close drawer",children:e.jsx(te,{size:20})}),e.jsx("div",{className:"flex-1 overflow-auto p-4",children:o})]})]})},xe=d.forwardRef((r,t)=>{const{label:s,name:n="",value:o,defaultValue:l,onChange:c,options:i=[],placeholder:f="Select an option",required:y,disabled:p,error:u,success:b,helperText:g,labelIcon:C,prefixIcon:T,variant:z="dark",primaryTheme:j=!0,primaryColor:N="#3b82f6",containerClassName:_="",labelClassName:R="",triggerClassName:v="",dropdownClassName:x="",optionClassName:h="",className:m=""}=r,$=d.useRef(null);d.useImperativeHandle(t,()=>$.current);const[O,Y]=d.useState(!1),[M,B]=d.useState(l||""),P=o!==void 0?o:M,S=i.find(k=>k.value===P);d.useEffect(()=>{const k=L=>{$.current&&!$.current.contains(L.target)&&Y(!1)};return document.addEventListener("mousedown",k),()=>document.removeEventListener("mousedown",k)},[]);const I=k=>{B(k.value),c?.(n,k.value),Y(!1)},A={dark:{bg:"bg-zinc-900",text:"text-white",border:"border-zinc-800",dropdown:"bg-black border-zinc-800",option:"text-zinc-300 hover:bg-zinc-800"},light:{bg:"bg-white",text:"text-gray-900",border:"border-gray-300",dropdown:"bg-white border-gray-200",option:"text-gray-700 hover:bg-gray-100"}}[z],F=j?{}:{color:N},W=j?{}:{borderColor:N},U=j?{}:{backgroundColor:`${N}20`},a=u?"border-rose-500":b?"border-emerald-500":A.border,w=T?"pl-12 pr-10":"px-4";return e.jsxs("div",{ref:$,className:`w-full space-y-1 ${_} ${m}`,children:[s&&e.jsxs("label",{className:`flex items-center gap-2 text-[13px] font-medium ${R}`,children:[C&&e.jsx(C,{className:j?"w-4 h-4 text-[var(--primary)]":"w-4 h-4",style:j?void 0:F}),s,y&&e.jsx("span",{className:"text-rose-500",children:"*"})]}),e.jsxs("div",{className:"relative group",children:[T&&e.jsx("div",{className:"absolute left-4 top-1/2 -translate-y-1/2 z-10",children:e.jsx(T,{className:j?"w-4 h-4 text-zinc-500 group-focus-within:text-[var(--primary)]":"w-4 h-4 text-zinc-500",style:j?void 0:F})}),e.jsxs("button",{type:"button",disabled:p,onClick:()=>Y(k=>!k),style:j?void 0:W,className:`
|
|
177
126
|
w-full py-2.5 rounded-lg text-left text-sm
|
|
178
127
|
border transition-all duration-200
|
|
179
|
-
${
|
|
180
|
-
${
|
|
128
|
+
${A.bg} ${A.text}
|
|
129
|
+
${w}
|
|
181
130
|
${a}
|
|
182
131
|
focus:ring-2
|
|
183
|
-
${
|
|
132
|
+
${j?"focus:ring-[var(--primary)]/30 focus:border-[var(--primary)]":""}
|
|
184
133
|
disabled:opacity-50 disabled:cursor-not-allowed
|
|
185
134
|
${v}
|
|
186
|
-
`,children:[e.jsx("span",{className:
|
|
135
|
+
`,children:[e.jsx("span",{className:S?A.text:"text-zinc-500",children:S?S.label:f}),e.jsx(le,{className:`absolute right-4 top-1/2 -translate-y-1/2 w-4 h-4 transition-transform ${O?"rotate-180":""} text-zinc-400`})]}),O&&e.jsx("div",{className:`
|
|
187
136
|
absolute z-50 mt-2 w-full rounded-xl border shadow-xl overflow-hidden
|
|
188
|
-
${
|
|
189
|
-
${
|
|
190
|
-
`,children:e.jsx("ul",{className:"max-h-60 overflow-y-auto",children:
|
|
137
|
+
${A.dropdown}
|
|
138
|
+
${x}
|
|
139
|
+
`,children:e.jsx("ul",{className:"max-h-60 overflow-y-auto",children:i.map(k=>{const L=P===k.value;return e.jsxs("li",{onClick:()=>I(k),style:!j&&L?U:void 0,className:`
|
|
191
140
|
px-4 py-3 cursor-pointer text-sm flex items-center gap-2
|
|
192
|
-
${
|
|
141
|
+
${L?j?"bg-[var(--primary)]/15 text-[var(--primary)]":"":A.option}
|
|
193
142
|
${h}
|
|
194
|
-
`,children:[
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
@keyframes tab-fade {
|
|
217
|
-
from { opacity: 0; transform: translateY(
|
|
218
|
-
to
|
|
143
|
+
`,children:[k.icon&&e.jsx("span",{children:k.icon}),k.label]},k.value)})})})]}),(g||u)&&e.jsx("p",{className:`text-xs ${u?"text-rose-500":b?"text-emerald-500":"text-zinc-500"}`,children:typeof u=="string"?u:g})]})});xe.displayName="Dropdown";const lt=d.forwardRef(function(t,s){const{label:n,name:o="",type:l="text",placeholder:c="",value:i,defaultValue:f,onChange:y,required:p,disabled:u,readOnly:b,error:g,success:C,helperText:T,icon:z,prefix:j,prefixIcon:N,suffixIcon:_,min:R,max:v,step:x,rows:h=4,primaryTheme:m=!0,primaryColor:$="#3b82f6",className:O=""}=t,Y=d.useRef(null);d.useImperativeHandle(s,()=>Y.current);const[M,B]=d.useState(f||""),[P,S]=d.useState(!1),I=!!N,A=!!j,F=I||A,W=i!==void 0?i:M,U=H=>{const D=H.target.value;B(D),y?.(o,D)},a=H=>{l==="number"&&H.key==="-"&&H.preventDefault()},w=()=>F?I&&A?"pl-20 pr-4":A?"pl-14 pr-4":I?"pl-10 pr-4":"px-4":"px-4",k=m?{}:{borderColor:$,boxShadow:`0 0 0 1px ${$}`},L=m?{}:{color:$},V=g?"border-red-500":C?"border-emerald-500":"border-zinc-300 dark:border-zinc-800";return e.jsxs("div",{className:`w-full space-y-1 ${O}`,children:[n&&e.jsxs("label",{className:"flex items-center gap-2 text-[12px] font-medium text-gray-700 dark:text-zinc-100",children:[z&&e.jsx(z,{size:16,className:m?"text-[var(--primary)]":"",style:m?void 0:L}),n,p&&e.jsx("span",{className:"text-red-500",children:"*"})]}),e.jsxs("div",{className:"relative",children:[F&&e.jsxs("div",{className:"absolute inset-y-0 left-0 flex items-center pl-3 gap-2 text-sm text-zinc-400 pointer-events-none",children:[N&&e.jsx(N,{size:14}),A&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"font-medium text-zinc-600 dark:text-zinc-200",children:j}),e.jsx("span",{className:"h-4 w-px bg-zinc-300 dark:bg-zinc-700"})]})]}),l==="textarea"?e.jsx("textarea",{ref:Y,name:o,value:W,onChange:U,placeholder:c,required:p,disabled:u,readOnly:b,rows:h,style:m?void 0:k,className:`
|
|
144
|
+
w-full rounded-lg text-sm
|
|
145
|
+
bg-white dark:bg-zinc-900 border
|
|
146
|
+
text-gray-900 dark:text-white
|
|
147
|
+
placeholder:text-zinc-400
|
|
148
|
+
py-2.5 outline-none
|
|
149
|
+
focus:ring-1
|
|
150
|
+
${m&&"focus:ring-[var(--primary)] focus:border-[var(--primary)]"}
|
|
151
|
+
${w()}
|
|
152
|
+
${V}
|
|
153
|
+
`}):e.jsx("input",{ref:Y,type:l==="password"?P?"text":"password":l,name:o,value:W,onChange:U,onKeyDown:a,placeholder:c,required:p,disabled:u,readOnly:b,min:l==="number"?R??0:void 0,max:v,step:x,style:m?void 0:k,className:`
|
|
154
|
+
w-full rounded-lg text-sm
|
|
155
|
+
bg-white dark:bg-zinc-900 border
|
|
156
|
+
text-gray-900 dark:text-white
|
|
157
|
+
placeholder:text-zinc-400
|
|
158
|
+
py-2.5 outline-none
|
|
159
|
+
focus:ring-1
|
|
160
|
+
disabled:opacity-50 disabled:cursor-not-allowed
|
|
161
|
+
${m&&"focus:ring-[var(--primary)] focus:border-[var(--primary)]"}
|
|
162
|
+
${w()}
|
|
163
|
+
${V}
|
|
164
|
+
`}),l==="password"&&e.jsx("button",{type:"button",onClick:()=>S(!P),className:"absolute right-3 top-1/2 -translate-y-1/2 text-zinc-400",children:P?e.jsx(ze,{size:18}):e.jsx(Pe,{size:18})}),_&&l!=="password"&&e.jsx("span",{className:"absolute right-3 top-1/2 -translate-y-1/2 text-zinc-400",children:_})]}),(T||g)&&e.jsx("p",{className:`text-xs ${g?"text-red-500":C?"text-emerald-500":"text-zinc-500"}`,children:g&&typeof g=="string"?g:T})]})}),ct=({src:r,alt:t="Image",title:s,width:n="w-full",height:o="h-auto",rounded:l="rounded-lg",borderColor:c="transparent",borderWidth:i="0",shadow:f=!1,opacity:y=1,objectFit:p="cover",overlayText:u,overlayColor:b="rgba(0,0,0,0.5)",svgIcon:g,responsive:C=!1,p:T,m:z,hoverScale:j=1.05,hoverRotate:N=0,hoverOpacity:_,hoverShadow:R=!1,transitionDuration:v="300ms",overflow:x="hidden",className:h="",style:m,onClick:$,onLoad:O,onError:Y})=>{const M=d.useMemo(()=>["relative inline-block transition-all",f?"shadow-md":"",l,T??"",z??"",C?"w-full h-auto":"",h].join(" "),[f,l,T,z,C,h]),B=d.useMemo(()=>({width:typeof n=="number"?n:void 0,height:typeof o=="number"?o:void 0,objectFit:p,opacity:y,borderColor:c,borderWidth:i,transition:`all ${v} ease`,...m}),[n,o,p,y,c,i,v,m]),P=d.useMemo(()=>{switch(x){case"x":return{overflowX:"hidden"};case"y":return{overflowY:"hidden"};default:return{overflow:x}}},[x]),S=A=>{_!==void 0&&(A.currentTarget.style.opacity=_.toString()),A.currentTarget.style.transform=`scale(${j}) rotate(${N}deg)`,R&&(A.currentTarget.style.boxShadow="0 8px 20px rgba(0,0,0,0.3)")},I=A=>{A.currentTarget.style.opacity=y.toString(),A.currentTarget.style.transform="scale(1) rotate(0deg)",R&&(A.currentTarget.style.boxShadow="")};return e.jsxs("div",{role:"img","aria-label":t,title:s||t,onClick:$,className:M,style:{position:"relative",cursor:$?"pointer":"default",...P},children:[g?e.jsx("div",{className:"w-full h-full flex items-center justify-center",children:g}):e.jsx("img",{src:r,alt:t,title:s||t,loading:"lazy",style:B,className:"block",onLoad:O,onError:Y,onMouseEnter:S,onMouseLeave:I}),u&&e.jsx("div",{style:{backgroundColor:b},className:"absolute inset-0 flex items-center justify-center text-white font-bold text-center p-4",children:u})]})},me=({text:r,icon:t,onClick:s,subItems:n,isInline:o,isOrdered:l,primaryTheme:c=!0,primaryColor:i="#3b82f6",itemClassName:f,bulletClassName:y})=>{const p=c?{}:{color:i},u=c?{}:{backgroundColor:i};return e.jsxs("li",{className:E(!o&&"mb-3"),children:[e.jsxs("div",{onClick:s,style:c?void 0:p,className:E("flex items-center gap-2 text-sm text-zinc-800 dark:text-zinc-200 transition-all",s&&(c?"cursor-pointer hover:text-[var(--primary)]":"cursor-pointer"),f),children:[t?e.jsx("span",{className:"text-base",children:t}):!o&&!l&&e.jsx("span",{style:c?void 0:u,className:E("w-2 h-2 rounded-full",c&&"bg-[var(--primary)]",y)}),e.jsx("span",{children:r})]}),n&&n.length>0&&e.jsx("ul",{className:E("pl-5 mt-2 space-y-2",l?"list-decimal":"list-none"),children:n.map((b,g)=>e.jsx(me,{...b,isInline:!1,isOrdered:l,primaryTheme:c,primaryColor:i,itemClassName:f,bulletClassName:y},g))})]})},it=({title:r,titleIcon:t,items:s,type:n="unordered",primaryTheme:o=!0,primaryColor:l="#3b82f6",className:c,itemClassName:i,titleClassName:f,bulletClassName:y})=>{const p=n==="ordered",u=n==="inline",b=p?"ol":"ul";return e.jsxs("div",{className:E("bg-white dark:bg-zinc-900 border border-zinc-200 dark:border-zinc-800 rounded-xl p-4",c),children:[r&&e.jsxs("div",{className:E("flex items-center gap-2 mb-3 text-base font-semibold text-zinc-900 dark:text-white",f),children:[t&&e.jsx("span",{children:t}),e.jsx("span",{children:r})]}),e.jsx(b,{className:E(u?"flex flex-wrap gap-4":p?"list-decimal pl-5 space-y-2":"list-none p-0"),children:s.map((g,C)=>e.jsx(me,{...g,isInline:u,isOrdered:p,primaryTheme:o,primaryColor:l,itemClassName:i,bulletClassName:y},C))})]})},dt=({isOpen:r,onClose:t,children:s,title:n,icon:o,ariaLabel:l,className:c,overlayClassName:i,contentClassName:f,closeButtonClassName:y,disableOverlayClose:p=!1,darkMode:u=!1,transitionDuration:b=200})=>{const g=d.useRef(null);d.useEffect(()=>{const T=z=>{z.key==="Escape"&&t()};return r&&document.addEventListener("keydown",T),()=>document.removeEventListener("keydown",T)},[r,t]),d.useEffect(()=>{if(r){const T=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=T}}},[r]);const C=d.useCallback(()=>{p||t()},[p,t]);return r?e.jsx("div",{role:"dialog","aria-modal":"true","aria-label":l||n||"Modal",className:E("fixed inset-0 flex items-center justify-center z-50 transition-opacity",u?"bg-black/80":"bg-black/60",i),style:{transitionDuration:`${b}ms`},onClick:C,children:e.jsxs("div",{ref:g,className:E("relative w-[90vw] max-w-2xl max-h-[90vh] overflow-y-auto p-6 rounded-lg shadow-lg transition-transform",u?"bg-zinc-900 text-white":"bg-white text-gray-900","scale-100",f),style:{transitionDuration:`${b}ms`},onClick:T=>T.stopPropagation(),children:[e.jsx("button",{onClick:t,"aria-label":"Close modal",className:E("absolute top-4 right-4 p-1 rounded-full hover:scale-110 transition-transform",u?"text-white hover:text-gray-200":"text-gray-700 hover:text-gray-900",y),children:e.jsx(te,{size:24})}),n&&e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[o&&e.jsx("span",{className:"flex-shrink-0",children:o}),e.jsx("h2",{className:"text-xl font-semibold",children:n})]}),s]})}):null},ut=({children:r,style:t,className:s})=>e.jsx("div",{className:E("overflow-x-auto rounded-lg shadow-sm border border-gray-200",s),style:{background:"#ffffff",...t},children:e.jsx("table",{className:"w-full border-collapse",style:{borderSpacing:0,borderRadius:12,overflow:"hidden"},children:r})}),ft=({children:r,style:t,className:s})=>e.jsx("thead",{className:E("bg-gray-100 text-gray-900 font-semibold",s),style:{...t},children:r}),xt=({children:r,style:t,className:s})=>e.jsx("tbody",{className:E("bg-white",s),style:{...t},children:r}),mt=({children:r,style:t,className:s,onClick:n,hoverBgColor:o="#f9fafb",darkMode:l=!1})=>e.jsx("tr",{className:E("transition-colors duration-200 cursor-default",n?"hover:cursor-pointer":"",s),style:{borderBottom:"1px solid #e5e7eb",...t},onClick:n,onMouseEnter:c=>{l?c.currentTarget.style.backgroundColor="#1f2937":c.currentTarget.style.backgroundColor=o},onMouseLeave:c=>{c.currentTarget.style.backgroundColor="transparent"},children:r}),pt=({children:r,style:t,className:s})=>e.jsx("th",{className:E("text-left px-4 py-3 text-sm text-gray-700 border-b-2 border-gray-200",s),style:{...t},children:r}),bt=({children:r,style:t,className:s})=>e.jsx("td",{className:E("px-4 py-3 text-sm text-gray-600",s),style:{...t},children:r});function ht(r=768){const[t,s]=d.useState(!1);return d.useEffect(()=>{const n=window.matchMedia(`(max-width: ${r}px)`),o=l=>s(l.matches);return s(n.matches),n.addEventListener("change",o),()=>n.removeEventListener("change",o)},[r]),t}const pe=d.createContext(null);function Z(){const r=d.useContext(pe);if(!r)throw new Error("<Tab>, <TabList>, <TabPanel> must be inside <Tabs>");return r}const yt=({children:r,defaultActive:t=0,position:s="top",variant:n="solid",fullWidth:o=!1,radius:l=8,transitionDuration:c=200,bordered:i=!1,mobileBreakpoint:f=768,mobileVariant:y="scroll",primaryColor:p="#2563eb",activeColor:u="#ffffff",textColor:b="#374151",hoverColor:g="#1d4ed8",borderColor:C="#e5e7eb",disabledColor:T="#9ca3af",backgroundColor:z="transparent",onTabChange:j,tabCount:N=0,style:_,className:R})=>{const[v,x]=d.useState(t),[h,m]=d.useState(N),[$,O]=d.useState(!1),Y=d.useRef(null),M=ht(f);d.useEffect(()=>{!N&&Y.current&&m(Y.current.querySelectorAll("[data-tab-button]").length)}),d.useEffect(()=>{M||O(!1)},[M]);const B=I=>{x(I),j?.(I),M&&y==="drawer"&&O(!1)},P=M&&(s==="left"||s==="right")?"top":s,S=P==="left"||P==="right";return e.jsx(pe.Provider,{value:{active:v,setActive:B,variant:n,position:P,primaryColor:p,activeColor:u,textColor:b,hoverColor:g,borderColor:C,disabledColor:T,radius:l,transitionDuration:c,fullWidth:o,tabCount:h,isMobile:M,mobileVariant:y,drawerOpen:$,setDrawerOpen:O},children:e.jsxs("div",{ref:Y,className:E("modern-tabs",S?"flex flex-row":"flex flex-col",P==="right"&&"flex-row-reverse",P==="bottom"&&"flex-col-reverse",i&&"border border-gray-200",R),style:{background:z,borderRadius:l,overflow:"hidden",..._},children:[e.jsx("style",{children:`
|
|
165
|
+
@keyframes tab-fade-in {
|
|
166
|
+
from { opacity: 0; transform: translateY(4px); }
|
|
167
|
+
to { opacity: 1; transform: translateY(0); }
|
|
168
|
+
}
|
|
169
|
+
@keyframes tab-drawer-open {
|
|
170
|
+
from { opacity: 0; transform: translateY(-6px); }
|
|
171
|
+
to { opacity: 1; transform: translateY(0); }
|
|
172
|
+
}
|
|
173
|
+
.tab-panel-active {
|
|
174
|
+
animation: tab-fade-in ${c}ms ease;
|
|
175
|
+
}
|
|
176
|
+
.tab-drawer-menu {
|
|
177
|
+
animation: tab-drawer-open ${c}ms ease;
|
|
178
|
+
}
|
|
179
|
+
/* scroll strip: hide scrollbar, enable snap */
|
|
180
|
+
.tab-scroll-strip {
|
|
181
|
+
overflow-x: auto;
|
|
182
|
+
scrollbar-width: none;
|
|
183
|
+
-ms-overflow-style: none;
|
|
184
|
+
scroll-snap-type: x mandatory;
|
|
185
|
+
-webkit-overflow-scrolling: touch;
|
|
219
186
|
}
|
|
220
|
-
.
|
|
221
|
-
|
|
187
|
+
.tab-scroll-strip::-webkit-scrollbar { display: none; }
|
|
188
|
+
.tab-scroll-strip [data-tab-button] {
|
|
189
|
+
scroll-snap-align: start;
|
|
190
|
+
flex-shrink: 0;
|
|
222
191
|
}
|
|
223
|
-
`}),
|
|
192
|
+
`}),r]})})},gt=({open:r})=>e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",style:{transform:r?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease",display:"flex",flexShrink:0},children:e.jsx("polyline",{points:"6 9 12 15 18 9"})}),vt=({children:r,gap:t=8,drawerLabel:s="Select tab",style:n,className:o})=>{const{position:l,isMobile:c,mobileVariant:i,drawerOpen:f,setDrawerOpen:y,primaryColor:p,activeColor:u,radius:b,active:g}=Z(),C=l==="left"||l==="right";if(c&&i==="drawer"){const j=d.Children.toArray(r)[g]?.props?.children??s;return e.jsxs("div",{className:E("relative w-full",o),style:{padding:8,...n},children:[e.jsxs("button",{onClick:()=>y(!f),className:"flex items-center justify-between w-full font-medium",style:{padding:"10px 16px",borderRadius:b,background:p,color:u,border:"none",cursor:"pointer",fontSize:14},children:[e.jsx("span",{children:j}),e.jsx(gt,{open:f})]}),f&&e.jsx("div",{className:"tab-drawer-menu absolute left-0 right-0 z-50 flex flex-col",style:{top:"calc(100% + 4px)",background:"#fff",border:"1px solid #e5e7eb",borderRadius:b,boxShadow:"0 8px 24px rgba(0,0,0,0.12)",gap:4,padding:6},children:r})]})}return c&&i==="scroll"?e.jsx("div",{role:"tablist",className:E("tab-scroll-strip flex flex-row w-full",o),style:{gap:t,padding:8,...n},children:r}):c&&i==="stack"?e.jsx("div",{role:"tablist",className:E("flex flex-col w-full",o),style:{gap:t,padding:8,...n},children:r}):e.jsx("div",{role:"tablist",className:E("flex",C?"flex-col":"flex-row",C?"min-w-[160px]":"w-full",o),style:{gap:t,padding:8,...n},children:r})},wt=({children:r,index:t,icon:s,disabled:n=!1,ariaLabel:o,style:l,className:c,activeStyle:i,inactiveStyle:f})=>{const{active:y,setActive:p,variant:u,primaryColor:b,activeColor:g,textColor:C,hoverColor:T,borderColor:z,disabledColor:j,radius:N,transitionDuration:_,fullWidth:R,tabCount:v,isMobile:x,mobileVariant:h}=Z(),m=d.useRef(t),$=d.useRef(null),O=()=>{if(m.current!==void 0)return m.current;if(!$.current)return 0;const W=$.current.closest("[role=tablist], .tab-drawer-menu")?.querySelectorAll("[data-tab-button]");return W?Array.from(W).indexOf($.current):0},[Y,M]=d.useState(!1),B=O()===y,P=W=>{const U=v||1,a=O();W.key==="ArrowRight"||W.key==="ArrowDown"?(W.preventDefault(),p((a+1)%U)):(W.key==="ArrowLeft"||W.key==="ArrowUp")&&(W.preventDefault(),p((a-1+U)%U))},S=u==="outline"?{border:`1px solid ${z}`}:u==="underline"?{borderBottom:"2px solid transparent",borderRadius:0}:u==="pill"?{borderRadius:999}:{border:"none"},I=u==="solid"||u==="pill"?{background:b,color:g,boxShadow:`0 2px 8px ${b}44`}:u==="outline"?{borderColor:b,color:b,background:`${b}11`}:u==="underline"?{borderBottomColor:b,color:b}:{},A=u==="underline"?{color:T}:{background:`${b}11`,color:T},F=x&&(h==="stack"||h==="drawer"||h==="collapse");return e.jsxs("button",{ref:$,"data-tab-button":!0,role:"tab","aria-selected":B,"aria-label":o,disabled:n,onClick:()=>!n&&p(O()),onKeyDown:P,onMouseEnter:()=>M(!0),onMouseLeave:()=>M(!1),className:E("flex items-center justify-center gap-2 font-medium select-none transition-all",(R||F)&&"w-full",n?"opacity-60 cursor-not-allowed":"cursor-pointer",c),style:{padding:"10px 16px",borderRadius:N,background:"transparent",color:C,transitionDuration:`${_}ms`,fontSize:14,whiteSpace:"nowrap",...S,...B?I:{},...B?i:f,...Y&&!B&&!n?A:{},...n?{color:j}:{},...l},children:[s&&e.jsx("span",{className:"flex-shrink-0",children:s}),r]})},kt=({children:r,style:t,className:s})=>{const{borderColor:n,position:o}=Z();return e.jsx("div",{className:E("flex-1 min-w-0",s),style:{...t},children:r})},jt=({children:r,index:t,keepMounted:s=!1,style:n,className:o})=>{const{active:l}=Z(),c=t===l;return!s&&!c?null:e.jsx("div",{role:"tabpanel",hidden:!c,className:E(c&&"tab-panel-active",o),style:{display:c?void 0:"none",...n},children:r})},Nt={xs:"text-xs",sm:"text-sm",md:"text-base",lg:"text-lg",xl:"text-xl","2xl":"text-2xl"},Et={uppercase:"uppercase",lowercase:"lowercase",capitalize:"capitalize"};function Tt({as:r,children:t,size:s="md",weight:n=400,align:o="left",transform:l,italic:c=!1,underline:i=!1,strikethrough:f=!1,truncate:y=!1,className:p,style:u,...b}){const g=r||"p";return d.createElement(g,{className:E("text-inherit",Nt[s]||"",l&&Et[l],c&&"italic",i&&"underline",f&&"line-through",y&&"truncate",p),style:{fontWeight:n,textAlign:o,...u},...b},t)}exports.Accordion=ie;exports.Avatar=Ze;exports.Badge=ue;exports.Button=fe;exports.CheckboxGroup=Qe;exports.Container=nt;exports.Drawer=ot;exports.DrawerButton=at;exports.Dropdown=xe;exports.Image=ct;exports.Input=lt;exports.List=it;exports.Modal=dt;exports.RadioGroup=et;exports.SwitchGroup=tt;exports.TBody=xt;exports.TD=bt;exports.TH=pt;exports.THead=ft;exports.TRow=mt;exports.Tab=wt;exports.TabList=vt;exports.TabPanel=jt;exports.TabPanels=kt;exports.Table=ut;exports.Tabs=yt;exports.Text=Tt;exports.ToastProvider=Ue;exports.useToast=We;
|
|
224
193
|
//# sourceMappingURL=index.cjs.js.map
|