lizaui 3.0.23 → 3.0.25

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,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../chunks/jsx-runtime-DFswc9zO.js"),p=require("../chunks/bundle-mjs-Bta93uUH.js"),y=require("../chunks/index-CeBD7F1N.js"),h=require("react"),d=require("../chunks/clsx-C11secjj.js"),m=require("../chunks/index-BIzSm1_7.js");require("../chunks/button-DbkElM5k.js");const R=({className:o,color:e="primary",active:t,children:a,text:r,onClick:c})=>{const l=d.clsx({"bg-primary":e==="primary"&&t,"bg-success":e==="success"&&t,"bg-danger":e==="danger"&&t,"bg-warning":e==="warning"&&t,"bg-default":e==="default"&&t}),u=p.twMerge(d.clsx("text-sm",{"group-hover:text-primary-500":e==="primary"&&!t,"group-hover:text-success-500":e==="success"&&!t,"group-hover:text-danger-500":e==="danger"&&!t,"group-hover:text-warning-500":e==="warning"&&!t,"group-hover:text-default-500":e==="default"&&!t,"text-default-foreground":t&&e==="default","text-primary-foreground":t&&e==="primary","text-success-foreground":t&&e==="success","text-danger-foreground":t&&e==="danger","text-warning-foreground":t&&e==="warning"}));return s.jsxRuntimeExports.jsx("div",{className:p.twMerge("w-[33px] h-[32px] flex items-center justify-center group",l,o),onClick:c,children:a||s.jsxRuntimeExports.jsx("p",{className:u,children:r})})},b=({page:o,total:e,siblings:t=1})=>{if(7+t>=e)return Array.from({length:e},(n,x)=>x+1);const r=Math.max(o-t,1),c=Math.min(o+t,e),l=r>2,u=c<e-2;if(!l&&u){const n=3+2*t;return[...Array.from({length:n},(g,j)=>j+1),"...",e]}else if(l&&!u){const n=3+2*t;return[1,"...",...Array.from({length:n},(g,j)=>e-n+j+1)]}else return[1,"...",...Array.from({length:c-r+1},(x,g)=>r+g),"...",e]},P=o=>o.map(e=>({id:e,name:e})),I=({className:o,color:e="primary",total:t,limit:a=20,page:r=1,siblings:c=1,isLimitSelect:l=!0,dataLimit:u=[10,15,20,50,100,200],onChange:n})=>{const x=Math.ceil(t/a),g=b({page:r,siblings:c,total:x}),j=P(u),E=i=>{i!=="..."&&n&&n({limit:a,page:Number(i)})},N=()=>{r!==1&&n&&n({limit:a,page:r-1})},w=()=>{r===x||x===0||n&&n({limit:a,page:r+1})},S=i=>{n&&n({page:r,limit:i?Number(i):20})};return s.jsxRuntimeExports.jsxs("div",{className:p.twMerge("flex justify-between gap-x-2 items-center",o),children:[l?s.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2.5",children:[s.jsxRuntimeExports.jsx("div",{children:s.jsxRuntimeExports.jsx("span",{className:"text-sm text-gray-500",children:"Filas por pagina"})}),s.jsxRuntimeExports.jsxs(m.Select,{value:a==null?void 0:a.toString(),onValueChange:S,children:[s.jsxRuntimeExports.jsx(m.SelectTrigger,{className:"min-w-20",children:s.jsxRuntimeExports.jsx(m.SelectValue,{placeholder:"Select a fruit"})}),s.jsxRuntimeExports.jsx(m.SelectContent,{children:s.jsxRuntimeExports.jsxs(m.SelectGroup,{children:[s.jsxRuntimeExports.jsx(m.SelectLabel,{children:"Limites"}),j.map(i=>{var f;return s.jsxRuntimeExports.jsx(m.SelectItem,{value:(f=i.id)==null?void 0:f.toString(),children:i.name},i.id)})]})})]}),s.jsxRuntimeExports.jsxs("div",{className:"text-sm text-gray-500",children:[s.jsxRuntimeExports.jsx("span",{className:"text-gray-900",children:`${r} - ${a}`})," de ",s.jsxRuntimeExports.jsx("span",{className:"text-gray-900",children:t})]})]}):null,s.jsxRuntimeExports.jsxs("div",{className:"flex items-center border border-gray-300 bg-white rounded-lg cursor-pointer",children:[s.jsxRuntimeExports.jsx(R,{className:d.clsx(r===1&&"cursor-no-drop"),onClick:N,children:s.jsxRuntimeExports.jsx(y.IoIosArrowBack,{className:p.twMerge("fill-gray-500",d.clsx(r===1&&"fill-gray-300"))})}),g.map((i,f)=>s.jsxRuntimeExports.jsx(R,{text:i,active:r===i,color:e,onClick:()=>E(i),className:"border-l"},f)),s.jsxRuntimeExports.jsx(R,{className:d.clsx("border-l",(r===x||x===0)&&"cursor-no-drop"),onClick:w,children:s.jsxRuntimeExports.jsx(y.IoIosArrowBack,{className:p.twMerge("fill-gray-500 transform rotate-180",d.clsx((r===x||x===0)&&"fill-gray-300"))})})]})]})},M=({initialPage:o=1,initialLimit:e=20})=>{const[t,a]=h.useState(o),[r,c]=h.useState(e);return{handleSetPagination:h.useCallback(({page:u,limit:n})=>{u!==t&&a(u),n!==r&&c(n)},[r,t]),page:t,limit:r}};exports.Pagination=I;exports.usePagination=M;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../chunks/jsx-runtime-DFswc9zO.js"),p=require("../chunks/bundle-mjs-Bta93uUH.js"),y=require("../chunks/index-CeBD7F1N.js"),h=require("react"),d=require("../chunks/clsx-C11secjj.js"),m=require("../chunks/index-CsBpUUVP.js");require("../chunks/button-DbkElM5k.js");const R=({className:o,color:e="primary",active:t,children:a,text:r,onClick:c})=>{const l=d.clsx({"bg-primary":e==="primary"&&t,"bg-success":e==="success"&&t,"bg-danger":e==="danger"&&t,"bg-warning":e==="warning"&&t,"bg-default":e==="default"&&t}),u=p.twMerge(d.clsx("text-sm",{"group-hover:text-primary-500":e==="primary"&&!t,"group-hover:text-success-500":e==="success"&&!t,"group-hover:text-danger-500":e==="danger"&&!t,"group-hover:text-warning-500":e==="warning"&&!t,"group-hover:text-default-500":e==="default"&&!t,"text-default-foreground":t&&e==="default","text-primary-foreground":t&&e==="primary","text-success-foreground":t&&e==="success","text-danger-foreground":t&&e==="danger","text-warning-foreground":t&&e==="warning"}));return s.jsxRuntimeExports.jsx("div",{className:p.twMerge("w-[33px] h-[32px] flex items-center justify-center group",l,o),onClick:c,children:a||s.jsxRuntimeExports.jsx("p",{className:u,children:r})})},b=({page:o,total:e,siblings:t=1})=>{if(7+t>=e)return Array.from({length:e},(n,x)=>x+1);const r=Math.max(o-t,1),c=Math.min(o+t,e),l=r>2,u=c<e-2;if(!l&&u){const n=3+2*t;return[...Array.from({length:n},(g,j)=>j+1),"...",e]}else if(l&&!u){const n=3+2*t;return[1,"...",...Array.from({length:n},(g,j)=>e-n+j+1)]}else return[1,"...",...Array.from({length:c-r+1},(x,g)=>r+g),"...",e]},P=o=>o.map(e=>({id:e,name:e})),I=({className:o,color:e="primary",total:t,limit:a=20,page:r=1,siblings:c=1,isLimitSelect:l=!0,dataLimit:u=[10,15,20,50,100,200],onChange:n})=>{const x=Math.ceil(t/a),g=b({page:r,siblings:c,total:x}),j=P(u),E=i=>{i!=="..."&&n&&n({limit:a,page:Number(i)})},N=()=>{r!==1&&n&&n({limit:a,page:r-1})},w=()=>{r===x||x===0||n&&n({limit:a,page:r+1})},S=i=>{n&&n({page:r,limit:i?Number(i):20})};return s.jsxRuntimeExports.jsxs("div",{className:p.twMerge("flex justify-between gap-x-2 items-center",o),children:[l?s.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2.5",children:[s.jsxRuntimeExports.jsx("div",{children:s.jsxRuntimeExports.jsx("span",{className:"text-sm text-gray-500",children:"Filas por pagina"})}),s.jsxRuntimeExports.jsxs(m.Select,{value:a==null?void 0:a.toString(),onValueChange:S,children:[s.jsxRuntimeExports.jsx(m.SelectTrigger,{className:"min-w-20",children:s.jsxRuntimeExports.jsx(m.SelectValue,{placeholder:"Select a fruit"})}),s.jsxRuntimeExports.jsx(m.SelectContent,{children:s.jsxRuntimeExports.jsxs(m.SelectGroup,{children:[s.jsxRuntimeExports.jsx(m.SelectLabel,{children:"Limites"}),j.map(i=>{var f;return s.jsxRuntimeExports.jsx(m.SelectItem,{value:(f=i.id)==null?void 0:f.toString(),children:i.name},i.id)})]})})]}),s.jsxRuntimeExports.jsxs("div",{className:"text-sm text-gray-500",children:[s.jsxRuntimeExports.jsx("span",{className:"text-gray-900",children:`${r} - ${a}`})," de ",s.jsxRuntimeExports.jsx("span",{className:"text-gray-900",children:t})]})]}):null,s.jsxRuntimeExports.jsxs("div",{className:"flex items-center border border-gray-300 bg-white rounded-lg cursor-pointer",children:[s.jsxRuntimeExports.jsx(R,{className:d.clsx(r===1&&"cursor-no-drop"),onClick:N,children:s.jsxRuntimeExports.jsx(y.IoIosArrowBack,{className:p.twMerge("fill-gray-500",d.clsx(r===1&&"fill-gray-300"))})}),g.map((i,f)=>s.jsxRuntimeExports.jsx(R,{text:i,active:r===i,color:e,onClick:()=>E(i),className:"border-l"},f)),s.jsxRuntimeExports.jsx(R,{className:d.clsx("border-l",(r===x||x===0)&&"cursor-no-drop"),onClick:w,children:s.jsxRuntimeExports.jsx(y.IoIosArrowBack,{className:p.twMerge("fill-gray-500 transform rotate-180",d.clsx((r===x||x===0)&&"fill-gray-300"))})})]})]})},M=({initialPage:o=1,initialLimit:e=20})=>{const[t,a]=h.useState(o),[r,c]=h.useState(e);return{handleSetPagination:h.useCallback(({page:u,limit:n})=>{u!==t&&a(u),n!==r&&c(n)},[r,t]),page:t,limit:r}};exports.Pagination=I;exports.usePagination=M;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -3,7 +3,7 @@ import { t as f } from "../chunks/bundle-mjs-kGHm2Pod.js";
3
3
  import { I as j } from "../chunks/index-DK44x_HP.js";
4
4
  import { useState as y, useCallback as P } from "react";
5
5
  import { c as g } from "../chunks/clsx-OuTLNxxd.js";
6
- import { S as I, a as C, b as R, c as A, d as L, e as k, f as F } from "../chunks/index-mYE_k9Xd.js";
6
+ import { S as I, a as C, b as R, c as A, d as L, e as k, f as F } from "../chunks/index-aJH5hxzX.js";
7
7
  import "../chunks/button-DY6HAc8R.js";
8
8
  const p = ({
9
9
  className: c,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../chunks/jsx-runtime-DFswc9zO.js"),e=require("react"),h=require("../chunks/bundle-mjs-Bta93uUH.js"),A=require("../chunks/tooltip-DnCVyxKr.js"),K=require("../chunks/clsx-C11secjj.js"),w=require("../chunks/checkbox-C23sBMh5.js"),C=require("../chunks/v4-CqU37_Sa.js"),N=e.memo(({children:s,className:o,...n})=>{const r=e.useMemo(()=>h.twMerge("min-h-[100px] sticky top-0 z-10",o),[o]),x=e.useMemo(()=>e.Children.map(s,l=>e.isValidElement(l)?e.cloneElement(l,{...n}):l),[s,n]);return t.jsxRuntimeExports.jsx("thead",{className:r,children:x})});N.displayName="TableHeader";const E=e.memo(({children:s,className:o,style:n={},icon:r=null,text:x="",size:l,header:a})=>{const b=e.useMemo(()=>h.twMerge("px-2 border-b border-divider",o),[o]),u=e.useMemo(()=>({...n,width:l?`${l}px`:n.width,minWidth:l?`${l}px`:n.minWidth}),[n,l]),c=!s||typeof s=="string"&&s.trim()==="";return t.jsxRuntimeExports.jsx("th",{className:b,style:u,children:c?t.jsxRuntimeExports.jsxs("div",{className:"flex justify-between items-center gap-x-2 font-medium",children:[t.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[t.jsxRuntimeExports.jsx("p",{className:"line-clamp-1 text-xs text-gray-500 dark:text-foreground-500 text-left",children:x}),(a==null?void 0:a.information)&&t.jsxRuntimeExports.jsx(A.Tooltip,{content:(a==null?void 0:a.information)||"",children:t.jsxRuntimeExports.jsx("svg",{"aria-hidden":"true",role:"img",className:"text-default-300 cursor-pointer dark:text-foreground-500",width:16,height:16,viewBox:"0 0 24 24",children:t.jsxRuntimeExports.jsxs("g",{fill:"none",children:[t.jsxRuntimeExports.jsx("circle",{cx:12,cy:12,r:10,stroke:"currentColor",strokeWidth:"1.5"}),t.jsxRuntimeExports.jsx("path",{stroke:"currentColor",strokeLinecap:"round",strokeWidth:"1.5",d:"M12 17v-6"}),t.jsxRuntimeExports.jsx("circle",{cx:1,cy:1,r:1,fill:"currentColor",transform:"matrix(1 0 0 -1 11 9)"})]})})})]}),t.jsxRuntimeExports.jsx("div",{className:"flex-1 flex",children:r})]}):s})});E.displayName="TableHeaderColumn";const H={color:"primary",disabledKeys:[],isChecks:!0,selectKeys:[],isActions:!0,widthAction:100,totalColumn:0},M=e.createContext(H),R=()=>e.useContext(M),T=e.memo(({children:s,className:o,data:n=[],textNoData:r="No hay información",loading:x=!1,loadingText:l="Cargando ...",...a})=>{const{totalColumn:b,isActions:u,isChecks:c}=R(),p=Number(b)+Number(u)+Number(c),d=e.useMemo(()=>h.twMerge(o),[o]),f=e.useMemo(()=>typeof s=="function"?n.map((i,j)=>{const y=s({item:i});return e.isValidElement(y)?e.cloneElement(y,{key:j,...a}):null}):e.Children.map(s,i=>e.isValidElement(i)?e.cloneElement(i,{...a}):i),[s,n,a]);let m=null;return x?m=t.jsxRuntimeExports.jsx("tr",{className:"border-b border-gray-200",children:t.jsxRuntimeExports.jsx("td",{className:"px-2 py-2.5 w-full",colSpan:p,children:t.jsxRuntimeExports.jsx("div",{className:"flex justify-center relative",children:t.jsxRuntimeExports.jsx("p",{className:"line-clamp-1 text-sm text-gray-900",children:l})})})}):n.length===0&&(m=t.jsxRuntimeExports.jsx("tr",{className:"border-b border-gray-200",children:t.jsxRuntimeExports.jsx("td",{className:"px-2 py-2.5 w-full",colSpan:p,children:t.jsxRuntimeExports.jsx("div",{className:"flex justify-center",children:t.jsxRuntimeExports.jsx("p",{className:"line-clamp-1 text-sm text-gray-900",children:r})})})})),t.jsxRuntimeExports.jsxs("tbody",{className:d,children:[f,m]})});T.displayName="TableBody";const k=e.memo(({children:s,className:o,keyCurrent:n,onChangeCheck:r,disabled:x,isCheck:l=!0})=>{const a=e.useMemo(()=>C.v4(),[]),{isChecks:b,selectKeys:u,disabledKeys:c,color:p}=R(),d=e.useMemo(()=>u==null?void 0:u.some(j=>j.id===n.id),[u,n.id]),f=e.useMemo(()=>c==null?void 0:c.some(j=>j===n.id),[c,n.id]),m=j=>{f||x||r==null||r(n,j)},i=e.useMemo(()=>h.twMerge("relative border-b border-divider min-h-[45px] h-[45px] transition-colors duration-200 ease-in-out",K.clsx({"bg-content1 dark:hover:bg-default-100 hover:bg-default-100":!d,"bg-default-100 dark:bg-default-200":d}),o),[d,o]);return t.jsxRuntimeExports.jsxs("tr",{className:i,children:[b&&t.jsxRuntimeExports.jsx("td",{className:"px-2 py-1",children:l&&t.jsxRuntimeExports.jsx(w.Checkbox,{id:a,onChange:j=>m(j.target.checked),checked:d||!1,className:"flex justify-center",disabled:f||x,color:p})}),s]})});k.displayName="TableBodyRow";const S=e.memo(({children:s,className:o,text:n})=>{const r=e.useMemo(()=>h.twMerge("px-2 py-1 text-gray-900 dark:text-default-500",o),[o]),x=!s||typeof s=="string"&&s.trim()==="";return t.jsxRuntimeExports.jsx("td",{className:r,children:x?t.jsxRuntimeExports.jsx("p",{className:"line-clamp-1 text-sm ",children:n}):s})});S.displayName="TableBodyColumn";const v=e.memo(({children:s,className:o,dataHeader:n=[],valueCheck:r=!1,disabledCheck:x,onChangeCheck:l,...a})=>{const b=e.useMemo(()=>C.v4(),[]),{isChecks:u,widthAction:c,isActions:p,color:d}=R(),f=i=>{x||l==null||l(i)},m=e.useMemo(()=>typeof s=="function"?n.map((i,j)=>{const y=s({item:i});return e.isValidElement(y)?e.cloneElement(y,{key:j,...a}):null}):e.Children.map(s,i=>e.isValidElement(i)?e.cloneElement(i,{...a}):i),[s,n,a]);return t.jsxRuntimeExports.jsxs("tr",{className:h.twMerge("bg-gray-50 dark:bg-default-100 h-[50px]",o),children:[u&&t.jsxRuntimeExports.jsx(E,{className:"min-w-[40px] w-[40px]",children:t.jsxRuntimeExports.jsx(w.Checkbox,{id:b,onChange:i=>f(i.target.checked),checked:r,className:"flex justify-center",color:d})}),m,p&&t.jsxRuntimeExports.jsx(E,{color:d,style:{minWidth:`${c}px`,width:`${c}px`}})]})});v.displayName="TableHeaderRow";const g=e.memo(({children:s,className:o="",style:n={}})=>{const r=e.useMemo(()=>h.twMerge("table-column-search px-2 border-b border-gray-200",o),[o]);return t.jsxRuntimeExports.jsx("th",{className:r,style:n,children:s})});g.displayName="TableSearchColumn";const V=e.memo(({children:s,className:o,dataHeader:n=[],...r})=>{const{isChecks:x,widthAction:l,isActions:a}=R(),b=e.useMemo(()=>h.twMerge("bg-gray-50 dark:bg-default-100 h-[50px]",o),[o]),u=e.useMemo(()=>typeof s=="function"?n.map((c,p)=>{const d=s({item:c});return e.isValidElement(d)?e.cloneElement(d,{key:p,...r}):null}):e.Children.map(s,c=>e.isValidElement(c)?e.cloneElement(c,{...r}):c),[s,n,r]);return t.jsxRuntimeExports.jsxs("tr",{className:b,children:[x&&t.jsxRuntimeExports.jsx(g,{className:"min-w-[40px] w-[40px]"}),u,a&&t.jsxRuntimeExports.jsx(g,{style:{minWidth:`${l}px`,width:`${l}px`}})]})});V.displayName="TableSearchRow";const B=({className:s,children:o,classNameContainer:n,...r})=>{const{color:x="primary",disabledKeys:l,isChecks:a=!0,selectKeys:b=[],isActions:u=!0,widthAction:c=100,dataHeader:p}=r,d=e.useMemo(()=>h.twMerge("table-main-container w-full border-collapse table-auto",s),[s]),f=e.useMemo(()=>h.twMerge("max-w-full overflow-x-auto overflow-y-auto bg-content1",n),[n]);return t.jsxRuntimeExports.jsx(M.Provider,{value:{color:x,disabledKeys:l,isChecks:a,selectKeys:b,isActions:u,widthAction:c,totalColumn:(p==null?void 0:p.length)||0},children:t.jsxRuntimeExports.jsx("div",{className:f,children:t.jsxRuntimeExports.jsx("table",{className:d,children:e.Children.map(o,m=>e.isValidElement(m)?e.cloneElement(m,{...r}):m)})})})},q=Object.assign(B,{Header:N,HeaderRow:v,HeaderColumn:E,SearchRow:V,SearchColumn:g,Body:T,BodyRow:k,BodyColumn:S}),W=({initialDisabledKeys:s=[],initialSelectKey:o=[],initialValueSearch:n={}})=>{const[r,x]=e.useState(o),[l,a]=e.useState(s),[b,u]=e.useState(n),c=e.useCallback(m=>{x(i=>i.some(y=>y.id===m.id)?i.filter(y=>y.id!==m.id):[...i,m])},[]),p=e.useCallback(m=>{x(m)},[]),d=e.useCallback(m=>{a(m)},[]),f=e.useCallback((m,i)=>{u(j=>{const y={...j};return i?y[m]=i:delete y[m],y})},[]);return{selectKeys:r,disabledKeys:l,valueSearch:b,handleSelectKeys:p,handleSelectKey:c,handleDisabledKeys:d,handleSetValueSearch:f}};exports.Table=q;exports.TableHOC=B;exports.useTable=W;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../chunks/jsx-runtime-DFswc9zO.js"),e=require("react"),h=require("../chunks/bundle-mjs-Bta93uUH.js"),A=require("../chunks/tooltip-DnCVyxKr.js"),K=require("../chunks/clsx-C11secjj.js"),w=require("../chunks/checkbox-C23sBMh5.js"),C=require("../chunks/v4-CqU37_Sa.js"),N=e.memo(({children:s,className:o,...n})=>{const r=e.useMemo(()=>h.twMerge("min-h-[100px] sticky top-0 z-10",o),[o]),x=e.useMemo(()=>e.Children.map(s,l=>e.isValidElement(l)?e.cloneElement(l,{...n}):l),[s,n]);return t.jsxRuntimeExports.jsx("thead",{className:r,children:x})});N.displayName="TableHeader";const E=e.memo(({children:s,className:o,style:n={},icon:r=null,text:x="",size:l,header:a})=>{const b=e.useMemo(()=>h.twMerge("px-2 border-b border-divider",o),[o]),u=e.useMemo(()=>({...n,width:l?`${l}px`:n.width,minWidth:l?`${l}px`:n.minWidth}),[n,l]),c=!s||typeof s=="string"&&s.trim()==="";return t.jsxRuntimeExports.jsx("th",{className:b,style:u,children:c?t.jsxRuntimeExports.jsxs("div",{className:"flex justify-between items-center gap-x-2 font-medium",children:[t.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-x-2",children:[t.jsxRuntimeExports.jsx("p",{className:"line-clamp-1 text-xs text-gray-500 dark:text-foreground-500 text-left",children:x}),(a==null?void 0:a.information)&&t.jsxRuntimeExports.jsx(A.Tooltip,{content:(a==null?void 0:a.information)||"",children:t.jsxRuntimeExports.jsx("svg",{"aria-hidden":"true",role:"img",className:"text-default-300 cursor-pointer dark:text-foreground-500",width:16,height:16,viewBox:"0 0 24 24",children:t.jsxRuntimeExports.jsxs("g",{fill:"none",children:[t.jsxRuntimeExports.jsx("circle",{cx:12,cy:12,r:10,stroke:"currentColor",strokeWidth:"1.5"}),t.jsxRuntimeExports.jsx("path",{stroke:"currentColor",strokeLinecap:"round",strokeWidth:"1.5",d:"M12 17v-6"}),t.jsxRuntimeExports.jsx("circle",{cx:1,cy:1,r:1,fill:"currentColor",transform:"matrix(1 0 0 -1 11 9)"})]})})})]}),t.jsxRuntimeExports.jsx("div",{className:"flex-1 flex",children:r})]}):s})});E.displayName="TableHeaderColumn";const H={color:"primary",disabledKeys:[],isChecks:!0,selectKeys:[],isActions:!0,widthAction:100,totalColumn:0},M=e.createContext(H),R=()=>e.useContext(M),T=e.memo(({children:s,className:o,data:n=[],textNoData:r="No hay información",loading:x=!1,loadingText:l="Cargando ...",...a})=>{const{totalColumn:b,isActions:u,isChecks:c}=R(),p=Number(b)+Number(u)+Number(c),d=e.useMemo(()=>h.twMerge(o),[o]),y=e.useMemo(()=>typeof s=="function"?n.map((i,j)=>{const f=s({item:i});return e.isValidElement(f)?e.cloneElement(f,{key:j,...a}):null}):e.Children.map(s,i=>e.isValidElement(i)?e.cloneElement(i,{...a}):i),[s,n,a]);let m=null;return x?m=t.jsxRuntimeExports.jsx("tr",{className:"border-b border-gray-200",children:t.jsxRuntimeExports.jsx("td",{className:"px-2 py-2.5 w-full",colSpan:p,children:t.jsxRuntimeExports.jsx("div",{className:"flex justify-center relative",children:t.jsxRuntimeExports.jsx("p",{className:"line-clamp-1 text-sm text-gray-900",children:l})})})}):n.length===0&&(m=t.jsxRuntimeExports.jsx("tr",{className:"border-b border-gray-200",children:t.jsxRuntimeExports.jsx("td",{className:"px-2 py-2.5 w-full",colSpan:p,children:t.jsxRuntimeExports.jsx("div",{className:"flex justify-center",children:t.jsxRuntimeExports.jsx("p",{className:"line-clamp-1 text-sm text-gray-900",children:r})})})})),t.jsxRuntimeExports.jsxs("tbody",{className:d,children:[y,m]})});T.displayName="TableBody";const k=e.memo(({children:s,className:o,keyCurrent:n,onChangeCheck:r,disabled:x,isCheck:l=!0})=>{const a=e.useMemo(()=>C.v4(),[]),{isChecks:b,selectKeys:u,disabledKeys:c,color:p}=R(),d=e.useMemo(()=>u==null?void 0:u.some(j=>j.id===n.id),[u,n.id]),y=e.useMemo(()=>c==null?void 0:c.some(j=>j===n.id),[c,n.id]),m=j=>{y||x||r==null||r(n,j)},i=e.useMemo(()=>h.twMerge("relative border-b border-divider min-h-[45px] h-[45px] transition-colors duration-200 ease-in-out",K.clsx({"bg-content1 dark:hover:bg-default-100 hover:bg-default-100":!d,"bg-default-100 dark:bg-default-200":d}),o),[d,o]);return t.jsxRuntimeExports.jsxs("tr",{className:i,children:[b&&t.jsxRuntimeExports.jsx("td",{className:"px-2 py-1",children:l&&t.jsxRuntimeExports.jsx(w.Checkbox,{id:a,onChange:j=>m(j.target.checked),checked:d||!1,className:"flex justify-center",disabled:y||x,color:p})}),s]})});k.displayName="TableBodyRow";const S=e.memo(({children:s,className:o,text:n})=>{const r=e.useMemo(()=>h.twMerge("px-2 py-1 text-gray-900 dark:text-default-500",o),[o]),x=!s||typeof s=="string"&&s.trim()==="";return t.jsxRuntimeExports.jsx("td",{className:r,children:x?t.jsxRuntimeExports.jsx("p",{className:"line-clamp-1 text-sm ",children:n}):s})});S.displayName="TableBodyColumn";const v=e.memo(({children:s,className:o,dataHeader:n=[],valueCheck:r=!1,disabledCheck:x,onChangeCheck:l,...a})=>{const b=e.useMemo(()=>C.v4(),[]),{isChecks:u,widthAction:c,isActions:p,color:d}=R(),y=i=>{x||l==null||l(i)},m=e.useMemo(()=>typeof s=="function"?n.map((i,j)=>{const f=s({item:i});return e.isValidElement(f)?e.cloneElement(f,{key:j,...a}):null}):e.Children.map(s,i=>e.isValidElement(i)?e.cloneElement(i,{...a}):i),[s,n,a]);return t.jsxRuntimeExports.jsxs("tr",{className:h.twMerge("bg-gray-50 dark:bg-default-100 h-[50px]",o),children:[u&&t.jsxRuntimeExports.jsx(E,{className:"min-w-[40px] w-[40px]",children:t.jsxRuntimeExports.jsx(w.Checkbox,{id:b,onChange:i=>y(i.target.checked),checked:r,className:"flex justify-center",color:d})}),m,p&&t.jsxRuntimeExports.jsx(E,{color:d,style:{minWidth:`${c}px`,width:`${c}px`}})]})});v.displayName="TableHeaderRow";const g=e.memo(({children:s,className:o="",style:n={}})=>{const r=e.useMemo(()=>h.twMerge("table-column-search px-2 border-b border-divider",o),[o]);return t.jsxRuntimeExports.jsx("th",{className:r,style:n,children:s})});g.displayName="TableSearchColumn";const V=e.memo(({children:s,className:o,dataHeader:n=[],...r})=>{const{isChecks:x,widthAction:l,isActions:a}=R(),b=e.useMemo(()=>h.twMerge("bg-gray-50 dark:bg-default-100 h-[50px]",o),[o]),u=e.useMemo(()=>typeof s=="function"?n.map((c,p)=>{const d=s({item:c});return e.isValidElement(d)?e.cloneElement(d,{key:p,...r}):null}):e.Children.map(s,c=>e.isValidElement(c)?e.cloneElement(c,{...r}):c),[s,n,r]);return t.jsxRuntimeExports.jsxs("tr",{className:b,children:[x&&t.jsxRuntimeExports.jsx(g,{className:"min-w-[40px] w-[40px]"}),u,a&&t.jsxRuntimeExports.jsx(g,{style:{minWidth:`${l}px`,width:`${l}px`}})]})});V.displayName="TableSearchRow";const B=({className:s,children:o,classNameContainer:n,...r})=>{const{color:x="primary",disabledKeys:l,isChecks:a=!0,selectKeys:b=[],isActions:u=!0,widthAction:c=100,dataHeader:p}=r,d=e.useMemo(()=>h.twMerge("table-main-container w-full border-collapse table-auto",s),[s]),y=e.useMemo(()=>h.twMerge("max-w-full overflow-x-auto overflow-y-auto bg-content1",n),[n]);return t.jsxRuntimeExports.jsx(M.Provider,{value:{color:x,disabledKeys:l,isChecks:a,selectKeys:b,isActions:u,widthAction:c,totalColumn:(p==null?void 0:p.length)||0},children:t.jsxRuntimeExports.jsx("div",{className:y,children:t.jsxRuntimeExports.jsx("table",{className:d,children:e.Children.map(o,m=>e.isValidElement(m)?e.cloneElement(m,{...r}):m)})})})},q=Object.assign(B,{Header:N,HeaderRow:v,HeaderColumn:E,SearchRow:V,SearchColumn:g,Body:T,BodyRow:k,BodyColumn:S}),W=({initialDisabledKeys:s=[],initialSelectKey:o=[],initialValueSearch:n={}})=>{const[r,x]=e.useState(o),[l,a]=e.useState(s),[b,u]=e.useState(n),c=e.useCallback(m=>{x(i=>i.some(f=>f.id===m.id)?i.filter(f=>f.id!==m.id):[...i,m])},[]),p=e.useCallback(m=>{x(m)},[]),d=e.useCallback(m=>{a(m)},[]),y=e.useCallback((m,i)=>{u(j=>{const f={...j};return i?f[m]=i:delete f[m],f})},[]);return{selectKeys:r,disabledKeys:l,valueSearch:b,handleSelectKeys:p,handleSelectKey:c,handleDisabledKeys:d,handleSetValueSearch:y}};exports.Table=q;exports.TableHOC=B;exports.useTable=W;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../src/components/table/header/table-header.tsx","../../src/components/table/header/table-header-column.tsx","../../src/components/table/context/table.context.tsx","../../src/components/table/hook/use-table-context.tsx","../../src/components/table/body/table-body.tsx","../../src/components/table/body/table-body-row.tsx","../../src/components/table/body/table-body-column.tsx","../../src/components/table/header/table-header-row.tsx","../../src/components/table/search/table-search-column.tsx","../../src/components/table/search/table-search-row.tsx","../../src/components/table/table.tsx","../../src/components/table/hook/use-table.tsx"],"sourcesContent":["import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableHeaderProps } from \"../interface/table.interface\";\n\nexport const TableHeader: FC<TableHeaderProps> = React.memo(({ children, className, ...props }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"min-h-[100px] sticky top-0 z-10\", className), [className]);\n\n\tconst clonedChildren = useMemo(\n\t\t() => React.Children.map(children, (child) => (isValidElement(child) ? React.cloneElement(child as ReactElement, { ...props }) : child)),\n\t\t[children, props],\n\t);\n\n\treturn <thead className={mergedClass}>{clonedChildren}</thead>;\n});\nTableHeader.displayName = \"TableHeader\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { type TableHeaderColumnProps } from \"../interface/table.interface\";\nimport { Tooltip } from \"@/components/tooltip\";\n\nexport const TableHeaderColumn: FC<TableHeaderColumnProps> = React.memo(\n\t({ children, className, style = {}, icon = null, text = \"\", size, header }) => {\n\t\tconst mergedClass = useMemo(() => twMerge(\"px-2 border-b border-divider\", className), [className]);\n\n\t\tconst mergedStyle = useMemo(\n\t\t\t() => ({\n\t\t\t\t...style,\n\t\t\t\twidth: size ? `${size}px` : style.width,\n\t\t\t\tminWidth: size ? `${size}px` : style.minWidth,\n\t\t\t}),\n\t\t\t[style, size],\n\t\t);\n\n\t\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\t\treturn (\n\t\t\t<th className={mergedClass} style={mergedStyle}>\n\t\t\t\t{isChildrenEmpty ? (\n\t\t\t\t\t<div className=\"flex justify-between items-center gap-x-2 font-medium\">\n\t\t\t\t\t\t<div className=\"flex items-center gap-x-2\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-xs text-gray-500 dark:text-foreground-500 text-left\">{text}</p>\n\t\t\t\t\t\t\t{header?.information && (\n\t\t\t\t\t\t\t\t<Tooltip content={header?.information || \"\"}>\n\t\t\t\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"text-default-300 cursor-pointer dark:text-foreground-500\"\n\t\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<g fill=\"none\">\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={12} cy={12} r={10} stroke=\"currentColor\" strokeWidth=\"1.5\" />\n\t\t\t\t\t\t\t\t\t\t\t<path stroke=\"currentColor\" strokeLinecap=\"round\" strokeWidth=\"1.5\" d=\"M12 17v-6\" />\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={1} cy={1} r={1} fill=\"currentColor\" transform=\"matrix(1 0 0 -1 11 9)\" />\n\t\t\t\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex-1 flex\">{icon}</div>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\tchildren\n\t\t\t\t)}\n\t\t\t</th>\n\t\t);\n\t},\n);\nTableHeaderColumn.displayName = \"TableHeaderColumn\";\n","import { createContext } from \"react\";\n\nimport { type TableContextProps } from \"../interface/table.interface\";\n\nconst initialValues: TableContextProps = {\n\tcolor: \"primary\",\n\tdisabledKeys: [],\n\tisChecks: true,\n\tselectKeys: [],\n\tisActions: true,\n\twidthAction: 100,\n\ttotalColumn: 0,\n};\n\nexport const TableContext = createContext<TableContextProps>(initialValues);\n","import { useContext } from \"react\";\r\nimport { TableContext } from \"../context/table.context\";\r\n\r\nexport const useTableContext = () => {\r\n\treturn useContext(TableContext);\r\n};\r\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableBodyProps, type TableShareProps } from \"../interface/table.interface\";\n\nexport const TableBody: FC<TableBodyProps> = React.memo(\n\t({ children, className, data = [], textNoData = \"No hay información\", loading = false, loadingText = \"Cargando ...\", ...props }) => {\n\t\tconst { totalColumn, isActions, isChecks } = useTableContext();\n\t\tconst total = Number(totalColumn) + Number(isActions) + Number(isChecks);\n\n\t\tconst mergedClass = useMemo(() => twMerge(className), [className]);\n\n\t\tconst renderedRows = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn data.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, data, props]);\n\n\t\tlet fallbackContent: React.ReactNode = null;\n\n\t\tif (loading) {\n\t\t\tfallbackContent = (\n\t\t\t\t<tr className=\"border-b border-gray-200\">\n\t\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t\t<div className=\"flex justify-center relative\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-gray-900\">{loadingText}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t);\n\t\t} else if (data.length === 0) {\n\t\t\tfallbackContent = (\n\t\t\t\t<tr className=\"border-b border-gray-200\">\n\t\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t\t<div className=\"flex justify-center\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-gray-900\">{textNoData}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<tbody className={mergedClass}>\n\t\t\t\t{renderedRows}\n\t\t\t\t{fallbackContent}\n\t\t\t</tbody>\n\t\t);\n\t},\n);\nTableBody.displayName = \"TableBody\";\n","import { twMerge } from \"tailwind-merge\";\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { memo, useMemo } from \"react\";\nimport clsx from \"clsx\";\nimport { type TableBodyRowProps } from \"../interface/table.interface\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\n\nexport const TableBodyRow = memo(({ children, className, keyCurrent, onChangeCheck, disabled, isCheck = true }: TableBodyRowProps) => {\n\tconst uui = useMemo(() => uuidv4(), []);\n\tconst { isChecks, selectKeys, disabledKeys, color } = useTableContext();\n\n\tconst check = useMemo(() => selectKeys?.some((el) => el.id === keyCurrent.id), [selectKeys, keyCurrent.id]);\n\n\tconst disabledCheck = useMemo(() => disabledKeys?.some((el) => el === keyCurrent.id), [disabledKeys, keyCurrent.id]);\n\n\tconst handleChange = (value: boolean) => {\n\t\tif (disabledCheck || disabled) return;\n\t\tonChangeCheck?.(keyCurrent, value);\n\t};\n\n\tconst rowClass = useMemo(\n\t\t() =>\n\t\t\ttwMerge(\n\t\t\t\t\"relative border-b border-divider min-h-[45px] h-[45px] transition-colors duration-200 ease-in-out\",\n\t\t\t\tclsx({\n\t\t\t\t\t\"bg-content1 dark:hover:bg-default-100 hover:bg-default-100\": !check,\n\t\t\t\t\t\"bg-default-100 dark:bg-default-200\": check,\n\t\t\t\t}),\n\t\t\t\tclassName,\n\t\t\t),\n\t\t[check, className],\n\t);\n\n\treturn (\n\t\t<tr className={rowClass}>\n\t\t\t{isChecks && (\n\t\t\t\t<td className=\"px-2 py-1\">\n\t\t\t\t\t{isCheck && (\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={check || false}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tdisabled={disabledCheck || disabled}\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</td>\n\t\t\t)}\n\t\t\t{children}\n\t\t</tr>\n\t);\n});\n\nTableBodyRow.displayName = \"TableBodyRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableBodyColumnProps } from \"../interface/table.interface\";\n\nexport const TableBodyColumn: FC<TableBodyColumnProps> = React.memo(({ children, className, text }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"px-2 py-1 text-gray-900 dark:text-default-500\", className), [className]);\n\n\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\treturn <td className={mergedClass}>{isChildrenEmpty ? <p className=\"line-clamp-1 text-sm \">{text}</p> : children}</td>;\n});\nTableBodyColumn.displayName = \"TableBodyColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { v4 as uuidv4 } from \"uuid\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableHeaderRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableHeaderColumn } from \"./table-header-column\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\nexport const TableHeaderRow: FC<TableHeaderRowProps> = React.memo(\n\t({ children, className, dataHeader = [], valueCheck = false, disabledCheck, onChangeCheck, ...props }) => {\n\t\tconst uui = useMemo(() => uuidv4(), []);\n\t\tconst { isChecks, widthAction, isActions, color } = useTableContext();\n\n\t\tconst handleChange = (value: boolean) => {\n\t\t\tif (disabledCheck) return;\n\t\t\tonChangeCheck?.(value);\n\t\t};\n\n\t\tconst headerChildren = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, dataHeader, props]);\n\n\t\treturn (\n\t\t\t<tr className={twMerge(\"bg-gray-50 dark:bg-default-100 h-[50px]\", className)}>\n\t\t\t\t{isChecks && (\n\t\t\t\t\t<TableHeaderColumn className=\"min-w-[40px] w-[40px]\">\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={valueCheck}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TableHeaderColumn>\n\t\t\t\t)}\n\n\t\t\t\t{headerChildren}\n\n\t\t\t\t{isActions && <TableHeaderColumn color={color} style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t\t</tr>\n\t\t);\n\t},\n);\nTableHeaderRow.displayName = \"TableHeaderRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableSearchColumnProps } from \"../interface/table.interface\";\n\nexport const TableSearchColumn: FC<TableSearchColumnProps> = React.memo(({ children, className = \"\", style = {} }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"table-column-search px-2 border-b border-gray-200\", className), [className]);\n\n\treturn (\n\t\t<th className={mergedClass} style={style}>\n\t\t\t{children}\n\t\t</th>\n\t);\n});\nTableSearchColumn.displayName = \"TableSearchColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableSearchRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableSearchColumn } from \"./table-search-column\";\n\nexport const TableSearchRow: FC<TableSearchRowProps> = React.memo(({ children, className, dataHeader = [], ...props }) => {\n\tconst { isChecks, widthAction, isActions } = useTableContext();\n\n\tconst mergedClass = useMemo(() => twMerge(\"bg-gray-50 dark:bg-default-100 h-[50px]\", className), [className]);\n\n\tconst renderedChildren = useMemo(() => {\n\t\tif (typeof children === \"function\") {\n\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t...props,\n\t\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t} else {\n\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\tisValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t...props,\n\t\t\t\t\t })\n\t\t\t\t\t: child,\n\t\t\t);\n\t\t}\n\t}, [children, dataHeader, props]);\n\n\treturn (\n\t\t<tr className={mergedClass}>\n\t\t\t{isChecks && <TableSearchColumn className=\"min-w-[40px] w-[40px]\" />}\n\t\t\t{renderedChildren}\n\t\t\t{isActions && <TableSearchColumn style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t</tr>\n\t);\n});\nTableSearchRow.displayName = \"TableSearchRow\";\n","import { TableHeader } from \"./header/table-header\";\nimport { TableHeaderColumn } from \"./header/table-header-column\";\nimport { twMerge } from \"tailwind-merge\";\nimport { TableBody } from \"./body/table-body\";\nimport { TableBodyRow } from \"./body/table-body-row\";\nimport { TableBodyColumn } from \"./body/table-body-column\";\nimport { TableContext } from \"./context/table.context\";\nimport { TableHeaderRow } from \"./header/table-header-row\";\nimport { TableSearchRow } from \"./search/table-search-row\";\nimport { TableSearchColumn } from \"./search/table-search-column\";\nimport {\n\ttype TableHOCContainerProps,\n\ttype TableProps,\n} from \"./interface/table.interface\";\nimport React, { type ReactElement, isValidElement, useMemo } from \"react\";\n\nexport const TableHOC = ({ className, children, classNameContainer, ...props }: TableProps) => {\n\tconst { color = \"primary\", disabledKeys, isChecks = true, selectKeys = [], isActions = true, widthAction = 100, dataHeader } = props;\n\n\tconst tableClass = useMemo(() => twMerge(\"table-main-container w-full border-collapse table-auto\", className), [className]);\n\tconst containerClass = useMemo(() => twMerge(\"max-w-full overflow-x-auto overflow-y-auto bg-content1\", classNameContainer), [classNameContainer]);\n\n\treturn (\n\t\t<TableContext.Provider\n\t\t\tvalue={{\n\t\t\t\tcolor,\n\t\t\t\tdisabledKeys,\n\t\t\t\tisChecks,\n\t\t\t\tselectKeys,\n\t\t\t\tisActions,\n\t\t\t\twidthAction,\n\t\t\t\ttotalColumn: dataHeader?.length || 0,\n\t\t\t}}\n\t\t>\n\t\t\t<div className={containerClass}>\n\t\t\t\t<table className={tableClass}>\n\t\t\t\t\t{React.Children.map(children, (child) =>\n\t\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t\t? React.cloneElement(child as ReactElement, {\n\t\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t: child,\n\t\t\t\t\t)}\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</TableContext.Provider>\n\t);\n};\n\n\nexport const Table: TableHOCContainerProps = Object.assign(TableHOC, {\n\tHeader: TableHeader,\n\n\tHeaderRow: TableHeaderRow,\n\tHeaderColumn: TableHeaderColumn,\n\n\tSearchRow: TableSearchRow,\n\tSearchColumn: TableSearchColumn,\n\n\tBody: TableBody,\n\n\tBodyRow: TableBodyRow,\n\tBodyColumn: TableBodyColumn,\n});\n","import { useCallback, useState } from \"react\";\n\nimport { type TableKeyCurrent, type TableValueSearchProps } from \"../interface/table-share.interface\";\nimport { type TableHookProps } from \"../interface/table.interface\";\n\ninterface TableProps {\n\tinitialSelectKey?: TableKeyCurrent[];\n\tinitialDisabledKeys?: string[];\n\tinitialValueSearch?: TableValueSearchProps;\n}\n\nexport const useTable = ({ initialDisabledKeys = [], initialSelectKey = [], initialValueSearch = {} }: TableProps): TableHookProps => {\n\tconst [selectKeys, setSelectKeys] = useState<TableKeyCurrent[]>(initialSelectKey);\n\tconst [disabledKeys, setDisabledKeys] = useState<string[]>(initialDisabledKeys);\n\tconst [valueSearch, setValueSearch] = useState<TableValueSearchProps>(initialValueSearch);\n\n\tconst handleSelectKey = useCallback((value: TableKeyCurrent) => {\n\t\tsetSelectKeys((prev) => {\n\t\t\tconst exists = prev.some((el) => el.id === value.id);\n\n\t\t\treturn exists ? prev.filter((el) => el.id !== value.id) : [...prev, value];\n\t\t});\n\t}, []);\n\n\tconst handleSelectKeys = useCallback((value: TableKeyCurrent[]) => {\n\t\tsetSelectKeys(value);\n\t}, []);\n\n\tconst handleDisabledKeys = useCallback((value: string[]) => {\n\t\tsetDisabledKeys(value);\n\t}, []);\n\n\tconst handleSetValueSearch = useCallback((key: string, value: string) => {\n\t\tsetValueSearch((prev) => {\n\t\t\tconst newState = { ...prev };\n\n\t\t\tif (value) newState[key] = value;\n\t\t\telse delete newState[key];\n\n\t\t\treturn newState;\n\t\t});\n\t}, []);\n\n\treturn {\n\t\tselectKeys,\n\t\tdisabledKeys,\n\t\tvalueSearch,\n\t\thandleSelectKeys,\n\t\thandleSelectKey,\n\t\thandleDisabledKeys,\n\t\thandleSetValueSearch,\n\t};\n};\n"],"names":["TableHeader","React","children","className","props","mergedClass","useMemo","twMerge","clonedChildren","child","isValidElement","jsx","TableHeaderColumn","style","icon","text","size","header","mergedStyle","isChildrenEmpty","jsxs","Tooltip","initialValues","TableContext","createContext","useTableContext","useContext","TableBody","data","textNoData","loading","loadingText","totalColumn","isActions","isChecks","total","renderedRows","el","index","fallbackContent","TableBodyRow","memo","keyCurrent","onChangeCheck","disabled","isCheck","uui","uuidv4","selectKeys","disabledKeys","color","check","disabledCheck","handleChange","value","rowClass","clsx","Checkbox","e","TableBodyColumn","TableHeaderRow","dataHeader","valueCheck","widthAction","headerChildren","TableSearchColumn","TableSearchRow","renderedChildren","TableHOC","classNameContainer","tableClass","containerClass","Table","useTable","initialDisabledKeys","initialSelectKey","initialValueSearch","setSelectKeys","useState","setDisabledKeys","valueSearch","setValueSearch","handleSelectKey","useCallback","prev","handleSelectKeys","handleDisabledKeys","handleSetValueSearch","key","newState"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../src/components/table/header/table-header.tsx","../../src/components/table/header/table-header-column.tsx","../../src/components/table/context/table.context.tsx","../../src/components/table/hook/use-table-context.tsx","../../src/components/table/body/table-body.tsx","../../src/components/table/body/table-body-row.tsx","../../src/components/table/body/table-body-column.tsx","../../src/components/table/header/table-header-row.tsx","../../src/components/table/search/table-search-column.tsx","../../src/components/table/search/table-search-row.tsx","../../src/components/table/table.tsx","../../src/components/table/hook/use-table.tsx"],"sourcesContent":["import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableHeaderProps } from \"../interface/table.interface\";\n\nexport const TableHeader: FC<TableHeaderProps> = React.memo(({ children, className, ...props }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"min-h-[100px] sticky top-0 z-10\", className), [className]);\n\n\tconst clonedChildren = useMemo(\n\t\t() => React.Children.map(children, (child) => (isValidElement(child) ? React.cloneElement(child as ReactElement, { ...props }) : child)),\n\t\t[children, props],\n\t);\n\n\treturn <thead className={mergedClass}>{clonedChildren}</thead>;\n});\nTableHeader.displayName = \"TableHeader\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { type TableHeaderColumnProps } from \"../interface/table.interface\";\nimport { Tooltip } from \"@/components/tooltip\";\n\nexport const TableHeaderColumn: FC<TableHeaderColumnProps> = React.memo(\n\t({ children, className, style = {}, icon = null, text = \"\", size, header }) => {\n\t\tconst mergedClass = useMemo(() => twMerge(\"px-2 border-b border-divider\", className), [className]);\n\n\t\tconst mergedStyle = useMemo(\n\t\t\t() => ({\n\t\t\t\t...style,\n\t\t\t\twidth: size ? `${size}px` : style.width,\n\t\t\t\tminWidth: size ? `${size}px` : style.minWidth,\n\t\t\t}),\n\t\t\t[style, size],\n\t\t);\n\n\t\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\t\treturn (\n\t\t\t<th className={mergedClass} style={mergedStyle}>\n\t\t\t\t{isChildrenEmpty ? (\n\t\t\t\t\t<div className=\"flex justify-between items-center gap-x-2 font-medium\">\n\t\t\t\t\t\t<div className=\"flex items-center gap-x-2\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-xs text-gray-500 dark:text-foreground-500 text-left\">{text}</p>\n\t\t\t\t\t\t\t{header?.information && (\n\t\t\t\t\t\t\t\t<Tooltip content={header?.information || \"\"}>\n\t\t\t\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"text-default-300 cursor-pointer dark:text-foreground-500\"\n\t\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<g fill=\"none\">\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={12} cy={12} r={10} stroke=\"currentColor\" strokeWidth=\"1.5\" />\n\t\t\t\t\t\t\t\t\t\t\t<path stroke=\"currentColor\" strokeLinecap=\"round\" strokeWidth=\"1.5\" d=\"M12 17v-6\" />\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={1} cy={1} r={1} fill=\"currentColor\" transform=\"matrix(1 0 0 -1 11 9)\" />\n\t\t\t\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex-1 flex\">{icon}</div>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\tchildren\n\t\t\t\t)}\n\t\t\t</th>\n\t\t);\n\t},\n);\nTableHeaderColumn.displayName = \"TableHeaderColumn\";\n","import { createContext } from \"react\";\n\nimport { type TableContextProps } from \"../interface/table.interface\";\n\nconst initialValues: TableContextProps = {\n\tcolor: \"primary\",\n\tdisabledKeys: [],\n\tisChecks: true,\n\tselectKeys: [],\n\tisActions: true,\n\twidthAction: 100,\n\ttotalColumn: 0,\n};\n\nexport const TableContext = createContext<TableContextProps>(initialValues);\n","import { useContext } from \"react\";\r\nimport { TableContext } from \"../context/table.context\";\r\n\r\nexport const useTableContext = () => {\r\n\treturn useContext(TableContext);\r\n};\r\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableBodyProps, type TableShareProps } from \"../interface/table.interface\";\n\nexport const TableBody: FC<TableBodyProps> = React.memo(\n\t({ children, className, data = [], textNoData = \"No hay información\", loading = false, loadingText = \"Cargando ...\", ...props }) => {\n\t\tconst { totalColumn, isActions, isChecks } = useTableContext();\n\t\tconst total = Number(totalColumn) + Number(isActions) + Number(isChecks);\n\n\t\tconst mergedClass = useMemo(() => twMerge(className), [className]);\n\n\t\tconst renderedRows = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn data.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, data, props]);\n\n\t\tlet fallbackContent: React.ReactNode = null;\n\n\t\tif (loading) {\n\t\t\tfallbackContent = (\n\t\t\t\t<tr className=\"border-b border-gray-200\">\n\t\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t\t<div className=\"flex justify-center relative\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-gray-900\">{loadingText}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t);\n\t\t} else if (data.length === 0) {\n\t\t\tfallbackContent = (\n\t\t\t\t<tr className=\"border-b border-gray-200\">\n\t\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t\t<div className=\"flex justify-center\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-gray-900\">{textNoData}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<tbody className={mergedClass}>\n\t\t\t\t{renderedRows}\n\t\t\t\t{fallbackContent}\n\t\t\t</tbody>\n\t\t);\n\t},\n);\nTableBody.displayName = \"TableBody\";\n","import { twMerge } from \"tailwind-merge\";\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { memo, useMemo } from \"react\";\nimport clsx from \"clsx\";\nimport { type TableBodyRowProps } from \"../interface/table.interface\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\n\nexport const TableBodyRow = memo(({ children, className, keyCurrent, onChangeCheck, disabled, isCheck = true }: TableBodyRowProps) => {\n\tconst uui = useMemo(() => uuidv4(), []);\n\tconst { isChecks, selectKeys, disabledKeys, color } = useTableContext();\n\n\tconst check = useMemo(() => selectKeys?.some((el) => el.id === keyCurrent.id), [selectKeys, keyCurrent.id]);\n\n\tconst disabledCheck = useMemo(() => disabledKeys?.some((el) => el === keyCurrent.id), [disabledKeys, keyCurrent.id]);\n\n\tconst handleChange = (value: boolean) => {\n\t\tif (disabledCheck || disabled) return;\n\t\tonChangeCheck?.(keyCurrent, value);\n\t};\n\n\tconst rowClass = useMemo(\n\t\t() =>\n\t\t\ttwMerge(\n\t\t\t\t\"relative border-b border-divider min-h-[45px] h-[45px] transition-colors duration-200 ease-in-out\",\n\t\t\t\tclsx({\n\t\t\t\t\t\"bg-content1 dark:hover:bg-default-100 hover:bg-default-100\": !check,\n\t\t\t\t\t\"bg-default-100 dark:bg-default-200\": check,\n\t\t\t\t}),\n\t\t\t\tclassName,\n\t\t\t),\n\t\t[check, className],\n\t);\n\n\treturn (\n\t\t<tr className={rowClass}>\n\t\t\t{isChecks && (\n\t\t\t\t<td className=\"px-2 py-1\">\n\t\t\t\t\t{isCheck && (\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={check || false}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tdisabled={disabledCheck || disabled}\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</td>\n\t\t\t)}\n\t\t\t{children}\n\t\t</tr>\n\t);\n});\n\nTableBodyRow.displayName = \"TableBodyRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableBodyColumnProps } from \"../interface/table.interface\";\n\nexport const TableBodyColumn: FC<TableBodyColumnProps> = React.memo(({ children, className, text }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"px-2 py-1 text-gray-900 dark:text-default-500\", className), [className]);\n\n\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\treturn <td className={mergedClass}>{isChildrenEmpty ? <p className=\"line-clamp-1 text-sm \">{text}</p> : children}</td>;\n});\nTableBodyColumn.displayName = \"TableBodyColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { v4 as uuidv4 } from \"uuid\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableHeaderRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableHeaderColumn } from \"./table-header-column\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\nexport const TableHeaderRow: FC<TableHeaderRowProps> = React.memo(\n\t({ children, className, dataHeader = [], valueCheck = false, disabledCheck, onChangeCheck, ...props }) => {\n\t\tconst uui = useMemo(() => uuidv4(), []);\n\t\tconst { isChecks, widthAction, isActions, color } = useTableContext();\n\n\t\tconst handleChange = (value: boolean) => {\n\t\t\tif (disabledCheck) return;\n\t\t\tonChangeCheck?.(value);\n\t\t};\n\n\t\tconst headerChildren = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, dataHeader, props]);\n\n\t\treturn (\n\t\t\t<tr className={twMerge(\"bg-gray-50 dark:bg-default-100 h-[50px]\", className)}>\n\t\t\t\t{isChecks && (\n\t\t\t\t\t<TableHeaderColumn className=\"min-w-[40px] w-[40px]\">\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={valueCheck}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TableHeaderColumn>\n\t\t\t\t)}\n\n\t\t\t\t{headerChildren}\n\n\t\t\t\t{isActions && <TableHeaderColumn color={color} style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t\t</tr>\n\t\t);\n\t},\n);\nTableHeaderRow.displayName = \"TableHeaderRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableSearchColumnProps } from \"../interface/table.interface\";\n\nexport const TableSearchColumn: FC<TableSearchColumnProps> = React.memo(({ children, className = \"\", style = {} }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"table-column-search px-2 border-b border-divider\", className), [className]);\n\n\treturn (\n\t\t<th className={mergedClass} style={style}>\n\t\t\t{children}\n\t\t</th>\n\t);\n});\nTableSearchColumn.displayName = \"TableSearchColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableSearchRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableSearchColumn } from \"./table-search-column\";\n\nexport const TableSearchRow: FC<TableSearchRowProps> = React.memo(({ children, className, dataHeader = [], ...props }) => {\n\tconst { isChecks, widthAction, isActions } = useTableContext();\n\n\tconst mergedClass = useMemo(() => twMerge(\"bg-gray-50 dark:bg-default-100 h-[50px]\", className), [className]);\n\n\tconst renderedChildren = useMemo(() => {\n\t\tif (typeof children === \"function\") {\n\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t...props,\n\t\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t} else {\n\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\tisValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t...props,\n\t\t\t\t\t })\n\t\t\t\t\t: child,\n\t\t\t);\n\t\t}\n\t}, [children, dataHeader, props]);\n\n\treturn (\n\t\t<tr className={mergedClass}>\n\t\t\t{isChecks && <TableSearchColumn className=\"min-w-[40px] w-[40px]\" />}\n\t\t\t{renderedChildren}\n\t\t\t{isActions && <TableSearchColumn style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t</tr>\n\t);\n});\nTableSearchRow.displayName = \"TableSearchRow\";\n","import { TableHeader } from \"./header/table-header\";\nimport { TableHeaderColumn } from \"./header/table-header-column\";\nimport { twMerge } from \"tailwind-merge\";\nimport { TableBody } from \"./body/table-body\";\nimport { TableBodyRow } from \"./body/table-body-row\";\nimport { TableBodyColumn } from \"./body/table-body-column\";\nimport { TableContext } from \"./context/table.context\";\nimport { TableHeaderRow } from \"./header/table-header-row\";\nimport { TableSearchRow } from \"./search/table-search-row\";\nimport { TableSearchColumn } from \"./search/table-search-column\";\nimport {\n\ttype TableHOCContainerProps,\n\ttype TableProps,\n} from \"./interface/table.interface\";\nimport React, { type ReactElement, isValidElement, useMemo } from \"react\";\n\nexport const TableHOC = ({ className, children, classNameContainer, ...props }: TableProps) => {\n\tconst { color = \"primary\", disabledKeys, isChecks = true, selectKeys = [], isActions = true, widthAction = 100, dataHeader } = props;\n\n\tconst tableClass = useMemo(() => twMerge(\"table-main-container w-full border-collapse table-auto\", className), [className]);\n\tconst containerClass = useMemo(() => twMerge(\"max-w-full overflow-x-auto overflow-y-auto bg-content1\", classNameContainer), [classNameContainer]);\n\n\treturn (\n\t\t<TableContext.Provider\n\t\t\tvalue={{\n\t\t\t\tcolor,\n\t\t\t\tdisabledKeys,\n\t\t\t\tisChecks,\n\t\t\t\tselectKeys,\n\t\t\t\tisActions,\n\t\t\t\twidthAction,\n\t\t\t\ttotalColumn: dataHeader?.length || 0,\n\t\t\t}}\n\t\t>\n\t\t\t<div className={containerClass}>\n\t\t\t\t<table className={tableClass}>\n\t\t\t\t\t{React.Children.map(children, (child) =>\n\t\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t\t? React.cloneElement(child as ReactElement, {\n\t\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t: child,\n\t\t\t\t\t)}\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</TableContext.Provider>\n\t);\n};\n\n\nexport const Table: TableHOCContainerProps = Object.assign(TableHOC, {\n\tHeader: TableHeader,\n\n\tHeaderRow: TableHeaderRow,\n\tHeaderColumn: TableHeaderColumn,\n\n\tSearchRow: TableSearchRow,\n\tSearchColumn: TableSearchColumn,\n\n\tBody: TableBody,\n\n\tBodyRow: TableBodyRow,\n\tBodyColumn: TableBodyColumn,\n});\n","import { useCallback, useState } from \"react\";\n\nimport { type TableKeyCurrent, type TableValueSearchProps } from \"../interface/table-share.interface\";\nimport { type TableHookProps } from \"../interface/table.interface\";\n\ninterface TableProps {\n\tinitialSelectKey?: TableKeyCurrent[];\n\tinitialDisabledKeys?: string[];\n\tinitialValueSearch?: TableValueSearchProps;\n}\n\nexport const useTable = ({ initialDisabledKeys = [], initialSelectKey = [], initialValueSearch = {} }: TableProps): TableHookProps => {\n\tconst [selectKeys, setSelectKeys] = useState<TableKeyCurrent[]>(initialSelectKey);\n\tconst [disabledKeys, setDisabledKeys] = useState<string[]>(initialDisabledKeys);\n\tconst [valueSearch, setValueSearch] = useState<TableValueSearchProps>(initialValueSearch);\n\n\tconst handleSelectKey = useCallback((value: TableKeyCurrent) => {\n\t\tsetSelectKeys((prev) => {\n\t\t\tconst exists = prev.some((el) => el.id === value.id);\n\n\t\t\treturn exists ? prev.filter((el) => el.id !== value.id) : [...prev, value];\n\t\t});\n\t}, []);\n\n\tconst handleSelectKeys = useCallback((value: TableKeyCurrent[]) => {\n\t\tsetSelectKeys(value);\n\t}, []);\n\n\tconst handleDisabledKeys = useCallback((value: string[]) => {\n\t\tsetDisabledKeys(value);\n\t}, []);\n\n\tconst handleSetValueSearch = useCallback((key: string, value: string) => {\n\t\tsetValueSearch((prev) => {\n\t\t\tconst newState = { ...prev };\n\n\t\t\tif (value) newState[key] = value;\n\t\t\telse delete newState[key];\n\n\t\t\treturn newState;\n\t\t});\n\t}, []);\n\n\treturn {\n\t\tselectKeys,\n\t\tdisabledKeys,\n\t\tvalueSearch,\n\t\thandleSelectKeys,\n\t\thandleSelectKey,\n\t\thandleDisabledKeys,\n\t\thandleSetValueSearch,\n\t};\n};\n"],"names":["TableHeader","React","children","className","props","mergedClass","useMemo","twMerge","clonedChildren","child","isValidElement","jsx","TableHeaderColumn","style","icon","text","size","header","mergedStyle","isChildrenEmpty","jsxs","Tooltip","initialValues","TableContext","createContext","useTableContext","useContext","TableBody","data","textNoData","loading","loadingText","totalColumn","isActions","isChecks","total","renderedRows","el","index","fallbackContent","TableBodyRow","memo","keyCurrent","onChangeCheck","disabled","isCheck","uui","uuidv4","selectKeys","disabledKeys","color","check","disabledCheck","handleChange","value","rowClass","clsx","Checkbox","e","TableBodyColumn","TableHeaderRow","dataHeader","valueCheck","widthAction","headerChildren","TableSearchColumn","TableSearchRow","renderedChildren","TableHOC","classNameContainer","tableClass","containerClass","Table","useTable","initialDisabledKeys","initialSelectKey","initialValueSearch","setSelectKeys","useState","setDisabledKeys","valueSearch","setValueSearch","handleSelectKey","useCallback","prev","handleSelectKeys","handleDisabledKeys","handleSetValueSearch","key","newState"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { j as e } from "../chunks/jsx-runtime-BYq8_R6m.js";
2
- import m, { useMemo as x, isValidElement as w, createContext as V, useContext as M, memo as D, useState as S, useCallback as C } from "react";
2
+ import m, { useMemo as x, isValidElement as w, createContext as V, useContext as M, memo as D, useState as v, useCallback as C } from "react";
3
3
  import { t as g } from "../chunks/bundle-mjs-kGHm2Pod.js";
4
4
  import { T as O } from "../chunks/tooltip-Bm3ixKaa.js";
5
5
  import { c as _ } from "../chunks/clsx-OuTLNxxd.js";
6
- import { C as v } from "../chunks/checkbox-ChChDxFl.js";
6
+ import { C as S } from "../chunks/checkbox-ChChDxFl.js";
7
7
  import { v as E } from "../chunks/v4-CRLUkzQ6.js";
8
8
  const R = m.memo(({ children: t, className: l, ...s }) => {
9
9
  const n = x(() => g("min-h-[100px] sticky top-0 z-10", l), [l]), d = x(
@@ -22,8 +22,8 @@ const N = m.memo(
22
22
  minWidth: o ? `${o}px` : s.minWidth
23
23
  }),
24
24
  [s, o]
25
- ), i = !t || typeof t == "string" && t.trim() === "";
26
- return /* @__PURE__ */ e.jsx("th", { className: y, style: u, children: i ? /* @__PURE__ */ e.jsxs("div", { className: "flex justify-between items-center gap-x-2 font-medium", children: [
25
+ ), c = !t || typeof t == "string" && t.trim() === "";
26
+ return /* @__PURE__ */ e.jsx("th", { className: y, style: u, children: c ? /* @__PURE__ */ e.jsxs("div", { className: "flex justify-between items-center gap-x-2 font-medium", children: [
27
27
  /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-x-2", children: [
28
28
  /* @__PURE__ */ e.jsx("p", { className: "line-clamp-1 text-xs text-gray-500 dark:text-foreground-500 text-left", children: d }),
29
29
  (a == null ? void 0 : a.information) && /* @__PURE__ */ e.jsx(O, { content: (a == null ? void 0 : a.information) || "", children: /* @__PURE__ */ e.jsx(
@@ -58,7 +58,7 @@ const L = {
58
58
  totalColumn: 0
59
59
  }, B = V(L), k = () => M(B), A = m.memo(
60
60
  ({ children: t, className: l, data: s = [], textNoData: n = "No hay información", loading: d = !1, loadingText: o = "Cargando ...", ...a }) => {
61
- const { totalColumn: y, isActions: u, isChecks: i } = k(), f = Number(y) + Number(u) + Number(i), b = x(() => g(l), [l]), j = x(() => typeof t == "function" ? s.map((r, p) => {
61
+ const { totalColumn: y, isActions: u, isChecks: c } = k(), f = Number(y) + Number(u) + Number(c), b = x(() => g(l), [l]), j = x(() => typeof t == "function" ? s.map((r, p) => {
62
62
  const h = t({ item: r });
63
63
  return w(h) ? m.cloneElement(h, {
64
64
  key: p,
@@ -70,16 +70,16 @@ const L = {
70
70
  ...a
71
71
  }) : r
72
72
  ), [t, s, a]);
73
- let c = null;
74
- return d ? c = /* @__PURE__ */ e.jsx("tr", { className: "border-b border-gray-200", children: /* @__PURE__ */ e.jsx("td", { className: "px-2 py-2.5 w-full", colSpan: f, children: /* @__PURE__ */ e.jsx("div", { className: "flex justify-center relative", children: /* @__PURE__ */ e.jsx("p", { className: "line-clamp-1 text-sm text-gray-900", children: o }) }) }) }) : s.length === 0 && (c = /* @__PURE__ */ e.jsx("tr", { className: "border-b border-gray-200", children: /* @__PURE__ */ e.jsx("td", { className: "px-2 py-2.5 w-full", colSpan: f, children: /* @__PURE__ */ e.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ e.jsx("p", { className: "line-clamp-1 text-sm text-gray-900", children: n }) }) }) })), /* @__PURE__ */ e.jsxs("tbody", { className: b, children: [
73
+ let i = null;
74
+ return d ? i = /* @__PURE__ */ e.jsx("tr", { className: "border-b border-gray-200", children: /* @__PURE__ */ e.jsx("td", { className: "px-2 py-2.5 w-full", colSpan: f, children: /* @__PURE__ */ e.jsx("div", { className: "flex justify-center relative", children: /* @__PURE__ */ e.jsx("p", { className: "line-clamp-1 text-sm text-gray-900", children: o }) }) }) }) : s.length === 0 && (i = /* @__PURE__ */ e.jsx("tr", { className: "border-b border-gray-200", children: /* @__PURE__ */ e.jsx("td", { className: "px-2 py-2.5 w-full", colSpan: f, children: /* @__PURE__ */ e.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ e.jsx("p", { className: "line-clamp-1 text-sm text-gray-900", children: n }) }) }) })), /* @__PURE__ */ e.jsxs("tbody", { className: b, children: [
75
75
  j,
76
- c
76
+ i
77
77
  ] });
78
78
  }
79
79
  );
80
80
  A.displayName = "TableBody";
81
81
  const K = D(({ children: t, className: l, keyCurrent: s, onChangeCheck: n, disabled: d, isCheck: o = !0 }) => {
82
- const a = x(() => E(), []), { isChecks: y, selectKeys: u, disabledKeys: i, color: f } = k(), b = x(() => u == null ? void 0 : u.some((p) => p.id === s.id), [u, s.id]), j = x(() => i == null ? void 0 : i.some((p) => p === s.id), [i, s.id]), c = (p) => {
82
+ const a = x(() => E(), []), { isChecks: y, selectKeys: u, disabledKeys: c, color: f } = k(), b = x(() => u == null ? void 0 : u.some((p) => p.id === s.id), [u, s.id]), j = x(() => c == null ? void 0 : c.some((p) => p === s.id), [c, s.id]), i = (p) => {
83
83
  j || d || n == null || n(s, p);
84
84
  }, r = x(
85
85
  () => g(
@@ -94,10 +94,10 @@ const K = D(({ children: t, className: l, keyCurrent: s, onChangeCheck: n, disab
94
94
  );
95
95
  return /* @__PURE__ */ e.jsxs("tr", { className: r, children: [
96
96
  y && /* @__PURE__ */ e.jsx("td", { className: "px-2 py-1", children: o && /* @__PURE__ */ e.jsx(
97
- v,
97
+ S,
98
98
  {
99
99
  id: a,
100
- onChange: (p) => c(p.target.checked),
100
+ onChange: (p) => i(p.target.checked),
101
101
  checked: b || !1,
102
102
  className: "flex justify-center",
103
103
  disabled: j || d,
@@ -115,9 +115,9 @@ const H = m.memo(({ children: t, className: l, text: s }) => {
115
115
  H.displayName = "TableBodyColumn";
116
116
  const W = m.memo(
117
117
  ({ children: t, className: l, dataHeader: s = [], valueCheck: n = !1, disabledCheck: d, onChangeCheck: o, ...a }) => {
118
- const y = x(() => E(), []), { isChecks: u, widthAction: i, isActions: f, color: b } = k(), j = (r) => {
118
+ const y = x(() => E(), []), { isChecks: u, widthAction: c, isActions: f, color: b } = k(), j = (r) => {
119
119
  d || o == null || o(r);
120
- }, c = x(() => typeof t == "function" ? s.map((r, p) => {
120
+ }, i = x(() => typeof t == "function" ? s.map((r, p) => {
121
121
  const h = t({ item: r });
122
122
  return w(h) ? m.cloneElement(h, {
123
123
  key: p,
@@ -131,7 +131,7 @@ const W = m.memo(
131
131
  ), [t, s, a]);
132
132
  return /* @__PURE__ */ e.jsxs("tr", { className: g("bg-gray-50 dark:bg-default-100 h-[50px]", l), children: [
133
133
  u && /* @__PURE__ */ e.jsx(N, { className: "min-w-[40px] w-[40px]", children: /* @__PURE__ */ e.jsx(
134
- v,
134
+ S,
135
135
  {
136
136
  id: y,
137
137
  onChange: (r) => j(r.target.checked),
@@ -140,29 +140,29 @@ const W = m.memo(
140
140
  color: b
141
141
  }
142
142
  ) }),
143
- c,
144
- f && /* @__PURE__ */ e.jsx(N, { color: b, style: { minWidth: `${i}px`, width: `${i}px` } })
143
+ i,
144
+ f && /* @__PURE__ */ e.jsx(N, { color: b, style: { minWidth: `${c}px`, width: `${c}px` } })
145
145
  ] });
146
146
  }
147
147
  );
148
148
  W.displayName = "TableHeaderRow";
149
149
  const T = m.memo(({ children: t, className: l = "", style: s = {} }) => {
150
- const n = x(() => g("table-column-search px-2 border-b border-gray-200", l), [l]);
150
+ const n = x(() => g("table-column-search px-2 border-b border-divider", l), [l]);
151
151
  return /* @__PURE__ */ e.jsx("th", { className: n, style: s, children: t });
152
152
  });
153
153
  T.displayName = "TableSearchColumn";
154
154
  const $ = m.memo(({ children: t, className: l, dataHeader: s = [], ...n }) => {
155
- const { isChecks: d, widthAction: o, isActions: a } = k(), y = x(() => g("bg-gray-50 dark:bg-default-100 h-[50px]", l), [l]), u = x(() => typeof t == "function" ? s.map((i, f) => {
156
- const b = t({ item: i });
155
+ const { isChecks: d, widthAction: o, isActions: a } = k(), y = x(() => g("bg-gray-50 dark:bg-default-100 h-[50px]", l), [l]), u = x(() => typeof t == "function" ? s.map((c, f) => {
156
+ const b = t({ item: c });
157
157
  return w(b) ? m.cloneElement(b, {
158
158
  key: f,
159
159
  ...n
160
160
  }) : null;
161
161
  }) : m.Children.map(
162
162
  t,
163
- (i) => w(i) ? m.cloneElement(i, {
163
+ (c) => w(c) ? m.cloneElement(c, {
164
164
  ...n
165
- }) : i
165
+ }) : c
166
166
  ), [t, s, n]);
167
167
  return /* @__PURE__ */ e.jsxs("tr", { className: y, children: [
168
168
  d && /* @__PURE__ */ e.jsx(T, { className: "min-w-[40px] w-[40px]" }),
@@ -172,7 +172,7 @@ const $ = m.memo(({ children: t, className: l, dataHeader: s = [], ...n }) => {
172
172
  });
173
173
  $.displayName = "TableSearchRow";
174
174
  const P = ({ className: t, children: l, classNameContainer: s, ...n }) => {
175
- const { color: d = "primary", disabledKeys: o, isChecks: a = !0, selectKeys: y = [], isActions: u = !0, widthAction: i = 100, dataHeader: f } = n, b = x(() => g("table-main-container w-full border-collapse table-auto", t), [t]), j = x(() => g("max-w-full overflow-x-auto overflow-y-auto bg-content1", s), [s]);
175
+ const { color: d = "primary", disabledKeys: o, isChecks: a = !0, selectKeys: y = [], isActions: u = !0, widthAction: c = 100, dataHeader: f } = n, b = x(() => g("table-main-container w-full border-collapse table-auto", t), [t]), j = x(() => g("max-w-full overflow-x-auto overflow-y-auto bg-content1", s), [s]);
176
176
  return /* @__PURE__ */ e.jsx(
177
177
  B.Provider,
178
178
  {
@@ -182,14 +182,14 @@ const P = ({ className: t, children: l, classNameContainer: s, ...n }) => {
182
182
  isChecks: a,
183
183
  selectKeys: y,
184
184
  isActions: u,
185
- widthAction: i,
185
+ widthAction: c,
186
186
  totalColumn: (f == null ? void 0 : f.length) || 0
187
187
  },
188
188
  children: /* @__PURE__ */ e.jsx("div", { className: j, children: /* @__PURE__ */ e.jsx("table", { className: b, children: m.Children.map(
189
189
  l,
190
- (c) => w(c) ? m.cloneElement(c, {
190
+ (i) => w(i) ? m.cloneElement(i, {
191
191
  ...n
192
- }) : c
192
+ }) : i
193
193
  ) }) })
194
194
  }
195
195
  );
@@ -203,16 +203,16 @@ const P = ({ className: t, children: l, classNameContainer: s, ...n }) => {
203
203
  BodyRow: K,
204
204
  BodyColumn: H
205
205
  }), Y = ({ initialDisabledKeys: t = [], initialSelectKey: l = [], initialValueSearch: s = {} }) => {
206
- const [n, d] = S(l), [o, a] = S(t), [y, u] = S(s), i = C((c) => {
207
- d((r) => r.some((h) => h.id === c.id) ? r.filter((h) => h.id !== c.id) : [...r, c]);
208
- }, []), f = C((c) => {
209
- d(c);
210
- }, []), b = C((c) => {
211
- a(c);
212
- }, []), j = C((c, r) => {
206
+ const [n, d] = v(l), [o, a] = v(t), [y, u] = v(s), c = C((i) => {
207
+ d((r) => r.some((h) => h.id === i.id) ? r.filter((h) => h.id !== i.id) : [...r, i]);
208
+ }, []), f = C((i) => {
209
+ d(i);
210
+ }, []), b = C((i) => {
211
+ a(i);
212
+ }, []), j = C((i, r) => {
213
213
  u((p) => {
214
214
  const h = { ...p };
215
- return r ? h[c] = r : delete h[c], h;
215
+ return r ? h[i] = r : delete h[i], h;
216
216
  });
217
217
  }, []);
218
218
  return {
@@ -220,7 +220,7 @@ const P = ({ className: t, children: l, classNameContainer: s, ...n }) => {
220
220
  disabledKeys: o,
221
221
  valueSearch: y,
222
222
  handleSelectKeys: f,
223
- handleSelectKey: i,
223
+ handleSelectKey: c,
224
224
  handleDisabledKeys: b,
225
225
  handleSetValueSearch: j
226
226
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../src/components/table/header/table-header.tsx","../../src/components/table/header/table-header-column.tsx","../../src/components/table/context/table.context.tsx","../../src/components/table/hook/use-table-context.tsx","../../src/components/table/body/table-body.tsx","../../src/components/table/body/table-body-row.tsx","../../src/components/table/body/table-body-column.tsx","../../src/components/table/header/table-header-row.tsx","../../src/components/table/search/table-search-column.tsx","../../src/components/table/search/table-search-row.tsx","../../src/components/table/table.tsx","../../src/components/table/hook/use-table.tsx"],"sourcesContent":["import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableHeaderProps } from \"../interface/table.interface\";\n\nexport const TableHeader: FC<TableHeaderProps> = React.memo(({ children, className, ...props }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"min-h-[100px] sticky top-0 z-10\", className), [className]);\n\n\tconst clonedChildren = useMemo(\n\t\t() => React.Children.map(children, (child) => (isValidElement(child) ? React.cloneElement(child as ReactElement, { ...props }) : child)),\n\t\t[children, props],\n\t);\n\n\treturn <thead className={mergedClass}>{clonedChildren}</thead>;\n});\nTableHeader.displayName = \"TableHeader\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { type TableHeaderColumnProps } from \"../interface/table.interface\";\nimport { Tooltip } from \"@/components/tooltip\";\n\nexport const TableHeaderColumn: FC<TableHeaderColumnProps> = React.memo(\n\t({ children, className, style = {}, icon = null, text = \"\", size, header }) => {\n\t\tconst mergedClass = useMemo(() => twMerge(\"px-2 border-b border-divider\", className), [className]);\n\n\t\tconst mergedStyle = useMemo(\n\t\t\t() => ({\n\t\t\t\t...style,\n\t\t\t\twidth: size ? `${size}px` : style.width,\n\t\t\t\tminWidth: size ? `${size}px` : style.minWidth,\n\t\t\t}),\n\t\t\t[style, size],\n\t\t);\n\n\t\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\t\treturn (\n\t\t\t<th className={mergedClass} style={mergedStyle}>\n\t\t\t\t{isChildrenEmpty ? (\n\t\t\t\t\t<div className=\"flex justify-between items-center gap-x-2 font-medium\">\n\t\t\t\t\t\t<div className=\"flex items-center gap-x-2\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-xs text-gray-500 dark:text-foreground-500 text-left\">{text}</p>\n\t\t\t\t\t\t\t{header?.information && (\n\t\t\t\t\t\t\t\t<Tooltip content={header?.information || \"\"}>\n\t\t\t\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"text-default-300 cursor-pointer dark:text-foreground-500\"\n\t\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<g fill=\"none\">\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={12} cy={12} r={10} stroke=\"currentColor\" strokeWidth=\"1.5\" />\n\t\t\t\t\t\t\t\t\t\t\t<path stroke=\"currentColor\" strokeLinecap=\"round\" strokeWidth=\"1.5\" d=\"M12 17v-6\" />\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={1} cy={1} r={1} fill=\"currentColor\" transform=\"matrix(1 0 0 -1 11 9)\" />\n\t\t\t\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex-1 flex\">{icon}</div>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\tchildren\n\t\t\t\t)}\n\t\t\t</th>\n\t\t);\n\t},\n);\nTableHeaderColumn.displayName = \"TableHeaderColumn\";\n","import { createContext } from \"react\";\n\nimport { type TableContextProps } from \"../interface/table.interface\";\n\nconst initialValues: TableContextProps = {\n\tcolor: \"primary\",\n\tdisabledKeys: [],\n\tisChecks: true,\n\tselectKeys: [],\n\tisActions: true,\n\twidthAction: 100,\n\ttotalColumn: 0,\n};\n\nexport const TableContext = createContext<TableContextProps>(initialValues);\n","import { useContext } from \"react\";\r\nimport { TableContext } from \"../context/table.context\";\r\n\r\nexport const useTableContext = () => {\r\n\treturn useContext(TableContext);\r\n};\r\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableBodyProps, type TableShareProps } from \"../interface/table.interface\";\n\nexport const TableBody: FC<TableBodyProps> = React.memo(\n\t({ children, className, data = [], textNoData = \"No hay información\", loading = false, loadingText = \"Cargando ...\", ...props }) => {\n\t\tconst { totalColumn, isActions, isChecks } = useTableContext();\n\t\tconst total = Number(totalColumn) + Number(isActions) + Number(isChecks);\n\n\t\tconst mergedClass = useMemo(() => twMerge(className), [className]);\n\n\t\tconst renderedRows = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn data.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, data, props]);\n\n\t\tlet fallbackContent: React.ReactNode = null;\n\n\t\tif (loading) {\n\t\t\tfallbackContent = (\n\t\t\t\t<tr className=\"border-b border-gray-200\">\n\t\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t\t<div className=\"flex justify-center relative\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-gray-900\">{loadingText}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t);\n\t\t} else if (data.length === 0) {\n\t\t\tfallbackContent = (\n\t\t\t\t<tr className=\"border-b border-gray-200\">\n\t\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t\t<div className=\"flex justify-center\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-gray-900\">{textNoData}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<tbody className={mergedClass}>\n\t\t\t\t{renderedRows}\n\t\t\t\t{fallbackContent}\n\t\t\t</tbody>\n\t\t);\n\t},\n);\nTableBody.displayName = \"TableBody\";\n","import { twMerge } from \"tailwind-merge\";\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { memo, useMemo } from \"react\";\nimport clsx from \"clsx\";\nimport { type TableBodyRowProps } from \"../interface/table.interface\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\n\nexport const TableBodyRow = memo(({ children, className, keyCurrent, onChangeCheck, disabled, isCheck = true }: TableBodyRowProps) => {\n\tconst uui = useMemo(() => uuidv4(), []);\n\tconst { isChecks, selectKeys, disabledKeys, color } = useTableContext();\n\n\tconst check = useMemo(() => selectKeys?.some((el) => el.id === keyCurrent.id), [selectKeys, keyCurrent.id]);\n\n\tconst disabledCheck = useMemo(() => disabledKeys?.some((el) => el === keyCurrent.id), [disabledKeys, keyCurrent.id]);\n\n\tconst handleChange = (value: boolean) => {\n\t\tif (disabledCheck || disabled) return;\n\t\tonChangeCheck?.(keyCurrent, value);\n\t};\n\n\tconst rowClass = useMemo(\n\t\t() =>\n\t\t\ttwMerge(\n\t\t\t\t\"relative border-b border-divider min-h-[45px] h-[45px] transition-colors duration-200 ease-in-out\",\n\t\t\t\tclsx({\n\t\t\t\t\t\"bg-content1 dark:hover:bg-default-100 hover:bg-default-100\": !check,\n\t\t\t\t\t\"bg-default-100 dark:bg-default-200\": check,\n\t\t\t\t}),\n\t\t\t\tclassName,\n\t\t\t),\n\t\t[check, className],\n\t);\n\n\treturn (\n\t\t<tr className={rowClass}>\n\t\t\t{isChecks && (\n\t\t\t\t<td className=\"px-2 py-1\">\n\t\t\t\t\t{isCheck && (\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={check || false}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tdisabled={disabledCheck || disabled}\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</td>\n\t\t\t)}\n\t\t\t{children}\n\t\t</tr>\n\t);\n});\n\nTableBodyRow.displayName = \"TableBodyRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableBodyColumnProps } from \"../interface/table.interface\";\n\nexport const TableBodyColumn: FC<TableBodyColumnProps> = React.memo(({ children, className, text }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"px-2 py-1 text-gray-900 dark:text-default-500\", className), [className]);\n\n\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\treturn <td className={mergedClass}>{isChildrenEmpty ? <p className=\"line-clamp-1 text-sm \">{text}</p> : children}</td>;\n});\nTableBodyColumn.displayName = \"TableBodyColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { v4 as uuidv4 } from \"uuid\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableHeaderRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableHeaderColumn } from \"./table-header-column\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\nexport const TableHeaderRow: FC<TableHeaderRowProps> = React.memo(\n\t({ children, className, dataHeader = [], valueCheck = false, disabledCheck, onChangeCheck, ...props }) => {\n\t\tconst uui = useMemo(() => uuidv4(), []);\n\t\tconst { isChecks, widthAction, isActions, color } = useTableContext();\n\n\t\tconst handleChange = (value: boolean) => {\n\t\t\tif (disabledCheck) return;\n\t\t\tonChangeCheck?.(value);\n\t\t};\n\n\t\tconst headerChildren = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, dataHeader, props]);\n\n\t\treturn (\n\t\t\t<tr className={twMerge(\"bg-gray-50 dark:bg-default-100 h-[50px]\", className)}>\n\t\t\t\t{isChecks && (\n\t\t\t\t\t<TableHeaderColumn className=\"min-w-[40px] w-[40px]\">\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={valueCheck}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TableHeaderColumn>\n\t\t\t\t)}\n\n\t\t\t\t{headerChildren}\n\n\t\t\t\t{isActions && <TableHeaderColumn color={color} style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t\t</tr>\n\t\t);\n\t},\n);\nTableHeaderRow.displayName = \"TableHeaderRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableSearchColumnProps } from \"../interface/table.interface\";\n\nexport const TableSearchColumn: FC<TableSearchColumnProps> = React.memo(({ children, className = \"\", style = {} }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"table-column-search px-2 border-b border-gray-200\", className), [className]);\n\n\treturn (\n\t\t<th className={mergedClass} style={style}>\n\t\t\t{children}\n\t\t</th>\n\t);\n});\nTableSearchColumn.displayName = \"TableSearchColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableSearchRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableSearchColumn } from \"./table-search-column\";\n\nexport const TableSearchRow: FC<TableSearchRowProps> = React.memo(({ children, className, dataHeader = [], ...props }) => {\n\tconst { isChecks, widthAction, isActions } = useTableContext();\n\n\tconst mergedClass = useMemo(() => twMerge(\"bg-gray-50 dark:bg-default-100 h-[50px]\", className), [className]);\n\n\tconst renderedChildren = useMemo(() => {\n\t\tif (typeof children === \"function\") {\n\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t...props,\n\t\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t} else {\n\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\tisValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t...props,\n\t\t\t\t\t })\n\t\t\t\t\t: child,\n\t\t\t);\n\t\t}\n\t}, [children, dataHeader, props]);\n\n\treturn (\n\t\t<tr className={mergedClass}>\n\t\t\t{isChecks && <TableSearchColumn className=\"min-w-[40px] w-[40px]\" />}\n\t\t\t{renderedChildren}\n\t\t\t{isActions && <TableSearchColumn style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t</tr>\n\t);\n});\nTableSearchRow.displayName = \"TableSearchRow\";\n","import { TableHeader } from \"./header/table-header\";\nimport { TableHeaderColumn } from \"./header/table-header-column\";\nimport { twMerge } from \"tailwind-merge\";\nimport { TableBody } from \"./body/table-body\";\nimport { TableBodyRow } from \"./body/table-body-row\";\nimport { TableBodyColumn } from \"./body/table-body-column\";\nimport { TableContext } from \"./context/table.context\";\nimport { TableHeaderRow } from \"./header/table-header-row\";\nimport { TableSearchRow } from \"./search/table-search-row\";\nimport { TableSearchColumn } from \"./search/table-search-column\";\nimport {\n\ttype TableHOCContainerProps,\n\ttype TableProps,\n} from \"./interface/table.interface\";\nimport React, { type ReactElement, isValidElement, useMemo } from \"react\";\n\nexport const TableHOC = ({ className, children, classNameContainer, ...props }: TableProps) => {\n\tconst { color = \"primary\", disabledKeys, isChecks = true, selectKeys = [], isActions = true, widthAction = 100, dataHeader } = props;\n\n\tconst tableClass = useMemo(() => twMerge(\"table-main-container w-full border-collapse table-auto\", className), [className]);\n\tconst containerClass = useMemo(() => twMerge(\"max-w-full overflow-x-auto overflow-y-auto bg-content1\", classNameContainer), [classNameContainer]);\n\n\treturn (\n\t\t<TableContext.Provider\n\t\t\tvalue={{\n\t\t\t\tcolor,\n\t\t\t\tdisabledKeys,\n\t\t\t\tisChecks,\n\t\t\t\tselectKeys,\n\t\t\t\tisActions,\n\t\t\t\twidthAction,\n\t\t\t\ttotalColumn: dataHeader?.length || 0,\n\t\t\t}}\n\t\t>\n\t\t\t<div className={containerClass}>\n\t\t\t\t<table className={tableClass}>\n\t\t\t\t\t{React.Children.map(children, (child) =>\n\t\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t\t? React.cloneElement(child as ReactElement, {\n\t\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t: child,\n\t\t\t\t\t)}\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</TableContext.Provider>\n\t);\n};\n\n\nexport const Table: TableHOCContainerProps = Object.assign(TableHOC, {\n\tHeader: TableHeader,\n\n\tHeaderRow: TableHeaderRow,\n\tHeaderColumn: TableHeaderColumn,\n\n\tSearchRow: TableSearchRow,\n\tSearchColumn: TableSearchColumn,\n\n\tBody: TableBody,\n\n\tBodyRow: TableBodyRow,\n\tBodyColumn: TableBodyColumn,\n});\n","import { useCallback, useState } from \"react\";\n\nimport { type TableKeyCurrent, type TableValueSearchProps } from \"../interface/table-share.interface\";\nimport { type TableHookProps } from \"../interface/table.interface\";\n\ninterface TableProps {\n\tinitialSelectKey?: TableKeyCurrent[];\n\tinitialDisabledKeys?: string[];\n\tinitialValueSearch?: TableValueSearchProps;\n}\n\nexport const useTable = ({ initialDisabledKeys = [], initialSelectKey = [], initialValueSearch = {} }: TableProps): TableHookProps => {\n\tconst [selectKeys, setSelectKeys] = useState<TableKeyCurrent[]>(initialSelectKey);\n\tconst [disabledKeys, setDisabledKeys] = useState<string[]>(initialDisabledKeys);\n\tconst [valueSearch, setValueSearch] = useState<TableValueSearchProps>(initialValueSearch);\n\n\tconst handleSelectKey = useCallback((value: TableKeyCurrent) => {\n\t\tsetSelectKeys((prev) => {\n\t\t\tconst exists = prev.some((el) => el.id === value.id);\n\n\t\t\treturn exists ? prev.filter((el) => el.id !== value.id) : [...prev, value];\n\t\t});\n\t}, []);\n\n\tconst handleSelectKeys = useCallback((value: TableKeyCurrent[]) => {\n\t\tsetSelectKeys(value);\n\t}, []);\n\n\tconst handleDisabledKeys = useCallback((value: string[]) => {\n\t\tsetDisabledKeys(value);\n\t}, []);\n\n\tconst handleSetValueSearch = useCallback((key: string, value: string) => {\n\t\tsetValueSearch((prev) => {\n\t\t\tconst newState = { ...prev };\n\n\t\t\tif (value) newState[key] = value;\n\t\t\telse delete newState[key];\n\n\t\t\treturn newState;\n\t\t});\n\t}, []);\n\n\treturn {\n\t\tselectKeys,\n\t\tdisabledKeys,\n\t\tvalueSearch,\n\t\thandleSelectKeys,\n\t\thandleSelectKey,\n\t\thandleDisabledKeys,\n\t\thandleSetValueSearch,\n\t};\n};\n"],"names":["TableHeader","React","children","className","props","mergedClass","useMemo","twMerge","clonedChildren","child","isValidElement","jsx","TableHeaderColumn","style","icon","text","size","header","mergedStyle","isChildrenEmpty","jsxs","Tooltip","initialValues","TableContext","createContext","useTableContext","useContext","TableBody","data","textNoData","loading","loadingText","totalColumn","isActions","isChecks","total","renderedRows","el","index","fallbackContent","TableBodyRow","memo","keyCurrent","onChangeCheck","disabled","isCheck","uui","uuidv4","selectKeys","disabledKeys","color","check","disabledCheck","handleChange","value","rowClass","clsx","Checkbox","e","TableBodyColumn","TableHeaderRow","dataHeader","valueCheck","widthAction","headerChildren","TableSearchColumn","TableSearchRow","renderedChildren","TableHOC","classNameContainer","tableClass","containerClass","Table","useTable","initialDisabledKeys","initialSelectKey","initialValueSearch","setSelectKeys","useState","setDisabledKeys","valueSearch","setValueSearch","handleSelectKey","useCallback","prev","handleSelectKeys","handleDisabledKeys","handleSetValueSearch","key","newState"],"mappings":"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"}
1
+ {"version":3,"file":"index.es.js","sources":["../../src/components/table/header/table-header.tsx","../../src/components/table/header/table-header-column.tsx","../../src/components/table/context/table.context.tsx","../../src/components/table/hook/use-table-context.tsx","../../src/components/table/body/table-body.tsx","../../src/components/table/body/table-body-row.tsx","../../src/components/table/body/table-body-column.tsx","../../src/components/table/header/table-header-row.tsx","../../src/components/table/search/table-search-column.tsx","../../src/components/table/search/table-search-row.tsx","../../src/components/table/table.tsx","../../src/components/table/hook/use-table.tsx"],"sourcesContent":["import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableHeaderProps } from \"../interface/table.interface\";\n\nexport const TableHeader: FC<TableHeaderProps> = React.memo(({ children, className, ...props }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"min-h-[100px] sticky top-0 z-10\", className), [className]);\n\n\tconst clonedChildren = useMemo(\n\t\t() => React.Children.map(children, (child) => (isValidElement(child) ? React.cloneElement(child as ReactElement, { ...props }) : child)),\n\t\t[children, props],\n\t);\n\n\treturn <thead className={mergedClass}>{clonedChildren}</thead>;\n});\nTableHeader.displayName = \"TableHeader\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { type TableHeaderColumnProps } from \"../interface/table.interface\";\nimport { Tooltip } from \"@/components/tooltip\";\n\nexport const TableHeaderColumn: FC<TableHeaderColumnProps> = React.memo(\n\t({ children, className, style = {}, icon = null, text = \"\", size, header }) => {\n\t\tconst mergedClass = useMemo(() => twMerge(\"px-2 border-b border-divider\", className), [className]);\n\n\t\tconst mergedStyle = useMemo(\n\t\t\t() => ({\n\t\t\t\t...style,\n\t\t\t\twidth: size ? `${size}px` : style.width,\n\t\t\t\tminWidth: size ? `${size}px` : style.minWidth,\n\t\t\t}),\n\t\t\t[style, size],\n\t\t);\n\n\t\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\t\treturn (\n\t\t\t<th className={mergedClass} style={mergedStyle}>\n\t\t\t\t{isChildrenEmpty ? (\n\t\t\t\t\t<div className=\"flex justify-between items-center gap-x-2 font-medium\">\n\t\t\t\t\t\t<div className=\"flex items-center gap-x-2\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-xs text-gray-500 dark:text-foreground-500 text-left\">{text}</p>\n\t\t\t\t\t\t\t{header?.information && (\n\t\t\t\t\t\t\t\t<Tooltip content={header?.information || \"\"}>\n\t\t\t\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"text-default-300 cursor-pointer dark:text-foreground-500\"\n\t\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<g fill=\"none\">\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={12} cy={12} r={10} stroke=\"currentColor\" strokeWidth=\"1.5\" />\n\t\t\t\t\t\t\t\t\t\t\t<path stroke=\"currentColor\" strokeLinecap=\"round\" strokeWidth=\"1.5\" d=\"M12 17v-6\" />\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={1} cy={1} r={1} fill=\"currentColor\" transform=\"matrix(1 0 0 -1 11 9)\" />\n\t\t\t\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex-1 flex\">{icon}</div>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\tchildren\n\t\t\t\t)}\n\t\t\t</th>\n\t\t);\n\t},\n);\nTableHeaderColumn.displayName = \"TableHeaderColumn\";\n","import { createContext } from \"react\";\n\nimport { type TableContextProps } from \"../interface/table.interface\";\n\nconst initialValues: TableContextProps = {\n\tcolor: \"primary\",\n\tdisabledKeys: [],\n\tisChecks: true,\n\tselectKeys: [],\n\tisActions: true,\n\twidthAction: 100,\n\ttotalColumn: 0,\n};\n\nexport const TableContext = createContext<TableContextProps>(initialValues);\n","import { useContext } from \"react\";\r\nimport { TableContext } from \"../context/table.context\";\r\n\r\nexport const useTableContext = () => {\r\n\treturn useContext(TableContext);\r\n};\r\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableBodyProps, type TableShareProps } from \"../interface/table.interface\";\n\nexport const TableBody: FC<TableBodyProps> = React.memo(\n\t({ children, className, data = [], textNoData = \"No hay información\", loading = false, loadingText = \"Cargando ...\", ...props }) => {\n\t\tconst { totalColumn, isActions, isChecks } = useTableContext();\n\t\tconst total = Number(totalColumn) + Number(isActions) + Number(isChecks);\n\n\t\tconst mergedClass = useMemo(() => twMerge(className), [className]);\n\n\t\tconst renderedRows = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn data.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, data, props]);\n\n\t\tlet fallbackContent: React.ReactNode = null;\n\n\t\tif (loading) {\n\t\t\tfallbackContent = (\n\t\t\t\t<tr className=\"border-b border-gray-200\">\n\t\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t\t<div className=\"flex justify-center relative\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-gray-900\">{loadingText}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t);\n\t\t} else if (data.length === 0) {\n\t\t\tfallbackContent = (\n\t\t\t\t<tr className=\"border-b border-gray-200\">\n\t\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t\t<div className=\"flex justify-center\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-gray-900\">{textNoData}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<tbody className={mergedClass}>\n\t\t\t\t{renderedRows}\n\t\t\t\t{fallbackContent}\n\t\t\t</tbody>\n\t\t);\n\t},\n);\nTableBody.displayName = \"TableBody\";\n","import { twMerge } from \"tailwind-merge\";\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { memo, useMemo } from \"react\";\nimport clsx from \"clsx\";\nimport { type TableBodyRowProps } from \"../interface/table.interface\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\n\nexport const TableBodyRow = memo(({ children, className, keyCurrent, onChangeCheck, disabled, isCheck = true }: TableBodyRowProps) => {\n\tconst uui = useMemo(() => uuidv4(), []);\n\tconst { isChecks, selectKeys, disabledKeys, color } = useTableContext();\n\n\tconst check = useMemo(() => selectKeys?.some((el) => el.id === keyCurrent.id), [selectKeys, keyCurrent.id]);\n\n\tconst disabledCheck = useMemo(() => disabledKeys?.some((el) => el === keyCurrent.id), [disabledKeys, keyCurrent.id]);\n\n\tconst handleChange = (value: boolean) => {\n\t\tif (disabledCheck || disabled) return;\n\t\tonChangeCheck?.(keyCurrent, value);\n\t};\n\n\tconst rowClass = useMemo(\n\t\t() =>\n\t\t\ttwMerge(\n\t\t\t\t\"relative border-b border-divider min-h-[45px] h-[45px] transition-colors duration-200 ease-in-out\",\n\t\t\t\tclsx({\n\t\t\t\t\t\"bg-content1 dark:hover:bg-default-100 hover:bg-default-100\": !check,\n\t\t\t\t\t\"bg-default-100 dark:bg-default-200\": check,\n\t\t\t\t}),\n\t\t\t\tclassName,\n\t\t\t),\n\t\t[check, className],\n\t);\n\n\treturn (\n\t\t<tr className={rowClass}>\n\t\t\t{isChecks && (\n\t\t\t\t<td className=\"px-2 py-1\">\n\t\t\t\t\t{isCheck && (\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={check || false}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tdisabled={disabledCheck || disabled}\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</td>\n\t\t\t)}\n\t\t\t{children}\n\t\t</tr>\n\t);\n});\n\nTableBodyRow.displayName = \"TableBodyRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableBodyColumnProps } from \"../interface/table.interface\";\n\nexport const TableBodyColumn: FC<TableBodyColumnProps> = React.memo(({ children, className, text }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"px-2 py-1 text-gray-900 dark:text-default-500\", className), [className]);\n\n\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\treturn <td className={mergedClass}>{isChildrenEmpty ? <p className=\"line-clamp-1 text-sm \">{text}</p> : children}</td>;\n});\nTableBodyColumn.displayName = \"TableBodyColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { v4 as uuidv4 } from \"uuid\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableHeaderRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableHeaderColumn } from \"./table-header-column\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\nexport const TableHeaderRow: FC<TableHeaderRowProps> = React.memo(\n\t({ children, className, dataHeader = [], valueCheck = false, disabledCheck, onChangeCheck, ...props }) => {\n\t\tconst uui = useMemo(() => uuidv4(), []);\n\t\tconst { isChecks, widthAction, isActions, color } = useTableContext();\n\n\t\tconst handleChange = (value: boolean) => {\n\t\t\tif (disabledCheck) return;\n\t\t\tonChangeCheck?.(value);\n\t\t};\n\n\t\tconst headerChildren = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, dataHeader, props]);\n\n\t\treturn (\n\t\t\t<tr className={twMerge(\"bg-gray-50 dark:bg-default-100 h-[50px]\", className)}>\n\t\t\t\t{isChecks && (\n\t\t\t\t\t<TableHeaderColumn className=\"min-w-[40px] w-[40px]\">\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={valueCheck}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TableHeaderColumn>\n\t\t\t\t)}\n\n\t\t\t\t{headerChildren}\n\n\t\t\t\t{isActions && <TableHeaderColumn color={color} style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t\t</tr>\n\t\t);\n\t},\n);\nTableHeaderRow.displayName = \"TableHeaderRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableSearchColumnProps } from \"../interface/table.interface\";\n\nexport const TableSearchColumn: FC<TableSearchColumnProps> = React.memo(({ children, className = \"\", style = {} }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"table-column-search px-2 border-b border-divider\", className), [className]);\n\n\treturn (\n\t\t<th className={mergedClass} style={style}>\n\t\t\t{children}\n\t\t</th>\n\t);\n});\nTableSearchColumn.displayName = \"TableSearchColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableSearchRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableSearchColumn } from \"./table-search-column\";\n\nexport const TableSearchRow: FC<TableSearchRowProps> = React.memo(({ children, className, dataHeader = [], ...props }) => {\n\tconst { isChecks, widthAction, isActions } = useTableContext();\n\n\tconst mergedClass = useMemo(() => twMerge(\"bg-gray-50 dark:bg-default-100 h-[50px]\", className), [className]);\n\n\tconst renderedChildren = useMemo(() => {\n\t\tif (typeof children === \"function\") {\n\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t...props,\n\t\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t} else {\n\t\t\treturn React.Children.map(children, (child) =>\n\t\t\t\tisValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t...props,\n\t\t\t\t\t })\n\t\t\t\t\t: child,\n\t\t\t);\n\t\t}\n\t}, [children, dataHeader, props]);\n\n\treturn (\n\t\t<tr className={mergedClass}>\n\t\t\t{isChecks && <TableSearchColumn className=\"min-w-[40px] w-[40px]\" />}\n\t\t\t{renderedChildren}\n\t\t\t{isActions && <TableSearchColumn style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t</tr>\n\t);\n});\nTableSearchRow.displayName = \"TableSearchRow\";\n","import { TableHeader } from \"./header/table-header\";\nimport { TableHeaderColumn } from \"./header/table-header-column\";\nimport { twMerge } from \"tailwind-merge\";\nimport { TableBody } from \"./body/table-body\";\nimport { TableBodyRow } from \"./body/table-body-row\";\nimport { TableBodyColumn } from \"./body/table-body-column\";\nimport { TableContext } from \"./context/table.context\";\nimport { TableHeaderRow } from \"./header/table-header-row\";\nimport { TableSearchRow } from \"./search/table-search-row\";\nimport { TableSearchColumn } from \"./search/table-search-column\";\nimport {\n\ttype TableHOCContainerProps,\n\ttype TableProps,\n} from \"./interface/table.interface\";\nimport React, { type ReactElement, isValidElement, useMemo } from \"react\";\n\nexport const TableHOC = ({ className, children, classNameContainer, ...props }: TableProps) => {\n\tconst { color = \"primary\", disabledKeys, isChecks = true, selectKeys = [], isActions = true, widthAction = 100, dataHeader } = props;\n\n\tconst tableClass = useMemo(() => twMerge(\"table-main-container w-full border-collapse table-auto\", className), [className]);\n\tconst containerClass = useMemo(() => twMerge(\"max-w-full overflow-x-auto overflow-y-auto bg-content1\", classNameContainer), [classNameContainer]);\n\n\treturn (\n\t\t<TableContext.Provider\n\t\t\tvalue={{\n\t\t\t\tcolor,\n\t\t\t\tdisabledKeys,\n\t\t\t\tisChecks,\n\t\t\t\tselectKeys,\n\t\t\t\tisActions,\n\t\t\t\twidthAction,\n\t\t\t\ttotalColumn: dataHeader?.length || 0,\n\t\t\t}}\n\t\t>\n\t\t\t<div className={containerClass}>\n\t\t\t\t<table className={tableClass}>\n\t\t\t\t\t{React.Children.map(children, (child) =>\n\t\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t\t? React.cloneElement(child as ReactElement, {\n\t\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t: child,\n\t\t\t\t\t)}\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</TableContext.Provider>\n\t);\n};\n\n\nexport const Table: TableHOCContainerProps = Object.assign(TableHOC, {\n\tHeader: TableHeader,\n\n\tHeaderRow: TableHeaderRow,\n\tHeaderColumn: TableHeaderColumn,\n\n\tSearchRow: TableSearchRow,\n\tSearchColumn: TableSearchColumn,\n\n\tBody: TableBody,\n\n\tBodyRow: TableBodyRow,\n\tBodyColumn: TableBodyColumn,\n});\n","import { useCallback, useState } from \"react\";\n\nimport { type TableKeyCurrent, type TableValueSearchProps } from \"../interface/table-share.interface\";\nimport { type TableHookProps } from \"../interface/table.interface\";\n\ninterface TableProps {\n\tinitialSelectKey?: TableKeyCurrent[];\n\tinitialDisabledKeys?: string[];\n\tinitialValueSearch?: TableValueSearchProps;\n}\n\nexport const useTable = ({ initialDisabledKeys = [], initialSelectKey = [], initialValueSearch = {} }: TableProps): TableHookProps => {\n\tconst [selectKeys, setSelectKeys] = useState<TableKeyCurrent[]>(initialSelectKey);\n\tconst [disabledKeys, setDisabledKeys] = useState<string[]>(initialDisabledKeys);\n\tconst [valueSearch, setValueSearch] = useState<TableValueSearchProps>(initialValueSearch);\n\n\tconst handleSelectKey = useCallback((value: TableKeyCurrent) => {\n\t\tsetSelectKeys((prev) => {\n\t\t\tconst exists = prev.some((el) => el.id === value.id);\n\n\t\t\treturn exists ? prev.filter((el) => el.id !== value.id) : [...prev, value];\n\t\t});\n\t}, []);\n\n\tconst handleSelectKeys = useCallback((value: TableKeyCurrent[]) => {\n\t\tsetSelectKeys(value);\n\t}, []);\n\n\tconst handleDisabledKeys = useCallback((value: string[]) => {\n\t\tsetDisabledKeys(value);\n\t}, []);\n\n\tconst handleSetValueSearch = useCallback((key: string, value: string) => {\n\t\tsetValueSearch((prev) => {\n\t\t\tconst newState = { ...prev };\n\n\t\t\tif (value) newState[key] = value;\n\t\t\telse delete newState[key];\n\n\t\t\treturn newState;\n\t\t});\n\t}, []);\n\n\treturn {\n\t\tselectKeys,\n\t\tdisabledKeys,\n\t\tvalueSearch,\n\t\thandleSelectKeys,\n\t\thandleSelectKey,\n\t\thandleDisabledKeys,\n\t\thandleSetValueSearch,\n\t};\n};\n"],"names":["TableHeader","React","children","className","props","mergedClass","useMemo","twMerge","clonedChildren","child","isValidElement","jsx","TableHeaderColumn","style","icon","text","size","header","mergedStyle","isChildrenEmpty","jsxs","Tooltip","initialValues","TableContext","createContext","useTableContext","useContext","TableBody","data","textNoData","loading","loadingText","totalColumn","isActions","isChecks","total","renderedRows","el","index","fallbackContent","TableBodyRow","memo","keyCurrent","onChangeCheck","disabled","isCheck","uui","uuidv4","selectKeys","disabledKeys","color","check","disabledCheck","handleChange","value","rowClass","clsx","Checkbox","e","TableBodyColumn","TableHeaderRow","dataHeader","valueCheck","widthAction","headerChildren","TableSearchColumn","TableSearchRow","renderedChildren","TableHOC","classNameContainer","tableClass","containerClass","Table","useTable","initialDisabledKeys","initialSelectKey","initialValueSearch","setSelectKeys","useState","setDisabledKeys","valueSearch","setValueSearch","handleSelectKey","useCallback","prev","handleSelectKeys","handleDisabledKeys","handleSetValueSearch","key","newState"],"mappings":"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"}