@redi.run/redi-components 0.0.28 → 0.0.29

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.
@@ -13221,15 +13221,15 @@ var AdvancedTable_default = ({ data: e, columns: t, defaultSort: o, defaultFilte
13221
13221
  document.removeEventListener("mousedown", e);
13222
13222
  };
13223
13223
  }, [F]);
13224
- let Y = Math.ceil(G.total / G.pageSize), X = (e) => {
13224
+ let Y = Math.ceil(G.total / G.pageSize), X = (e) => e.width ? e.width : e.isAction ? 100 : 150 + (e.filterable ? 50 : 0), Z = (e) => {
13225
13225
  if (!K.includes(B[e].id)) return;
13226
13226
  let t = 0;
13227
- for (let n = 0; n < e; n++) K.includes(B[n].id) && (t += B[n].width || 150);
13227
+ for (let n = 0; n < e; n++) K.includes(B[n].id) && (t += X(B[n]));
13228
13228
  return t;
13229
- }, Z = (e) => {
13229
+ }, dp = (e) => {
13230
13230
  if (!q[e].isAction) return;
13231
13231
  let t = 0;
13232
- for (let n = e + 1; n < q.length; n++) q[n].isAction && (t += q[n].width || 100);
13232
+ for (let n = e + 1; n < q.length; n++) q[n].isAction && (t += X(q[n]));
13233
13233
  return t;
13234
13234
  };
13235
13235
  return /* @__PURE__ */ jsxs("div", {
@@ -13355,7 +13355,7 @@ var AdvancedTable_default = ({ data: e, columns: t, defaultSort: o, defaultFilte
13355
13355
  className: "w-full border-separate border-spacing-0 table-auto text-sm relative",
13356
13356
  "aria-label": "Data Table",
13357
13357
  children: [/* @__PURE__ */ jsx("thead", { children: /* @__PURE__ */ jsx("tr", { children: q.map((e, t) => {
13358
- let n = K.includes(e.id), r = e.isAction, i = X(t), a = e.width || 150 + (e.filterable ? 50 : 0), o = n ? {
13358
+ let n = K.includes(e.id), r = e.isAction, i = Z(t), a = X(e), o = n ? {
13359
13359
  position: "sticky",
13360
13360
  left: i,
13361
13361
  width: a,
@@ -13364,12 +13364,16 @@ var AdvancedTable_default = ({ data: e, columns: t, defaultSort: o, defaultFilte
13364
13364
  zIndex: 20
13365
13365
  } : r ? {
13366
13366
  position: "sticky",
13367
- right: Z(t),
13367
+ right: dp(t),
13368
13368
  width: a,
13369
13369
  minWidth: a,
13370
13370
  maxWidth: a,
13371
13371
  zIndex: 20
13372
- } : { minWidth: a };
13372
+ } : {
13373
+ width: a,
13374
+ minWidth: a,
13375
+ maxWidth: a
13376
+ };
13373
13377
  return /* @__PURE__ */ jsx("th", {
13374
13378
  className: `bg-gray-50 border-b border-solid border-gray-200 text-left font-semibold text-redi-text p-0 sticky top-0 z-10 select-none hover:bg-gray-200
13375
13379
  ${j === t ? "opacity-50 bg-gray-300" : ""}
@@ -13436,45 +13440,65 @@ var AdvancedTable_default = ({ data: e, columns: t, defaultSort: o, defaultFilte
13436
13440
  }) }) }), /* @__PURE__ */ jsx("tbody", { children: A ? Array.from({ length: 5 }).map((e, t) => /* @__PURE__ */ jsx("tr", {
13437
13441
  className: "border-b border-solid border-gray-100",
13438
13442
  children: q.map((e, t) => {
13439
- let n = K.includes(e.id), r = e.isAction, i = X(t), a = n ? {
13443
+ let n = K.includes(e.id), r = e.isAction, i = Z(t), a = X(e), o = n ? {
13440
13444
  position: "sticky",
13441
13445
  left: i,
13442
- zIndex: 10
13446
+ zIndex: 10,
13447
+ width: a,
13448
+ minWidth: a,
13449
+ maxWidth: a
13443
13450
  } : r ? {
13444
13451
  position: "sticky",
13445
- right: Z(t),
13446
- zIndex: 10
13447
- } : {};
13452
+ right: dp(t),
13453
+ zIndex: 10,
13454
+ width: a,
13455
+ minWidth: a,
13456
+ maxWidth: a
13457
+ } : {
13458
+ width: a,
13459
+ minWidth: a,
13460
+ maxWidth: a
13461
+ };
13448
13462
  return /* @__PURE__ */ jsx("td", {
13449
13463
  className: `py-4 px-4 ${n ? "bg-white border-r border-gray-200" : ""} ${r ? "bg-white border-l border-gray-200" : ""}`,
13450
- style: a,
13464
+ style: o,
13451
13465
  children: /* @__PURE__ */ jsx("div", { className: "h-4 bg-gray-200 rounded animate-pulse w-3/4" })
13452
13466
  }, `skeleton-cell-${t}`);
13453
13467
  })
13454
13468
  }, `skeleton-${t}`)) : U.length > 0 ? U.map((e, t) => /* @__PURE__ */ jsx("tr", {
13455
13469
  className: "even:bg-gray-50 hover:bg-gray-100 border-b border-solid border-b-gray-100 odd:bg-white",
13456
13470
  children: q.map((n, r) => {
13457
- let i = typeof n.accessor == "function" ? n.accessor(e) : e[n.accessor], a = K.includes(n.id), o = n.isAction, c = X(r), l = `py-3 px-4 text-redi-text font-normal leading-6 align-middle border-r border-solid border-r-gray-300 static table-cell last:border-r-0 first:font-medium
13471
+ let i = typeof n.accessor == "function" ? n.accessor(e) : e[n.accessor], a = K.includes(n.id), o = n.isAction, c = Z(r), l = X(n), u = `py-3 px-4 text-redi-text font-normal leading-6 align-middle border-r border-solid border-r-gray-300 static table-cell last:border-r-0 first:font-medium
13458
13472
  ${a ? "border-r-gray-300 shadow-[2px_0_5px_-2px_rgba(0,0,0,0.05)]" : ""}
13459
13473
  ${o ? "border-l border-gray-300 shadow-[-2px_0_5px_-2px_rgba(0,0,0,0.05)]" : ""}
13460
- `, u = t % 2 == 0 ? "#ffffff" : "#f9fafb", d = a ? {
13474
+ `, d = t % 2 == 0 ? "#ffffff" : "#f9fafb", f = a ? {
13461
13475
  position: "sticky",
13462
13476
  left: c,
13463
13477
  zIndex: 5,
13464
- backgroundColor: u
13478
+ backgroundColor: d,
13479
+ width: l,
13480
+ minWidth: l,
13481
+ maxWidth: l
13465
13482
  } : o ? {
13466
13483
  position: "sticky",
13467
- right: Z(r),
13484
+ right: dp(r),
13468
13485
  zIndex: 5,
13469
- backgroundColor: u
13470
- } : {};
13486
+ backgroundColor: d,
13487
+ width: l,
13488
+ minWidth: l,
13489
+ maxWidth: l
13490
+ } : {
13491
+ width: l,
13492
+ minWidth: l,
13493
+ maxWidth: l
13494
+ };
13471
13495
  return n.render ? /* @__PURE__ */ jsx("td", {
13472
- className: l,
13473
- style: d,
13496
+ className: u,
13497
+ style: f,
13474
13498
  children: n.render(i, e, t)
13475
13499
  }, n.id) : /* @__PURE__ */ jsx("td", {
13476
- className: l,
13477
- style: d,
13500
+ className: u,
13501
+ style: f,
13478
13502
  children: formatCellValue(i)
13479
13503
  }, n.id);
13480
13504
  })
@@ -106,15 +106,15 @@ function qd(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function
106
106
  ${d.className||``}
107
107
  `,...d,children:[s&&(0,n.jsxs)(`svg`,{className:`animate-spin -ml-1 mr-1 h-4 w-4 text-current`,xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,children:[(0,n.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,n.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),u||(0,n.jsxs)(n.Fragment,{children:[l&&a===`left`&&!s&&l,c&&e!==`icon`&&(0,n.jsx)(`span`,{children:c}),l&&a===`right`&&!s&&l]})]})},rp={controls:`_controls_1pwn9_1`,leftControls:`_leftControls_1pwn9_10`,rightControls:`_rightControls_1pwn9_16`,configButton:`_configButton_1pwn9_23`,configIcon:`_configIcon_1pwn9_42`,configSection:`_configSection_1pwn9_49`,configSectionTitle:`_configSectionTitle_1pwn9_57`,configOptions:`_configOptions_1pwn9_66`,configOption:`_configOption_1pwn9_66`,actionButton:`_actionButton_1pwn9_91`,export:`_export_1pwn9_110`,reset:`_reset_1pwn9_120`,buttonIcon:`_buttonIcon_1pwn9_130`,filtersContainer:`_filtersContainer_1pwn9_137`,active:`_active_1pwn9_145`,filtersRow:`_filtersRow_1pwn9_149`,filterGroup:`_filterGroup_1pwn9_156`,filterLabel:`_filterLabel_1pwn9_162`,filterDropdown:`_filterDropdown_1pwn9_172`,filterDropdownButton:`_filterDropdownButton_1pwn9_177`,filterDropdownIcon:`_filterDropdownIcon_1pwn9_200`,filterModalHeader:`_filterModalHeader_1pwn9_212`,filterSearchInput:`_filterSearchInput_1pwn9_217`,filterOptions:`_filterOptions_1pwn9_231`,filterOption:`_filterOption_1pwn9_231`,selected:`_selected_1pwn9_250`,filterOptionCheckbox:`_filterOptionCheckbox_1pwn9_254`,filterOptionLabel:`_filterOptionLabel_1pwn9_260`,filterOptionCount:`_filterOptionCount_1pwn9_266`,filterModalActions:`_filterModalActions_1pwn9_275`,filterClearButton:`_filterClearButton_1pwn9_284`,filterApplyButton:`_filterApplyButton_1pwn9_285`,tableWrapper:`_tableWrapper_1pwn9_315`,table:`_table_1pwn9_315`,header:`_header_1pwn9_332`,dragging:`_dragging_1pwn9_349`,dragOver:`_dragOver_1pwn9_354`,headerContent:`_headerContent_1pwn9_359`,dragHandle:`_dragHandle_1pwn9_367`,columnTitle:`_columnTitle_1pwn9_384`,sortable:`_sortable_1pwn9_391`,sortIcon:`_sortIcon_1pwn9_408`,filterButton:`_filterButton_1pwn9_415`,filterButtonIcon:`_filterButtonIcon_1pwn9_451`,filterModal:`_filterModal_1pwn9_212`,row:`_row_1pwn9_474`,cell:`_cell_1pwn9_486`,statusBadge:`_statusBadge_1pwn9_507`,statusActive:`_statusActive_1pwn9_517`,statusInactive:`_statusInactive_1pwn9_522`,statusPending:`_statusPending_1pwn9_527`,statusCompleted:`_statusCompleted_1pwn9_532`,statusDraft:`_statusDraft_1pwn9_537`,pagination:`_pagination_1pwn9_543`,paginationInfo:`_paginationInfo_1pwn9_553`,paginationControls:`_paginationControls_1pwn9_560`,pageSizeSelect:`_pageSizeSelect_1pwn9_575`,pageButtons:`_pageButtons_1pwn9_591`,pageButton:`_pageButton_1pwn9_591`,exportButton:`_exportButton_1pwn9_659`,resetButton:`_resetButton_1pwn9_660`,filterModalSlideIn:`_filterModalSlideIn_1pwn9_1`,shimmer:`_shimmer_1pwn9_1`,columnCheckboxes:`_columnCheckboxes_1pwn9_1195`},ip=({option:e,selectedValues:t,handleOptionToggle:r})=>(0,n.jsxs)(`div`,{className:`${rp.filterOption} ${t.includes(e.value)?rp.selected:``}`,onClick:()=>r(e),children:[(0,n.jsx)(`input`,{type:`checkbox`,className:rp.filterOptionCheckbox,checked:t.includes(e.value),onChange:()=>r(e),onClick:e=>e.stopPropagation()}),(0,n.jsx)(`span`,{className:rp.filterOptionLabel,children:e.value}),(0,n.jsx)(`span`,{className:rp.filterOptionCount,children:e.count})]},e.value),ap=({label:e,options:r,textValue:i,selectedValues:a,onTextChange:o,onSelectionChange:s,onClose:c})=>{let[l,u]=(0,t.useState)(``),d=(0,t.useRef)(null),f=r.filter(e=>e.value.toLowerCase().includes(l.toLowerCase())||e.label.toLowerCase().includes(l.toLowerCase())),p=e=>{let t=a.includes(e.value)?a.filter(t=>t!==e.value):[...a,e.value];s(t)},m=()=>{let e=f.map(e=>e.value);s(e)},h=()=>{s([]),o(``)};return(0,t.useEffect)(()=>{let e=e=>{d.current&&!d.current.contains(e.target)&&c()};return document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},[c]),(0,n.jsxs)(`div`,{className:rp.filterModal,ref:d,children:[(0,n.jsxs)(`div`,{className:rp.filterModalHeader,children:[(0,n.jsx)(`input`,{type:`text`,className:rp.filterSearchInput,placeholder:`Buscar texto en ${e.toLowerCase()}...`,value:i,onChange:e=>o(e.target.value),autoFocus:!0}),(0,n.jsx)(`input`,{type:`text`,className:rp.filterSearchInput,placeholder:`Buscar opciones...`,value:l,onChange:e=>u(e.target.value),style:{marginTop:`8px`}})]}),(0,n.jsxs)(`div`,{className:rp.filterOptions,children:[(0,n.jsxs)(`div`,{className:rp.filterOption,style:{borderBottom:`1px solid #e5e7eb`,marginBottom:`4px`,paddingBottom:`8px`},children:[(0,n.jsx)(np,{onClick:m,size:`small`,level:`tertiary`,children:`Seleccionar todo`}),(0,n.jsx)(np,{onClick:h,size:`small`,level:`tertiary`,children:`Limpiar todo`})]}),f.map(e=>(0,n.jsx)(ip,{option:e,selectedValues:a,handleOptionToggle:p},e.value)),f.length===0&&(0,n.jsx)(`div`,{className:rp.filterOption,children:(0,n.jsx)(`span`,{className:rp.filterOptionLabel,children:`No se encontraron opciones`})})]}),(0,n.jsxs)(`div`,{className:rp.filterModalActions,children:[(0,n.jsx)(np,{onClick:h,level:`tertiary`,children:`Limpiar todo`}),(0,n.jsxs)(np,{onClick:c,level:`primary`,children:[`Aplicar (`,a.length+(i?1:0),`)`]})]})]})};
108
108
  /*! js-cookie v3.0.5 | MIT */
109
- function op(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)e[r]=n[r]}return e}var sp={read:function(e){return e[0]===`"`&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function cp(e,t){function n(n,r,i){if(!(typeof document>`u`)){i=op({},t,i),typeof i.expires==`number`&&(i.expires=new Date(Date.now()+i.expires*864e5)),i.expires&&=i.expires.toUTCString(),n=encodeURIComponent(n).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var a=``;for(var o in i)i[o]&&(a+=`; `+o,i[o]!==!0&&(a+=`=`+i[o].split(`;`)[0]));return document.cookie=n+`=`+e.write(r,n)+a}}function r(t){if(!(typeof document>`u`||arguments.length&&!t)){for(var n=document.cookie?document.cookie.split(`; `):[],r={},i=0;i<n.length;i++){var a=n[i].split(`=`),o=a.slice(1).join(`=`);try{var s=decodeURIComponent(a[0]);if(r[s]=e.read(o,s),t===s)break}catch{}}return t?r[t]:r}}return Object.create({set:n,get:r,remove:function(e,t){n(e,``,op({},t,{expires:-1}))},withAttributes:function(e){return cp(this.converter,op({},this.attributes,e))},withConverter:function(e){return cp(op({},this.converter,e),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var lp=cp(sp,{path:`/`}),up=30;let dp=e=>{let{data:n,columns:r,defaultSort:i,defaultFilters:a={},defaultPageSize:o=10,pageSizeOptions:s=[10,25,50,100,200,300,400,500],persistConfig:c=!0,configKey:l=`advanced-table-config`,onConfigChange:u}=e,d=(0,t.useCallback)(()=>{if(!c)return null;try{let e=lp.get(l);return e?JSON.parse(e):null}catch(e){return console.warn(`Error loading table config from cookies:`,e),null}},[c,l]),f=(0,t.useCallback)(e=>{if(c)try{lp.set(l,JSON.stringify(e),{expires:up})}catch(e){console.warn(`Error saving table config to cookies:`,e)}},[c,l]),p=d(),[m,h]=(0,t.useState)(p?.sortConfig||i||void 0),[g,_]=(0,t.useState)(p?.filters||a),[v,y]=(0,t.useState)(p?.columnOrder||r.map(e=>e.id)),[b,x]=(0,t.useState)(p?.hiddenColumns||[]),[S,C]=(0,t.useState)(p?.pinnedColumns||[]),[w,T]=(0,t.useState)({page:1,pageSize:p?.pagination?.pageSize||o,total:n.length});(0,t.useEffect)(()=>{let e=r.map(e=>e.id);y(t=>{let n=t.filter(t=>e.includes(t)),r=e.filter(e=>!n.includes(e));return[...n,...r]}),x(t=>t.filter(t=>e.includes(t))),C(t=>t.filter(t=>e.includes(t)))},[r]);let E=(0,t.useMemo)(()=>{let e=[...n];return Object.entries(g).forEach(([t,n])=>{let i=r.find(e=>e.id===t);i&&(e=e.filter(e=>{let t=typeof i.accessor==`function`?i.accessor(e):e[i.accessor],r=String(t||``).toLowerCase(),a=!0;return n.type===`text`&&n.value&&(a&&=r.includes(String(n.value).toLowerCase())),n.type===`select`&&n.value&&(a&&=r===String(n.value).toLowerCase()),n.type===`multiselect`&&Array.isArray(n.value)&&n.value.length>0&&(a&&=n.value.some(e=>r===String(e).toLowerCase())),a}))}),e},[n,g,r]),D=(0,t.useMemo)(()=>{if(!m)return E;let e=r.find(e=>e.id===m.column);return e?[...E].sort((t,n)=>{let r=typeof e.accessor==`function`?e.accessor(t):t[e.accessor],i=typeof e.accessor==`function`?e.accessor(n):n[e.accessor];if(r==null)return 1;if(i==null)return-1;let a=0;if(typeof r==`number`&&typeof i==`number`)a=r-i;else if(typeof r==`boolean`&&typeof i==`boolean`)a=r===i?0:r?1:-1;else if(r instanceof Date&&i instanceof Date)a=r.getTime()-i.getTime();else{let e=String(r).toLowerCase(),t=String(i).toLowerCase();a=e.localeCompare(t)}return m.direction===`desc`?a*-1:a}):E},[E,m,r]),O=(0,t.useMemo)(()=>{let e=(w.page-1)*w.pageSize,t=e+w.pageSize;return D.slice(e,t)},[D,w.page,w.pageSize]);(0,t.useEffect)(()=>{T(e=>({...e,total:E.length,page:Math.min(e.page,Math.ceil(E.length/e.pageSize)||1)}))},[E.length]),(0,t.useEffect)(()=>{let e={sort:m,filters:g,columnOrder:v,hiddenColumns:b,pinnedColumns:S,pageSize:w.pageSize};f(e),u?.({sort:m,filters:g,pagination:w,columnOrder:v,hiddenColumns:b,pinnedColumns:S,columns:r})},[m,g,v,b,S,w.pageSize,f,u,w,r]);let k=(0,t.useCallback)(e=>{h(t=>t?.column===e?t.direction===`asc`?{column:e,direction:`desc`}:void 0:{column:e,direction:`asc`})},[]),A=(0,t.useCallback)((e,t,n=`text`)=>{_(r=>({...r,[e]:{type:n,value:t,options:r[e]?.options}})),T(e=>({...e,page:1}))},[]),j=(0,t.useCallback)(e=>{_(t=>{let n={...t};return delete n[e],n})},[]),M=(0,t.useCallback)(()=>{_({})},[]),N=(0,t.useCallback)(e=>{T(t=>({...t,page:e}))},[]),ee=(0,t.useCallback)(e=>{T(t=>({...t,pageSize:e,page:1}))},[]),te=(0,t.useCallback)(e=>{y(e)},[]),P=(0,t.useCallback)(e=>{x(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),ne=(0,t.useCallback)(e=>{C(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),re=(0,t.useMemo)(()=>{let e=v.map(e=>r.find(t=>t.id===e)).filter(Boolean).filter(e=>!b.includes(e.id)),t=e.filter(e=>S.includes(e.id)),n=e.filter(e=>!S.includes(e.id));return[...t,...n]},[v,r,b,S]);return{state:{data:n,filteredData:E,paginatedData:O,sortConfig:m,filters:g,pagination:w,columnOrder:v,hiddenColumns:b,pinnedColumns:S,loading:!1},orderedColumns:re,pageSizeOptions:s,handleSort:k,handleFilter:A,clearFilter:j,clearAllFilters:M,handlePageChange:N,handlePageSizeChange:ee,handleColumnReorder:te,handleToggleColumn:P,handleTogglePinColumn:ne,allColumns:r}};var fp=({data:e,columns:r,defaultSort:i,defaultFilters:a={},defaultPageSize:o=10,pageSizeOptions:s=[10,25,50,100,200,300,400,500],enableSorting:c=!0,enableFiltering:l=!0,enablePagination:u=!0,enableExport:v=!0,persistConfig:y=!0,configKey:b=`advancedTable`,className:x=``,labels:S={configuration:`Configuración`,columnVisibility:`Columnas visibles`,pagination:{showingItems:`Mostrando`,to:`a`,of:`de`,items:`elementos`,showPerPage:`Mostrar`,perPageItems:`elementos`},clearAllFilters:`Limpiar todos los filtros`},enableColumnReordering:C=!0,renderActions:w,actionsColumnLabel:T,loading:E=!1})=>{let[D,O]=(0,t.useState)(null),[k,A]=(0,t.useState)(null),[j,M]=(0,t.useState)(!1),[N,ee]=(0,t.useState)(null),te=(0,t.useRef)(null),[P,ne]=(0,t.useState)(r),{state:re,orderedColumns:ie,handleSort:ae,handleFilter:oe,clearAllFilters:se,handlePageChange:ce,handlePageSizeChange:le,handleColumnReorder:ue,handleToggleColumn:de,handleTogglePinColumn:fe}=dp({data:e,columns:P,defaultSort:i,defaultFilters:a,defaultPageSize:o,pageSizeOptions:s,persistConfig:y,configKey:b}),{paginatedData:pe,sortConfig:me,filters:he,pagination:F,hiddenColumns:ge,pinnedColumns:_e}=re;(0,t.useEffect)(()=>ne(r),[r]);let I=(0,t.useMemo)(()=>{let e=[...ie],t=e.filter(e=>e.isAction),n=[...e.filter(e=>!e.isAction),...t];return w&&n.push({id:`actions-synthetic`,label:T||``,accessor:e=>e,render:(e,t,n)=>w(t,n),width:100,isAction:!0,filterable:!1,sortable:!1,draggable:!1,pinned:!1}),n},[ie,w,T]),ve=(e,t)=>{O(t),e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/html`,``)},ye=(e,t)=>{e.preventDefault(),e.dataTransfer.dropEffect=`move`,A(t)},be=()=>{A(null)},xe=(e,t)=>{if(e.preventDefault(),D!==null){if(D!==t){let e=[...re.columnOrder],[n]=e.splice(D,1);e.splice(t,0,n),ue(e)}O(null),A(null)}},Se=()=>{O(null),A(null)},L=()=>{if(!v)return;let e=I.filter(e=>!e.isAction);Xf(re.filteredData,e,`table-data.xlsx`)},Ce=e=>{ee(N===e?null:e)},we=t=>{let n=P.find(e=>e.id===t);if(!n)return[];let r=new Map;return e.forEach(e=>{let t=typeof n.accessor==`function`?n.accessor(e):e[n.accessor],i=Zf(t);r.set(i,(r.get(i)||0)+1)}),Array.from(r.entries()).map(([e,t])=>({value:e,count:t,label:`${e} (${t})`})).sort((e,t)=>e.value.localeCompare(t.value))},Te=Object.values(he).some(e=>e.type===`text`&&e.value||e.type===`select`&&e.value||e.type===`multiselect`&&Array.isArray(e.value)&&e.value.length>0);(0,t.useEffect)(()=>{let e=e=>{te.current&&!te.current.contains(e.target)&&M(!1)};return j&&document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},[j]);let Ee=Math.ceil(F.total/F.pageSize),De=e=>{if(!_e.includes(ie[e].id))return;let t=0;for(let n=0;n<e;n++)_e.includes(ie[n].id)&&(t+=ie[n].width||150);return t},Oe=e=>{if(!I[e].isAction)return;let t=0;for(let n=e+1;n<I.length;n++)I[n].isAction&&(t+=I[n].width||100);return t};return(0,n.jsxs)(`div`,{className:`w-full bg-redi-background border border-solid border-gray-500 rounded-xl overflow-hidden font-family-base shadow ${x}`,children:[(0,n.jsxs)(`div`,{className:`flex items-center justify-between p-4 bg-transparent border-b border-solid border-gray-400`,children:[(0,n.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,n.jsxs)(`div`,{className:`relative`,children:[(0,n.jsxs)(np,{level:`secondary`,onClick:()=>M(!j),children:[(0,n.jsx)(m,{}),(0,n.jsx)(`span`,{className:`hidden md:block`,children:S.configuration})]}),j&&(0,n.jsx)(`div`,{className:`absolute top-full left-0 bg-white border border-solid border-gray-300 rounded-md shadow-lg z-1000 mt-2 min-w-2xs max-w-xs opacity-100 visible p-4`,ref:te,children:(0,n.jsxs)(`div`,{className:`mb-4 last:mb-0`,children:[(0,n.jsx)(`div`,{className:`text-sm font-semibold text-redi-text mb-2 uppercase`,children:S.columnVisibility}),(0,n.jsx)(`div`,{className:`flex flex-col gap-2`,children:P.filter(e=>!e.isAction).map(e=>{let t=!ge.includes(e.id),r=_e.includes(e.id);return(0,n.jsxs)(`div`,{className:`flex items-center justify-between gap-2 hover:bg-gray-50 p-1 rounded`,children:[(0,n.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,n.jsx)(`input`,{type:`checkbox`,className:`w-4 h-4 accent-redi-primary cursor-pointer`,checked:t,onChange:()=>de(e.id),id:`col-visibility-${e.id}`}),(0,n.jsx)(`label`,{htmlFor:`col-visibility-${e.id}`,className:`text-sm text-redi-text cursor-pointer select-none`,children:e.label})]}),t&&(0,n.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,n.jsx)(np,{level:`icon`,onClick:t=>{t.stopPropagation(),fe(e.id)},"aria-label":r?`Unpin column`:`Pin column`,className:`p-1 hover:bg-gray-200 rounded-full`,children:(0,n.jsx)(_,{size:14,className:r?`text-redi-primary rotate-45`:`text-gray-400`})}),(0,n.jsx)(np,{level:`icon`,onClick:t=>{t.stopPropagation();let n=P.map(t=>t.id===e.id?{...t,draggable:!t.draggable}:t);ne(n)},"aria-label":e.draggable?`Disable drag`:`Enable drag`,className:`p-1 hover:bg-gray-200 rounded-full`,children:(0,n.jsx)(p,{size:14,color:e.draggable?`#fa8c16`:`#9ca3af`})}),(0,n.jsx)(np,{level:`icon`,onClick:t=>{t.stopPropagation();let n=P.map(t=>t.id===e.id?{...t,filterable:!t.filterable}:t);ne(n)},"aria-label":e.filterable?`Disable filter`:`Enable filter`,className:`p-1 hover:bg-gray-200 rounded-full`,children:e.filterable?(0,n.jsx)(h,{size:14,color:`#fa8c16`}):(0,n.jsx)(g,{size:14,color:`#9ca3af`})})]})]},e.id)})})]})})]}),l&&Te&&(0,n.jsx)(np,{level:`icon`,onClick:se,label:S.clearAllFilters,children:(0,n.jsx)(d,{color:`white`})})]}),(0,n.jsx)(`div`,{className:`flex items-center gap-2`,children:v&&(0,n.jsx)(np,{level:`secondary`,onClick:L,children:(0,n.jsx)(f,{size:18})})})]}),(0,n.jsx)(`div`,{className:`overflow-x-auto max-h-[600px] min-h-[500px] overflow-y-auto bg-white relative`,children:(0,n.jsxs)(`table`,{className:`w-full border-separate border-spacing-0 table-auto text-sm relative`,"aria-label":`Data Table`,children:[(0,n.jsx)(`thead`,{children:(0,n.jsx)(`tr`,{children:I.map((e,t)=>{let r=_e.includes(e.id),i=e.isAction,a=De(t),o=e.width||150+(e.filterable?50:0),s=r?{position:`sticky`,left:a,width:o,minWidth:o,maxWidth:o,zIndex:20}:i?{position:`sticky`,right:Oe(t),width:o,minWidth:o,maxWidth:o,zIndex:20}:{minWidth:o};return(0,n.jsx)(`th`,{className:`bg-gray-50 border-b border-solid border-gray-200 text-left font-semibold text-redi-text p-0 sticky top-0 z-10 select-none hover:bg-gray-200
109
+ function op(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)e[r]=n[r]}return e}var sp={read:function(e){return e[0]===`"`&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function cp(e,t){function n(n,r,i){if(!(typeof document>`u`)){i=op({},t,i),typeof i.expires==`number`&&(i.expires=new Date(Date.now()+i.expires*864e5)),i.expires&&=i.expires.toUTCString(),n=encodeURIComponent(n).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var a=``;for(var o in i)i[o]&&(a+=`; `+o,i[o]!==!0&&(a+=`=`+i[o].split(`;`)[0]));return document.cookie=n+`=`+e.write(r,n)+a}}function r(t){if(!(typeof document>`u`||arguments.length&&!t)){for(var n=document.cookie?document.cookie.split(`; `):[],r={},i=0;i<n.length;i++){var a=n[i].split(`=`),o=a.slice(1).join(`=`);try{var s=decodeURIComponent(a[0]);if(r[s]=e.read(o,s),t===s)break}catch{}}return t?r[t]:r}}return Object.create({set:n,get:r,remove:function(e,t){n(e,``,op({},t,{expires:-1}))},withAttributes:function(e){return cp(this.converter,op({},this.attributes,e))},withConverter:function(e){return cp(op({},this.converter,e),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var lp=cp(sp,{path:`/`}),up=30;let dp=e=>{let{data:n,columns:r,defaultSort:i,defaultFilters:a={},defaultPageSize:o=10,pageSizeOptions:s=[10,25,50,100,200,300,400,500],persistConfig:c=!0,configKey:l=`advanced-table-config`,onConfigChange:u}=e,d=(0,t.useCallback)(()=>{if(!c)return null;try{let e=lp.get(l);return e?JSON.parse(e):null}catch(e){return console.warn(`Error loading table config from cookies:`,e),null}},[c,l]),f=(0,t.useCallback)(e=>{if(c)try{lp.set(l,JSON.stringify(e),{expires:up})}catch(e){console.warn(`Error saving table config to cookies:`,e)}},[c,l]),p=d(),[m,h]=(0,t.useState)(p?.sortConfig||i||void 0),[g,_]=(0,t.useState)(p?.filters||a),[v,y]=(0,t.useState)(p?.columnOrder||r.map(e=>e.id)),[b,x]=(0,t.useState)(p?.hiddenColumns||[]),[S,C]=(0,t.useState)(p?.pinnedColumns||[]),[w,T]=(0,t.useState)({page:1,pageSize:p?.pagination?.pageSize||o,total:n.length});(0,t.useEffect)(()=>{let e=r.map(e=>e.id);y(t=>{let n=t.filter(t=>e.includes(t)),r=e.filter(e=>!n.includes(e));return[...n,...r]}),x(t=>t.filter(t=>e.includes(t))),C(t=>t.filter(t=>e.includes(t)))},[r]);let E=(0,t.useMemo)(()=>{let e=[...n];return Object.entries(g).forEach(([t,n])=>{let i=r.find(e=>e.id===t);i&&(e=e.filter(e=>{let t=typeof i.accessor==`function`?i.accessor(e):e[i.accessor],r=String(t||``).toLowerCase(),a=!0;return n.type===`text`&&n.value&&(a&&=r.includes(String(n.value).toLowerCase())),n.type===`select`&&n.value&&(a&&=r===String(n.value).toLowerCase()),n.type===`multiselect`&&Array.isArray(n.value)&&n.value.length>0&&(a&&=n.value.some(e=>r===String(e).toLowerCase())),a}))}),e},[n,g,r]),D=(0,t.useMemo)(()=>{if(!m)return E;let e=r.find(e=>e.id===m.column);return e?[...E].sort((t,n)=>{let r=typeof e.accessor==`function`?e.accessor(t):t[e.accessor],i=typeof e.accessor==`function`?e.accessor(n):n[e.accessor];if(r==null)return 1;if(i==null)return-1;let a=0;if(typeof r==`number`&&typeof i==`number`)a=r-i;else if(typeof r==`boolean`&&typeof i==`boolean`)a=r===i?0:r?1:-1;else if(r instanceof Date&&i instanceof Date)a=r.getTime()-i.getTime();else{let e=String(r).toLowerCase(),t=String(i).toLowerCase();a=e.localeCompare(t)}return m.direction===`desc`?a*-1:a}):E},[E,m,r]),O=(0,t.useMemo)(()=>{let e=(w.page-1)*w.pageSize,t=e+w.pageSize;return D.slice(e,t)},[D,w.page,w.pageSize]);(0,t.useEffect)(()=>{T(e=>({...e,total:E.length,page:Math.min(e.page,Math.ceil(E.length/e.pageSize)||1)}))},[E.length]),(0,t.useEffect)(()=>{let e={sort:m,filters:g,columnOrder:v,hiddenColumns:b,pinnedColumns:S,pageSize:w.pageSize};f(e),u?.({sort:m,filters:g,pagination:w,columnOrder:v,hiddenColumns:b,pinnedColumns:S,columns:r})},[m,g,v,b,S,w.pageSize,f,u,w,r]);let k=(0,t.useCallback)(e=>{h(t=>t?.column===e?t.direction===`asc`?{column:e,direction:`desc`}:void 0:{column:e,direction:`asc`})},[]),A=(0,t.useCallback)((e,t,n=`text`)=>{_(r=>({...r,[e]:{type:n,value:t,options:r[e]?.options}})),T(e=>({...e,page:1}))},[]),j=(0,t.useCallback)(e=>{_(t=>{let n={...t};return delete n[e],n})},[]),M=(0,t.useCallback)(()=>{_({})},[]),N=(0,t.useCallback)(e=>{T(t=>({...t,page:e}))},[]),ee=(0,t.useCallback)(e=>{T(t=>({...t,pageSize:e,page:1}))},[]),te=(0,t.useCallback)(e=>{y(e)},[]),P=(0,t.useCallback)(e=>{x(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),ne=(0,t.useCallback)(e=>{C(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),re=(0,t.useMemo)(()=>{let e=v.map(e=>r.find(t=>t.id===e)).filter(Boolean).filter(e=>!b.includes(e.id)),t=e.filter(e=>S.includes(e.id)),n=e.filter(e=>!S.includes(e.id));return[...t,...n]},[v,r,b,S]);return{state:{data:n,filteredData:E,paginatedData:O,sortConfig:m,filters:g,pagination:w,columnOrder:v,hiddenColumns:b,pinnedColumns:S,loading:!1},orderedColumns:re,pageSizeOptions:s,handleSort:k,handleFilter:A,clearFilter:j,clearAllFilters:M,handlePageChange:N,handlePageSizeChange:ee,handleColumnReorder:te,handleToggleColumn:P,handleTogglePinColumn:ne,allColumns:r}};var fp=({data:e,columns:r,defaultSort:i,defaultFilters:a={},defaultPageSize:o=10,pageSizeOptions:s=[10,25,50,100,200,300,400,500],enableSorting:c=!0,enableFiltering:l=!0,enablePagination:u=!0,enableExport:v=!0,persistConfig:y=!0,configKey:b=`advancedTable`,className:x=``,labels:S={configuration:`Configuración`,columnVisibility:`Columnas visibles`,pagination:{showingItems:`Mostrando`,to:`a`,of:`de`,items:`elementos`,showPerPage:`Mostrar`,perPageItems:`elementos`},clearAllFilters:`Limpiar todos los filtros`},enableColumnReordering:C=!0,renderActions:w,actionsColumnLabel:T,loading:E=!1})=>{let[D,O]=(0,t.useState)(null),[k,A]=(0,t.useState)(null),[j,M]=(0,t.useState)(!1),[N,ee]=(0,t.useState)(null),te=(0,t.useRef)(null),[P,ne]=(0,t.useState)(r),{state:re,orderedColumns:ie,handleSort:ae,handleFilter:oe,clearAllFilters:se,handlePageChange:ce,handlePageSizeChange:le,handleColumnReorder:ue,handleToggleColumn:de,handleTogglePinColumn:fe}=dp({data:e,columns:P,defaultSort:i,defaultFilters:a,defaultPageSize:o,pageSizeOptions:s,persistConfig:y,configKey:b}),{paginatedData:pe,sortConfig:me,filters:he,pagination:F,hiddenColumns:ge,pinnedColumns:_e}=re;(0,t.useEffect)(()=>ne(r),[r]);let I=(0,t.useMemo)(()=>{let e=[...ie],t=e.filter(e=>e.isAction),n=[...e.filter(e=>!e.isAction),...t];return w&&n.push({id:`actions-synthetic`,label:T||``,accessor:e=>e,render:(e,t,n)=>w(t,n),width:100,isAction:!0,filterable:!1,sortable:!1,draggable:!1,pinned:!1}),n},[ie,w,T]),ve=(e,t)=>{O(t),e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/html`,``)},ye=(e,t)=>{e.preventDefault(),e.dataTransfer.dropEffect=`move`,A(t)},be=()=>{A(null)},xe=(e,t)=>{if(e.preventDefault(),D!==null){if(D!==t){let e=[...re.columnOrder],[n]=e.splice(D,1);e.splice(t,0,n),ue(e)}O(null),A(null)}},Se=()=>{O(null),A(null)},L=()=>{if(!v)return;let e=I.filter(e=>!e.isAction);Xf(re.filteredData,e,`table-data.xlsx`)},Ce=e=>{ee(N===e?null:e)},we=t=>{let n=P.find(e=>e.id===t);if(!n)return[];let r=new Map;return e.forEach(e=>{let t=typeof n.accessor==`function`?n.accessor(e):e[n.accessor],i=Zf(t);r.set(i,(r.get(i)||0)+1)}),Array.from(r.entries()).map(([e,t])=>({value:e,count:t,label:`${e} (${t})`})).sort((e,t)=>e.value.localeCompare(t.value))},Te=Object.values(he).some(e=>e.type===`text`&&e.value||e.type===`select`&&e.value||e.type===`multiselect`&&Array.isArray(e.value)&&e.value.length>0);(0,t.useEffect)(()=>{let e=e=>{te.current&&!te.current.contains(e.target)&&M(!1)};return j&&document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},[j]);let Ee=Math.ceil(F.total/F.pageSize),De=e=>e.width?e.width:e.isAction?100:150+(e.filterable?50:0),Oe=e=>{if(!_e.includes(ie[e].id))return;let t=0;for(let n=0;n<e;n++)_e.includes(ie[n].id)&&(t+=De(ie[n]));return t},ke=e=>{if(!I[e].isAction)return;let t=0;for(let n=e+1;n<I.length;n++)I[n].isAction&&(t+=De(I[n]));return t};return(0,n.jsxs)(`div`,{className:`w-full bg-redi-background border border-solid border-gray-500 rounded-xl overflow-hidden font-family-base shadow ${x}`,children:[(0,n.jsxs)(`div`,{className:`flex items-center justify-between p-4 bg-transparent border-b border-solid border-gray-400`,children:[(0,n.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,n.jsxs)(`div`,{className:`relative`,children:[(0,n.jsxs)(np,{level:`secondary`,onClick:()=>M(!j),children:[(0,n.jsx)(m,{}),(0,n.jsx)(`span`,{className:`hidden md:block`,children:S.configuration})]}),j&&(0,n.jsx)(`div`,{className:`absolute top-full left-0 bg-white border border-solid border-gray-300 rounded-md shadow-lg z-1000 mt-2 min-w-2xs max-w-xs opacity-100 visible p-4`,ref:te,children:(0,n.jsxs)(`div`,{className:`mb-4 last:mb-0`,children:[(0,n.jsx)(`div`,{className:`text-sm font-semibold text-redi-text mb-2 uppercase`,children:S.columnVisibility}),(0,n.jsx)(`div`,{className:`flex flex-col gap-2`,children:P.filter(e=>!e.isAction).map(e=>{let t=!ge.includes(e.id),r=_e.includes(e.id);return(0,n.jsxs)(`div`,{className:`flex items-center justify-between gap-2 hover:bg-gray-50 p-1 rounded`,children:[(0,n.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,n.jsx)(`input`,{type:`checkbox`,className:`w-4 h-4 accent-redi-primary cursor-pointer`,checked:t,onChange:()=>de(e.id),id:`col-visibility-${e.id}`}),(0,n.jsx)(`label`,{htmlFor:`col-visibility-${e.id}`,className:`text-sm text-redi-text cursor-pointer select-none`,children:e.label})]}),t&&(0,n.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,n.jsx)(np,{level:`icon`,onClick:t=>{t.stopPropagation(),fe(e.id)},"aria-label":r?`Unpin column`:`Pin column`,className:`p-1 hover:bg-gray-200 rounded-full`,children:(0,n.jsx)(_,{size:14,className:r?`text-redi-primary rotate-45`:`text-gray-400`})}),(0,n.jsx)(np,{level:`icon`,onClick:t=>{t.stopPropagation();let n=P.map(t=>t.id===e.id?{...t,draggable:!t.draggable}:t);ne(n)},"aria-label":e.draggable?`Disable drag`:`Enable drag`,className:`p-1 hover:bg-gray-200 rounded-full`,children:(0,n.jsx)(p,{size:14,color:e.draggable?`#fa8c16`:`#9ca3af`})}),(0,n.jsx)(np,{level:`icon`,onClick:t=>{t.stopPropagation();let n=P.map(t=>t.id===e.id?{...t,filterable:!t.filterable}:t);ne(n)},"aria-label":e.filterable?`Disable filter`:`Enable filter`,className:`p-1 hover:bg-gray-200 rounded-full`,children:e.filterable?(0,n.jsx)(h,{size:14,color:`#fa8c16`}):(0,n.jsx)(g,{size:14,color:`#9ca3af`})})]})]},e.id)})})]})})]}),l&&Te&&(0,n.jsx)(np,{level:`icon`,onClick:se,label:S.clearAllFilters,children:(0,n.jsx)(d,{color:`white`})})]}),(0,n.jsx)(`div`,{className:`flex items-center gap-2`,children:v&&(0,n.jsx)(np,{level:`secondary`,onClick:L,children:(0,n.jsx)(f,{size:18})})})]}),(0,n.jsx)(`div`,{className:`overflow-x-auto max-h-[600px] min-h-[500px] overflow-y-auto bg-white relative`,children:(0,n.jsxs)(`table`,{className:`w-full border-separate border-spacing-0 table-auto text-sm relative`,"aria-label":`Data Table`,children:[(0,n.jsx)(`thead`,{children:(0,n.jsx)(`tr`,{children:I.map((e,t)=>{let r=_e.includes(e.id),i=e.isAction,a=Oe(t),o=De(e),s=r?{position:`sticky`,left:a,width:o,minWidth:o,maxWidth:o,zIndex:20}:i?{position:`sticky`,right:ke(t),width:o,minWidth:o,maxWidth:o,zIndex:20}:{width:o,minWidth:o,maxWidth:o};return(0,n.jsx)(`th`,{className:`bg-gray-50 border-b border-solid border-gray-200 text-left font-semibold text-redi-text p-0 sticky top-0 z-10 select-none hover:bg-gray-200
110
110
  ${D===t?`opacity-50 bg-gray-300`:``}
111
111
  ${k===t?`bg-redi-primary-bg border-l border-solid border-redi-primary`:``}
112
112
  ${r?`z-20 bg-gray-100 border-r border-gray-300 shadow-[2px_0_5px_-2px_rgba(0,0,0,0.1)]`:``}
113
113
  ${i?`z-20 bg-gray-50 border-l border-gray-200 shadow-[-2px_0_5px_-2px_rgba(0,0,0,0.1)]`:``}
114
- `,style:s,draggable:!r&&!i&&C&&(e.draggable??!1),onDragStart:n=>!r&&!i&&C&&(e.draggable??!1)&&ve(n,t),onDragOver:n=>!r&&!i&&C&&(e.draggable??!1)&&ye(n,t),onDragLeave:be,onDrop:n=>!r&&!i&&C&&(e.draggable??!1)&&xe(n,t),onDragEnd:Se,"aria-sort":me?.column===e.id?me.direction===`asc`?`ascending`:`descending`:`none`,children:(0,n.jsxs)(`div`,{className:`flex items-center py-3 px-4 gap-2 min-h-12`,children:[!r&&!i&&C&&(e.draggable??!1)&&(0,n.jsx)(`div`,{className:`text-gray-600 cursor-grab opacity-70 hover:opacity-100 text-base`,"aria-hidden":`true`,children:`⋮⋮`}),(0,n.jsxs)(`div`,{className:`flex flex-1 items-center gap-2`,children:[(0,n.jsxs)(`span`,{className:c?`cursor-pointer py-1 px-1.5 rounded-sm flex items-center gap-1.5 text-sm font-semibold text-redi-text uppercase hover:bg-redi-background hover:text-redi-link-text`:``,onClick:t=>{t.stopPropagation(),e.sortable&&ae(e.id)},role:`button`,tabIndex:0,onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e.sortable&&ae(e.id))},children:[e.label,e.sortable&&me?.column===e.id&&(0,n.jsx)(`span`,{className:`font-bold text-redi-link-text text-base`,children:me.direction===`asc`?` ↑`:` ↓`})]}),(0,n.jsx)(`div`,{className:`flex items-center gap-1`,children:e.filterable&&(0,n.jsxs)(`div`,{className:`relative`,children:[(0,n.jsx)(np,{level:`icon`,onClick:t=>{t.stopPropagation(),Ce(e.id)},"aria-label":`Filter by ${e.label}`,children:(0,n.jsx)(h,{size:16})}),N===e.id&&(0,n.jsx)(ap,{columnId:e.id,label:e.label,options:we(e.id),textValue:he[e.id]?.type===`text`?String(he[e.id].value||``):``,selectedValues:he[e.id]?.type===`multiselect`&&Array.isArray(he[e.id]?.value)?he[e.id].value:[],onTextChange:t=>oe(e.id,t,`text`),onSelectionChange:t=>oe(e.id,t,`multiselect`),onClose:()=>ee(null)})]})})]})]})},e.id)})})}),(0,n.jsx)(`tbody`,{children:E?Array.from({length:5}).map((e,t)=>(0,n.jsx)(`tr`,{className:`border-b border-solid border-gray-100`,children:I.map((e,t)=>{let r=_e.includes(e.id),i=e.isAction,a=De(t),o=r?{position:`sticky`,left:a,zIndex:10}:i?{position:`sticky`,right:Oe(t),zIndex:10}:{};return(0,n.jsx)(`td`,{className:`py-4 px-4 ${r?`bg-white border-r border-gray-200`:``} ${i?`bg-white border-l border-gray-200`:``}`,style:o,children:(0,n.jsx)(`div`,{className:`h-4 bg-gray-200 rounded animate-pulse w-3/4`})},`skeleton-cell-${t}`)})},`skeleton-${t}`)):pe.length>0?pe.map((e,t)=>(0,n.jsx)(`tr`,{className:`even:bg-gray-50 hover:bg-gray-100 border-b border-solid border-b-gray-100 odd:bg-white`,children:I.map((r,i)=>{let a=typeof r.accessor==`function`?r.accessor(e):e[r.accessor],o=_e.includes(r.id),s=r.isAction,c=De(i),l=`py-3 px-4 text-redi-text font-normal leading-6 align-middle border-r border-solid border-r-gray-300 static table-cell last:border-r-0 first:font-medium
114
+ `,style:s,draggable:!r&&!i&&C&&(e.draggable??!1),onDragStart:n=>!r&&!i&&C&&(e.draggable??!1)&&ve(n,t),onDragOver:n=>!r&&!i&&C&&(e.draggable??!1)&&ye(n,t),onDragLeave:be,onDrop:n=>!r&&!i&&C&&(e.draggable??!1)&&xe(n,t),onDragEnd:Se,"aria-sort":me?.column===e.id?me.direction===`asc`?`ascending`:`descending`:`none`,children:(0,n.jsxs)(`div`,{className:`flex items-center py-3 px-4 gap-2 min-h-12`,children:[!r&&!i&&C&&(e.draggable??!1)&&(0,n.jsx)(`div`,{className:`text-gray-600 cursor-grab opacity-70 hover:opacity-100 text-base`,"aria-hidden":`true`,children:`⋮⋮`}),(0,n.jsxs)(`div`,{className:`flex flex-1 items-center gap-2`,children:[(0,n.jsxs)(`span`,{className:c?`cursor-pointer py-1 px-1.5 rounded-sm flex items-center gap-1.5 text-sm font-semibold text-redi-text uppercase hover:bg-redi-background hover:text-redi-link-text`:``,onClick:t=>{t.stopPropagation(),e.sortable&&ae(e.id)},role:`button`,tabIndex:0,onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e.sortable&&ae(e.id))},children:[e.label,e.sortable&&me?.column===e.id&&(0,n.jsx)(`span`,{className:`font-bold text-redi-link-text text-base`,children:me.direction===`asc`?` ↑`:` ↓`})]}),(0,n.jsx)(`div`,{className:`flex items-center gap-1`,children:e.filterable&&(0,n.jsxs)(`div`,{className:`relative`,children:[(0,n.jsx)(np,{level:`icon`,onClick:t=>{t.stopPropagation(),Ce(e.id)},"aria-label":`Filter by ${e.label}`,children:(0,n.jsx)(h,{size:16})}),N===e.id&&(0,n.jsx)(ap,{columnId:e.id,label:e.label,options:we(e.id),textValue:he[e.id]?.type===`text`?String(he[e.id].value||``):``,selectedValues:he[e.id]?.type===`multiselect`&&Array.isArray(he[e.id]?.value)?he[e.id].value:[],onTextChange:t=>oe(e.id,t,`text`),onSelectionChange:t=>oe(e.id,t,`multiselect`),onClose:()=>ee(null)})]})})]})]})},e.id)})})}),(0,n.jsx)(`tbody`,{children:E?Array.from({length:5}).map((e,t)=>(0,n.jsx)(`tr`,{className:`border-b border-solid border-gray-100`,children:I.map((e,t)=>{let r=_e.includes(e.id),i=e.isAction,a=Oe(t),o=De(e),s=r?{position:`sticky`,left:a,zIndex:10,width:o,minWidth:o,maxWidth:o}:i?{position:`sticky`,right:ke(t),zIndex:10,width:o,minWidth:o,maxWidth:o}:{width:o,minWidth:o,maxWidth:o};return(0,n.jsx)(`td`,{className:`py-4 px-4 ${r?`bg-white border-r border-gray-200`:``} ${i?`bg-white border-l border-gray-200`:``}`,style:s,children:(0,n.jsx)(`div`,{className:`h-4 bg-gray-200 rounded animate-pulse w-3/4`})},`skeleton-cell-${t}`)})},`skeleton-${t}`)):pe.length>0?pe.map((e,t)=>(0,n.jsx)(`tr`,{className:`even:bg-gray-50 hover:bg-gray-100 border-b border-solid border-b-gray-100 odd:bg-white`,children:I.map((r,i)=>{let a=typeof r.accessor==`function`?r.accessor(e):e[r.accessor],o=_e.includes(r.id),s=r.isAction,c=Oe(i),l=De(r),u=`py-3 px-4 text-redi-text font-normal leading-6 align-middle border-r border-solid border-r-gray-300 static table-cell last:border-r-0 first:font-medium
115
115
  ${o?`border-r-gray-300 shadow-[2px_0_5px_-2px_rgba(0,0,0,0.05)]`:``}
116
116
  ${s?`border-l border-gray-300 shadow-[-2px_0_5px_-2px_rgba(0,0,0,0.05)]`:``}
117
- `,u=t%2==0?`#ffffff`:`#f9fafb`,d=o?{position:`sticky`,left:c,zIndex:5,backgroundColor:u}:s?{position:`sticky`,right:Oe(i),zIndex:5,backgroundColor:u}:{};return r.render?(0,n.jsx)(`td`,{className:l,style:d,children:r.render(a,e,t)},r.id):(0,n.jsx)(`td`,{className:l,style:d,children:Zf(a)},r.id)})},t)):(0,n.jsx)(`tr`,{children:(0,n.jsx)(`td`,{colSpan:I.length,className:`py-12 text-center text-gray-500`,children:(0,n.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2`,children:[(0,n.jsx)(`svg`,{className:`w-12 h-12 text-gray-300`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,n.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.5,d:`M20 13V6a2 2 0 00-2-2H6a2 2 0 00-2 2v7m16 0v5a2 2 0 01-2 2H6a2 2 0 01-2-2v-5m16 0h-2.586a1 1 0 00-.707.293l-2.414 2.414a1 1 0 01-.707.293h-3.172a1 1 0 01-.707-.293l-2.414-2.414A1 1 0 006.586 13H4`})}),(0,n.jsx)(`span`,{className:`text-sm font-medium`,children:`No data available`})]})})})})]})}),u&&(0,n.jsxs)(`div`,{className:`flex items-center justify-between py-4 px-6 bg-white border-t-gray-300 border-solid border-t gap-4`,children:[(0,n.jsx)(`div`,{className:`text-redi-text text-base font-medium shrink-0`,children:(0,n.jsxs)(`span`,{children:[S.pagination?.showingItems,` `,(F.page-1)*F.pageSize+1,` `,S.pagination?.to,` `,Math.min(F.page*F.pageSize,F.total),` `,S.pagination?.of,` `,F.total,` `,S.pagination?.items]})}),(0,n.jsxs)(`div`,{className:`flex items-center gap-5`,children:[(0,n.jsxs)(`label`,{className:`flex items-center gap-3 text-sm font-semibold text-redi-text`,children:[S.pagination?.showPerPage,(0,n.jsx)(`select`,{value:F.pageSize,onChange:e=>le(Number(e.target.value)),className:`py-1.5 px-2.5 border border-solid border-gray-300 rounded-md bg-white text-redi-text focus:outline-none focus:ring-2 focus:ring-redi-primary`,children:s.map(e=>(0,n.jsx)(`option`,{value:e,children:e},e))}),S.pagination?.perPageItems]}),(0,n.jsxs)(`div`,{className:`flex gap-1 items-center`,children:[(0,n.jsx)(np,{level:`icon`,onClick:()=>ce(1),disabled:F.page===1,children:`<<`}),(0,n.jsx)(np,{level:`icon`,onClick:()=>ce(F.page-1),disabled:F.page===1,children:`<`}),Array.from({length:Math.min(3,Ee)},(e,t)=>{let r;return r=Ee<=3||F.page<=2?t+1:F.page>Ee-2?Ee-2+t:F.page-1+t,(0,n.jsx)(np,{level:F.page===r?`primary`:`secondary`,onClick:()=>ce(r),children:r},r)}),(0,n.jsx)(np,{level:`icon`,onClick:()=>ce(F.page+1),disabled:F.page===Ee,children:`>`}),(0,n.jsx)(np,{level:`icon`,onClick:()=>ce(Ee),disabled:F.page===Ee,children:`>>`})]})]})]})]})},pp={info:`border-redi-link text-redi-tertiary-text`,success:`border-redi-success text-redi-tertiary-text`,warning:`border-redi-warning text-redi-tertiary-text`,danger:`border-redi-danger text-redi-tertiary-text`},mp=({title:e,description:t,tone:r=`info`,onClose:i})=>(0,n.jsxs)(`div`,{className:`rounded-lg border px-4 py-2 ${pp[r]}`,children:[(0,n.jsxs)(`div`,{className:`flex items-center justify-between`,children:[e&&(0,n.jsx)(`div`,{className:`font-semibold`,children:e}),i&&(0,n.jsx)(`button`,{type:`button`,onClick:i,className:`text-redi-tertiary-text`,children:`×`})]}),t&&(0,n.jsx)(`div`,{className:`text-sm`,children:t})]}),hp={success:`bg-redi-success text-white`,warning:`bg-redi-warning text-white`,danger:`bg-redi-danger text-white`,info:`bg-redi-link text-white`},gp=({label:e,tone:t=`info`})=>(0,n.jsx)(`span`,{className:`inline-block rounded px-2 py-1 text-xs ${hp[t]}`,children:e});let _p=({className:e,...t})=>(0,n.jsx)(`svg`,{className:e||`w-3.5 h-3.5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,strokeWidth:3,...t,children:(0,n.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M4.5 12.75l6 6 9-13.5`})});var vp=({checked:e,onChange:t,label:r,disabled:i=!1,color:a,error:o=!1,helperText:s,id:c,name:l})=>{let u=a?tp(a):null,d=u&&e&&!i?{backgroundColor:u.main,borderColor:u.main,"--checkbox-ring":u.active}:{},f=o?`border-red-500`:`border-gray-300`,p=o?`text-red-500`:`text-gray-700`;return(0,n.jsxs)(`div`,{className:`flex flex-col`,children:[(0,n.jsxs)(`label`,{className:`inline-flex items-center gap-2 ${i?`cursor-not-allowed opacity-75`:`cursor-pointer`}`,children:[(0,n.jsxs)(`div`,{className:`relative flex items-center`,children:[(0,n.jsx)(`input`,{id:c||l,name:l,type:`checkbox`,checked:e,onChange:e=>!i&&t(e.target.checked),disabled:i,className:`peer sr-only`}),(0,n.jsx)(`div`,{className:`
117
+ `,d=t%2==0?`#ffffff`:`#f9fafb`,f=o?{position:`sticky`,left:c,zIndex:5,backgroundColor:d,width:l,minWidth:l,maxWidth:l}:s?{position:`sticky`,right:ke(i),zIndex:5,backgroundColor:d,width:l,minWidth:l,maxWidth:l}:{width:l,minWidth:l,maxWidth:l};return r.render?(0,n.jsx)(`td`,{className:u,style:f,children:r.render(a,e,t)},r.id):(0,n.jsx)(`td`,{className:u,style:f,children:Zf(a)},r.id)})},t)):(0,n.jsx)(`tr`,{children:(0,n.jsx)(`td`,{colSpan:I.length,className:`py-12 text-center text-gray-500`,children:(0,n.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2`,children:[(0,n.jsx)(`svg`,{className:`w-12 h-12 text-gray-300`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,n.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.5,d:`M20 13V6a2 2 0 00-2-2H6a2 2 0 00-2 2v7m16 0v5a2 2 0 01-2 2H6a2 2 0 01-2-2v-5m16 0h-2.586a1 1 0 00-.707.293l-2.414 2.414a1 1 0 01-.707.293h-3.172a1 1 0 01-.707-.293l-2.414-2.414A1 1 0 006.586 13H4`})}),(0,n.jsx)(`span`,{className:`text-sm font-medium`,children:`No data available`})]})})})})]})}),u&&(0,n.jsxs)(`div`,{className:`flex items-center justify-between py-4 px-6 bg-white border-t-gray-300 border-solid border-t gap-4`,children:[(0,n.jsx)(`div`,{className:`text-redi-text text-base font-medium shrink-0`,children:(0,n.jsxs)(`span`,{children:[S.pagination?.showingItems,` `,(F.page-1)*F.pageSize+1,` `,S.pagination?.to,` `,Math.min(F.page*F.pageSize,F.total),` `,S.pagination?.of,` `,F.total,` `,S.pagination?.items]})}),(0,n.jsxs)(`div`,{className:`flex items-center gap-5`,children:[(0,n.jsxs)(`label`,{className:`flex items-center gap-3 text-sm font-semibold text-redi-text`,children:[S.pagination?.showPerPage,(0,n.jsx)(`select`,{value:F.pageSize,onChange:e=>le(Number(e.target.value)),className:`py-1.5 px-2.5 border border-solid border-gray-300 rounded-md bg-white text-redi-text focus:outline-none focus:ring-2 focus:ring-redi-primary`,children:s.map(e=>(0,n.jsx)(`option`,{value:e,children:e},e))}),S.pagination?.perPageItems]}),(0,n.jsxs)(`div`,{className:`flex gap-1 items-center`,children:[(0,n.jsx)(np,{level:`icon`,onClick:()=>ce(1),disabled:F.page===1,children:`<<`}),(0,n.jsx)(np,{level:`icon`,onClick:()=>ce(F.page-1),disabled:F.page===1,children:`<`}),Array.from({length:Math.min(3,Ee)},(e,t)=>{let r;return r=Ee<=3||F.page<=2?t+1:F.page>Ee-2?Ee-2+t:F.page-1+t,(0,n.jsx)(np,{level:F.page===r?`primary`:`secondary`,onClick:()=>ce(r),children:r},r)}),(0,n.jsx)(np,{level:`icon`,onClick:()=>ce(F.page+1),disabled:F.page===Ee,children:`>`}),(0,n.jsx)(np,{level:`icon`,onClick:()=>ce(Ee),disabled:F.page===Ee,children:`>>`})]})]})]})]})},pp={info:`border-redi-link text-redi-tertiary-text`,success:`border-redi-success text-redi-tertiary-text`,warning:`border-redi-warning text-redi-tertiary-text`,danger:`border-redi-danger text-redi-tertiary-text`},mp=({title:e,description:t,tone:r=`info`,onClose:i})=>(0,n.jsxs)(`div`,{className:`rounded-lg border px-4 py-2 ${pp[r]}`,children:[(0,n.jsxs)(`div`,{className:`flex items-center justify-between`,children:[e&&(0,n.jsx)(`div`,{className:`font-semibold`,children:e}),i&&(0,n.jsx)(`button`,{type:`button`,onClick:i,className:`text-redi-tertiary-text`,children:`×`})]}),t&&(0,n.jsx)(`div`,{className:`text-sm`,children:t})]}),hp={success:`bg-redi-success text-white`,warning:`bg-redi-warning text-white`,danger:`bg-redi-danger text-white`,info:`bg-redi-link text-white`},gp=({label:e,tone:t=`info`})=>(0,n.jsx)(`span`,{className:`inline-block rounded px-2 py-1 text-xs ${hp[t]}`,children:e});let _p=({className:e,...t})=>(0,n.jsx)(`svg`,{className:e||`w-3.5 h-3.5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,strokeWidth:3,...t,children:(0,n.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M4.5 12.75l6 6 9-13.5`})});var vp=({checked:e,onChange:t,label:r,disabled:i=!1,color:a,error:o=!1,helperText:s,id:c,name:l})=>{let u=a?tp(a):null,d=u&&e&&!i?{backgroundColor:u.main,borderColor:u.main,"--checkbox-ring":u.active}:{},f=o?`border-red-500`:`border-gray-300`,p=o?`text-red-500`:`text-gray-700`;return(0,n.jsxs)(`div`,{className:`flex flex-col`,children:[(0,n.jsxs)(`label`,{className:`inline-flex items-center gap-2 ${i?`cursor-not-allowed opacity-75`:`cursor-pointer`}`,children:[(0,n.jsxs)(`div`,{className:`relative flex items-center`,children:[(0,n.jsx)(`input`,{id:c||l,name:l,type:`checkbox`,checked:e,onChange:e=>!i&&t(e.target.checked),disabled:i,className:`peer sr-only`}),(0,n.jsx)(`div`,{className:`
118
118
  h-5 w-5 rounded border transition-all duration-200 flex items-center justify-center
119
119
  ${e?`bg-redi-primary-bg border-redi-primary-bg`:`bg-white ${f}`}
120
120
  peer-focus:ring-2 peer-focus:ring-opacity-50 peer-focus:ring-offset-1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@redi.run/redi-components",
3
3
  "description": "This project was created to define the style of the UI and improve the UX in all projects from REDI",
4
- "version": "0.0.28",
4
+ "version": "0.0.29",
5
5
  "type": "module",
6
6
  "author": {
7
7
  "name": "Jonathan Manchego Sosa",