@s_mart/form 2.5.0 → 2.5.1

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.d.ts CHANGED
@@ -26,7 +26,7 @@ type SelectProps = SelectProps$1 & ControllerSelect & {
26
26
  options: SelectOption[];
27
27
  };
28
28
 
29
- declare const Select: ({ name, rules, defaultValue, shouldUnregister, label, required, options, ...rest }: SelectProps) => JSX.Element;
29
+ declare const Select: ({ name, rules, defaultValue, shouldUnregister, label, required, options, placeholder, ...rest }: SelectProps) => JSX.Element;
30
30
 
31
31
  type ControllerSearchable = Omit<ControllerProps, 'render' | 'control'>;
32
32
  type SearchableOption = {
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var qe=Object.create;var z=Object.defineProperty,Me=Object.defineProperties,ve=Object.getOwnPropertyDescriptor,Ue=Object.getOwnPropertyDescriptors,Ve=Object.getOwnPropertyNames,W=Object.getOwnPropertySymbols,Ne=Object.getPrototypeOf,te=Object.prototype.hasOwnProperty,me=Object.prototype.propertyIsEnumerable;var de=(e,r,o)=>r in e?z(e,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[r]=o,l=(e,r)=>{for(var o in r||(r={}))te.call(r,o)&&de(e,o,r[o]);if(W)for(var o of W(r))me.call(r,o)&&de(e,o,r[o]);return e},b=(e,r)=>Me(e,Ue(r));var d=(e,r)=>{var o={};for(var i in e)te.call(e,i)&&r.indexOf(i)<0&&(o[i]=e[i]);if(e!=null&&W)for(var i of W(e))r.indexOf(i)<0&&me.call(e,i)&&(o[i]=e[i]);return o};var ke=(e,r)=>{for(var o in r)z(e,o,{get:r[o],enumerable:!0})},pe=(e,r,o,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of Ve(r))!te.call(e,t)&&t!==o&&z(e,t,{get:()=>r[t],enumerable:!(i=ve(r,t))||i.enumerable});return e};var ue=(e,r,o)=>(o=e!=null?qe(Ne(e)):{},pe(r||!e||!e.__esModule?z(o,"default",{value:e,enumerable:!0}):o,e)),ze=e=>pe(z({},"__esModule",{value:!0}),e);var je={};ke(je,{Checkbox:()=>Ie,Creatable:()=>Ge,Form:()=>ce,RadioButton:()=>Ae,RadioGroup:()=>De,Searchable:()=>Pe,Select:()=>Ce,Slider:()=>$e,Switch:()=>Te,TextField:()=>ge});module.exports=ze(je);var fe=require("react"),H=require("react-hook-form");var ie=require("react/jsx-runtime");function Oe(i){var t=i,{children:e,onSubmit:r}=t,o=d(t,["children","onSubmit"]);let a=(0,H.useForm)(o);(0,fe.useEffect)(()=>{a.reset(o.defaultValues)},[o.defaultValues,a.reset]);let n=()=>typeof e=="function"?e(b(l({},a),{onSubmit:a.handleSubmit(r)})):e;return(0,ie.jsx)(H.FormProvider,b(l({},a),{children:(0,ie.jsx)("form",{onSubmit:a.handleSubmit(r),children:n()})}))}var ce=Oe;var ye=require("react"),K=require("react-hook-form"),J=require("phosphor-react"),q=require("@mui/material"),$=ue(require("@s_mart/masks"));var le=require("@mui/material"),xe=require("@s_mart/utils"),O=require("react/jsx-runtime"),h=({label:e,required:r,regular:o})=>(0,O.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:(0,xe.toRem)(2)},children:[(0,O.jsx)(le.Typography,{variant:"caption",fontWeight:o?400:700,style:{display:"flex",alignItems:"center"},children:e}),r&&(0,O.jsx)(le.Typography,{variant:"caption",fontWeight:900,color:"error",children:"*"})]});var he=require("react-hook-form"),Fe=require("@s_mart/core"),be=require("react/jsx-runtime"),g=({name:e})=>{var o,i,t;let r=(0,he.useFormContext)();return(i=(o=r==null?void 0:r.formState)==null?void 0:o.errors)!=null&&i[e]?(0,be.jsx)(Fe.Indicator,{severity:"error",children:(t=r.formState.errors[e])==null?void 0:t.message}):null};var w=require("react/jsx-runtime"),_e=c=>{var s=c,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,mask:n,variant:f="outlined"}=s,p=d(s,["name","rules","defaultValue","shouldUnregister","label","required","mask","variant"]);let u=(0,K.useFormContext)();if(!u)throw new Error("Para usar o <TextField /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");let[y,P]=(0,ye.useState)(!1),R=m=>{var x;return n?(x=$==null?void 0:$[n])==null?void 0:x.format(m):m},C=m=>{var x;return n?(x=$==null?void 0:$[n])==null?void 0:x.parse(m):m},B=m=>{if(!m||n!=="porcentagem")return;m==null||m.stopPropagation();let x=(m==null?void 0:m.target).value;if(x){let S=String(x);if(S.length>0){let k=S.indexOf("%");k>-1&&(m.currentTarget.selectionEnd=k)}}};return(0,w.jsx)(K.Controller,{control:u.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:m,onChange:x}})=>(0,w.jsxs)(q.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,w.jsx)(h,{label:t,required:a}),(0,w.jsx)(q.TextField,b(l({size:"small",variant:f,autoComplete:"off",defaultValue:o,value:R(m||""),onChange:S=>{var k;return x(C((k=S==null?void 0:S.target)==null?void 0:k.value))}},p),{type:p.type==="password"?y?"text":"password":p.type,InputProps:l({onKeyDown:B,endAdornment:p.type==="password"&&(0,w.jsx)(q.InputAdornment,{position:"end",onClick:()=>P(!y),style:{cursor:"pointer"},children:y?(0,w.jsx)(J.Eye,{size:20}):(0,w.jsx)(J.EyeSlash,{size:20})})},p.InputProps)})),(0,w.jsx)(g,{name:e})]})})},ge=_e;var Q=require("react-hook-form"),M=require("@mui/material");var G=require("react/jsx-runtime"),Be=p=>{var c=p,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,options:n}=c,f=d(c,["name","rules","defaultValue","shouldUnregister","label","required","options"]);let s=(0,Q.useFormContext)();if(!s)throw new Error("Para usar o <Select /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,G.jsx)(Q.Controller,{control:s.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:u,onChange:y}})=>(0,G.jsxs)(M.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,G.jsx)(h,{label:t,required:a}),(0,G.jsx)(M.Select,b(l({size:"small",variant:"outlined",autoComplete:"off",value:u||"",onChange:y},f),{children:n==null?void 0:n.map((P,R)=>(0,G.jsx)(M.MenuItem,{value:P.value,children:P.label},R))})),(0,G.jsx)(g,{name:e})]})})},Ce=Be;var X=require("react-hook-form"),v=require("@mui/material");var I=require("react/jsx-runtime"),We=c=>{var s=c,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,options:n,textFieldProps:f}=s,p=d(s,["name","rules","defaultValue","shouldUnregister","label","required","options","textFieldProps"]);let u=(0,X.useFormContext)();if(!u)throw new Error("Para usar o <Searchable /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,I.jsx)(X.Controller,{control:u.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{onChange:y}})=>(0,I.jsxs)(v.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,I.jsx)(h,{label:t,required:a}),(0,I.jsx)(v.Autocomplete,b(l({size:"small",onChange:(P,R)=>y(R),options:n,noOptionsText:"Nenhuma op\xE7\xE3o encontrada"},p),{renderInput:P=>(0,I.jsx)(v.TextField,l(l({},P),f))})),(0,I.jsx)(g,{name:e})]})})},Pe=We;var Y=require("react-hook-form"),Re=require("phosphor-react"),T=require("@mui/material");var E=require("@s_mart/utils"),ne=ue(require("@emotion/styled")),ae=require("@emotion/react"),Se=ae.css`
1
+ "use strict";var $e=Object.create;var z=Object.defineProperty,Me=Object.defineProperties,Ve=Object.getOwnPropertyDescriptor,Ue=Object.getOwnPropertyDescriptors,ve=Object.getOwnPropertyNames,W=Object.getOwnPropertySymbols,Ne=Object.getPrototypeOf,te=Object.prototype.hasOwnProperty,pe=Object.prototype.propertyIsEnumerable;var de=(e,r,o)=>r in e?z(e,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[r]=o,i=(e,r)=>{for(var o in r||(r={}))te.call(r,o)&&de(e,o,r[o]);if(W)for(var o of W(r))pe.call(r,o)&&de(e,o,r[o]);return e},F=(e,r)=>Me(e,Ue(r));var m=(e,r)=>{var o={};for(var l in e)te.call(e,l)&&r.indexOf(l)<0&&(o[l]=e[l]);if(e!=null&&W)for(var l of W(e))r.indexOf(l)<0&&pe.call(e,l)&&(o[l]=e[l]);return o};var ke=(e,r)=>{for(var o in r)z(e,o,{get:r[o],enumerable:!0})},me=(e,r,o,l)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of ve(r))!te.call(e,t)&&t!==o&&z(e,t,{get:()=>r[t],enumerable:!(l=Ve(r,t))||l.enumerable});return e};var ue=(e,r,o)=>(o=e!=null?$e(Ne(e)):{},me(r||!e||!e.__esModule?z(o,"default",{value:e,enumerable:!0}):o,e)),Oe=e=>me(z({},"__esModule",{value:!0}),e);var Ze={};ke(Ze,{Checkbox:()=>Re,Creatable:()=>Ie,Form:()=>ce,RadioButton:()=>Ae,RadioGroup:()=>De,Searchable:()=>Pe,Select:()=>Ce,Slider:()=>qe,Switch:()=>Ge,TextField:()=>ge});module.exports=Oe(Ze);var fe=require("react"),j=require("react-hook-form");var le=require("react/jsx-runtime");function ze(l){var t=l,{children:e,onSubmit:r}=t,o=m(t,["children","onSubmit"]);let d=(0,j.useForm)(o);(0,fe.useEffect)(()=>{d.reset(o.defaultValues)},[o.defaultValues,d.reset]);let n=()=>typeof e=="function"?e(F(i({},d),{onSubmit:d.handleSubmit(r)})):e;return(0,le.jsx)(j.FormProvider,F(i({},d),{children:(0,le.jsx)("form",{onSubmit:d.handleSubmit(r),children:n()})}))}var ce=ze;var Fe=require("react"),H=require("react-hook-form"),K=require("phosphor-react"),V=require("@mui/material"),M=ue(require("@s_mart/masks"));var ie=require("@mui/material"),xe=require("@s_mart/utils"),_=require("react/jsx-runtime"),h=({label:e,required:r,regular:o})=>(0,_.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:(0,xe.toRem)(2)},children:[(0,_.jsx)(ie.Typography,{variant:"caption",fontWeight:o?400:700,style:{display:"flex",alignItems:"center"},children:e}),r&&(0,_.jsx)(ie.Typography,{variant:"caption",fontWeight:900,color:"error",children:"*"})]});var ye=require("react-hook-form"),he=require("@s_mart/core"),be=require("react/jsx-runtime"),S=({name:e})=>{var o,l,t;let r=(0,ye.useFormContext)();return(l=(o=r==null?void 0:r.formState)==null?void 0:o.errors)!=null&&l[e]?(0,be.jsx)(he.Indicator,{severity:"error",children:(t=r.formState.errors[e])==null?void 0:t.message}):null};var E=require("react/jsx-runtime"),_e=g=>{var p=g,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,mask:n,variant:x="outlined"}=p,u=m(p,["name","rules","defaultValue","shouldUnregister","label","required","mask","variant"]);let f=(0,H.useFormContext)();if(!f)throw new Error("Para usar o <TextField /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");let[C,w]=(0,Fe.useState)(!1),P=c=>{var s;return n?(s=M==null?void 0:M[n])==null?void 0:s.format(c):c},a=c=>{var s;return n?(s=M==null?void 0:M[n])==null?void 0:s.parse(c):c},$=c=>{if(!c||n!=="porcentagem")return;c==null||c.stopPropagation();let s=(c==null?void 0:c.target).value;if(s){let y=String(s);if(y.length>0){let O=y.indexOf("%");O>-1&&(c.currentTarget.selectionEnd=O)}}};return(0,E.jsx)(H.Controller,{control:f.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:c,onChange:s}})=>(0,E.jsxs)(V.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,E.jsx)(h,{label:t,required:d}),(0,E.jsx)(V.TextField,F(i({size:"small",variant:x,autoComplete:"off",defaultValue:o,value:P(c||""),onChange:y=>{var O;return s(a((O=y==null?void 0:y.target)==null?void 0:O.value))}},u),{type:u.type==="password"?C?"text":"password":u.type,InputProps:i({onKeyDown:$,endAdornment:u.type==="password"&&(0,E.jsx)(V.InputAdornment,{position:"end",onClick:()=>w(!C),style:{cursor:"pointer"},children:C?(0,E.jsx)(K.Eye,{size:20}):(0,E.jsx)(K.EyeSlash,{size:20})})},u.InputProps)})),(0,E.jsx)(S,{name:e})]})})},ge=_e;var J=require("react-hook-form"),I=require("@mui/material");var T=require("react/jsx-runtime"),Be=g=>{var p=g,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,options:n,placeholder:x}=p,u=m(p,["name","rules","defaultValue","shouldUnregister","label","required","options","placeholder"]);let f=(0,J.useFormContext)(),{palette:C}=(0,I.useTheme)();if(!f)throw new Error("Para usar o <Select /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,T.jsx)(J.Controller,{control:f.control,name:e,rules:r,defaultValue:o||"",shouldUnregister:l,render:({field:{value:w,onChange:P}})=>(0,T.jsxs)(I.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,T.jsx)(h,{label:t,required:d}),(0,T.jsxs)(I.Select,F(i({displayEmpty:Boolean(x),size:"small",variant:"outlined",autoComplete:"off",value:w||"",onChange:P},u),{children:[x&&(0,T.jsx)(I.MenuItem,{disabled:!0,value:"",children:(0,T.jsx)("p",{style:{color:C.grey[400]},children:x})}),n==null?void 0:n.map((a,$)=>(0,T.jsx)(I.MenuItem,{value:a.value,children:a.label},$))]})),(0,T.jsx)(S,{name:e})]})})},Ce=Be;var Q=require("react-hook-form"),U=require("@mui/material");var G=require("react/jsx-runtime"),We=g=>{var p=g,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,options:n,textFieldProps:x}=p,u=m(p,["name","rules","defaultValue","shouldUnregister","label","required","options","textFieldProps"]);let f=(0,Q.useFormContext)();if(!f)throw new Error("Para usar o <Searchable /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,G.jsx)(Q.Controller,{control:f.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{onChange:C,value:w}})=>(0,G.jsxs)(U.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,G.jsx)(h,{label:t,required:d}),(0,G.jsx)(U.Autocomplete,F(i({size:"small",onChange:(P,a)=>C(a),value:w,options:n,noOptionsText:"Nenhuma op\xE7\xE3o encontrada",isOptionEqualToValue:(P,a)=>typeof P=="string"&&typeof a=="string"?P===a:typeof P=="object"&&typeof a=="object"?P.value===a.value:!1},u),{renderInput:P=>(0,G.jsx)(U.TextField,i(i({},P),x))})),(0,G.jsx)(S,{name:e})]})})},Pe=We;var X=require("react-hook-form"),Te=require("phosphor-react"),A=require("@mui/material");var R=require("@s_mart/utils"),ne=ue(require("@emotion/styled")),ae=require("@emotion/react"),Se=ae.css`
2
2
  display: flex;
3
3
  align-items: center;
4
4
  justify-content: center;
5
- `,He=e=>ae.css`
5
+ `,je=e=>ae.css`
6
6
  .MuiAutocomplete-endAdornment {
7
7
  position: relative;
8
8
  right: 0;
@@ -13,7 +13,7 @@
13
13
 
14
14
  .divider {
15
15
  width: 1px;
16
- height: ${(0,E.toRem)(20)};
16
+ height: ${(0,R.toRem)(20)};
17
17
  background-color: ${e.palette.grey[400]};
18
18
  }
19
19
 
@@ -24,9 +24,9 @@
24
24
  color: ${e.palette.grey[600]};
25
25
  border-radius: 50%;
26
26
 
27
- margin: 0 ${(0,E.toRem)(6)};
28
- width: ${(0,E.toRem)(28)};
29
- height: ${(0,E.toRem)(28)};
27
+ margin: 0 ${(0,R.toRem)(6)};
28
+ width: ${(0,R.toRem)(28)};
29
+ height: ${(0,R.toRem)(28)};
30
30
 
31
31
  &:hover {
32
32
  cursor: pointer;
@@ -45,16 +45,16 @@
45
45
  ${Se}
46
46
  }
47
47
 
48
- ${({hideAddButton:e,theme:r})=>!e&&He(r)}
48
+ ${({hideAddButton:e,theme:r})=>!e&&je(r)}
49
49
  `,Ee=ne.default.div`
50
50
  color: ${({theme:e})=>e.palette.text.primary};
51
51
 
52
- padding: ${(0,E.toRem)(6)} ${(0,E.toRem)(16)};
53
- margin: ${(0,E.toRem)(-6)} ${(0,E.toRem)(-16)};
52
+ padding: ${(0,R.toRem)(6)} ${(0,R.toRem)(16)};
53
+ margin: ${(0,R.toRem)(-6)} ${(0,R.toRem)(-16)};
54
54
 
55
55
  &:hover {
56
56
  cursor: pointer;
57
57
  transition: background-color 0.2s ease-in-out;
58
58
  background-color: ${({theme:e})=>e.palette.grey[100]};
59
59
  }
60
- `;var F=require("react/jsx-runtime"),Ke=u=>{var y=u,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,options:n,onCreateOption:f,textFieldProps:p,hideAddButton:c}=y,s=d(y,["name","rules","defaultValue","shouldUnregister","label","required","options","onCreateOption","textFieldProps","hideAddButton"]);let P=(0,Y.useFormContext)();if(!P)throw new Error("Para usar o <Creatable /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");let R=C=>{f?f(C):console.error("onCreateOption n\xE3o foi definido")};return(0,F.jsx)(Y.Controller,{control:P.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:C,onChange:B}})=>{let m=(C==null?void 0:C.label)||(C==null?void 0:C.value)||C;return(0,F.jsxs)(T.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,F.jsx)(h,{label:t,required:a}),(0,F.jsx)(we,{hideAddButton:c,children:(0,F.jsx)(T.Autocomplete,b(l({size:"small",fullWidth:!0,onChange:(x,S)=>B(S),options:n,noOptionsText:(0,F.jsx)(Ee,{onClick:()=>R(C),children:(0,F.jsxs)(T.Typography,{children:["Adicionar ",m&&`"${m}"`]})})},s),{renderInput:x=>{let S=c?x.InputProps:b(l({},x.InputProps),{endAdornment:(0,F.jsxs)("div",{className:"endAdornments",children:[x.InputProps.endAdornment,(0,F.jsxs)("div",{className:"creatable",children:[(0,F.jsx)("div",{className:"divider"}),(0,F.jsx)("div",{className:"button",onClick:()=>R(C),children:(0,F.jsx)(Re.Plus,{size:18,weight:"bold"})})]})]})});return(0,F.jsx)(T.TextField,l(b(l({},x),{onChange:B,InputProps:S}),p))}}))}),(0,F.jsx)(g,{name:e})]})}})},Ge=Ke;var Z=require("react-hook-form"),U=require("@mui/material");var A=require("react/jsx-runtime"),Je=p=>{var c=p,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,labelPlacement:a,required:n}=c,f=d(c,["name","rules","defaultValue","shouldUnregister","label","labelPlacement","required"]);let s=(0,Z.useFormContext)();if(!s)throw new Error("Para usar o <Checkbox /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,A.jsx)(Z.Controller,{control:s.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:u,onChange:y}})=>(0,A.jsxs)(U.Grid,{display:"flex",flexDirection:"column",children:[(0,A.jsx)(U.FormControlLabel,{control:(0,A.jsx)(U.Checkbox,l({value:u!=null?u:"",defaultValue:u,onChange:y},f)),label:(0,A.jsx)(h,{label:t,required:n,regular:!0}),labelPlacement:a||"end"}),(0,A.jsx)(g,{name:e})]})})},Ie=Je;var j=require("react-hook-form"),V=require("@mui/material");var D=require("react/jsx-runtime"),Qe=f=>{var p=f,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,labelPlacement:a}=p,n=d(p,["name","rules","defaultValue","shouldUnregister","label","labelPlacement"]);let c=(0,j.useFormContext)();if(!c)throw new Error("Para usar o <Switch /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,D.jsx)(j.Controller,{control:c.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:s,onChange:u}})=>(0,D.jsxs)(V.Grid,{display:"flex",flexDirection:"column",children:[(0,D.jsx)(V.FormControlLabel,{control:(0,D.jsx)(V.Switch,l({value:s!=null?s:"",defaultValue:s,onChange:u},n)),label:(0,D.jsx)(h,{label:t}),labelPlacement:a||"end"}),(0,D.jsx)(g,{name:e})]})})},Te=Qe;var N=require("@mui/material");var _=require("react/jsx-runtime"),Xe=i=>{var t=i,{label:e,labelPlacement:r}=t,o=d(t,["label","labelPlacement"]);return(0,_.jsx)(N.Grid,{display:"flex",flexDirection:"column",children:(0,_.jsx)(N.FormControlLabel,{control:(0,_.jsx)(N.Radio,l({},o)),label:(0,_.jsx)(h,{label:e}),labelPlacement:r||"end"})})},Ae=Xe;var ee=require("react-hook-form"),re=require("@mui/material");var L=require("react/jsx-runtime"),Ye=c=>{var s=c,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,children:n,orientation:f="row"}=s,p=d(s,["name","rules","defaultValue","shouldUnregister","label","required","children","orientation"]);let u=(0,ee.useFormContext)();if(!u)throw new Error("Para usar o <RadioGroup /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,L.jsx)(ee.Controller,{control:u.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:y,onChange:P}})=>(0,L.jsxs)(re.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,L.jsx)(h,{label:t,required:a}),(0,L.jsx)(re.RadioGroup,b(l({value:y||"",onChange:P,name:e},p),{style:{display:"flex",flexDirection:f},children:n})),(0,L.jsx)(g,{name:e})]})})},De=Ye;var oe=require("react-hook-form"),Le=require("@mui/material");var se=require("react/jsx-runtime"),Ze=a=>{var n=a,{name:e,rules:r,defaultValue:o,shouldUnregister:i}=n,t=d(n,["name","rules","defaultValue","shouldUnregister"]);let f=(0,oe.useFormContext)();if(!f)throw new Error("Para usar o <Slider /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,se.jsx)(oe.Controller,{control:f.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:p,onChange:c}})=>(0,se.jsx)(Le.Slider,l({value:p||(t==null?void 0:t.min)||0,onChange:c,valueLabelDisplay:"auto"},t))})},$e=Ze;0&&(module.exports={Checkbox,Creatable,Form,RadioButton,RadioGroup,Searchable,Select,Slider,Switch,TextField});
60
+ `;var b=require("react/jsx-runtime"),He=f=>{var C=f,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,options:n,onCreateOption:x,textFieldProps:u,hideAddButton:g}=C,p=m(C,["name","rules","defaultValue","shouldUnregister","label","required","options","onCreateOption","textFieldProps","hideAddButton"]);let w=(0,X.useFormContext)();if(!w)throw new Error("Para usar o <Creatable /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");let P=a=>{x?x(a):console.error("onCreateOption n\xE3o foi definido")};return(0,b.jsx)(X.Controller,{control:w.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:a,onChange:$}})=>{let c=(a==null?void 0:a.label)||(a==null?void 0:a.value)||a;return(0,b.jsxs)(A.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,b.jsx)(h,{label:t,required:d}),(0,b.jsx)(we,{hideAddButton:g,children:(0,b.jsx)(A.Autocomplete,F(i({size:"small",fullWidth:!0,onChange:(s,y)=>$(y),options:n,value:a,noOptionsText:(0,b.jsx)(Ee,{onClick:()=>P(a),children:(0,b.jsxs)(A.Typography,{children:["Adicionar ",c&&`"${c}"`]})}),isOptionEqualToValue:(s,y)=>y?typeof s=="string"&&typeof y=="string"?s===y:typeof s=="object"&&typeof y=="object"?s.value===y.value:typeof s=="object"&&typeof y=="string":!1},p),{renderInput:s=>{let y=g?s.InputProps:F(i({},s.InputProps),{endAdornment:(0,b.jsxs)("div",{className:"endAdornments",children:[s.InputProps.endAdornment,(0,b.jsxs)("div",{className:"creatable",children:[(0,b.jsx)("div",{className:"divider"}),(0,b.jsx)("div",{className:"button",onClick:()=>P(a),children:(0,b.jsx)(Te.Plus,{size:18,weight:"bold"})})]})]})});return(0,b.jsx)(A.TextField,i(F(i({},s),{onChange:$,InputProps:y}),u))}}))}),(0,b.jsx)(S,{name:e})]})}})},Ie=He;var Y=require("react-hook-form"),v=require("@mui/material");var D=require("react/jsx-runtime"),Ke=u=>{var g=u,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,labelPlacement:d,required:n}=g,x=m(g,["name","rules","defaultValue","shouldUnregister","label","labelPlacement","required"]);let p=(0,Y.useFormContext)();if(!p)throw new Error("Para usar o <Checkbox /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,D.jsx)(Y.Controller,{control:p.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:f,onChange:C}})=>(0,D.jsxs)(v.Grid,{display:"flex",flexDirection:"column",children:[(0,D.jsx)(v.FormControlLabel,{control:(0,D.jsx)(v.Checkbox,i({value:f!=null?f:"",defaultValue:f,onChange:C},x)),label:(0,D.jsx)(h,{label:t,required:n,regular:!0}),labelPlacement:d||"end"}),(0,D.jsx)(S,{name:e})]})})},Re=Ke;var Z=require("react-hook-form"),N=require("@mui/material");var L=require("react/jsx-runtime"),Je=x=>{var u=x,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,labelPlacement:d}=u,n=m(u,["name","rules","defaultValue","shouldUnregister","label","labelPlacement"]);let g=(0,Z.useFormContext)();if(!g)throw new Error("Para usar o <Switch /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,L.jsx)(Z.Controller,{control:g.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:p,onChange:f}})=>(0,L.jsxs)(N.Grid,{display:"flex",flexDirection:"column",children:[(0,L.jsx)(N.FormControlLabel,{control:(0,L.jsx)(N.Switch,i({value:p!=null?p:"",defaultValue:p,onChange:f},n)),label:(0,L.jsx)(h,{label:t}),labelPlacement:d||"end"}),(0,L.jsx)(S,{name:e})]})})},Ge=Je;var k=require("@mui/material");var B=require("react/jsx-runtime"),Qe=l=>{var t=l,{label:e,labelPlacement:r}=t,o=m(t,["label","labelPlacement"]);return(0,B.jsx)(k.Grid,{display:"flex",flexDirection:"column",children:(0,B.jsx)(k.FormControlLabel,{control:(0,B.jsx)(k.Radio,i({},o)),label:(0,B.jsx)(h,{label:e}),labelPlacement:r||"end"})})},Ae=Qe;var ee=require("react-hook-form"),re=require("@mui/material");var q=require("react/jsx-runtime"),Xe=g=>{var p=g,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,children:n,orientation:x="row"}=p,u=m(p,["name","rules","defaultValue","shouldUnregister","label","required","children","orientation"]);let f=(0,ee.useFormContext)();if(!f)throw new Error("Para usar o <RadioGroup /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,q.jsx)(ee.Controller,{control:f.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:C,onChange:w}})=>(0,q.jsxs)(re.Grid,{display:"flex",flexDirection:"column",children:[t&&(0,q.jsx)(h,{label:t,required:d}),(0,q.jsx)(re.RadioGroup,F(i({value:C||"",onChange:w,name:e},u),{style:{display:"flex",flexDirection:x},children:n})),(0,q.jsx)(S,{name:e})]})})},De=Xe;var oe=require("react-hook-form"),Le=require("@mui/material");var se=require("react/jsx-runtime"),Ye=d=>{var n=d,{name:e,rules:r,defaultValue:o,shouldUnregister:l}=n,t=m(n,["name","rules","defaultValue","shouldUnregister"]);let x=(0,oe.useFormContext)();if(!x)throw new Error("Para usar o <Slider /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return(0,se.jsx)(oe.Controller,{control:x.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:u,onChange:g}})=>(0,se.jsx)(Le.Slider,i({value:u||(t==null?void 0:t.min)||0,onChange:g,valueLabelDisplay:"auto"},t))})},qe=Ye;0&&(module.exports={Checkbox,Creatable,Form,RadioButton,RadioGroup,Searchable,Select,Slider,Switch,TextField});
package/dist/index.mjs CHANGED
@@ -1,15 +1,15 @@
1
- var X=Object.defineProperty,Y=Object.defineProperties;var Z=Object.getOwnPropertyDescriptors;var q=Object.getOwnPropertySymbols;var N=Object.prototype.hasOwnProperty,k=Object.prototype.propertyIsEnumerable;var V=(e,r,o)=>r in e?X(e,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[r]=o,l=(e,r)=>{for(var o in r||(r={}))N.call(r,o)&&V(e,o,r[o]);if(q)for(var o of q(r))k.call(r,o)&&V(e,o,r[o]);return e},F=(e,r)=>Y(e,Z(r));var d=(e,r)=>{var o={};for(var i in e)N.call(e,i)&&r.indexOf(i)<0&&(o[i]=e[i]);if(e!=null&&q)for(var i of q(e))r.indexOf(i)<0&&k.call(e,i)&&(o[i]=e[i]);return o};import{useEffect as j}from"react";import{FormProvider as ee,useForm as re}from"react-hook-form";import{jsx as z}from"react/jsx-runtime";function oe(i){var t=i,{children:e,onSubmit:r}=t,o=d(t,["children","onSubmit"]);let a=re(o);j(()=>{a.reset(o.defaultValues)},[o.defaultValues,a.reset]);let n=()=>typeof e=="function"?e(F(l({},a),{onSubmit:a.handleSubmit(r)})):e;return z(ee,F(l({},a),{children:z("form",{onSubmit:a.handleSubmit(r),children:n()})}))}var te=oe;import{useState as de}from"react";import{Controller as me,useFormContext as pe}from"react-hook-form";import{Eye as ue,EyeSlash as fe}from"phosphor-react";import{Grid as ce,InputAdornment as xe,TextField as he}from"@mui/material";import*as G from"@s_mart/masks";import{Typography as O}from"@mui/material";import{toRem as ie}from"@s_mart/utils";import{jsx as _,jsxs as le}from"react/jsx-runtime";var h=({label:e,required:r,regular:o})=>le("span",{style:{display:"flex",alignItems:"center",gap:ie(2)},children:[_(O,{variant:"caption",fontWeight:o?400:700,style:{display:"flex",alignItems:"center"},children:e}),r&&_(O,{variant:"caption",fontWeight:900,color:"error",children:"*"})]});import{useFormContext as ne}from"react-hook-form";import{Indicator as ae}from"@s_mart/core";import{jsx as se}from"react/jsx-runtime";var y=({name:e})=>{var o,i,t;let r=ne();return(i=(o=r==null?void 0:r.formState)==null?void 0:o.errors)!=null&&i[e]?se(ae,{severity:"error",children:(t=r.formState.errors[e])==null?void 0:t.message}):null};import{jsx as R,jsxs as ye}from"react/jsx-runtime";var Fe=c=>{var s=c,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,mask:n,variant:f="outlined"}=s,p=d(s,["name","rules","defaultValue","shouldUnregister","label","required","mask","variant"]);let u=pe();if(!u)throw new Error("Para usar o <TextField /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");let[b,C]=de(!1),w=m=>{var x;return n?(x=G==null?void 0:G[n])==null?void 0:x.format(m):m},g=m=>{var x;return n?(x=G==null?void 0:G[n])==null?void 0:x.parse(m):m},$=m=>{if(!m||n!=="porcentagem")return;m==null||m.stopPropagation();let x=(m==null?void 0:m.target).value;if(x){let P=String(x);if(P.length>0){let I=P.indexOf("%");I>-1&&(m.currentTarget.selectionEnd=I)}}};return R(me,{control:u.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:m,onChange:x}})=>ye(ce,{display:"flex",flexDirection:"column",children:[t&&R(h,{label:t,required:a}),R(he,F(l({size:"small",variant:f,autoComplete:"off",defaultValue:o,value:w(m||""),onChange:P=>{var I;return x(g((I=P==null?void 0:P.target)==null?void 0:I.value))}},p),{type:p.type==="password"?b?"text":"password":p.type,InputProps:l({onKeyDown:$,endAdornment:p.type==="password"&&R(xe,{position:"end",onClick:()=>C(!b),style:{cursor:"pointer"},children:b?R(ue,{size:20}):R(fe,{size:20})})},p.InputProps)})),R(y,{name:e})]})})},be=Fe;import{Controller as ge,useFormContext as Ce}from"react-hook-form";import{Grid as Pe,Select as Se,MenuItem as we}from"@mui/material";import{jsx as T,jsxs as Ge}from"react/jsx-runtime";var Ee=p=>{var c=p,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,options:n}=c,f=d(c,["name","rules","defaultValue","shouldUnregister","label","required","options"]);let s=Ce();if(!s)throw new Error("Para usar o <Select /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return T(ge,{control:s.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:u,onChange:b}})=>Ge(Pe,{display:"flex",flexDirection:"column",children:[t&&T(h,{label:t,required:a}),T(Se,F(l({size:"small",variant:"outlined",autoComplete:"off",value:u||"",onChange:b},f),{children:n==null?void 0:n.map((C,w)=>T(we,{value:C.value,children:C.label},w))})),T(y,{name:e})]})})},Re=Ee;import{Controller as Ie,useFormContext as Te}from"react-hook-form";import{Grid as Ae,Autocomplete as De,TextField as Le}from"@mui/material";import{jsx as A,jsxs as Me}from"react/jsx-runtime";var $e=c=>{var s=c,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,options:n,textFieldProps:f}=s,p=d(s,["name","rules","defaultValue","shouldUnregister","label","required","options","textFieldProps"]);let u=Te();if(!u)throw new Error("Para usar o <Searchable /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return A(Ie,{control:u.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{onChange:b}})=>Me(Ae,{display:"flex",flexDirection:"column",children:[t&&A(h,{label:t,required:a}),A(De,F(l({size:"small",onChange:(C,w)=>b(w),options:n,noOptionsText:"Nenhuma op\xE7\xE3o encontrada"},p),{renderInput:C=>A(Le,l(l({},C),f))})),A(y,{name:e})]})})},qe=$e;import{Controller as Ue,useFormContext as Ve}from"react-hook-form";import{Plus as Ne}from"phosphor-react";import{Grid as ke,Autocomplete as ze,TextField as Oe,Typography as _e}from"@mui/material";import{toRem as E}from"@s_mart/utils";import B from"@emotion/styled";import{css as W}from"@emotion/react";var H=W`
1
+ var Y=Object.defineProperty,Z=Object.defineProperties;var ee=Object.getOwnPropertyDescriptors;var $=Object.getOwnPropertySymbols;var N=Object.prototype.hasOwnProperty,k=Object.prototype.propertyIsEnumerable;var v=(e,r,o)=>r in e?Y(e,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[r]=o,i=(e,r)=>{for(var o in r||(r={}))N.call(r,o)&&v(e,o,r[o]);if($)for(var o of $(r))k.call(r,o)&&v(e,o,r[o]);return e},b=(e,r)=>Z(e,ee(r));var m=(e,r)=>{var o={};for(var l in e)N.call(e,l)&&r.indexOf(l)<0&&(o[l]=e[l]);if(e!=null&&$)for(var l of $(e))r.indexOf(l)<0&&k.call(e,l)&&(o[l]=e[l]);return o};import{useEffect as re}from"react";import{FormProvider as oe,useForm as te}from"react-hook-form";import{jsx as O}from"react/jsx-runtime";function le(l){var t=l,{children:e,onSubmit:r}=t,o=m(t,["children","onSubmit"]);let d=te(o);re(()=>{d.reset(o.defaultValues)},[o.defaultValues,d.reset]);let n=()=>typeof e=="function"?e(b(i({},d),{onSubmit:d.handleSubmit(r)})):e;return O(oe,b(i({},d),{children:O("form",{onSubmit:d.handleSubmit(r),children:n()})}))}var ie=le;import{useState as me}from"react";import{Controller as ue,useFormContext as fe}from"react-hook-form";import{Eye as ce,EyeSlash as xe}from"phosphor-react";import{Grid as ye,InputAdornment as he,TextField as be}from"@mui/material";import*as R from"@s_mart/masks";import{Typography as z}from"@mui/material";import{toRem as ne}from"@s_mart/utils";import{jsx as _,jsxs as ae}from"react/jsx-runtime";var h=({label:e,required:r,regular:o})=>ae("span",{style:{display:"flex",alignItems:"center",gap:ne(2)},children:[_(z,{variant:"caption",fontWeight:o?400:700,style:{display:"flex",alignItems:"center"},children:e}),r&&_(z,{variant:"caption",fontWeight:900,color:"error",children:"*"})]});import{useFormContext as se}from"react-hook-form";import{Indicator as de}from"@s_mart/core";import{jsx as pe}from"react/jsx-runtime";var P=({name:e})=>{var o,l,t;let r=se();return(l=(o=r==null?void 0:r.formState)==null?void 0:o.errors)!=null&&l[e]?pe(de,{severity:"error",children:(t=r.formState.errors[e])==null?void 0:t.message}):null};import{jsx as T,jsxs as Ce}from"react/jsx-runtime";var Fe=F=>{var p=F,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,mask:n,variant:x="outlined"}=p,u=m(p,["name","rules","defaultValue","shouldUnregister","label","required","mask","variant"]);let f=fe();if(!f)throw new Error("Para usar o <TextField /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");let[g,S]=me(!1),C=c=>{var s;return n?(s=R==null?void 0:R[n])==null?void 0:s.format(c):c},a=c=>{var s;return n?(s=R==null?void 0:R[n])==null?void 0:s.parse(c):c},I=c=>{if(!c||n!=="porcentagem")return;c==null||c.stopPropagation();let s=(c==null?void 0:c.target).value;if(s){let y=String(s);if(y.length>0){let A=y.indexOf("%");A>-1&&(c.currentTarget.selectionEnd=A)}}};return T(ue,{control:f.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:c,onChange:s}})=>Ce(ye,{display:"flex",flexDirection:"column",children:[t&&T(h,{label:t,required:d}),T(be,b(i({size:"small",variant:x,autoComplete:"off",defaultValue:o,value:C(c||""),onChange:y=>{var A;return s(a((A=y==null?void 0:y.target)==null?void 0:A.value))}},u),{type:u.type==="password"?g?"text":"password":u.type,InputProps:i({onKeyDown:I,endAdornment:u.type==="password"&&T(he,{position:"end",onClick:()=>S(!g),style:{cursor:"pointer"},children:g?T(ce,{size:20}):T(xe,{size:20})})},u.InputProps)})),T(P,{name:e})]})})},ge=Fe;import{Controller as Pe,useFormContext as Se}from"react-hook-form";import{Grid as we,Select as Ee,MenuItem as B,useTheme as Te}from"@mui/material";import{jsx as G,jsxs as W}from"react/jsx-runtime";var Ie=F=>{var p=F,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,options:n,placeholder:x}=p,u=m(p,["name","rules","defaultValue","shouldUnregister","label","required","options","placeholder"]);let f=Se(),{palette:g}=Te();if(!f)throw new Error("Para usar o <Select /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return G(Pe,{control:f.control,name:e,rules:r,defaultValue:o||"",shouldUnregister:l,render:({field:{value:S,onChange:C}})=>W(we,{display:"flex",flexDirection:"column",children:[t&&G(h,{label:t,required:d}),W(Ee,b(i({displayEmpty:Boolean(x),size:"small",variant:"outlined",autoComplete:"off",value:S||"",onChange:C},u),{children:[x&&G(B,{disabled:!0,value:"",children:G("p",{style:{color:g.grey[400]},children:x})}),n==null?void 0:n.map((a,I)=>G(B,{value:a.value,children:a.label},I))]})),G(P,{name:e})]})})},Re=Ie;import{Controller as Ge,useFormContext as Ae}from"react-hook-form";import{Grid as De,Autocomplete as Le,TextField as qe}from"@mui/material";import{jsx as D,jsxs as Ve}from"react/jsx-runtime";var $e=F=>{var p=F,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,options:n,textFieldProps:x}=p,u=m(p,["name","rules","defaultValue","shouldUnregister","label","required","options","textFieldProps"]);let f=Ae();if(!f)throw new Error("Para usar o <Searchable /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return D(Ge,{control:f.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{onChange:g,value:S}})=>Ve(De,{display:"flex",flexDirection:"column",children:[t&&D(h,{label:t,required:d}),D(Le,b(i({size:"small",onChange:(C,a)=>g(a),value:S,options:n,noOptionsText:"Nenhuma op\xE7\xE3o encontrada",isOptionEqualToValue:(C,a)=>typeof C=="string"&&typeof a=="string"?C===a:typeof C=="object"&&typeof a=="object"?C.value===a.value:!1},u),{renderInput:C=>D(qe,i(i({},C),x))})),D(P,{name:e})]})})},Me=$e;import{Controller as ve,useFormContext as Ne}from"react-hook-form";import{Plus as ke}from"phosphor-react";import{Grid as Oe,Autocomplete as ze,TextField as _e,Typography as Be}from"@mui/material";import{toRem as E}from"@s_mart/utils";import j from"@emotion/styled";import{css as H}from"@emotion/react";var K=H`
2
2
  display: flex;
3
3
  align-items: center;
4
4
  justify-content: center;
5
- `,ve=e=>W`
5
+ `,Ue=e=>H`
6
6
  .MuiAutocomplete-endAdornment {
7
7
  position: relative;
8
8
  right: 0;
9
9
  }
10
10
 
11
11
  .creatable {
12
- ${H}
12
+ ${K}
13
13
 
14
14
  .divider {
15
15
  width: 1px;
@@ -35,18 +35,18 @@ var X=Object.defineProperty,Y=Object.defineProperties;var Z=Object.getOwnPropert
35
35
  }
36
36
  }
37
37
  }
38
- `,K=B.div`
38
+ `,J=j.div`
39
39
  display: flex;
40
40
 
41
41
  div.endAdornments {
42
42
  position: absolute;
43
43
  right: 0;
44
44
 
45
- ${H}
45
+ ${K}
46
46
  }
47
47
 
48
- ${({hideAddButton:e,theme:r})=>!e&&ve(r)}
49
- `,J=B.div`
48
+ ${({hideAddButton:e,theme:r})=>!e&&Ue(r)}
49
+ `,Q=j.div`
50
50
  color: ${({theme:e})=>e.palette.text.primary};
51
51
 
52
52
  padding: ${E(6)} ${E(16)};
@@ -57,4 +57,4 @@ var X=Object.defineProperty,Y=Object.defineProperties;var Z=Object.getOwnPropert
57
57
  transition: background-color 0.2s ease-in-out;
58
58
  background-color: ${({theme:e})=>e.palette.grey[100]};
59
59
  }
60
- `;import{jsx as S,jsxs as M}from"react/jsx-runtime";var Be=u=>{var b=u,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,options:n,onCreateOption:f,textFieldProps:p,hideAddButton:c}=b,s=d(b,["name","rules","defaultValue","shouldUnregister","label","required","options","onCreateOption","textFieldProps","hideAddButton"]);let C=Ve();if(!C)throw new Error("Para usar o <Creatable /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");let w=g=>{f?f(g):console.error("onCreateOption n\xE3o foi definido")};return S(Ue,{control:C.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:g,onChange:$}})=>{let m=(g==null?void 0:g.label)||(g==null?void 0:g.value)||g;return M(ke,{display:"flex",flexDirection:"column",children:[t&&S(h,{label:t,required:a}),S(K,{hideAddButton:c,children:S(ze,F(l({size:"small",fullWidth:!0,onChange:(x,P)=>$(P),options:n,noOptionsText:S(J,{onClick:()=>w(g),children:M(_e,{children:["Adicionar ",m&&`"${m}"`]})})},s),{renderInput:x=>{let P=c?x.InputProps:F(l({},x.InputProps),{endAdornment:M("div",{className:"endAdornments",children:[x.InputProps.endAdornment,M("div",{className:"creatable",children:[S("div",{className:"divider"}),S("div",{className:"button",onClick:()=>w(g),children:S(Ne,{size:18,weight:"bold"})})]})]})});return S(Oe,l(F(l({},x),{onChange:$,InputProps:P}),p))}}))}),S(y,{name:e})]})}})},We=Be;import{Controller as He,useFormContext as Ke}from"react-hook-form";import{Grid as Je,Checkbox as Qe,FormControlLabel as Xe}from"@mui/material";import{jsx as D,jsxs as je}from"react/jsx-runtime";var Ye=p=>{var c=p,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,labelPlacement:a,required:n}=c,f=d(c,["name","rules","defaultValue","shouldUnregister","label","labelPlacement","required"]);let s=Ke();if(!s)throw new Error("Para usar o <Checkbox /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return D(He,{control:s.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:u,onChange:b}})=>je(Je,{display:"flex",flexDirection:"column",children:[D(Xe,{control:D(Qe,l({value:u!=null?u:"",defaultValue:u,onChange:b},f)),label:D(h,{label:t,required:n,regular:!0}),labelPlacement:a||"end"}),D(y,{name:e})]})})},Ze=Ye;import{Controller as er,useFormContext as rr}from"react-hook-form";import{Grid as or,Switch as tr,FormControlLabel as ir}from"@mui/material";import{jsx as L,jsxs as ar}from"react/jsx-runtime";var lr=f=>{var p=f,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,labelPlacement:a}=p,n=d(p,["name","rules","defaultValue","shouldUnregister","label","labelPlacement"]);let c=rr();if(!c)throw new Error("Para usar o <Switch /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return L(er,{control:c.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:s,onChange:u}})=>ar(or,{display:"flex",flexDirection:"column",children:[L(ir,{control:L(tr,l({value:s!=null?s:"",defaultValue:s,onChange:u},n)),label:L(h,{label:t}),labelPlacement:a||"end"}),L(y,{name:e})]})})},nr=lr;import{Grid as sr,Radio as dr,FormControlLabel as mr}from"@mui/material";import{jsx as v}from"react/jsx-runtime";var pr=i=>{var t=i,{label:e,labelPlacement:r}=t,o=d(t,["label","labelPlacement"]);return v(sr,{display:"flex",flexDirection:"column",children:v(mr,{control:v(dr,l({},o)),label:v(h,{label:e}),labelPlacement:r||"end"})})},ur=pr;import{Controller as fr,useFormContext as cr}from"react-hook-form";import{Grid as xr,RadioGroup as hr}from"@mui/material";import{jsx as U,jsxs as yr}from"react/jsx-runtime";var Fr=c=>{var s=c,{name:e,rules:r,defaultValue:o,shouldUnregister:i,label:t,required:a,children:n,orientation:f="row"}=s,p=d(s,["name","rules","defaultValue","shouldUnregister","label","required","children","orientation"]);let u=cr();if(!u)throw new Error("Para usar o <RadioGroup /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return U(fr,{control:u.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:b,onChange:C}})=>yr(xr,{display:"flex",flexDirection:"column",children:[t&&U(h,{label:t,required:a}),U(hr,F(l({value:b||"",onChange:C,name:e},p),{style:{display:"flex",flexDirection:f},children:n})),U(y,{name:e})]})})},br=Fr;import{Controller as gr,useFormContext as Cr}from"react-hook-form";import{Slider as Pr}from"@mui/material";import{jsx as Q}from"react/jsx-runtime";var Sr=a=>{var n=a,{name:e,rules:r,defaultValue:o,shouldUnregister:i}=n,t=d(n,["name","rules","defaultValue","shouldUnregister"]);let f=Cr();if(!f)throw new Error("Para usar o <Slider /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return Q(gr,{control:f.control,name:e,rules:r,defaultValue:o,shouldUnregister:i,render:({field:{value:p,onChange:c}})=>Q(Pr,l({value:p||(t==null?void 0:t.min)||0,onChange:c,valueLabelDisplay:"auto"},t))})},wr=Sr;export{Ze as Checkbox,We as Creatable,te as Form,ur as RadioButton,br as RadioGroup,qe as Searchable,Re as Select,wr as Slider,nr as Switch,be as TextField};
60
+ `;import{jsx as w,jsxs as M}from"react/jsx-runtime";var We=f=>{var g=f,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,options:n,onCreateOption:x,textFieldProps:u,hideAddButton:F}=g,p=m(g,["name","rules","defaultValue","shouldUnregister","label","required","options","onCreateOption","textFieldProps","hideAddButton"]);let S=Ne();if(!S)throw new Error("Para usar o <Creatable /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");let C=a=>{x?x(a):console.error("onCreateOption n\xE3o foi definido")};return w(ve,{control:S.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:a,onChange:I}})=>{let c=(a==null?void 0:a.label)||(a==null?void 0:a.value)||a;return M(Oe,{display:"flex",flexDirection:"column",children:[t&&w(h,{label:t,required:d}),w(J,{hideAddButton:F,children:w(ze,b(i({size:"small",fullWidth:!0,onChange:(s,y)=>I(y),options:n,value:a,noOptionsText:w(Q,{onClick:()=>C(a),children:M(Be,{children:["Adicionar ",c&&`"${c}"`]})}),isOptionEqualToValue:(s,y)=>y?typeof s=="string"&&typeof y=="string"?s===y:typeof s=="object"&&typeof y=="object"?s.value===y.value:typeof s=="object"&&typeof y=="string":!1},p),{renderInput:s=>{let y=F?s.InputProps:b(i({},s.InputProps),{endAdornment:M("div",{className:"endAdornments",children:[s.InputProps.endAdornment,M("div",{className:"creatable",children:[w("div",{className:"divider"}),w("div",{className:"button",onClick:()=>C(a),children:w(ke,{size:18,weight:"bold"})})]})]})});return w(_e,i(b(i({},s),{onChange:I,InputProps:y}),u))}}))}),w(P,{name:e})]})}})},je=We;import{Controller as He,useFormContext as Ke}from"react-hook-form";import{Grid as Je,Checkbox as Qe,FormControlLabel as Xe}from"@mui/material";import{jsx as L,jsxs as er}from"react/jsx-runtime";var Ye=u=>{var F=u,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,labelPlacement:d,required:n}=F,x=m(F,["name","rules","defaultValue","shouldUnregister","label","labelPlacement","required"]);let p=Ke();if(!p)throw new Error("Para usar o <Checkbox /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return L(He,{control:p.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:f,onChange:g}})=>er(Je,{display:"flex",flexDirection:"column",children:[L(Xe,{control:L(Qe,i({value:f!=null?f:"",defaultValue:f,onChange:g},x)),label:L(h,{label:t,required:n,regular:!0}),labelPlacement:d||"end"}),L(P,{name:e})]})})},Ze=Ye;import{Controller as rr,useFormContext as or}from"react-hook-form";import{Grid as tr,Switch as lr,FormControlLabel as ir}from"@mui/material";import{jsx as q,jsxs as sr}from"react/jsx-runtime";var nr=x=>{var u=x,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,labelPlacement:d}=u,n=m(u,["name","rules","defaultValue","shouldUnregister","label","labelPlacement"]);let F=or();if(!F)throw new Error("Para usar o <Switch /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return q(rr,{control:F.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:p,onChange:f}})=>sr(tr,{display:"flex",flexDirection:"column",children:[q(ir,{control:q(lr,i({value:p!=null?p:"",defaultValue:p,onChange:f},n)),label:q(h,{label:t}),labelPlacement:d||"end"}),q(P,{name:e})]})})},ar=nr;import{Grid as dr,Radio as pr,FormControlLabel as mr}from"@mui/material";import{jsx as V}from"react/jsx-runtime";var ur=l=>{var t=l,{label:e,labelPlacement:r}=t,o=m(t,["label","labelPlacement"]);return V(dr,{display:"flex",flexDirection:"column",children:V(mr,{control:V(pr,i({},o)),label:V(h,{label:e}),labelPlacement:r||"end"})})},fr=ur;import{Controller as cr,useFormContext as xr}from"react-hook-form";import{Grid as yr,RadioGroup as hr}from"@mui/material";import{jsx as U,jsxs as gr}from"react/jsx-runtime";var br=F=>{var p=F,{name:e,rules:r,defaultValue:o,shouldUnregister:l,label:t,required:d,children:n,orientation:x="row"}=p,u=m(p,["name","rules","defaultValue","shouldUnregister","label","required","children","orientation"]);let f=xr();if(!f)throw new Error("Para usar o <RadioGroup /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return U(cr,{control:f.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:g,onChange:S}})=>gr(yr,{display:"flex",flexDirection:"column",children:[t&&U(h,{label:t,required:d}),U(hr,b(i({value:g||"",onChange:S,name:e},u),{style:{display:"flex",flexDirection:x},children:n})),U(P,{name:e})]})})},Fr=br;import{Controller as Cr,useFormContext as Pr}from"react-hook-form";import{Slider as Sr}from"@mui/material";import{jsx as X}from"react/jsx-runtime";var wr=d=>{var n=d,{name:e,rules:r,defaultValue:o,shouldUnregister:l}=n,t=m(n,["name","rules","defaultValue","shouldUnregister"]);let x=Pr();if(!x)throw new Error("Para usar o <Slider /> \xE9 necess\xE1rio que ele esteja dentro de um <Form />");return X(Cr,{control:x.control,name:e,rules:r,defaultValue:o,shouldUnregister:l,render:({field:{value:u,onChange:F}})=>X(Sr,i({value:u||(t==null?void 0:t.min)||0,onChange:F,valueLabelDisplay:"auto"},t))})},Er=wr;export{Ze as Checkbox,je as Creatable,ie as Form,fr as RadioButton,Fr as RadioGroup,Me as Searchable,Re as Select,Er as Slider,ar as Switch,ge as TextField};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@s_mart/form",
3
- "version": "2.5.0",
3
+ "version": "2.5.1",
4
4
  "main": "./dist/index.js",
5
5
  "module": "./dist/index.mjs",
6
6
  "types": "./dist/index.d.ts",
@@ -23,7 +23,8 @@
23
23
  "@s_mart/typed": "*",
24
24
  "@s_mart/utils": "*",
25
25
  "@s_mart/masks": "*",
26
- "@s_mart/core": "*"
26
+ "@s_mart/core": "*",
27
+ "@s_mart/tokens": "*"
27
28
  },
28
29
  "peerDependencies": {
29
30
  "react": ">=18.0.0",