rharuow-ds 1.0.5 → 1.0.7

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.
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react");function fe(r){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const t in r)if(t!=="default"){const a=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(o,t,a.get?a:{enumerable:!0,get:()=>r[t]})}}return o.default=r,Object.freeze(o)}const D=fe(g);var I={exports:{}},A={};/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ne=require("react"),q=require("react-hook-form");function ce(r){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const a in r)if(a!=="default"){const n=Object.getOwnPropertyDescriptor(r,a);Object.defineProperty(o,a,n.get?n:{enumerable:!0,get:()=>r[a]})}}return o.default=r,Object.freeze(o)}const A=ce(ne);var U={exports:{}},$={};/**
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 K;function de(){if(K)return A;K=1;var r=Symbol.for("react.transitional.element"),o=Symbol.for("react.fragment");function t(a,s,u){var d=null;if(u!==void 0&&(d=""+u),s.key!==void 0&&(d=""+s.key),"key"in s){u={};for(var m in s)m!=="key"&&(u[m]=s[m])}else u=s;return s=u.ref,{$$typeof:r,type:a,key:d,ref:s!==void 0?s:null,props:u}}return A.Fragment=o,A.jsx=t,A.jsxs=t,A}var S={};/**
9
+ */var ee;function ue(){if(ee)return $;ee=1;var r=Symbol.for("react.transitional.element"),o=Symbol.for("react.fragment");function a(n,l,u){var x=null;if(u!==void 0&&(x=""+u),l.key!==void 0&&(x=""+l.key),"key"in l){u={};for(var E in l)E!=="key"&&(u[E]=l[E])}else u=l;return l=u.ref,{$$typeof:r,type:n,key:x,ref:l!==void 0?l:null,props:u}}return $.Fragment=o,$.jsx=a,$.jsxs=a,$}var z={};/**
10
10
  * @license React
11
11
  * react-jsx-runtime.development.js
12
12
  *
@@ -14,9 +14,9 @@
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 ee;function be(){return ee||(ee=1,process.env.NODE_ENV!=="production"&&function(){function r(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===_?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case O:return"Fragment";case $:return"Profiler";case W:return"StrictMode";case N:return"Suspense";case C:return"SuspenseList";case Y:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case f:return"Portal";case P:return(e.displayName||"Context")+".Provider";case L:return(e._context.displayName||"Context")+".Consumer";case M:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case F:return n=e.displayName||null,n!==null?n:r(e.type)||"Memo";case b:n=e._payload,e=e._init;try{return r(e(n))}catch{}}return null}function o(e){return""+e}function t(e){try{o(e);var n=!1}catch{n=!0}if(n){n=console;var c=n.error,i=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return c.call(n,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",i),o(e)}}function a(e){if(e===O)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===b)return"<...>";try{var n=r(e);return n?"<"+n+">":"<...>"}catch{return"<...>"}}function s(){var e=U.A;return e===null?null:e.getOwner()}function u(){return Error("react-stack-top-frame")}function d(e){if(G.call(e,"key")){var n=Object.getOwnPropertyDescriptor(e,"key").get;if(n&&n.isReactWarning)return!1}return e.key!==void 0}function m(e,n){function c(){B||(B=!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)",n))}c.isReactWarning=!0,Object.defineProperty(e,"key",{get:c,configurable:!0})}function k(){var e=r(this.type);return X[e]||(X[e]=!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.")),e=this.props.ref,e!==void 0?e:null}function j(e,n,c,i,y,v,q,J){return c=v.ref,e={$$typeof:T,type:e,key:n,props:v,_owner:y},(c!==void 0?c:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:k}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:q}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:J}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function p(e,n,c,i,y,v,q,J){var l=n.children;if(l!==void 0)if(i)if(ie(l)){for(i=0;i<l.length;i++)E(l[i]);Object.freeze&&Object.freeze(l)}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 E(l);if(G.call(n,"key")){l=r(e);var h=Object.keys(n).filter(function(le){return le!=="key"});i=0<h.length?"{key: someKey, "+h.join(": ..., ")+": ...}":"{key: someKey}",Q[l+i]||(h=0<h.length?"{"+h.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var re;function ie(){return re||(re=1,process.env.NODE_ENV!=="production"&&function(){function r(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===h?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case i:return"Fragment";case L:return"Profiler";case P:return"StrictMode";case C:return"Suspense";case F:return"SuspenseList";case S:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case f:return"Portal";case O:return(e.displayName||"Context")+".Provider";case k:return(e._context.displayName||"Context")+".Consumer";case M:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Y:return t=e.displayName||null,t!==null?t:r(e.type)||"Memo";case p:t=e._payload,e=e._init;try{return r(e(t))}catch{}}return null}function o(e){return""+e}function a(e){try{o(e);var t=!1}catch{t=!0}if(t){t=console;var s=t.error,d=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return s.call(t,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",d),o(e)}}function n(e){if(e===i)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===p)return"<...>";try{var t=r(e);return t?"<"+t+">":"<...>"}catch{return"<...>"}}function l(){var e=I.A;return e===null?null:e.getOwner()}function u(){return Error("react-stack-top-frame")}function x(e){if(c.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function E(e,t){function s(){X||(X=!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)",t))}s.isReactWarning=!0,Object.defineProperty(e,"key",{get:s,configurable:!0})}function g(){var e=r(this.type);return H[e]||(H[e]=!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.")),e=this.props.ref,e!==void 0?e:null}function W(e,t,s,d,w,T,J,B){return s=T.ref,e={$$typeof:_,type:e,key:t,props:T,_owner:w},(s!==void 0?s:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:g}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:J}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:B}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function j(e,t,s,d,w,T,J,B){var b=t.children;if(b!==void 0)if(d)if(N(b)){for(d=0;d<b.length;d++)v(b[d]);Object.freeze&&Object.freeze(b)}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 v(b);if(c.call(t,"key")){b=r(e);var D=Object.keys(t).filter(function(le){return le!=="key"});d=0<D.length?"{key: someKey, "+D.join(": ..., ")+": ...}":"{key: someKey}",K[b+d]||(D=0<D.length?"{"+D.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} />`,i,l,h,l),Q[l+i]=!0)}if(l=null,c!==void 0&&(t(c),l=""+c),d(n)&&(t(n.key),l=""+n.key),"key"in n){c={};for(var V in n)V!=="key"&&(c[V]=n[V])}else c=n;return l&&m(c,typeof e=="function"?e.displayName||e.name||"Unknown":e),j(e,l,v,y,s(),c,q,J)}function E(e){typeof e=="object"&&e!==null&&e.$$typeof===T&&e._store&&(e._store.validated=1)}var x=g,T=Symbol.for("react.transitional.element"),f=Symbol.for("react.portal"),O=Symbol.for("react.fragment"),W=Symbol.for("react.strict_mode"),$=Symbol.for("react.profiler"),L=Symbol.for("react.consumer"),P=Symbol.for("react.context"),M=Symbol.for("react.forward_ref"),N=Symbol.for("react.suspense"),C=Symbol.for("react.suspense_list"),F=Symbol.for("react.memo"),b=Symbol.for("react.lazy"),Y=Symbol.for("react.activity"),_=Symbol.for("react.client.reference"),U=x.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,G=Object.prototype.hasOwnProperty,ie=Array.isArray,z=console.createTask?console.createTask:function(){return null};x={"react-stack-bottom-frame":function(e){return e()}};var B,X={},H=x["react-stack-bottom-frame"].bind(x,u)(),Z=z(a(u)),Q={};S.Fragment=O,S.jsx=function(e,n,c,i,y){var v=1e4>U.recentlyCreatedOwnerStacks++;return p(e,n,c,!1,i,y,v?Error("react-stack-top-frame"):H,v?z(a(e)):Z)},S.jsxs=function(e,n,c,i,y){var v=1e4>U.recentlyCreatedOwnerStacks++;return p(e,n,c,!0,i,y,v?Error("react-stack-top-frame"):H,v?z(a(e)):Z)}}()),S}var re;function me(){return re||(re=1,process.env.NODE_ENV==="production"?I.exports=de():I.exports=be()),I.exports}var R=me();function ae(r){var o,t,a="";if(typeof r=="string"||typeof r=="number")a+=r;else if(typeof r=="object")if(Array.isArray(r)){var s=r.length;for(o=0;o<s;o++)r[o]&&(t=ae(r[o]))&&(a&&(a+=" "),a+=t)}else for(t in r)r[t]&&(a&&(a+=" "),a+=t);return a}function ve(){for(var r,o,t=0,a="",s=arguments.length;t<s;t++)(r=arguments[t])&&(o=ae(r))&&(a&&(a+=" "),a+=o);return a}function w(...r){return ve(...r)}const pe=({children:r,variant:o="default",className:t="",...a})=>{const s="px-4 py-2 rounded font-medium transition",u={default:"bg-[var(--primary,#2563eb)] text-[var(--primary-text,#fff)] hover:bg-[var(--primary-hover,#1d4ed8)]",outline:"border border-[var(--primary,#2563eb)] text-[var(--primary,#2563eb)] bg-white hover:bg-[var(--primary-hover,#e0e7ff)]",secondary:"bg-[var(--secondary,#fbbf24)] text-[var(--secondary-text,#222)] hover:bg-[var(--secondary-hover,#f59e42)]"};return R.jsx("button",{className:w(s,u[o],t),...a,children:r})};var Ee=r=>r instanceof Date,oe=r=>r==null;const _e=r=>typeof r=="object";var ye=r=>!oe(r)&&!Array.isArray(r)&&_e(r)&&!Ee(r),Re=r=>/^\w*$/.test(r),te=r=>r===void 0,ge=r=>Array.isArray(r)?r.filter(Boolean):[],xe=r=>ge(r.replace(/["|']|\]/g,"").split(/\.|\[/)),ne=(r,o,t)=>{if(!o||!ye(r))return t;const a=(Re(o)?[o]:xe(o)).reduce((s,u)=>oe(s)?s:s[u],r);return te(a)||a===r?te(r[o])?t:r[o]:a};const se=g.createContext(null);se.displayName="HookFormContext";const ue=()=>g.useContext(se),Te=typeof window<"u"?D.useLayoutEffect:D.useEffect;var Oe=r=>typeof r=="string",he=(r,o,t,a,s)=>Oe(r)?ne(t,r,s):Array.isArray(r)?r.map(u=>ne(t,u)):t;function ke(r){const o=ue(),{control:t=o.control,name:a,defaultValue:s,disabled:u,exact:d}=r||{},m=g.useRef(s),[k,j]=g.useState(t._getWatch(a,m.current));return Te(()=>t._subscribe({name:a,formState:{values:!0},exact:d,callback:p=>!u&&j(he(a,t._names,p.values||t._formValues,!1,m.current))}),[a,t,u,d]),g.useEffect(()=>t._removeUnmounted()),k}const ce=D.forwardRef(({name:r,className:o,type:t="text",label:a,onFocus:s,onBlur:u,Icon:d,iconClassName:m,iconAction:k,containerClassName:j,...p},E)=>{var N,C,F;const[x,T]=D.useState(!1),f=ue(),O=f==null?void 0:f.control,W=f==null?void 0:f.register,$=O&&r?ke({control:O,name:r}):void 0,L=p.value??$??"",P=(F=(C=(N=f==null?void 0:f.formState)==null?void 0:N.errors)==null?void 0:C[r])==null?void 0:F.message,M=x||!!L;return R.jsxs("div",{className:w("relative",j),children:[R.jsx("input",{id:p.id||r,type:t,className:w("peer flex h-12 w-full border border-[var(--primary,#2563eb)] rounded-md bg-[var(--input-bg,#fff)] text-[var(--input-text,#222)] px-3 pt-6 pb-2 text-sm placeholder-transparent transition focus:outline-none focus:border-[var(--primary,#2563eb)] disabled:cursor-not-allowed disabled:opacity-50",o),onFocus:b=>{T(!0),s&&s(b)},...f&&r?(()=>{const b=W(r),Y=b.onBlur;return{...b,ref:_=>{typeof E=="function"?E(_):E&&(E.current=_),b.ref&&b.ref(_)},onBlur:_=>{T(!1),u&&u(_),Y&&Y(_)}}})():{ref:E,onBlur:b=>{T(!1),u&&u(b)}},...p}),a&&R.jsx("label",{htmlFor:p.id||r,className:w("absolute left-3 z-10 origin-[0] cursor-text select-none text-sm text-gray-400 transition-all duration-200",M?"top-0 scale-90 -translate-y-1 text-xs text-blue-400 p-1 rounded-full bg-white":"top-3 scale-100 translate-y-0.5"),children:a}),d&&R.jsx("div",{className:w("absolute top-1/2 right-3 -translate-y-1/2 text-white",m),onClick:k,children:R.jsx(d,{})}),P&&R.jsx("span",{className:"text-red-500 text-xs mt-1 block",children:P})]})});ce.displayName="Input";exports.Button=pe;exports.Input=ce;
22
+ <%s key={someKey} {...props} />`,d,b,D,b),K[b+d]=!0)}if(b=null,s!==void 0&&(a(s),b=""+s),x(t)&&(a(t.key),b=""+t.key),"key"in t){s={};for(var G in t)G!=="key"&&(s[G]=t[G])}else s=t;return b&&E(s,typeof e=="function"?e.displayName||e.name||"Unknown":e),W(e,b,T,w,l(),s,J,B)}function v(e){typeof e=="object"&&e!==null&&e.$$typeof===_&&e._store&&(e._store.validated=1)}var R=ne,_=Symbol.for("react.transitional.element"),f=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),P=Symbol.for("react.strict_mode"),L=Symbol.for("react.profiler"),k=Symbol.for("react.consumer"),O=Symbol.for("react.context"),M=Symbol.for("react.forward_ref"),C=Symbol.for("react.suspense"),F=Symbol.for("react.suspense_list"),Y=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),h=Symbol.for("react.client.reference"),I=R.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,c=Object.prototype.hasOwnProperty,N=Array.isArray,V=console.createTask?console.createTask:function(){return null};R={"react-stack-bottom-frame":function(e){return e()}};var X,H={},Z=R["react-stack-bottom-frame"].bind(R,u)(),Q=V(n(u)),K={};z.Fragment=i,z.jsx=function(e,t,s,d,w){var T=1e4>I.recentlyCreatedOwnerStacks++;return j(e,t,s,!1,d,w,T?Error("react-stack-top-frame"):Z,T?V(n(e)):Q)},z.jsxs=function(e,t,s,d,w){var T=1e4>I.recentlyCreatedOwnerStacks++;return j(e,t,s,!0,d,w,T?Error("react-stack-top-frame"):Z,T?V(n(e)):Q)}}()),z}var te;function fe(){return te||(te=1,process.env.NODE_ENV==="production"?U.exports=ue():U.exports=ie()),U.exports}var m=fe();function ae(r){var o,a,n="";if(typeof r=="string"||typeof r=="number")n+=r;else if(typeof r=="object")if(Array.isArray(r)){var l=r.length;for(o=0;o<l;o++)r[o]&&(a=ae(r[o]))&&(n&&(n+=" "),n+=a)}else for(a in r)r[a]&&(n&&(n+=" "),n+=a);return n}function de(){for(var r,o,a=0,n="",l=arguments.length;a<l;a++)(r=arguments[a])&&(o=ae(r))&&(n&&(n+=" "),n+=o);return n}function y(...r){return de(...r)}const be=({children:r,variant:o="default",className:a="",...n})=>{const l="px-4 py-2 rounded font-medium transition",u={default:"bg-[var(--primary,#2563eb)] text-[var(--primary-text,#fff)] hover:bg-[var(--primary-hover,#1d4ed8)]",outline:"border border-[var(--primary,#2563eb)] text-[var(--primary,#2563eb)] bg-white hover:bg-[var(--primary-hover,#e0e7ff)]",secondary:"bg-[var(--secondary,#fbbf24)] text-[var(--secondary-text,#222)] hover:bg-[var(--secondary-hover,#f59e42)]"};return m.jsx("button",{className:y(l,u[o],a),...n,children:r})},oe=A.forwardRef(({name:r,className:o,type:a="text",label:n,onFocus:l,onBlur:u,Icon:x,iconClassName:E,iconAction:g,containerClassName:W,...j},v)=>{var C,F,Y;const[R,_]=A.useState(!1),f=q.useFormContext(),i=f==null?void 0:f.control,P=f==null?void 0:f.register,L=i&&r?q.useWatch({control:i,name:r}):void 0,k=j.value??L??"",O=(Y=(F=(C=f==null?void 0:f.formState)==null?void 0:C.errors)==null?void 0:F[r])==null?void 0:Y.message,M=R||!!k;return m.jsxs("div",{className:y("relative",W),children:[m.jsx("input",{id:j.id||r,type:a,className:y("peer flex h-12 w-full border border-[var(--primary,#2563eb)] rounded-md bg-[var(--input-bg,#fff)] text-[var(--input-text,#222)] px-3 pt-6 pb-2 text-sm placeholder-transparent transition focus:outline-none focus:border-[var(--primary,#2563eb)] disabled:cursor-not-allowed disabled:opacity-50",o),onFocus:p=>{_(!0),l&&l(p)},...f&&r?(()=>{const p=P(r),S=p.onBlur;return{...p,ref:h=>{typeof v=="function"?v(h):v&&(v.current=h),p.ref&&p.ref(h)},onBlur:h=>{_(!1),u&&u(h),S&&S(h)}}})():{ref:v,onBlur:p=>{_(!1),u&&u(p)}},...j}),n&&m.jsx("label",{htmlFor:j.id||r,className:y("absolute left-3 z-10 origin-[0] cursor-text select-none text-sm text-gray-400 transition-all duration-200",M?"top-0 scale-90 -translate-y-1 text-xs text-blue-400 p-1 rounded-full bg-white":"top-3 scale-100 translate-y-0.5"),children:n}),x&&m.jsx("div",{className:y("absolute top-1/2 right-3 -translate-y-1/2 text-white",E),onClick:g,children:m.jsx(x,{})}),O&&m.jsx("span",{className:"text-red-500 text-xs mt-1 block",children:O})]})});oe.displayName="Input";const se=A.forwardRef(({name:r,label:o,options:a,className:n,containerClassName:l,isClearable:u,onFocus:x,onBlur:E,...g},W)=>{var p,S,h,I;const[j,v]=A.useState(!1),[R,_]=A.useState(!1),f=A.useRef(null),i=q.useFormContext(),P=i==null?void 0:i.control,L=P&&r?q.useWatch({control:P,name:r}):void 0,k=g.value??L??"",O=(h=(S=(p=i==null?void 0:i.formState)==null?void 0:p.errors)==null?void 0:S[r])==null?void 0:h.message,M=j||!!k;A.useEffect(()=>{const c=N=>{f.current&&!f.current.contains(N.target)&&(_(!1),v(!1))};return document.addEventListener("mousedown",c),()=>{document.removeEventListener("mousedown",c)}},[]);const C=()=>{_(c=>!c),v(!0)},F=c=>{v(!0),x&&x(c)},Y=c=>{E&&E(c)};return m.jsxs("div",{className:y("relative",l),ref:f,children:[m.jsxs("div",{id:g.id||r,tabIndex:0,role:"button","aria-haspopup":"listbox","aria-expanded":R,className:y("peer flex items-center h-12 w-full border border-[var(--primary,#2563eb)] rounded-md bg-[var(--input-bg,#fff)] text-[var(--input-text,#222)] px-3 py-3 text-sm transition focus:outline-none focus:border-[var(--primary,#2563eb)] disabled:cursor-not-allowed disabled:opacity-50 appearance-none cursor-pointer relative",n),onClick:C,onFocus:F,onBlur:Y,ref:W,children:[m.jsx("span",{className:y("block truncate",!k&&"text-gray-400"),children:(I=a.find(c=>c.value===k))==null?void 0:I.label}),u&&k&&m.jsx("button",{type:"button",tabIndex:-1,"aria-label":"Limpar seleção",className:"absolute right-2 top-1/2 -translate-y-1/2 text-gray-400 hover:text-red-500 bg-transparent p-1 rounded-full focus:outline-none",onClick:c=>{if(c.stopPropagation(),i&&r&&i.setValue(r,""),g.onChange){const N={target:{value:""}};g.onChange(N)}_(!1),v(!1)},children:"✕"})]}),o&&m.jsx("label",{htmlFor:g.id||r,className:y("absolute left-3 z-10 origin-[0] cursor-text select-none text-sm text-gray-400 transition-all duration-200",M?"top-0 scale-90 -translate-y-1 text-xs text-blue-400 p-1 rounded-full bg-white":"top-3 scale-100 translate-y-0.5"),children:o}),m.jsx("div",{className:y("absolute left-0 w-full mt-1 rounded-md shadow-lg bg-white z-20 transition-all duration-200 overflow-hidden",R?"border border-[var(--primary,#2563eb)] max-h-36 opacity-100 scale-100":"max-h-0 opacity-0 scale-95 pointer-events-none"),style:{maxHeight:R?"9.5rem":"0",overflowY:a.length>3?"auto":"hidden"},children:a.map(c=>m.jsx("div",{className:y("px-3 py-2 cursor-pointer hover:bg-blue-50 text-sm",k===c.value&&"bg-blue-100"),onMouseDown:()=>{if(i&&r&&i.setValue(r,c.value),g.onChange){const N={target:{value:c.value}};g.onChange(N)}v(!0)},children:c.label},c.value))}),O&&m.jsx("span",{className:"text-red-500 text-xs mt-1 block",children:O})]})});se.displayName="Select";exports.Button=be;exports.Input=oe;exports.Select=se;
@@ -1,6 +1,7 @@
1
- import * as D from "react";
2
- import k from "react";
3
- var I = { exports: {} }, w = {};
1
+ import * as A from "react";
2
+ import se from "react";
3
+ import { useFormContext as te, useWatch as ne } from "react-hook-form";
4
+ var U = { exports: {} }, M = {};
4
5
  /**
5
6
  * @license React
6
7
  * react-jsx-runtime.production.js
@@ -12,27 +13,27 @@ var I = { exports: {} }, w = {};
12
13
  */
13
14
  var K;
14
15
  function le() {
15
- if (K) return w;
16
+ if (K) return M;
16
17
  K = 1;
17
- var r = Symbol.for("react.transitional.element"), s = Symbol.for("react.fragment");
18
- function a(n, o, u) {
19
- var d = null;
20
- if (u !== void 0 && (d = "" + u), o.key !== void 0 && (d = "" + o.key), "key" in o) {
21
- u = {};
22
- for (var b in o)
23
- b !== "key" && (u[b] = o[b]);
24
- } else u = o;
25
- return o = u.ref, {
18
+ var r = Symbol.for("react.transitional.element"), i = Symbol.for("react.fragment");
19
+ function a(n, s, c) {
20
+ var x = null;
21
+ if (c !== void 0 && (x = "" + c), s.key !== void 0 && (x = "" + s.key), "key" in s) {
22
+ c = {};
23
+ for (var R in s)
24
+ R !== "key" && (c[R] = s[R]);
25
+ } else c = s;
26
+ return s = c.ref, {
26
27
  $$typeof: r,
27
28
  type: n,
28
- key: d,
29
- ref: o !== void 0 ? o : null,
30
- props: u
29
+ key: x,
30
+ ref: s !== void 0 ? s : null,
31
+ props: c
31
32
  };
32
33
  }
33
- return w.Fragment = s, w.jsx = a, w.jsxs = a, w;
34
+ return M.Fragment = i, M.jsx = a, M.jsxs = a, M;
34
35
  }
35
- var S = {};
36
+ var z = {};
36
37
  /**
37
38
  * @license React
38
39
  * react-jsx-runtime.development.js
@@ -43,25 +44,25 @@ var S = {};
43
44
  * LICENSE file in the root directory of this source tree.
44
45
  */
45
46
  var ee;
46
- function fe() {
47
+ function ie() {
47
48
  return ee || (ee = 1, process.env.NODE_ENV !== "production" && function() {
48
49
  function r(e) {
49
50
  if (e == null) return null;
50
51
  if (typeof e == "function")
51
- return e.$$typeof === _ ? null : e.displayName || e.name || null;
52
+ return e.$$typeof === g ? null : e.displayName || e.name || null;
52
53
  if (typeof e == "string") return e;
53
54
  switch (e) {
54
- case T:
55
+ case u:
55
56
  return "Fragment";
56
- case $:
57
- return "Profiler";
58
57
  case W:
58
+ return "Profiler";
59
+ case P:
59
60
  return "StrictMode";
60
- case N:
61
- return "Suspense";
62
61
  case C:
62
+ return "Suspense";
63
+ case F:
63
64
  return "SuspenseList";
64
- case Y:
65
+ case N:
65
66
  return "Activity";
66
67
  }
67
68
  if (typeof e == "object")
@@ -70,16 +71,16 @@ function fe() {
70
71
  ), e.$$typeof) {
71
72
  case f:
72
73
  return "Portal";
73
- case P:
74
+ case S:
74
75
  return (e.displayName || "Context") + ".Provider";
75
- case L:
76
+ case w:
76
77
  return (e._context.displayName || "Context") + ".Consumer";
77
- case U:
78
+ case $:
78
79
  var t = e.render;
79
80
  return e = e.displayName, e || (e = t.displayName || t.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
80
- case F:
81
+ case Y:
81
82
  return t = e.displayName || null, t !== null ? t : r(e.type) || "Memo";
82
- case m:
83
+ case p:
83
84
  t = e._payload, e = e._init;
84
85
  try {
85
86
  return r(e(t));
@@ -88,29 +89,29 @@ function fe() {
88
89
  }
89
90
  return null;
90
91
  }
91
- function s(e) {
92
+ function i(e) {
92
93
  return "" + e;
93
94
  }
94
95
  function a(e) {
95
96
  try {
96
- s(e);
97
+ i(e);
97
98
  var t = !1;
98
99
  } catch {
99
100
  t = !0;
100
101
  }
101
102
  if (t) {
102
103
  t = console;
103
- var c = t.error, i = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
104
- return c.call(
104
+ var o = t.error, d = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
105
+ return o.call(
105
106
  t,
106
107
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
107
- i
108
- ), s(e);
108
+ d
109
+ ), i(e);
109
110
  }
110
111
  }
111
112
  function n(e) {
112
- if (e === T) return "<>";
113
- if (typeof e == "object" && e !== null && e.$$typeof === m)
113
+ if (e === u) return "<>";
114
+ if (typeof e == "object" && e !== null && e.$$typeof === p)
114
115
  return "<...>";
115
116
  try {
116
117
  var t = r(e);
@@ -119,48 +120,48 @@ function fe() {
119
120
  return "<...>";
120
121
  }
121
122
  }
122
- function o() {
123
- var e = M.A;
123
+ function s() {
124
+ var e = I.A;
124
125
  return e === null ? null : e.getOwner();
125
126
  }
126
- function u() {
127
+ function c() {
127
128
  return Error("react-stack-top-frame");
128
129
  }
129
- function d(e) {
130
- if (G.call(e, "key")) {
130
+ function x(e) {
131
+ if (l.call(e, "key")) {
131
132
  var t = Object.getOwnPropertyDescriptor(e, "key").get;
132
133
  if (t && t.isReactWarning) return !1;
133
134
  }
134
135
  return e.key !== void 0;
135
136
  }
136
- function b(e, t) {
137
- function c() {
137
+ function R(e, t) {
138
+ function o() {
138
139
  B || (B = !0, console.error(
139
140
  "%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)",
140
141
  t
141
142
  ));
142
143
  }
143
- c.isReactWarning = !0, Object.defineProperty(e, "key", {
144
- get: c,
144
+ o.isReactWarning = !0, Object.defineProperty(e, "key", {
145
+ get: o,
145
146
  configurable: !0
146
147
  });
147
148
  }
148
- function A() {
149
+ function h() {
149
150
  var e = r(this.type);
150
151
  return X[e] || (X[e] = !0, console.error(
151
152
  "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."
152
153
  )), e = this.props.ref, e !== void 0 ? e : null;
153
154
  }
154
- function O(e, t, c, i, x, v, J, V) {
155
- return c = v.ref, e = {
156
- $$typeof: g,
155
+ function L(e, t, o, d, j, T, J, q) {
156
+ return o = T.ref, e = {
157
+ $$typeof: _,
157
158
  type: e,
158
159
  key: t,
159
- props: v,
160
- _owner: x
161
- }, (c !== void 0 ? c : null) !== null ? Object.defineProperty(e, "ref", {
160
+ props: T,
161
+ _owner: j
162
+ }, (o !== void 0 ? o : null) !== null ? Object.defineProperty(e, "ref", {
162
163
  enumerable: !1,
163
- get: A
164
+ get: h
164
165
  }) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
165
166
  configurable: !1,
166
167
  enumerable: !1,
@@ -180,63 +181,63 @@ function fe() {
180
181
  configurable: !1,
181
182
  enumerable: !1,
182
183
  writable: !0,
183
- value: V
184
+ value: q
184
185
  }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
185
186
  }
186
- function p(e, t, c, i, x, v, J, V) {
187
- var l = t.children;
188
- if (l !== void 0)
189
- if (i)
190
- if (ce(l)) {
191
- for (i = 0; i < l.length; i++)
192
- E(l[i]);
193
- Object.freeze && Object.freeze(l);
187
+ function k(e, t, o, d, j, T, J, q) {
188
+ var b = t.children;
189
+ if (b !== void 0)
190
+ if (d)
191
+ if (O(b)) {
192
+ for (d = 0; d < b.length; d++)
193
+ v(b[d]);
194
+ Object.freeze && Object.freeze(b);
194
195
  } else
195
196
  console.error(
196
197
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
197
198
  );
198
- else E(l);
199
- if (G.call(t, "key")) {
200
- l = r(e);
201
- var h = Object.keys(t).filter(function(ie) {
202
- return ie !== "key";
199
+ else v(b);
200
+ if (l.call(t, "key")) {
201
+ b = r(e);
202
+ var D = Object.keys(t).filter(function(oe) {
203
+ return oe !== "key";
203
204
  });
204
- i = 0 < h.length ? "{key: someKey, " + h.join(": ..., ") + ": ...}" : "{key: someKey}", Q[l + i] || (h = 0 < h.length ? "{" + h.join(": ..., ") + ": ...}" : "{}", console.error(
205
+ d = 0 < D.length ? "{key: someKey, " + D.join(": ..., ") + ": ...}" : "{key: someKey}", Q[b + d] || (D = 0 < D.length ? "{" + D.join(": ..., ") + ": ...}" : "{}", console.error(
205
206
  `A props object containing a "key" prop is being spread into JSX:
206
207
  let props = %s;
207
208
  <%s {...props} />
208
209
  React keys must be passed directly to JSX without using spread:
209
210
  let props = %s;
210
211
  <%s key={someKey} {...props} />`,
211
- i,
212
- l,
213
- h,
214
- l
215
- ), Q[l + i] = !0);
212
+ d,
213
+ b,
214
+ D,
215
+ b
216
+ ), Q[b + d] = !0);
216
217
  }
217
- if (l = null, c !== void 0 && (a(c), l = "" + c), d(t) && (a(t.key), l = "" + t.key), "key" in t) {
218
- c = {};
219
- for (var q in t)
220
- q !== "key" && (c[q] = t[q]);
221
- } else c = t;
222
- return l && b(
223
- c,
218
+ if (b = null, o !== void 0 && (a(o), b = "" + o), x(t) && (a(t.key), b = "" + t.key), "key" in t) {
219
+ o = {};
220
+ for (var G in t)
221
+ G !== "key" && (o[G] = t[G]);
222
+ } else o = t;
223
+ return b && R(
224
+ o,
224
225
  typeof e == "function" ? e.displayName || e.name || "Unknown" : e
225
- ), O(
226
+ ), L(
226
227
  e,
227
- l,
228
- v,
229
- x,
230
- o(),
231
- c,
228
+ b,
229
+ T,
230
+ j,
231
+ s(),
232
+ o,
232
233
  J,
233
- V
234
+ q
234
235
  );
235
236
  }
236
- function E(e) {
237
- typeof e == "object" && e !== null && e.$$typeof === g && e._store && (e._store.validated = 1);
237
+ function v(e) {
238
+ typeof e == "object" && e !== null && e.$$typeof === _ && e._store && (e._store.validated = 1);
238
239
  }
239
- var y = k, g = Symbol.for("react.transitional.element"), f = Symbol.for("react.portal"), T = Symbol.for("react.fragment"), W = Symbol.for("react.strict_mode"), $ = Symbol.for("react.profiler"), L = Symbol.for("react.consumer"), P = Symbol.for("react.context"), U = Symbol.for("react.forward_ref"), N = Symbol.for("react.suspense"), C = Symbol.for("react.suspense_list"), F = Symbol.for("react.memo"), m = Symbol.for("react.lazy"), Y = Symbol.for("react.activity"), _ = Symbol.for("react.client.reference"), M = y.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, G = Object.prototype.hasOwnProperty, ce = Array.isArray, z = console.createTask ? console.createTask : function() {
240
+ var y = se, _ = Symbol.for("react.transitional.element"), f = Symbol.for("react.portal"), u = Symbol.for("react.fragment"), P = Symbol.for("react.strict_mode"), W = Symbol.for("react.profiler"), w = Symbol.for("react.consumer"), S = Symbol.for("react.context"), $ = Symbol.for("react.forward_ref"), C = Symbol.for("react.suspense"), F = Symbol.for("react.suspense_list"), Y = Symbol.for("react.memo"), p = Symbol.for("react.lazy"), N = Symbol.for("react.activity"), g = Symbol.for("react.client.reference"), I = y.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, l = Object.prototype.hasOwnProperty, O = Array.isArray, V = console.createTask ? console.createTask : function() {
240
241
  return null;
241
242
  };
242
243
  y = {
@@ -246,169 +247,266 @@ React keys must be passed directly to JSX without using spread:
246
247
  };
247
248
  var B, X = {}, H = y["react-stack-bottom-frame"].bind(
248
249
  y,
249
- u
250
- )(), Z = z(n(u)), Q = {};
251
- S.Fragment = T, S.jsx = function(e, t, c, i, x) {
252
- var v = 1e4 > M.recentlyCreatedOwnerStacks++;
253
- return p(
250
+ c
251
+ )(), Z = V(n(c)), Q = {};
252
+ z.Fragment = u, z.jsx = function(e, t, o, d, j) {
253
+ var T = 1e4 > I.recentlyCreatedOwnerStacks++;
254
+ return k(
254
255
  e,
255
256
  t,
256
- c,
257
+ o,
257
258
  !1,
258
- i,
259
- x,
260
- v ? Error("react-stack-top-frame") : H,
261
- v ? z(n(e)) : Z
259
+ d,
260
+ j,
261
+ T ? Error("react-stack-top-frame") : H,
262
+ T ? V(n(e)) : Z
262
263
  );
263
- }, S.jsxs = function(e, t, c, i, x) {
264
- var v = 1e4 > M.recentlyCreatedOwnerStacks++;
265
- return p(
264
+ }, z.jsxs = function(e, t, o, d, j) {
265
+ var T = 1e4 > I.recentlyCreatedOwnerStacks++;
266
+ return k(
266
267
  e,
267
268
  t,
268
- c,
269
+ o,
269
270
  !0,
270
- i,
271
- x,
272
- v ? Error("react-stack-top-frame") : H,
273
- v ? z(n(e)) : Z
271
+ d,
272
+ j,
273
+ T ? Error("react-stack-top-frame") : H,
274
+ T ? V(n(e)) : Z
274
275
  );
275
276
  };
276
- }()), S;
277
+ }()), z;
277
278
  }
278
279
  var re;
279
- function de() {
280
- return re || (re = 1, process.env.NODE_ENV === "production" ? I.exports = le() : I.exports = fe()), I.exports;
280
+ function ce() {
281
+ return re || (re = 1, process.env.NODE_ENV === "production" ? U.exports = le() : U.exports = ie()), U.exports;
281
282
  }
282
- var R = de();
283
+ var m = ce();
283
284
  function ae(r) {
284
- var s, a, n = "";
285
+ var i, a, n = "";
285
286
  if (typeof r == "string" || typeof r == "number") n += r;
286
287
  else if (typeof r == "object") if (Array.isArray(r)) {
287
- var o = r.length;
288
- for (s = 0; s < o; s++) r[s] && (a = ae(r[s])) && (n && (n += " "), n += a);
288
+ var s = r.length;
289
+ for (i = 0; i < s; i++) r[i] && (a = ae(r[i])) && (n && (n += " "), n += a);
289
290
  } else for (a in r) r[a] && (n && (n += " "), n += a);
290
291
  return n;
291
292
  }
292
- function me() {
293
- for (var r, s, a = 0, n = "", o = arguments.length; a < o; a++) (r = arguments[a]) && (s = ae(r)) && (n && (n += " "), n += s);
293
+ function ue() {
294
+ for (var r, i, a = 0, n = "", s = arguments.length; a < s; a++) (r = arguments[a]) && (i = ae(r)) && (n && (n += " "), n += i);
294
295
  return n;
295
296
  }
296
- function j(...r) {
297
- return me(...r);
297
+ function E(...r) {
298
+ return ue(...r);
298
299
  }
299
- const Ae = ({
300
+ const ve = ({
300
301
  children: r,
301
- variant: s = "default",
302
+ variant: i = "default",
302
303
  className: a = "",
303
304
  ...n
304
305
  }) => {
305
- const o = "px-4 py-2 rounded font-medium transition", u = {
306
+ const s = "px-4 py-2 rounded font-medium transition", c = {
306
307
  default: "bg-[var(--primary,#2563eb)] text-[var(--primary-text,#fff)] hover:bg-[var(--primary-hover,#1d4ed8)]",
307
308
  outline: "border border-[var(--primary,#2563eb)] text-[var(--primary,#2563eb)] bg-white hover:bg-[var(--primary-hover,#e0e7ff)]",
308
309
  secondary: "bg-[var(--secondary,#fbbf24)] text-[var(--secondary-text,#222)] hover:bg-[var(--secondary-hover,#f59e42)]"
309
310
  };
310
- return /* @__PURE__ */ R.jsx("button", { className: j(o, u[s], a), ...n, children: r });
311
- };
312
- var be = (r) => r instanceof Date, oe = (r) => r == null;
313
- const ve = (r) => typeof r == "object";
314
- var pe = (r) => !oe(r) && !Array.isArray(r) && ve(r) && !be(r), Ee = (r) => /^\w*$/.test(r), te = (r) => r === void 0, _e = (r) => Array.isArray(r) ? r.filter(Boolean) : [], xe = (r) => _e(r.replace(/["|']|\]/g, "").split(/\.|\[/)), ne = (r, s, a) => {
315
- if (!s || !pe(r))
316
- return a;
317
- const n = (Ee(s) ? [s] : xe(s)).reduce((o, u) => oe(o) ? o : o[u], r);
318
- return te(n) || n === r ? te(r[s]) ? a : r[s] : n;
319
- };
320
- const se = k.createContext(null);
321
- se.displayName = "HookFormContext";
322
- const ue = () => k.useContext(se), Re = typeof window < "u" ? D.useLayoutEffect : D.useEffect;
323
- var ye = (r) => typeof r == "string", ge = (r, s, a, n, o) => ye(r) ? ne(a, r, o) : Array.isArray(r) ? r.map((u) => ne(a, u)) : a;
324
- function Te(r) {
325
- const s = ue(), { control: a = s.control, name: n, defaultValue: o, disabled: u, exact: d } = r || {}, b = k.useRef(o), [A, O] = k.useState(a._getWatch(n, b.current));
326
- return Re(() => a._subscribe({
327
- name: n,
328
- formState: {
329
- values: !0
330
- },
331
- exact: d,
332
- callback: (p) => !u && O(ge(n, a._names, p.values || a._formValues, !1, b.current))
333
- }), [n, a, u, d]), k.useEffect(() => a._removeUnmounted()), A;
334
- }
335
- const he = D.forwardRef(
311
+ return /* @__PURE__ */ m.jsx("button", { className: E(s, c[i], a), ...n, children: r });
312
+ }, fe = A.forwardRef(
336
313
  ({
337
314
  name: r,
338
- className: s,
315
+ className: i,
339
316
  type: a = "text",
340
317
  label: n,
341
- onFocus: o,
342
- onBlur: u,
343
- Icon: d,
344
- iconClassName: b,
345
- iconAction: A,
346
- containerClassName: O,
347
- ...p
348
- }, E) => {
349
- var N, C, F;
350
- const [y, g] = D.useState(!1), f = ue(), T = f == null ? void 0 : f.control, W = f == null ? void 0 : f.register, $ = T && r ? Te({ control: T, name: r }) : void 0, L = p.value ?? $ ?? "", P = (F = (C = (N = f == null ? void 0 : f.formState) == null ? void 0 : N.errors) == null ? void 0 : C[r]) == null ? void 0 : F.message, U = y || !!L;
351
- return /* @__PURE__ */ R.jsxs("div", { className: j("relative", O), children: [
352
- /* @__PURE__ */ R.jsx(
318
+ onFocus: s,
319
+ onBlur: c,
320
+ Icon: x,
321
+ iconClassName: R,
322
+ iconAction: h,
323
+ containerClassName: L,
324
+ ...k
325
+ }, v) => {
326
+ var C, F, Y;
327
+ const [y, _] = A.useState(!1), f = te(), u = f == null ? void 0 : f.control, P = f == null ? void 0 : f.register, W = u && r ? ne({ control: u, name: r }) : void 0, w = k.value ?? W ?? "", S = (Y = (F = (C = f == null ? void 0 : f.formState) == null ? void 0 : C.errors) == null ? void 0 : F[r]) == null ? void 0 : Y.message, $ = y || !!w;
328
+ return /* @__PURE__ */ m.jsxs("div", { className: E("relative", L), children: [
329
+ /* @__PURE__ */ m.jsx(
353
330
  "input",
354
331
  {
355
- id: p.id || r,
332
+ id: k.id || r,
356
333
  type: a,
357
- className: j(
334
+ className: E(
358
335
  "peer flex h-12 w-full border border-[var(--primary,#2563eb)] rounded-md bg-[var(--input-bg,#fff)] text-[var(--input-text,#222)] px-3 pt-6 pb-2 text-sm placeholder-transparent transition focus:outline-none focus:border-[var(--primary,#2563eb)] disabled:cursor-not-allowed disabled:opacity-50",
359
- s
336
+ i
360
337
  ),
361
- onFocus: (m) => {
362
- g(!0), o && o(m);
338
+ onFocus: (p) => {
339
+ _(!0), s && s(p);
363
340
  },
364
341
  ...f && r ? (() => {
365
- const m = W(r), Y = m.onBlur;
342
+ const p = P(r), N = p.onBlur;
366
343
  return {
367
- ...m,
368
- ref: (_) => {
369
- typeof E == "function" ? E(_) : E && (E.current = _), m.ref && m.ref(_);
344
+ ...p,
345
+ ref: (g) => {
346
+ typeof v == "function" ? v(g) : v && (v.current = g), p.ref && p.ref(g);
370
347
  },
371
- onBlur: (_) => {
372
- g(!1), u && u(_), Y && Y(_);
348
+ onBlur: (g) => {
349
+ _(!1), c && c(g), N && N(g);
373
350
  }
374
351
  };
375
352
  })() : {
376
- ref: E,
377
- onBlur: (m) => {
378
- g(!1), u && u(m);
353
+ ref: v,
354
+ onBlur: (p) => {
355
+ _(!1), c && c(p);
379
356
  }
380
357
  },
381
- ...p
358
+ ...k
382
359
  }
383
360
  ),
384
- n && /* @__PURE__ */ R.jsx(
361
+ n && /* @__PURE__ */ m.jsx(
385
362
  "label",
386
363
  {
387
- htmlFor: p.id || r,
388
- className: j(
364
+ htmlFor: k.id || r,
365
+ className: E(
389
366
  "absolute left-3 z-10 origin-[0] cursor-text select-none text-sm text-gray-400 transition-all duration-200",
390
- U ? "top-0 scale-90 -translate-y-1 text-xs text-blue-400 p-1 rounded-full bg-white" : "top-3 scale-100 translate-y-0.5"
367
+ $ ? "top-0 scale-90 -translate-y-1 text-xs text-blue-400 p-1 rounded-full bg-white" : "top-3 scale-100 translate-y-0.5"
391
368
  ),
392
369
  children: n
393
370
  }
394
371
  ),
395
- d && /* @__PURE__ */ R.jsx(
372
+ x && /* @__PURE__ */ m.jsx(
396
373
  "div",
397
374
  {
398
- className: j(
375
+ className: E(
399
376
  "absolute top-1/2 right-3 -translate-y-1/2 text-white",
400
- b
377
+ R
378
+ ),
379
+ onClick: h,
380
+ children: /* @__PURE__ */ m.jsx(x, {})
381
+ }
382
+ ),
383
+ S && /* @__PURE__ */ m.jsx("span", { className: "text-red-500 text-xs mt-1 block", children: S })
384
+ ] });
385
+ }
386
+ );
387
+ fe.displayName = "Input";
388
+ const de = A.forwardRef(
389
+ ({
390
+ name: r,
391
+ label: i,
392
+ options: a,
393
+ className: n,
394
+ containerClassName: s,
395
+ isClearable: c,
396
+ onFocus: x,
397
+ onBlur: R,
398
+ ...h
399
+ }, L) => {
400
+ var p, N, g, I;
401
+ const [k, v] = A.useState(!1), [y, _] = A.useState(!1), f = A.useRef(null), u = te(), P = u == null ? void 0 : u.control, W = P && r ? ne({ control: P, name: r }) : void 0, w = h.value ?? W ?? "", S = (g = (N = (p = u == null ? void 0 : u.formState) == null ? void 0 : p.errors) == null ? void 0 : N[r]) == null ? void 0 : g.message, $ = k || !!w;
402
+ A.useEffect(() => {
403
+ const l = (O) => {
404
+ f.current && !f.current.contains(O.target) && (_(!1), v(!1));
405
+ };
406
+ return document.addEventListener("mousedown", l), () => {
407
+ document.removeEventListener("mousedown", l);
408
+ };
409
+ }, []);
410
+ const C = () => {
411
+ _((l) => !l), v(!0);
412
+ }, F = (l) => {
413
+ v(!0), x && x(l);
414
+ }, Y = (l) => {
415
+ R && R(l);
416
+ };
417
+ return /* @__PURE__ */ m.jsxs("div", { className: E("relative", s), ref: f, children: [
418
+ /* @__PURE__ */ m.jsxs(
419
+ "div",
420
+ {
421
+ id: h.id || r,
422
+ tabIndex: 0,
423
+ role: "button",
424
+ "aria-haspopup": "listbox",
425
+ "aria-expanded": y,
426
+ className: E(
427
+ "peer flex items-center h-12 w-full border border-[var(--primary,#2563eb)] rounded-md bg-[var(--input-bg,#fff)] text-[var(--input-text,#222)] px-3 py-3 text-sm transition focus:outline-none focus:border-[var(--primary,#2563eb)] disabled:cursor-not-allowed disabled:opacity-50 appearance-none cursor-pointer relative",
428
+ n
401
429
  ),
402
- onClick: A,
403
- children: /* @__PURE__ */ R.jsx(d, {})
430
+ onClick: C,
431
+ onFocus: F,
432
+ onBlur: Y,
433
+ ref: L,
434
+ children: [
435
+ /* @__PURE__ */ m.jsx("span", { className: E("block truncate", !w && "text-gray-400"), children: (I = a.find((l) => l.value === w)) == null ? void 0 : I.label }),
436
+ c && w && /* @__PURE__ */ m.jsx(
437
+ "button",
438
+ {
439
+ type: "button",
440
+ tabIndex: -1,
441
+ "aria-label": "Limpar seleção",
442
+ className: "absolute right-2 top-1/2 -translate-y-1/2 text-gray-400 hover:text-red-500 bg-transparent p-1 rounded-full focus:outline-none",
443
+ onClick: (l) => {
444
+ if (l.stopPropagation(), u && r && u.setValue(r, ""), h.onChange) {
445
+ const O = {
446
+ target: { value: "" }
447
+ };
448
+ h.onChange(O);
449
+ }
450
+ _(!1), v(!1);
451
+ },
452
+ children: "✕"
453
+ }
454
+ )
455
+ ]
456
+ }
457
+ ),
458
+ i && /* @__PURE__ */ m.jsx(
459
+ "label",
460
+ {
461
+ htmlFor: h.id || r,
462
+ className: E(
463
+ "absolute left-3 z-10 origin-[0] cursor-text select-none text-sm text-gray-400 transition-all duration-200",
464
+ $ ? "top-0 scale-90 -translate-y-1 text-xs text-blue-400 p-1 rounded-full bg-white" : "top-3 scale-100 translate-y-0.5"
465
+ ),
466
+ children: i
467
+ }
468
+ ),
469
+ /* @__PURE__ */ m.jsx(
470
+ "div",
471
+ {
472
+ className: E(
473
+ "absolute left-0 w-full mt-1 rounded-md shadow-lg bg-white z-20 transition-all duration-200 overflow-hidden",
474
+ y ? "border border-[var(--primary,#2563eb)] max-h-36 opacity-100 scale-100" : "max-h-0 opacity-0 scale-95 pointer-events-none"
475
+ ),
476
+ style: {
477
+ maxHeight: y ? "9.5rem" : "0",
478
+ // 3 options * 2.5rem + padding
479
+ overflowY: a.length > 3 ? "auto" : "hidden"
480
+ },
481
+ children: a.map((l) => /* @__PURE__ */ m.jsx(
482
+ "div",
483
+ {
484
+ className: E(
485
+ "px-3 py-2 cursor-pointer hover:bg-blue-50 text-sm",
486
+ w === l.value && "bg-blue-100"
487
+ ),
488
+ onMouseDown: () => {
489
+ if (u && r && u.setValue(r, l.value), h.onChange) {
490
+ const O = {
491
+ target: { value: l.value }
492
+ };
493
+ h.onChange(O);
494
+ }
495
+ v(!0);
496
+ },
497
+ children: l.label
498
+ },
499
+ l.value
500
+ ))
404
501
  }
405
502
  ),
406
- P && /* @__PURE__ */ R.jsx("span", { className: "text-red-500 text-xs mt-1 block", children: P })
503
+ S && /* @__PURE__ */ m.jsx("span", { className: "text-red-500 text-xs mt-1 block", children: S })
407
504
  ] });
408
505
  }
409
506
  );
410
- he.displayName = "Input";
507
+ de.displayName = "Select";
411
508
  export {
412
- Ae as Button,
413
- he as Input
509
+ ve as Button,
510
+ fe as Input,
511
+ de as Select
414
512
  };
package/dist/styles.css CHANGED
@@ -1 +1 @@
1
- *,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.absolute{position:absolute}.relative{position:relative}.left-3{left:.75rem}.right-3{right:.75rem}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.z-10{z-index:10}.mt-1{margin-top:.25rem}.block{display:block}.flex{display:flex}.h-12{height:3rem}.w-full{width:100%}.origin-\[0\]{transform-origin:0}.-translate-y-1{--tw-translate-y:-0.25rem}.-translate-y-1,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-y-0\.5{--tw-translate-y:0.125rem}.scale-100,.translate-y-0\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-90{--tw-scale-x:.9;--tw-scale-y:.9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-text{cursor:text}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-\[var\(--primary\2c \#2563eb\)\]{border-color:var(--primary,#2563eb)}.bg-\[var\(--input-bg\2c \#fff\)\]{background-color:var(--input-bg,#fff)}.bg-\[var\(--primary\2c \#2563eb\)\]{background-color:var(--primary,#2563eb)}.bg-\[var\(--secondary\2c \#fbbf24\)\]{background-color:var(--secondary,#fbbf24)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.p-1{padding:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem}.pb-2,.py-2{padding-bottom:.5rem}.pt-6{padding-top:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.text-\[var\(--input-text\2c \#222\)\]{color:var(--input-text,#222)}.text-\[var\(--primary\2c \#2563eb\)\]{color:var(--primary,#2563eb)}.text-\[var\(--primary-text\2c \#fff\)\]{color:var(--primary-text,#fff)}.text-\[var\(--secondary-text\2c \#222\)\]{color:var(--secondary-text,#222)}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.placeholder-transparent::-moz-placeholder{color:transparent}.placeholder-transparent::placeholder{color:transparent}.outline{outline-style:solid}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.hover\:bg-\[var\(--primary-hover\2c \#1d4ed8\)\]:hover{background-color:var(--primary-hover,#1d4ed8)}.hover\:bg-\[var\(--primary-hover\2c \#e0e7ff\)\]:hover{background-color:var(--primary-hover,#e0e7ff)}.hover\:bg-\[var\(--secondary-hover\2c \#f59e42\)\]:hover{background-color:var(--secondary-hover,#f59e42)}.focus\:border-\[var\(--primary\2c \#2563eb\)\]:focus{border-color:var(--primary,#2563eb)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}
1
+ *,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.left-0{left:0}.left-3{left:.75rem}.right-2{right:.5rem}.right-3{right:.75rem}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.z-10{z-index:10}.z-20{z-index:20}.mt-1{margin-top:.25rem}.block{display:block}.flex{display:flex}.hidden{display:none}.h-12{height:3rem}.max-h-0{max-height:0}.max-h-36{max-height:9rem}.w-full{width:100%}.origin-\[0\]{transform-origin:0}.-translate-y-1{--tw-translate-y:-0.25rem}.-translate-y-1,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-y-0\.5{--tw-translate-y:0.125rem}.scale-100,.translate-y-0\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-90{--tw-scale-x:.9;--tw-scale-y:.9}.scale-90,.scale-95{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.items-center{align-items:center}.overflow-hidden,.truncate{overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-\[var\(--primary\2c \#2563eb\)\]{border-color:var(--primary,#2563eb)}.bg-\[var\(--input-bg\2c \#fff\)\]{background-color:var(--input-bg,#fff)}.bg-\[var\(--primary\2c \#2563eb\)\]{background-color:var(--primary,#2563eb)}.bg-\[var\(--secondary\2c \#fbbf24\)\]{background-color:var(--secondary,#fbbf24)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.p-1{padding:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pb-2{padding-bottom:.5rem}.pt-6{padding-top:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.text-\[var\(--input-text\2c \#222\)\]{color:var(--input-text,#222)}.text-\[var\(--primary\2c \#2563eb\)\]{color:var(--primary,#2563eb)}.text-\[var\(--primary-text\2c \#fff\)\]{color:var(--primary-text,#fff)}.text-\[var\(--secondary-text\2c \#222\)\]{color:var(--secondary-text,#222)}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.placeholder-transparent::-moz-placeholder{color:transparent}.placeholder-transparent::placeholder{color:transparent}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.hover\:bg-\[var\(--primary-hover\2c \#1d4ed8\)\]:hover{background-color:var(--primary-hover,#1d4ed8)}.hover\:bg-\[var\(--primary-hover\2c \#e0e7ff\)\]:hover{background-color:var(--primary-hover,#e0e7ff)}.hover\:bg-\[var\(--secondary-hover\2c \#f59e42\)\]:hover{background-color:var(--secondary-hover,#f59e42)}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.focus\:border-\[var\(--primary\2c \#2563eb\)\]:focus{border-color:var(--primary,#2563eb)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}
@@ -0,0 +1,14 @@
1
+ import * as React from "react";
2
+ export interface SelectOption {
3
+ label: string;
4
+ value: string;
5
+ }
6
+ export interface SelectProps extends React.SelectHTMLAttributes<HTMLSelectElement> {
7
+ name: string;
8
+ label?: string;
9
+ options: SelectOption[];
10
+ containerClassName?: string;
11
+ isClearable?: boolean;
12
+ }
13
+ declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLSelectElement>>;
14
+ export { Select };
@@ -1,2 +1,3 @@
1
1
  export * from "./Button";
2
2
  export * from "./Input";
3
+ export * from "./Select";
@@ -0,0 +1,17 @@
1
+ import { StoryFn } from "@storybook/react";
2
+ import { SelectProps } from "../components/Select";
3
+ declare const _default: {
4
+ title: string;
5
+ component: import("react").ForwardRefExoticComponent<SelectProps & import("react").RefAttributes<HTMLSelectElement>>;
6
+ argTypes: {
7
+ isClearable: {
8
+ control: string;
9
+ description: string;
10
+ defaultValue: boolean;
11
+ };
12
+ };
13
+ };
14
+ export default _default;
15
+ interface DefaultStoryProps extends SelectProps {
16
+ }
17
+ export declare const Default: StoryFn<DefaultStoryProps>;
package/package.json CHANGED
@@ -1,24 +1,26 @@
1
1
  {
2
2
  "name": "rharuow-ds",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "main": "dist/rharuow-ds.cjs.js",
5
5
  "module": "dist/rharuow-ds.es.js",
6
6
  "types": "dist/types/src/components/index.d.ts",
7
7
  "exports": {
8
8
  ".": {
9
+ "types": "./dist/types/src/components/index.d.ts",
9
10
  "import": "./dist/rharuow-ds.es.js",
10
- "require": "./dist/rharuow-ds.cjs.js",
11
- "types": "./dist/types/src/components/index.d.ts"
11
+ "require": "./dist/rharuow-ds.cjs.js"
12
12
  },
13
13
  "./dist/styles.css": "./dist/styles.css"
14
14
  },
15
15
  "scripts": {
16
16
  "test": "echo \"Error: no test specified\" && exit 1",
17
17
  "build:css": "npx tailwindcss -i ./src/styles/ds.css -o ./dist/styles.css --minify",
18
+ "build:css:watch": "npx tailwindcss -i ./src/styles/ds.css -o ./dist/styles.css --watch",
18
19
  "build": "vite build && tsc --emitDeclarationOnly --declaration --declarationDir dist/types && npm run build:css",
19
- "storybook": "storybook dev -p 6006",
20
+ "storybook": "npm run build:css && storybook dev -p 6006",
21
+ "storybook:dev": "npm run build:css && concurrently \"npm run build:css:watch\" \"storybook dev -p 6006\"",
20
22
  "deploy-storybook": "npx gh-pages -d storybook-static",
21
- "build-storybook": "storybook build"
23
+ "build-storybook": "npm run build:css && storybook build"
22
24
  },
23
25
  "keywords": [],
24
26
  "author": "",
@@ -38,6 +40,7 @@
38
40
  "@types/react": "^19.1.8",
39
41
  "@types/react-dom": "^19.1.6",
40
42
  "@vitejs/plugin-react": "^4.6.0",
43
+ "concurrently": "^9.2.0",
41
44
  "gh-pages": "^6.3.0",
42
45
  "storybook": "^9.0.14",
43
46
  "tailwindcss": "^3.4.3",