tcce-design-system 0.1.25 → 0.1.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/tcce-design-system-components.css +1 -1
- package/dist/tcce-design-system-components.d.ts +297 -9
- package/dist/tcce-design-system-components.js +4101 -3439
- package/dist/tcce-design-system-components.umd.cjs +531 -412
- package/package.json +73 -73
- package/dist/assets/brand/Logo_Total_Civil_Construction_Optimize/Entrega_Logo_Total_AW.webp:Zone.Identifier +0 -0
- package/dist/assets/brand/Logo_Total_Civil_Construction_Optimize/Entrega_Logo_Total_CB.webp:Zone.Identifier +0 -0
- package/dist/assets/brand/Logo_Total_Civil_Construction_Optimize/Entrega_Logo_Total_CBT.webp:Zone.Identifier +0 -0
- package/dist/assets/brand/Logo_Total_Civil_Construction_Optimize/Entrega_Logo_Total_CC.webp:Zone.Identifier +0 -0
- package/dist/assets/brand/Logo_Total_Civil_Construction_Optimize/Entrega_Logo_Total_M.webp:Zone.Identifier +0 -0
- package/dist/assets/brand/Logo_Total_Civil_Construction_Optimize/Entrega_Logo_Total_NT.webp:Zone.Identifier +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:#f8bdbe;--color-red-300:#f17c7e;--color-orange-100:#fee6db;--color-orange-300:#fab592;--color-green-100:#ceffd8;--color-green-200:#9cffb2;--color-blue-100:#c0b6fe;--color-blue-200:#816dfd;--color-blue-400:#2003d3;--color-blue-600:#0a0141;--color-purple-400:#8276c9;--color-purple-600:#4d3fa0;--color-gray-50:oklch(98.5% .002 247.839);--color-gray-600:oklch(44.6% .03 256.802);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--font-weight-semibold:600;--font-weight-bold:700;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-main-blue-primary:#22205f;--color-main-orange-primary:#f66a24;--color-main-grey:#605f60;--color-main-alternative:#bf5f60;--color-main-alternative-secondary:#f2f2f2;--color-main-positive-state:#01d42f;--color-main-warning-state:#ea3a3d;--color-main-yellow-primary:#faca4a;--color-main-white:#fff;--color-main-black:#000;--color-main-light-borders:#f1f5f7;--color-main-input-borders:#605f60b3;--color-dark-200:#d1d1d1;--color-dark-300:#a2a3a3;--color-dark-400:#747476;--color-dark-600:#17181a;--color-dark-700:#121315;--color-light-200:#f1f5f7;--color-light-300:#d9e1e7;--border-radius-button:1.875rem;--border-radius-card:1.25rem;--border-radius-article:.875rem;--border-radius-outline:.5rem;--shadow-black-card:0 1.25rem 2.5rem 0 #00000026;--shadow-hover-black-card:0 1.875rem 3.75rem 0 #00000059;--shadow-black-button:0 .625rem 1.25rem 0 #00000026;--shadow-hover-black-button:0 .9375rem 1.875rem 0 #00000040;--shadow-hover-orange-button:0 .9375rem 1.875rem 0 var(--color-orange-300);--border-input:1px solid var(--color-main-input-borders);--border-input-disabled:1px solid var(--color-dark-200);--border-input-error:1px solid var(--color-main-warning-state);--border-input-focus:1px solid var(--color-main-blue-primary)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{*{scrollbar-width:thin;scrollbar-color:var(--color-main-orange-primary)#f1f1f1}::-webkit-scrollbar{width:.5rem}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:.625rem}::-webkit-scrollbar-thumb{background:var(--color-main-orange-primary);border-radius:.625rem}::-webkit-scrollbar-thumb:hover{background:var(--color-main-orange-primary)}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.my-4{margin-block:calc(var(--spacing)*4)}.mt-4{margin-top:calc(var(--spacing)*4)}.mr-4{margin-right:calc(var(--spacing)*4)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-4{margin-left:calc(var(--spacing)*4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.\!h-fit{height:fit-content!important}.h-24{height:calc(var(--spacing)*24)}.w-full{width:100%}.\!max-w-\[60rem\]{max-width:60rem!important}.max-w-md{max-width:var(--container-md)}.min-w-\[0\]{min-width:0}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-gray-50{background-color:var(--color-gray-50)}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.\!text-\[5rem\]{font-size:5rem!important}.\!font-semibold{--tw-font-weight:var(--font-weight-semibold)!important;font-weight:var(--font-weight-semibold)!important}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-gray-600{color:var(--color-gray-600)}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-black-button{--tw-shadow:0 .625rem 1.25rem 0 var(--tw-shadow-color,#00000026);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-black-card{--tw-shadow:0 1.25rem 2.5rem 0 var(--tw-shadow-color,#00000026);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hover-black-button{--tw-shadow:0 .9375rem 1.875rem 0 var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hover-black-card{--tw-shadow:0 1.875rem 3.75rem 0 var(--tw-shadow-color,#00000059);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hover-orange-button{--tw-shadow:0 .9375rem 1.875rem 0 var(--tw-shadow-color,var(--color-orange-300));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@font-face{font-family:Dax;src:url(./assets/fonts/dax-regular/dax-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Dax;src:url(./assets/fonts/Dax-Bold/Dax-Bold.otf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueUltraLight.otf)format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueUltraLightItalic.otf)format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueThin.otf)format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueThinItalic.otf)format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueLight.otf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueLightItalic.otf)format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueRoman.otf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueItalic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueMedium.otf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueMediumItalic.otf)format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBold.otf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBoldItalic.otf)format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueHeavy.otf)format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueHeavyItalic.otf)format("truetype");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBlack.otf)format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBlackItalic.otf)format("truetype");font-weight:900;font-style:italic;font-display:swap}.my-toast{box-shadow:var(--shadow-black-card);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-style:normal;font-weight:400;line-height:176.782%;border-radius:var(--border-radius-article)!important;border:none!important}[data-sonner-toast][data-type=success]{background:linear-gradient(135deg,var(--color-main-positive-state)0%,var(--color-green-200)100%)!important;color:var(--color-main-white)!important}[data-sonner-toast][data-type=error]{background:linear-gradient(135deg,var(--color-main-warning-state)0%,var(--color-red-300)100%)!important;color:var(--color-main-white)!important}[data-sonner-toaster]{bottom:6rem!important}[data-sonner-toaster][data-position=bottom-center]{transform:translateY(-3rem)!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
|
|
1
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:#f8bdbe;--color-red-300:#f17c7e;--color-orange-100:#fee6db;--color-orange-300:#fab592;--color-green-100:#ceffd8;--color-green-200:#9cffb2;--color-blue-50:oklch(97% .014 254.604);--color-blue-100:#c0b6fe;--color-blue-200:#816dfd;--color-blue-400:#2003d3;--color-blue-500:#15028a;--color-blue-600:#0a0141;--color-purple-400:#8276c9;--color-purple-600:#4d3fa0;--color-gray-50:oklch(98.5% .002 247.839);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-600:oklch(44.6% .03 256.802);--color-neutral-50:oklch(98.5% 0 0);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--font-weight-semibold:600;--font-weight-bold:700;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-main-blue-primary:#22205f;--color-main-orange-primary:#f66a24;--color-main-grey:#605f60;--color-main-alternative:#bf5f60;--color-main-alternative-secondary:#f2f2f2;--color-main-positive-state:#01d42f;--color-main-warning-state:#ea3a3d;--color-main-yellow-primary:#faca4a;--color-main-white:#fff;--color-main-black:#000;--color-main-light-borders:#f1f5f7;--color-main-input-borders:#605f60b3;--color-dark-200:#d1d1d1;--color-dark-300:#a2a3a3;--color-dark-400:#747476;--color-dark-600:#17181a;--color-dark-700:#121315;--color-light-200:#f1f5f7;--color-light-300:#d9e1e7;--border-radius-button:1.875rem;--border-radius-card:1.25rem;--border-radius-article:.875rem;--border-radius-outline:.5rem;--shadow-black-card:0 1.25rem 2.5rem 0 #00000026;--shadow-hover-black-card:0 1.875rem 3.75rem 0 #00000059;--shadow-black-button:0 .625rem 1.25rem 0 #00000026;--shadow-hover-black-button:0 .9375rem 1.875rem 0 #00000040;--shadow-hover-orange-button:0 .9375rem 1.875rem 0 var(--color-orange-300);--border-input:1px solid var(--color-main-input-borders);--border-input-disabled:1px solid var(--color-dark-200);--border-input-error:1px solid var(--color-main-warning-state);--border-input-focus:1px solid var(--color-main-blue-primary)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{*{scrollbar-width:thin;scrollbar-color:var(--color-main-orange-primary)#f1f1f1}::-webkit-scrollbar{width:.5rem}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:.625rem}::-webkit-scrollbar-thumb{background:var(--color-main-orange-primary);border-radius:.625rem}::-webkit-scrollbar-thumb:hover{background:var(--color-main-orange-primary)}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.my-4{margin-block:calc(var(--spacing)*4)}.mt-4{margin-top:calc(var(--spacing)*4)}.mr-4{margin-right:calc(var(--spacing)*4)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-4{margin-left:calc(var(--spacing)*4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.\!h-fit{height:fit-content!important}.h-24{height:calc(var(--spacing)*24)}.w-full{width:100%}.\!max-w-\[60rem\]{max-width:60rem!important}.max-w-md{max-width:var(--container-md)}.min-w-\[0\]{min-width:0}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}:where(.\!divide-y>:not(:last-child)){--tw-divide-y-reverse:0!important;border-bottom-style:var(--tw-border-style)!important;border-top-style:var(--tw-border-style)!important;border-top-width:calc(1px*var(--tw-divide-y-reverse))!important;border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))!important}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.\!divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)!important}:where(.divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\!overflow-hidden{overflow:hidden!important}.overflow-hidden{overflow:hidden}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-gray-200{border-color:var(--color-gray-200)}.\!bg-red-100{background-color:var(--color-red-100)!important}.bg-gray-50{background-color:var(--color-gray-50)}.bg-white{background-color:var(--color-white)}.\!bg-gradient-to-r{--tw-gradient-position:to right in oklab!important;background-image:linear-gradient(var(--tw-gradient-stops))!important}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.\!from-blue-500{--tw-gradient-from:var(--color-blue-500)!important;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))!important}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.\!to-purple-600{--tw-gradient-to:var(--color-purple-600)!important;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))!important}.to-purple-600{--tw-gradient-to:var(--color-purple-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-4{padding-block:calc(var(--spacing)*4)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.\!text-\[5rem\]{font-size:5rem!important}.\!font-semibold{--tw-font-weight:var(--font-weight-semibold)!important;font-weight:var(--font-weight-semibold)!important}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.whitespace-nowrap{white-space:nowrap}.\!text-white{color:var(--color-white)!important}.text-gray-600{color:var(--color-gray-600)}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-black-button{--tw-shadow:0 .625rem 1.25rem 0 var(--tw-shadow-color,#00000026);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-black-card{--tw-shadow:0 1.25rem 2.5rem 0 var(--tw-shadow-color,#00000026);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hover-black-button{--tw-shadow:0 .9375rem 1.875rem 0 var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hover-black-card{--tw-shadow:0 1.875rem 3.75rem 0 var(--tw-shadow-color,#00000059);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hover-orange-button{--tw-shadow:0 .9375rem 1.875rem 0 var(--tw-shadow-color,var(--color-orange-300));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}@media(hover:hover){.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}}}@font-face{font-family:Dax;src:url(./assets/fonts/dax-regular/dax-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Dax;src:url(./assets/fonts/Dax-Bold/Dax-Bold.otf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueUltraLight.otf)format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueUltraLightItalic.otf)format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueThin.otf)format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueThinItalic.otf)format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueLight.otf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueLightItalic.otf)format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueRoman.otf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueItalic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueMedium.otf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueMediumItalic.otf)format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBold.otf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBoldItalic.otf)format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueHeavy.otf)format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueHeavyItalic.otf)format("truetype");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBlack.otf)format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBlackItalic.otf)format("truetype");font-weight:900;font-style:italic;font-display:swap}.my-toast{box-shadow:var(--shadow-black-card);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-style:normal;font-weight:400;line-height:176.782%;border-radius:var(--border-radius-article)!important;border:none!important}[data-sonner-toast][data-type=success]{background:linear-gradient(135deg,var(--color-main-positive-state)0%,var(--color-green-200)100%)!important;color:var(--color-main-white)!important}[data-sonner-toast][data-type=error]{background:linear-gradient(135deg,var(--color-main-warning-state)0%,var(--color-red-300)100%)!important;color:var(--color-main-white)!important}[data-sonner-toaster]{bottom:6rem!important}[data-sonner-toaster][data-position=bottom-center]{transform:translateY(-3rem)!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
|
|
@@ -5,6 +5,7 @@ import { ChangeEvent } from 'react';
|
|
|
5
5
|
import { ClipboardEvent as ClipboardEvent_2 } from 'react';
|
|
6
6
|
import { Column } from '@tanstack/react-table';
|
|
7
7
|
import { ColumnDef } from '@tanstack/react-table';
|
|
8
|
+
import { ColumnFiltersState } from '@tanstack/react-table';
|
|
8
9
|
import { Component } from 'react';
|
|
9
10
|
import { Context } from 'react';
|
|
10
11
|
import { createColumnHelper } from '@tanstack/react-table';
|
|
@@ -245,6 +246,73 @@ export { Column }
|
|
|
245
246
|
|
|
246
247
|
export { ColumnDef }
|
|
247
248
|
|
|
249
|
+
export declare const ColumnFilter: {
|
|
250
|
+
<T extends Record<string, unknown>>({ column, uniqueValues, selectedValues, onChange, }: ColumnFilterProps<T>): JSX.Element;
|
|
251
|
+
displayName: string;
|
|
252
|
+
};
|
|
253
|
+
|
|
254
|
+
export declare const ColumnFilterMenu: {
|
|
255
|
+
({ options, selectedValues, onChange, onClose, searchPlaceholder, }: ColumnFilterMenuProps): JSX.Element;
|
|
256
|
+
displayName: string;
|
|
257
|
+
};
|
|
258
|
+
|
|
259
|
+
export declare interface ColumnFilterMenuProps {
|
|
260
|
+
options: string[];
|
|
261
|
+
selectedValues: string[];
|
|
262
|
+
onChange: (values: string[]) => void;
|
|
263
|
+
onClose: () => void;
|
|
264
|
+
searchPlaceholder?: string;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
export declare interface ColumnFilterProps<T> {
|
|
268
|
+
column: Column<T, unknown>;
|
|
269
|
+
uniqueValues: string[];
|
|
270
|
+
selectedValues: string[];
|
|
271
|
+
onChange: (values: string[]) => void;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
export { ColumnFiltersState }
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
* Converts ColumnFiltersState to individual query params per value
|
|
278
|
+
* Example: [{ id: 'status', value: ['Active', 'Pending'] }]
|
|
279
|
+
* => 'filter[status][]=Active&filter[status][]=Pending'
|
|
280
|
+
*
|
|
281
|
+
* @param filters - The column filters state from TanStack Table
|
|
282
|
+
* @returns Object suitable for URLSearchParams with array notation
|
|
283
|
+
*/
|
|
284
|
+
export declare function columnFiltersToArrayQueryParams(filters: ColumnFiltersState): Record<string, string[]>;
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* Converts ColumnFiltersState to a JSON string
|
|
288
|
+
* Useful for API calls that expect JSON format
|
|
289
|
+
*
|
|
290
|
+
* @param filters - The column filters state from TanStack Table
|
|
291
|
+
* @returns JSON string representation of filters
|
|
292
|
+
*/
|
|
293
|
+
export declare function columnFiltersToJsonString(filters: ColumnFiltersState): string;
|
|
294
|
+
|
|
295
|
+
/**
|
|
296
|
+
* Converts ColumnFiltersState to URL query params format
|
|
297
|
+
* Example: [{ id: 'status', value: ['Active', 'Pending'] }]
|
|
298
|
+
* => 'filter[status]=Active,Pending'
|
|
299
|
+
*
|
|
300
|
+
* @param filters - The column filters state from TanStack Table
|
|
301
|
+
* @param separator - Separator for multiple values (default: ',')
|
|
302
|
+
* @returns Object suitable for URLSearchParams
|
|
303
|
+
*/
|
|
304
|
+
export declare function columnFiltersToQueryParams(filters: ColumnFiltersState, separator?: string): Record<string, string>;
|
|
305
|
+
|
|
306
|
+
/**
|
|
307
|
+
* Converts ColumnFiltersState to a simple object format
|
|
308
|
+
* Example: [{ id: 'status', value: ['Active', 'Pending'] }]
|
|
309
|
+
* => { status: ['Active', 'Pending'] }
|
|
310
|
+
*
|
|
311
|
+
* @param filters - The column filters state from TanStack Table
|
|
312
|
+
* @returns Object with columnId as keys and filter values as values
|
|
313
|
+
*/
|
|
314
|
+
export declare function columnFiltersToRecord(filters: ColumnFiltersState): Record<string, string[]>;
|
|
315
|
+
|
|
248
316
|
/**
|
|
249
317
|
*
|
|
250
318
|
* Column metadata for additional configurations
|
|
@@ -258,6 +326,7 @@ export declare interface ColumnMeta {
|
|
|
258
326
|
ellipsis?: boolean;
|
|
259
327
|
variant?: 'default' | 'numeric';
|
|
260
328
|
width?: string | number;
|
|
329
|
+
className?: string;
|
|
261
330
|
}
|
|
262
331
|
|
|
263
332
|
/**
|
|
@@ -287,6 +356,27 @@ export declare function createBackendParams(options: {
|
|
|
287
356
|
filters?: Record<string, unknown>;
|
|
288
357
|
}): URLSearchParams;
|
|
289
358
|
|
|
359
|
+
/**
|
|
360
|
+
* Creates complete backend request params with filters, sorting, and pagination
|
|
361
|
+
* Combines filtering with other table features
|
|
362
|
+
*
|
|
363
|
+
* @param options - Configuration object
|
|
364
|
+
* @param options.filters - Column filters state
|
|
365
|
+
* @param options.sorts - Optional sorting state
|
|
366
|
+
* @param options.page - Optional page number
|
|
367
|
+
* @param options.perPage - Optional items per page
|
|
368
|
+
* @returns Complete params object for API requests
|
|
369
|
+
*/
|
|
370
|
+
export declare function createBackendParamsWithFilters({ filters, sorts, page, perPage, }: {
|
|
371
|
+
filters: ColumnFiltersState;
|
|
372
|
+
sorts?: Array<{
|
|
373
|
+
id: string;
|
|
374
|
+
desc: boolean;
|
|
375
|
+
}>;
|
|
376
|
+
page?: number;
|
|
377
|
+
perPage?: number;
|
|
378
|
+
}): Record<string, string | number>;
|
|
379
|
+
|
|
290
380
|
export { createColumnHelper }
|
|
291
381
|
|
|
292
382
|
/**
|
|
@@ -435,7 +525,7 @@ declare interface ErrorMessageProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
435
525
|
className?: string;
|
|
436
526
|
}
|
|
437
527
|
|
|
438
|
-
declare type ErrorMessageSize = 'sm' | 'md' | 'lg';
|
|
528
|
+
declare type ErrorMessageSize = 'xs' | 'sm' | 'md' | 'lg';
|
|
439
529
|
|
|
440
530
|
export declare const errorStyles: RuleSet<object>;
|
|
441
531
|
|
|
@@ -523,6 +613,15 @@ export declare interface FileUploadProps extends Omit<InputHTMLAttributes<HTMLIn
|
|
|
523
613
|
|
|
524
614
|
export declare type FileUploadVariant = 'default' | 'compact';
|
|
525
615
|
|
|
616
|
+
export declare const FilterOption: MemoExoticComponent<({ value, label, checked, onChange }: FilterOptionProps) => JSX.Element>;
|
|
617
|
+
|
|
618
|
+
export declare interface FilterOptionProps {
|
|
619
|
+
value: string;
|
|
620
|
+
label: string;
|
|
621
|
+
checked: boolean;
|
|
622
|
+
onChange: (value: string, checked: boolean) => void;
|
|
623
|
+
}
|
|
624
|
+
|
|
526
625
|
export declare const flushedStyles: RuleSet<object>;
|
|
527
626
|
|
|
528
627
|
export declare const FormField: ({ id, name, label, type, size, placeholder, disabled, required, options, checkboxLabel, radioName, pinLength, pinType, rows, className, inputClassName, labelClassName, messageErrorClassName, leftIcon, rightIcon, iconSize, iconColor, onOptionSelect, onRadioChange, onPinComplete, onChange, ...props }: FormFieldComponentProps) => JSX.Element;
|
|
@@ -563,7 +662,7 @@ export declare interface FormFieldProps extends BaseFormFieldProps, Omit<WithIco
|
|
|
563
662
|
className?: string;
|
|
564
663
|
}
|
|
565
664
|
|
|
566
|
-
export declare type FormFieldSize = 'sm' | 'md' | 'lg';
|
|
665
|
+
export declare type FormFieldSize = 'xs' | 'sm' | 'md' | 'lg';
|
|
567
666
|
|
|
568
667
|
export declare type FormFieldState = 'default' | 'hover' | 'focus' | 'error' | 'disabled';
|
|
569
668
|
|
|
@@ -588,6 +687,31 @@ export declare interface FullScreenSpinnerProps {
|
|
|
588
687
|
variant?: Variant;
|
|
589
688
|
}
|
|
590
689
|
|
|
690
|
+
/**
|
|
691
|
+
* Gets the count of active filters across all columns
|
|
692
|
+
* @param columnFilters - Current column filters state
|
|
693
|
+
* @returns Total number of active filter values
|
|
694
|
+
*/
|
|
695
|
+
export declare function getActiveFilterCount(columnFilters: ColumnFiltersState): number;
|
|
696
|
+
|
|
697
|
+
/**
|
|
698
|
+
* Gets the active filter values for a specific column
|
|
699
|
+
* @param columnFilters - Current column filters state
|
|
700
|
+
* @param columnId - The column identifier
|
|
701
|
+
* @returns Array of active filter values for the column
|
|
702
|
+
*/
|
|
703
|
+
export declare function getActiveFilterValues(columnFilters: ColumnFiltersState, columnId: string): string[];
|
|
704
|
+
|
|
705
|
+
/**
|
|
706
|
+
* Gets the count of rows for each unique value in a column
|
|
707
|
+
* Useful for showing counts next to filter options (e.g., "Active (5)")
|
|
708
|
+
* @param data - The array of data objects
|
|
709
|
+
* @param columnId - The column identifier
|
|
710
|
+
* @param accessor - Optional accessor function to get the value from a row
|
|
711
|
+
* @returns Object mapping values to their counts
|
|
712
|
+
*/
|
|
713
|
+
export declare function getColumnValueCounts<T>(data: T[], columnId: string, accessor?: (row: T, index: number) => unknown): Record<string, number>;
|
|
714
|
+
|
|
591
715
|
/**
|
|
592
716
|
* Retrieves the value of a cookie by name
|
|
593
717
|
* @param name - The name of the cookie to retrieve
|
|
@@ -604,6 +728,15 @@ export declare const getPropsForInputType: (type: string | null | undefined, bas
|
|
|
604
728
|
props: any;
|
|
605
729
|
};
|
|
606
730
|
|
|
731
|
+
/**
|
|
732
|
+
* Extracts unique values from a column in the dataset
|
|
733
|
+
* @param data - The array of data objects
|
|
734
|
+
* @param columnId - The column identifier
|
|
735
|
+
* @param accessor - Optional accessor function to get the value from a row
|
|
736
|
+
* @returns Array of unique string values, sorted alphabetically
|
|
737
|
+
*/
|
|
738
|
+
export declare function getUniqueColumnValues<T>(data: T[], columnId: string, accessor?: (row: T, index: number) => unknown): string[];
|
|
739
|
+
|
|
607
740
|
/**
|
|
608
741
|
* Handles user input in a single digit field of a verification code.
|
|
609
742
|
*
|
|
@@ -694,6 +827,14 @@ export declare const handleKeyDown: (e: KeyboardEvent_2<HTMLInputElement>, index
|
|
|
694
827
|
*/
|
|
695
828
|
export declare const handlePaste: (e: ClipboardEvent_2<HTMLInputElement>, index: number, digits: string[], setDigits: SetDigits, inputRefs: InputRefs, length: number, type?: "text" | "number", onChange?: (value: string) => void, onComplete?: (value: string) => void) => void;
|
|
696
829
|
|
|
830
|
+
/**
|
|
831
|
+
* Checks if a column has active filters
|
|
832
|
+
* @param columnFilters - Current column filters state
|
|
833
|
+
* @param columnId - The column identifier
|
|
834
|
+
* @returns true if the column has active filters
|
|
835
|
+
*/
|
|
836
|
+
export declare function hasActiveFilters(columnFilters: ColumnFiltersState, columnId: string): boolean;
|
|
837
|
+
|
|
697
838
|
/**
|
|
698
839
|
* Tipo helper para determinar si un componente tiene iconos
|
|
699
840
|
*/
|
|
@@ -867,7 +1008,7 @@ export declare const isAllowedInputType: (t: string) => t is AllowedInputType;
|
|
|
867
1008
|
|
|
868
1009
|
export declare const Label: ({ children, htmlFor, className, required, disabled, size, ...props }: BaseLabelProps) => JSX.Element;
|
|
869
1010
|
|
|
870
|
-
export declare type LabelSize = 'sm' | 'md' | 'lg';
|
|
1011
|
+
export declare type LabelSize = 'xs' | 'sm' | 'md' | 'lg';
|
|
871
1012
|
|
|
872
1013
|
/**
|
|
873
1014
|
* Top-level Layout component.
|
|
@@ -983,6 +1124,14 @@ export declare const LinkVariantStyles: {
|
|
|
983
1124
|
plain: RuleSet<object>;
|
|
984
1125
|
};
|
|
985
1126
|
|
|
1127
|
+
/**
|
|
1128
|
+
* Merges multiple filter states, with later filters overriding earlier ones
|
|
1129
|
+
*
|
|
1130
|
+
* @param filterStates - Multiple ColumnFiltersState arrays to merge
|
|
1131
|
+
* @returns Merged ColumnFiltersState
|
|
1132
|
+
*/
|
|
1133
|
+
export declare function mergeFilters(...filterStates: ColumnFiltersState[]): ColumnFiltersState;
|
|
1134
|
+
|
|
986
1135
|
/**
|
|
987
1136
|
* Button to open sidebar on mobile devices.
|
|
988
1137
|
* @param $hidden - Whether the button is hidden.
|
|
@@ -991,6 +1140,16 @@ export declare const MobileOpenBtn: IStyledComponentBase<"web", Substitute<Detai
|
|
|
991
1140
|
$hidden: boolean;
|
|
992
1141
|
}>> & string;
|
|
993
1142
|
|
|
1143
|
+
/**
|
|
1144
|
+
* Custom filter function for TanStack Table multi-select filtering
|
|
1145
|
+
* Checks if the row's value is included in the array of selected filter values
|
|
1146
|
+
* @param row - The row being filtered
|
|
1147
|
+
* @param columnId - The column identifier
|
|
1148
|
+
* @param filterValue - Array of selected filter values
|
|
1149
|
+
* @returns true if the row should be included in filtered results
|
|
1150
|
+
*/
|
|
1151
|
+
export declare function multiSelectFilter<T>(row: Row<T>, columnId: string, filterValue: unknown): boolean;
|
|
1152
|
+
|
|
994
1153
|
/**
|
|
995
1154
|
* Navigation container for sidebar menu items.
|
|
996
1155
|
*/
|
|
@@ -1081,6 +1240,24 @@ export declare const overlayAnimation: {
|
|
|
1081
1240
|
};
|
|
1082
1241
|
};
|
|
1083
1242
|
|
|
1243
|
+
/**
|
|
1244
|
+
* Parses JSON string back to ColumnFiltersState
|
|
1245
|
+
*
|
|
1246
|
+
* @param jsonString - JSON string representation of filters
|
|
1247
|
+
* @returns ColumnFiltersState
|
|
1248
|
+
*/
|
|
1249
|
+
export declare function parseJsonToFilters(jsonString: string): ColumnFiltersState;
|
|
1250
|
+
|
|
1251
|
+
/**
|
|
1252
|
+
* Parses URL query params back to ColumnFiltersState
|
|
1253
|
+
* Useful for restoring filters from URL
|
|
1254
|
+
*
|
|
1255
|
+
* @param params - URLSearchParams or query string
|
|
1256
|
+
* @param separator - Separator used in the query params (default: ',')
|
|
1257
|
+
* @returns ColumnFiltersState
|
|
1258
|
+
*/
|
|
1259
|
+
export declare function parseQueryParamsToFilters(params: URLSearchParams | string, separator?: string): ColumnFiltersState;
|
|
1260
|
+
|
|
1084
1261
|
export declare const PasswordInput: ({ size, leftIcon, iconSize, iconColor, placeholder, hasError, disabled, className, ...props }: PasswordInputProps) => JSX.Element;
|
|
1085
1262
|
|
|
1086
1263
|
export declare interface PasswordInputProps extends BaseFormFieldProps, Omit<WithIconsProps, 'rightIcon'> {
|
|
@@ -1151,6 +1328,14 @@ export declare interface RadioSpecificProps {
|
|
|
1151
1328
|
|
|
1152
1329
|
export { Row }
|
|
1153
1330
|
|
|
1331
|
+
/**
|
|
1332
|
+
* Searches for a term within an array of items (case-insensitive)
|
|
1333
|
+
* @param items - Array of items to search through
|
|
1334
|
+
* @param searchTerm - The search term
|
|
1335
|
+
* @returns Filtered array of items matching the search term
|
|
1336
|
+
*/
|
|
1337
|
+
export declare function searchInArray(items: string[], searchTerm: string): string[];
|
|
1338
|
+
|
|
1154
1339
|
export declare const SearchInput: ({ size, leftIcon, rightIcon, iconSize, iconColor, placeholder, onSearch, className, ...props }: SearchInputProps) => JSX.Element;
|
|
1155
1340
|
|
|
1156
1341
|
export declare interface SearchInputProps extends BaseInputProps {
|
|
@@ -1295,6 +1480,7 @@ export declare const SidebarProvider: ({ children }: PropsWithChildren) => JSX.E
|
|
|
1295
1480
|
export declare type Size = 'sm' | 'md' | 'lg' | 'xl';
|
|
1296
1481
|
|
|
1297
1482
|
export declare const sizeStyles: {
|
|
1483
|
+
xs: RuleSet<object>;
|
|
1298
1484
|
sm: RuleSet<object>;
|
|
1299
1485
|
md: RuleSet<object>;
|
|
1300
1486
|
lg: RuleSet<object>;
|
|
@@ -1564,14 +1750,16 @@ export declare const submenuAnimationTopDown: {
|
|
|
1564
1750
|
* Uses TanStack Table v8 as headless layer
|
|
1565
1751
|
*/
|
|
1566
1752
|
export declare const Table: {
|
|
1567
|
-
<T extends Record<string, unknown>>({ data, columns, size, variant, stickyHeader, maxHeight, sorting, defaultSorting, onSortingChange, onRowClick,
|
|
1753
|
+
<T extends Record<string, unknown>>({ data, columns, size, variant, stickyHeader, maxHeight, sorting, defaultSorting, onSortingChange, columnFilters, defaultColumnFilters, onColumnFiltersChange, onRowClick, classNames, emptyMessage, enableSorting, manualSorting, enableFiltering, manualFiltering, isLoading, }: TableProps<T>): JSX.Element;
|
|
1568
1754
|
displayName: string;
|
|
1569
1755
|
};
|
|
1570
1756
|
|
|
1571
|
-
export declare const TableBody: <T extends Record<string, unknown>>({ rows }: TableBodyProps<T>) => JSX.Element;
|
|
1757
|
+
export declare const TableBody: <T extends Record<string, unknown>>({ rows, className, rowClassName, }: TableBodyProps<T>) => JSX.Element;
|
|
1572
1758
|
|
|
1573
1759
|
declare interface TableBodyProps<T> {
|
|
1574
1760
|
rows: Row<T>[];
|
|
1761
|
+
className?: string;
|
|
1762
|
+
rowClassName?: string;
|
|
1575
1763
|
}
|
|
1576
1764
|
|
|
1577
1765
|
export declare const TableCell: <T extends Record<string, unknown>>({ cell }: TableCellProps<T>) => JSX.Element;
|
|
@@ -1582,6 +1770,14 @@ declare interface TableCellProps<T> {
|
|
|
1582
1770
|
|
|
1583
1771
|
export declare type TableCellSize = 'sm' | 'md' | 'lg';
|
|
1584
1772
|
|
|
1773
|
+
export declare interface TableClassNames {
|
|
1774
|
+
wrapper?: string;
|
|
1775
|
+
table?: string;
|
|
1776
|
+
header?: string;
|
|
1777
|
+
body?: string;
|
|
1778
|
+
row?: string;
|
|
1779
|
+
}
|
|
1780
|
+
|
|
1585
1781
|
/**
|
|
1586
1782
|
* Extended ColumnDef type that includes metadata
|
|
1587
1783
|
*/
|
|
@@ -1597,10 +1793,13 @@ export declare interface TableContextType<T> {
|
|
|
1597
1793
|
variant: TableVariant;
|
|
1598
1794
|
sorting: SortingState;
|
|
1599
1795
|
setSorting: (state: SortingState) => void;
|
|
1796
|
+
columnFilters: ColumnFiltersState;
|
|
1797
|
+
setColumnFilters: (state: ColumnFiltersState) => void;
|
|
1798
|
+
getUniqueValues: (columnId: string) => unknown[];
|
|
1600
1799
|
onRowClick?: (row: T) => void;
|
|
1601
1800
|
}
|
|
1602
1801
|
|
|
1603
|
-
export declare const TableHeader: <T extends Record<string, unknown>>({ headerGroups, stickyHeader, }: TableHeadProps<T>) => JSX.Element;
|
|
1802
|
+
export declare const TableHeader: <T extends Record<string, unknown>>({ headerGroups, stickyHeader, className, }: TableHeadProps<T>) => JSX.Element;
|
|
1604
1803
|
|
|
1605
1804
|
export declare const TableHeaderCell: <T extends Record<string, unknown>>({ header, }: TableHeaderCellProps<T>) => JSX.Element;
|
|
1606
1805
|
|
|
@@ -1617,6 +1816,7 @@ declare interface TableHeaderRowProps<T> {
|
|
|
1617
1816
|
declare interface TableHeadProps<T> {
|
|
1618
1817
|
headerGroups: HeaderGroup<T>[];
|
|
1619
1818
|
stickyHeader?: boolean;
|
|
1819
|
+
className?: string;
|
|
1620
1820
|
}
|
|
1621
1821
|
|
|
1622
1822
|
/**
|
|
@@ -1686,15 +1886,44 @@ export declare interface TableProps<T = unknown> {
|
|
|
1686
1886
|
* @default false
|
|
1687
1887
|
*/
|
|
1688
1888
|
manualSorting?: boolean;
|
|
1889
|
+
/**
|
|
1890
|
+
* Controlled column filters state
|
|
1891
|
+
* When provided, the table operates in controlled mode
|
|
1892
|
+
*/
|
|
1893
|
+
columnFilters?: ColumnFiltersState;
|
|
1894
|
+
/**
|
|
1895
|
+
* Default column filters for uncontrolled mode
|
|
1896
|
+
* @default []
|
|
1897
|
+
*/
|
|
1898
|
+
defaultColumnFilters?: ColumnFiltersState;
|
|
1899
|
+
/**
|
|
1900
|
+
* Callback fired when column filters change
|
|
1901
|
+
* Required for controlled mode, optional for uncontrolled
|
|
1902
|
+
*/
|
|
1903
|
+
onColumnFiltersChange?: (state: ColumnFiltersState) => void;
|
|
1904
|
+
/**
|
|
1905
|
+
* Enable/disable filtering functionality
|
|
1906
|
+
* @default true
|
|
1907
|
+
*/
|
|
1908
|
+
enableFiltering?: boolean;
|
|
1909
|
+
/**
|
|
1910
|
+
* Enable manual filtering mode (filtering handled by backend)
|
|
1911
|
+
* When true, the table will not filter data locally.
|
|
1912
|
+
* Data must be pre-filtered by the backend and passed via the 'data' prop.
|
|
1913
|
+
* The table will maintain filtering UI state and fire onColumnFiltersChange callbacks.
|
|
1914
|
+
* @default false
|
|
1915
|
+
*/
|
|
1916
|
+
manualFiltering?: boolean;
|
|
1689
1917
|
onRowClick?: (row: T) => void;
|
|
1690
|
-
|
|
1918
|
+
classNames?: TableClassNames;
|
|
1691
1919
|
emptyMessage?: ReactNode;
|
|
1692
1920
|
}
|
|
1693
1921
|
|
|
1694
|
-
export declare const TableRow: MemoExoticComponent<(<T extends Record<string, unknown>>({ row, }: TableRowProps<T>) => JSX.Element)>;
|
|
1922
|
+
export declare const TableRow: MemoExoticComponent<(<T extends Record<string, unknown>>({ row, className, }: TableRowProps<T>) => JSX.Element)>;
|
|
1695
1923
|
|
|
1696
|
-
declare interface TableRowProps<T
|
|
1924
|
+
declare interface TableRowProps<T extends Record<string, unknown>> {
|
|
1697
1925
|
row: Row<T>;
|
|
1926
|
+
className?: string;
|
|
1698
1927
|
}
|
|
1699
1928
|
|
|
1700
1929
|
export declare type TableVariant = 'default' | 'striped';
|
|
@@ -1828,6 +2057,65 @@ export declare const useSidebar: () => SidebarContextValue;
|
|
|
1828
2057
|
|
|
1829
2058
|
export declare const useTableContext: <T extends Record<string, unknown>>() => TableContextType<T>;
|
|
1830
2059
|
|
|
2060
|
+
/**
|
|
2061
|
+
* Hook to manage table column filtering state (controlled or uncontrolled)
|
|
2062
|
+
*
|
|
2063
|
+
* @example Uncontrolled mode
|
|
2064
|
+
* ```tsx
|
|
2065
|
+
* const { columnFiltersState, handleColumnFiltersChange } = useTableFiltering({
|
|
2066
|
+
* defaultColumnFilters: [{ id: 'status', value: ['Active'] }],
|
|
2067
|
+
* onColumnFiltersChange: (state) => console.log(state)
|
|
2068
|
+
* });
|
|
2069
|
+
* ```
|
|
2070
|
+
*
|
|
2071
|
+
* @example Controlled mode
|
|
2072
|
+
* ```tsx
|
|
2073
|
+
* const [filters, setFilters] = useState<ColumnFiltersState>([]);
|
|
2074
|
+
* const { columnFiltersState, handleColumnFiltersChange } = useTableFiltering({
|
|
2075
|
+
* columnFilters: filters,
|
|
2076
|
+
* onColumnFiltersChange: setFilters
|
|
2077
|
+
* });
|
|
2078
|
+
* ```
|
|
2079
|
+
*/
|
|
2080
|
+
export declare const useTableFiltering: ({ columnFilters: controlledFilters, defaultColumnFilters, onColumnFiltersChange, }: UseTableFilteringProps) => UseTableFilteringReturn;
|
|
2081
|
+
|
|
2082
|
+
export declare interface UseTableFilteringProps {
|
|
2083
|
+
/**
|
|
2084
|
+
* Controlled column filters state (optional)
|
|
2085
|
+
* If provided, the component operates in controlled mode
|
|
2086
|
+
*/
|
|
2087
|
+
columnFilters?: ColumnFiltersState;
|
|
2088
|
+
/**
|
|
2089
|
+
* Default column filters state for uncontrolled mode
|
|
2090
|
+
* @default []
|
|
2091
|
+
*/
|
|
2092
|
+
defaultColumnFilters?: ColumnFiltersState;
|
|
2093
|
+
/**
|
|
2094
|
+
* Callback fired when column filters change
|
|
2095
|
+
* Required for controlled mode, optional for uncontrolled
|
|
2096
|
+
*/
|
|
2097
|
+
onColumnFiltersChange?: (columnFilters: ColumnFiltersState) => void;
|
|
2098
|
+
}
|
|
2099
|
+
|
|
2100
|
+
export declare interface UseTableFilteringReturn {
|
|
2101
|
+
/**
|
|
2102
|
+
* Current column filters state (controlled or internal)
|
|
2103
|
+
*/
|
|
2104
|
+
columnFiltersState: ColumnFiltersState;
|
|
2105
|
+
/**
|
|
2106
|
+
* Handler for TanStack Table's onColumnFiltersChange
|
|
2107
|
+
*/
|
|
2108
|
+
handleColumnFiltersChange: (updater: Updater<ColumnFiltersState>) => void;
|
|
2109
|
+
/**
|
|
2110
|
+
* Whether the component is in controlled mode
|
|
2111
|
+
*/
|
|
2112
|
+
isControlled: boolean;
|
|
2113
|
+
/**
|
|
2114
|
+
* Manual setter for uncontrolled mode (useful for imperative actions)
|
|
2115
|
+
*/
|
|
2116
|
+
setColumnFilters: (columnFilters: ColumnFiltersState) => void;
|
|
2117
|
+
}
|
|
2118
|
+
|
|
1831
2119
|
/**
|
|
1832
2120
|
* Hook to manage table sorting state (controlled or uncontrolled)
|
|
1833
2121
|
*
|