@konoma-development/react-components 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  (function () {
2
2
  'use strict';
3
3
 
4
- try{if(typeof document != 'undefined'){var elementStyle = document.createElement('style');elementStyle.appendChild(document.createTextNode("/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */\n@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-divide-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-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}}}@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-gray-200:oklch(92.8% .006 264.531);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--font-weight-medium:500;--font-weight-semibold:600;--radius-md:.375rem;--animate-spin:spin 1s linear infinite;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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;-webkit-text-decoration: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}:-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}*,:after,:before,::backdrop{border-color:var(--color-gray-200,currentcolor)}::file-selector-button{border-color:var(--color-gray-200,currentcolor)}}@layer components;@layer utilities{#app .pointer-events-none{pointer-events:none}#app .visible{visibility:visible}#app .absolute{position:absolute}#app .fixed{position:fixed}#app .relative{position:relative}#app .sticky{position:sticky}#app .inset-0{inset:calc(var(--spacing)*0)}#app .top-0{top:calc(var(--spacing)*0)}#app .top-\\[5px\\]{top:5px}#app .right-0{right:calc(var(--spacing)*0)}#app .right-3{right:calc(var(--spacing)*3)}#app .right-4{right:calc(var(--spacing)*4)}#app .-bottom-0\\.5{bottom:calc(var(--spacing)*-.5)}#app .bottom-0{bottom:calc(var(--spacing)*0)}#app .bottom-4{bottom:calc(var(--spacing)*4)}#app .left-0{left:calc(var(--spacing)*0)}#app .left-3{left:calc(var(--spacing)*3)}#app .left-\\[5px\\]{left:5px}#app .z-1{z-index:1}#app .z-10{z-index:10}#app .z-20{z-index:20}#app .my-auto{margin-block:auto}#app .mt-3{margin-top:calc(var(--spacing)*3)}#app .ml-2{margin-left:calc(var(--spacing)*2)}#app .flex{display:flex}#app .grid{display:grid}#app .hidden{display:none}#app .inline-flex{display:inline-flex}#app .h-0{height:calc(var(--spacing)*0)}#app .h-0\\.5{height:calc(var(--spacing)*.5)}#app .h-1\\.5{height:calc(var(--spacing)*1.5)}#app .h-3{height:calc(var(--spacing)*3)}#app .h-4{height:calc(var(--spacing)*4)}#app .h-5{height:calc(var(--spacing)*5)}#app .h-6{height:calc(var(--spacing)*6)}#app .h-8{height:calc(var(--spacing)*8)}#app .h-10{height:calc(var(--spacing)*10)}#app .h-12{height:calc(var(--spacing)*12)}#app .h-14{height:calc(var(--spacing)*14)}#app .h-16{height:calc(var(--spacing)*16)}#app .h-24{height:calc(var(--spacing)*24)}#app .h-auto{height:auto}#app .h-fit{height:fit-content}#app .h-full{height:100%}#app .h-px{height:1px}#app .max-h-100{max-height:calc(var(--spacing)*100)}#app .max-h-full{max-height:100%}#app .min-h-10{min-height:calc(var(--spacing)*10)}#app .w-0{width:calc(var(--spacing)*0)}#app .w-1\\.5{width:calc(var(--spacing)*1.5)}#app .w-3{width:calc(var(--spacing)*3)}#app .w-4{width:calc(var(--spacing)*4)}#app .w-5{width:calc(var(--spacing)*5)}#app .w-6{width:calc(var(--spacing)*6)}#app .w-8{width:calc(var(--spacing)*8)}#app .w-16{width:calc(var(--spacing)*16)}#app .w-18{width:calc(var(--spacing)*18)}#app .w-48{width:calc(var(--spacing)*48)}#app .w-full{width:100%}#app .max-w-full{max-width:100%}#app .min-w-4{min-width:calc(var(--spacing)*4)}#app .grow{flex-grow:1}#app .animate-spin{animation:var(--animate-spin)}#app .cursor-not-allowed{cursor:not-allowed}#app .cursor-pointer{cursor:pointer}#app .cursor-row-resize{cursor:row-resize}#app .cursor-text{cursor:text}#app .resize{resize:both}#app .resize-none{resize:none}#app .appearance-none{appearance:none}#app .flex-col{flex-direction:column}#app .flex-col-reverse{flex-direction:column-reverse}#app .flex-row{flex-direction:row}#app .flex-row-reverse{flex-direction:row-reverse}#app .flex-wrap{flex-wrap:wrap}#app .items-center{align-items:center}#app .items-start{align-items:flex-start}#app .justify-between{justify-content:space-between}#app .justify-center{justify-content:center}#app .justify-end{justify-content:flex-end}#app .justify-start{justify-content:flex-start}#app .gap-1{gap:calc(var(--spacing)*1)}#app .gap-2{gap:calc(var(--spacing)*2)}#app .gap-4{gap:calc(var(--spacing)*4)}#app .gap-5{gap:calc(var(--spacing)*5)}#app .gap-10{gap:calc(var(--spacing)*10)}:where(#app .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)))}#app .truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#app .overflow-x-auto{overflow-x:auto}#app .overflow-y-auto{overflow-y:auto}#app .rounded-full{border-radius:3.40282e38px}#app .rounded-krc-button{border-radius:var(--krc-button-borderRadius,1.5rem)}#app .rounded-krc-checkbox{border-radius:var(--krc-checkbox-borderRadius,.25rem)}#app .rounded-krc-input{border-radius:var(--krc-input-borderRadius,1.5rem)}#app .rounded-krc-modal{border-radius:var(--krc-modal-borderRadius,.5rem)}#app .rounded-krc-phone-input{border-radius:var(--krc-phoneInput-borderRadius,1.5rem)}#app .rounded-krc-radiobutton-group{border-radius:var(--krc-radiobuttonGroup-borderRadius,.5rem)}#app .rounded-krc-select{border-radius:var(--krc-select-borderRadius,1.5rem)}#app .rounded-krc-table{border-radius:var(--krc-table-borderRadius,1rem)}#app .rounded-krc-table-column-chooser{border-radius:var(--krc-tableColumnChooser-borderRadius,.375rem)}#app .rounded-krc-tag{border-radius:var(--krc-tag-borderRadius,.75rem)}#app .rounded-krc-tag-list{border-radius:var(--krc-tagList-borderRadius,1.5rem)}#app .rounded-krc-tag-list-add{border-radius:var(--krc-tagListAdd-borderRadius,.75rem)}#app .rounded-krc-textarea{border-radius:var(--krc-textarea-borderRadius,1rem)}#app .rounded-md{border-radius:var(--radius-md)}#app .rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}#app .rounded-t-krc-table{border-top-left-radius:var(--krc-table-borderRadius,1rem);border-top-right-radius:var(--krc-table-borderRadius,1rem)}#app .rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}#app .rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}#app .rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}#app .rounded-b-krc-table{border-bottom-right-radius:var(--krc-table-borderRadius,1rem);border-bottom-left-radius:var(--krc-table-borderRadius,1rem)}#app .border{border-style:var(--tw-border-style);border-width:1px}#app .border-r{border-right-style:var(--tw-border-style);border-right-width:1px}#app .border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}#app .border-l{border-left-style:var(--tw-border-style);border-left-width:1px}#app .border-none{--tw-border-style:none;border-style:none}#app .bg-black\\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){#app .bg-black\\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}#app .bg-krc-table-header{background-color:var(--krc-table-header-backgroundColor,#f9fafb)}#app .bg-white{background-color:var(--color-white)}#app .fill-white{fill:var(--color-white)}#app .p-2{padding:calc(var(--spacing)*2)}#app .p-4{padding:calc(var(--spacing)*4)}#app .px-1{padding-inline:calc(var(--spacing)*1)}#app .px-3{padding-inline:calc(var(--spacing)*3)}#app .px-3\\.5{padding-inline:calc(var(--spacing)*3.5)}#app .px-4{padding-inline:calc(var(--spacing)*4)}#app .px-6{padding-inline:calc(var(--spacing)*6)}#app .py-0{padding-block:calc(var(--spacing)*0)}#app .py-1{padding-block:calc(var(--spacing)*1)}#app .py-2{padding-block:calc(var(--spacing)*2)}#app .py-2\\.5{padding-block:calc(var(--spacing)*2.5)}#app .py-3{padding-block:calc(var(--spacing)*3)}#app .pt-4{padding-top:calc(var(--spacing)*4)}#app .pr-0{padding-right:calc(var(--spacing)*0)}#app .pr-10{padding-right:calc(var(--spacing)*10)}#app .pr-12{padding-right:calc(var(--spacing)*12)}#app .pb-2{padding-bottom:calc(var(--spacing)*2)}#app .pb-4{padding-bottom:calc(var(--spacing)*4)}#app .pl-0{padding-left:calc(var(--spacing)*0)}#app .pl-1{padding-left:calc(var(--spacing)*1)}#app .pl-10{padding-left:calc(var(--spacing)*10)}#app .pl-11{padding-left:calc(var(--spacing)*11)}#app .pl-13{padding-left:calc(var(--spacing)*13)}#app .pl-16{padding-left:calc(var(--spacing)*16)}#app .text-center{text-align:center}#app .text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}#app .text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}#app .text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}#app .font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}#app .font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}#app .text-white{color:var(--color-white)}#app .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)}#app .shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}#app .shadow-sm{--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)}#app .ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}#app .outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){#app .outline-hidden{outline-offset:2px;outline:2px solid #0000}}#app .outline-1{outline-style:var(--tw-outline-style);outline-width:1px}#app .outline-offset-2{outline-offset:2px}#app .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,)}#app .outline-solid{--tw-outline-style:solid;outline-style:solid}#app .not-disabled\\:bg-white:not(:disabled){background-color:var(--color-white)}#app .group-active\\:outline-solid:is(:where(.group):active *){--tw-outline-style:solid;outline-style:solid}#app .placeholder\\:text-sm::placeholder{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}#app .first\\:grow:first-child{flex-grow:1}#app .first\\:rounded-tl-krc-table:first-child{border-top-left-radius:var(--krc-table-borderRadius,1rem)}#app .last\\:rounded-tr-krc-table:last-child{border-top-right-radius:var(--krc-table-borderRadius,1rem)}#app .last\\:rounded-b-krc-table:last-child{border-bottom-right-radius:var(--krc-table-borderRadius,1rem);border-bottom-left-radius:var(--krc-table-borderRadius,1rem)}#app .focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}#app .focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}#app .focus-visible\\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){#app .focus-visible\\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}#app .disabled\\:pointer-events-none:disabled{pointer-events:none}#app .disabled\\:\\!cursor-not-allowed:disabled{cursor:not-allowed!important}#app .disabled\\:\\!opacity-50:disabled{opacity:.5!important}#app .disabled\\:\\!shadow-none:disabled{--tw-shadow:0 0 #0000!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}#app .disabled\\:\\!ring-0:disabled{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}#app .has-focus\\:ring-2:has(:focus){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@property --tw-divide-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-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}@keyframes spin{to{transform:rotate(360deg)}}"));document.head.appendChild(elementStyle);}}catch(e){console.error('vite-plugin-css-injected-by-js', e);}
4
+ try{if(typeof document != 'undefined'){var elementStyle = document.createElement('style');elementStyle.appendChild(document.createTextNode("/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */\n@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-divide-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-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}}}@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-gray-200:oklch(92.8% .006 264.531);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--font-weight-medium:500;--font-weight-semibold:600;--radius-md:.375rem;--animate-spin:spin 1s linear infinite;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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;-webkit-text-decoration: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}*,:after,:before,::backdrop{border-color:var(--color-gray-200,currentcolor)}::file-selector-button{border-color:var(--color-gray-200,currentcolor)}}@layer components;@layer utilities{#app .pointer-events-none{pointer-events:none}#app .visible{visibility:visible}#app .absolute{position:absolute}#app .fixed{position:fixed}#app .relative{position:relative}#app .sticky{position:sticky}#app .inset-0{inset:calc(var(--spacing)*0)}#app .top-0{top:calc(var(--spacing)*0)}#app .top-\\[5px\\]{top:5px}#app .right-0{right:calc(var(--spacing)*0)}#app .right-3{right:calc(var(--spacing)*3)}#app .right-4{right:calc(var(--spacing)*4)}#app .-bottom-0\\.5{bottom:calc(var(--spacing)*-.5)}#app .bottom-0{bottom:calc(var(--spacing)*0)}#app .bottom-4{bottom:calc(var(--spacing)*4)}#app .left-0{left:calc(var(--spacing)*0)}#app .left-3{left:calc(var(--spacing)*3)}#app .left-\\[5px\\]{left:5px}#app .z-1{z-index:1}#app .z-10{z-index:10}#app .z-20{z-index:20}#app .my-auto{margin-block:auto}#app .-mt-4{margin-top:calc(var(--spacing)*-4)}#app .mt-3{margin-top:calc(var(--spacing)*3)}#app .ml-2{margin-left:calc(var(--spacing)*2)}#app .flex{display:flex}#app .grid{display:grid}#app .hidden{display:none}#app .inline-flex{display:inline-flex}#app .h-0{height:calc(var(--spacing)*0)}#app .h-0\\.5{height:calc(var(--spacing)*.5)}#app .h-1\\.5{height:calc(var(--spacing)*1.5)}#app .h-3{height:calc(var(--spacing)*3)}#app .h-4{height:calc(var(--spacing)*4)}#app .h-5{height:calc(var(--spacing)*5)}#app .h-6{height:calc(var(--spacing)*6)}#app .h-8{height:calc(var(--spacing)*8)}#app .h-10{height:calc(var(--spacing)*10)}#app .h-12{height:calc(var(--spacing)*12)}#app .h-14{height:calc(var(--spacing)*14)}#app .h-16{height:calc(var(--spacing)*16)}#app .h-24{height:calc(var(--spacing)*24)}#app .h-auto{height:auto}#app .h-fit{height:fit-content}#app .h-full{height:100%}#app .h-px{height:1px}#app .max-h-100{max-height:calc(var(--spacing)*100)}#app .max-h-full{max-height:100%}#app .min-h-10{min-height:calc(var(--spacing)*10)}#app .w-0{width:calc(var(--spacing)*0)}#app .w-1\\.5{width:calc(var(--spacing)*1.5)}#app .w-3{width:calc(var(--spacing)*3)}#app .w-4{width:calc(var(--spacing)*4)}#app .w-5{width:calc(var(--spacing)*5)}#app .w-6{width:calc(var(--spacing)*6)}#app .w-8{width:calc(var(--spacing)*8)}#app .w-16{width:calc(var(--spacing)*16)}#app .w-18{width:calc(var(--spacing)*18)}#app .w-48{width:calc(var(--spacing)*48)}#app .w-full{width:100%}#app .max-w-full{max-width:100%}#app .min-w-4{min-width:calc(var(--spacing)*4)}#app .grow{flex-grow:1}#app .animate-spin{animation:var(--animate-spin)}#app .cursor-not-allowed{cursor:not-allowed}#app .cursor-pointer{cursor:pointer}#app .cursor-row-resize{cursor:row-resize}#app .cursor-text{cursor:text}#app .resize{resize:both}#app .resize-none{resize:none}#app .appearance-none{appearance:none}#app .flex-col{flex-direction:column}#app .flex-col-reverse{flex-direction:column-reverse}#app .flex-row{flex-direction:row}#app .flex-row-reverse{flex-direction:row-reverse}#app .flex-wrap{flex-wrap:wrap}#app .items-center{align-items:center}#app .items-start{align-items:flex-start}#app .justify-between{justify-content:space-between}#app .justify-center{justify-content:center}#app .justify-end{justify-content:flex-end}#app .justify-start{justify-content:flex-start}#app .gap-1{gap:calc(var(--spacing)*1)}#app .gap-2{gap:calc(var(--spacing)*2)}#app .gap-4{gap:calc(var(--spacing)*4)}#app .gap-5{gap:calc(var(--spacing)*5)}#app .gap-10{gap:calc(var(--spacing)*10)}:where(#app .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)))}#app .truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#app .overflow-x-auto{overflow-x:auto}#app .overflow-y-auto{overflow-y:auto}#app .rounded-full{border-radius:3.40282e38px}#app .rounded-krc-button{border-radius:var(--krc-button-borderRadius,1.5rem)}#app .rounded-krc-checkbox{border-radius:var(--krc-checkbox-borderRadius,.25rem)}#app .rounded-krc-input{border-radius:var(--krc-input-borderRadius,1.5rem)}#app .rounded-krc-modal{border-radius:var(--krc-modal-borderRadius,.5rem)}#app .rounded-krc-phone-input{border-radius:var(--krc-phoneInput-borderRadius,1.5rem)}#app .rounded-krc-radiobutton-group{border-radius:var(--krc-radiobuttonGroup-borderRadius,.5rem)}#app .rounded-krc-select{border-radius:var(--krc-select-borderRadius,1.5rem)}#app .rounded-krc-table{border-radius:var(--krc-table-borderRadius,1rem)}#app .rounded-krc-table-column-chooser{border-radius:var(--krc-tableColumnChooser-borderRadius,.375rem)}#app .rounded-krc-tag{border-radius:var(--krc-tag-borderRadius,.75rem)}#app .rounded-krc-tag-list{border-radius:var(--krc-tagList-borderRadius,1.5rem)}#app .rounded-krc-tag-list-add{border-radius:var(--krc-tagListAdd-borderRadius,.75rem)}#app .rounded-krc-textarea{border-radius:var(--krc-textarea-borderRadius,1rem)}#app .rounded-md{border-radius:var(--radius-md)}#app .rounded-t-krc-modal{border-top-left-radius:var(--krc-modal-borderRadius,.5rem);border-top-right-radius:var(--krc-modal-borderRadius,.5rem)}#app .rounded-t-krc-table{border-top-left-radius:var(--krc-table-borderRadius,1rem);border-top-right-radius:var(--krc-table-borderRadius,1rem)}#app .rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}#app .rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}#app .rounded-b-krc-modal{border-bottom-right-radius:var(--krc-modal-borderRadius,.5rem);border-bottom-left-radius:var(--krc-modal-borderRadius,.5rem)}#app .rounded-b-krc-table{border-bottom-right-radius:var(--krc-table-borderRadius,1rem);border-bottom-left-radius:var(--krc-table-borderRadius,1rem)}#app .border{border-style:var(--tw-border-style);border-width:1px}#app .border-r{border-right-style:var(--tw-border-style);border-right-width:1px}#app .border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}#app .border-l{border-left-style:var(--tw-border-style);border-left-width:1px}#app .border-none{--tw-border-style:none;border-style:none}#app .bg-black\\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){#app .bg-black\\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}#app .bg-krc-table-header{background-color:var(--krc-table-header-backgroundColor,#f9fafb)}#app .bg-white{background-color:var(--color-white)}#app .fill-white{fill:var(--color-white)}#app .p-2{padding:calc(var(--spacing)*2)}#app .p-4{padding:calc(var(--spacing)*4)}#app .px-1{padding-inline:calc(var(--spacing)*1)}#app .px-3{padding-inline:calc(var(--spacing)*3)}#app .px-3\\.5{padding-inline:calc(var(--spacing)*3.5)}#app .px-4{padding-inline:calc(var(--spacing)*4)}#app .px-6{padding-inline:calc(var(--spacing)*6)}#app .py-0{padding-block:calc(var(--spacing)*0)}#app .py-1{padding-block:calc(var(--spacing)*1)}#app .py-2{padding-block:calc(var(--spacing)*2)}#app .py-2\\.5{padding-block:calc(var(--spacing)*2.5)}#app .py-3{padding-block:calc(var(--spacing)*3)}#app .pt-4{padding-top:calc(var(--spacing)*4)}#app .pr-0{padding-right:calc(var(--spacing)*0)}#app .pr-10{padding-right:calc(var(--spacing)*10)}#app .pr-12{padding-right:calc(var(--spacing)*12)}#app .pb-2{padding-bottom:calc(var(--spacing)*2)}#app .pb-4{padding-bottom:calc(var(--spacing)*4)}#app .pl-0{padding-left:calc(var(--spacing)*0)}#app .pl-1{padding-left:calc(var(--spacing)*1)}#app .pl-10{padding-left:calc(var(--spacing)*10)}#app .pl-11{padding-left:calc(var(--spacing)*11)}#app .pl-13{padding-left:calc(var(--spacing)*13)}#app .pl-16{padding-left:calc(var(--spacing)*16)}#app .text-center{text-align:center}#app .text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}#app .text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}#app .text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}#app .font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}#app .font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}#app .text-white{color:var(--color-white)}#app .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)}#app .shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}#app .shadow-sm{--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)}#app .ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}#app .outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){#app .outline-hidden{outline-offset:2px;outline:2px solid #0000}}#app .outline-1{outline-style:var(--tw-outline-style);outline-width:1px}#app .outline-offset-2{outline-offset:2px}#app .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,)}#app .outline-solid{--tw-outline-style:solid;outline-style:solid}#app .not-disabled\\:bg-white:not(:disabled){background-color:var(--color-white)}#app .group-active\\:outline-solid:is(:where(.group):active *){--tw-outline-style:solid;outline-style:solid}#app .placeholder\\:text-sm::placeholder{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}#app .first\\:grow:first-child{flex-grow:1}#app .first\\:rounded-tl-krc-table:first-child{border-top-left-radius:var(--krc-table-borderRadius,1rem)}#app .last\\:rounded-tr-krc-table:last-child{border-top-right-radius:var(--krc-table-borderRadius,1rem)}#app .last\\:rounded-b-krc-table:last-child{border-bottom-right-radius:var(--krc-table-borderRadius,1rem);border-bottom-left-radius:var(--krc-table-borderRadius,1rem)}#app .focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}#app .focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}#app .focus\\:not-disabled\\:ring-2:focus:not(:disabled){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}#app .focus-visible\\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){#app .focus-visible\\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}#app .disabled\\:pointer-events-none:disabled{pointer-events:none}#app .disabled\\:\\!cursor-not-allowed:disabled{cursor:not-allowed!important}#app .disabled\\:\\!opacity-50:disabled{opacity:.5!important}#app .disabled\\:\\!shadow-none:disabled{--tw-shadow:0 0 #0000!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}#app .disabled\\:\\!ring-0:disabled{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}#app .has-focus\\:ring-2:has(:focus){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@property --tw-divide-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-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}@keyframes spin{to{transform:rotate(360deg)}}"));document.head.appendChild(elementStyle);}}catch(e){console.error('vite-plugin-css-injected-by-js', e);}
5
5
 
6
6
  })();
7
7
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
@@ -2335,9 +2335,10 @@ var Icon$1 = React__default.forwardRef(
2335
2335
  function Icon({
2336
2336
  path,
2337
2337
  name,
2338
+ dataTestId,
2338
2339
  ...props
2339
2340
  }) {
2340
- return path ? /* @__PURE__ */ jsx("svg", { ...props, children: /* @__PURE__ */ jsx("use", { href: path }) }) : name ? /* @__PURE__ */ jsx(Icon$1, { icon: name, height: "none", width: "none", ...props }) : /* @__PURE__ */ jsx(Fragment, {});
2341
+ return path ? /* @__PURE__ */ jsx("svg", { ...props, "data-testid": dataTestId, children: /* @__PURE__ */ jsx("use", { href: path }) }) : name ? /* @__PURE__ */ jsx(Icon$1, { "data-testid": dataTestId, icon: name, height: "none", width: "none", ...props }) : /* @__PURE__ */ jsx(Fragment, {});
2341
2342
  }
2342
2343
 
2343
2344
  const baseClasses$d = {
@@ -2372,6 +2373,7 @@ function Checkbox({
2372
2373
  className = "",
2373
2374
  name,
2374
2375
  error,
2376
+ dataTestId,
2375
2377
  ...props
2376
2378
  }) {
2377
2379
  const ref = useRef(null);
@@ -2393,6 +2395,7 @@ function Checkbox({
2393
2395
  className: "h-0 w-0 appearance-none",
2394
2396
  defaultChecked: !!defaultValue,
2395
2397
  checked: !!value,
2398
+ "data-testid": dataTestId,
2396
2399
  onChange: (e) => onChange(e.target.checked, e),
2397
2400
  disabled,
2398
2401
  ...props
@@ -2469,6 +2472,7 @@ function CheckboxList({
2469
2472
  required,
2470
2473
  labelPosition = "top",
2471
2474
  values = [],
2475
+ dataTestId = "",
2472
2476
  onChange = () => {
2473
2477
  return;
2474
2478
  }
@@ -2483,6 +2487,7 @@ function CheckboxList({
2483
2487
  return /* @__PURE__ */ jsx(
2484
2488
  Checkbox,
2485
2489
  {
2490
+ dataTestId: dataTestId + i,
2486
2491
  name,
2487
2492
  label: option.label.toString(),
2488
2493
  error,
@@ -2509,6 +2514,7 @@ function Form({
2509
2514
  validators,
2510
2515
  data,
2511
2516
  formRef,
2517
+ dataTestId,
2512
2518
  onValidation = () => {
2513
2519
  return;
2514
2520
  },
@@ -2557,7 +2563,7 @@ function Form({
2557
2563
  setErrors(errors2);
2558
2564
  onValidation(errors2);
2559
2565
  }
2560
- return /* @__PURE__ */ jsx("form", { ref: formRef, onSubmit: submit, className, children: /* @__PURE__ */ jsx(ErrorContext.Provider, { value: { errors, setErrors: updateErrors }, children }) });
2566
+ return /* @__PURE__ */ jsx("form", { ref: formRef, "data-testid": dataTestId, onSubmit: submit, className, children: /* @__PURE__ */ jsx(ErrorContext.Provider, { value: { errors, setErrors: updateErrors }, children }) });
2561
2567
  }
2562
2568
 
2563
2569
  /** Checks if value is string */
@@ -7530,20 +7536,21 @@ const IMaskInputFn = (props, ref) => React__default.createElement(IMaskInputClas
7530
7536
  const IMaskInput = React__default.forwardRef(IMaskInputFn);
7531
7537
 
7532
7538
  const baseClasses$b = {
7533
- classes: "w-full h-10 rounded-krc-input px-3 py-2 outline-hidden placeholder:text-secondary-500 placeholder:text-sm text-secondary-900 text-sm disabled:pointer-events-none not-disabled:bg-white disabled:bg-secondary-50",
7539
+ controlClasses: "w-full h-10 rounded-krc-input px-3 py-2 outline-hidden placeholder:text-secondary-500 placeholder:text-sm text-secondary-900 text-sm disabled:pointer-events-none not-disabled:bg-white disabled:bg-secondary-50 disabled:text-secondary-400",
7534
7540
  wrapperClasses: "group flex flex-col gap-1",
7535
7541
  labelClasses: "flex flex-row justify-start text-sm font-medium text-secondary-900",
7536
7542
  iconLeftClasses: "absolute bottom-0 left-3 top-0 my-auto h-5 w-5 text-secondary-300",
7537
7543
  iconRightClasses: "h-5 w-5",
7538
- wrapperRightClasses: "absolute bottom-0 right-3 top-0 my-auto flex flex-row items-center gap-2 text-secondary-300 text-sm",
7539
- errorClasses: "text-sm text-error-500",
7544
+ wrapperRightClasses: "absolute right-3 top-0 my-auto flex flex-row items-center gap-2 text-secondary-300 text-sm h-10",
7545
+ errorClasses: "text-sm text-error-500 -mt-4",
7540
7546
  classesError: "ring-error-500 ring-2",
7541
- classesNeutral: "border-secondary-300 border focus:ring-2 hover:border-secondary-400 focus:ring-primary-900",
7547
+ classesNeutral: "border-secondary-300 border focus:not-disabled:ring-2 hover:not-disabled:border-secondary-400 focus:not-disabled:ring-primary-900",
7542
7548
  additionalClassesIconLeft: "pl-10",
7543
- additionalClassesIconRight: "pr-12"
7549
+ additionalClassesIconRight: "pr-12",
7550
+ classes: "relative h-14"
7544
7551
  };
7545
7552
  function Input$2({
7546
- classes = baseClasses$b.classes,
7553
+ controlClasses = baseClasses$b.controlClasses,
7547
7554
  wrapperClasses = baseClasses$b.wrapperClasses,
7548
7555
  labelClasses = baseClasses$b.labelClasses,
7549
7556
  iconLeftClasses = baseClasses$b.iconLeftClasses,
@@ -7551,6 +7558,7 @@ function Input$2({
7551
7558
  errorClasses = baseClasses$b.errorClasses,
7552
7559
  classesError = baseClasses$b.classesError,
7553
7560
  classesNeutral = baseClasses$b.classesNeutral,
7561
+ classes = baseClasses$b.classes,
7554
7562
  additionalClassesIconLeft = baseClasses$b.additionalClassesIconLeft,
7555
7563
  additionalClassesIconRight = baseClasses$b.additionalClassesIconRight,
7556
7564
  wrapperRightClasses = baseClasses$b.wrapperRightClasses,
@@ -7570,6 +7578,7 @@ function Input$2({
7570
7578
  defaultValue,
7571
7579
  placeholder,
7572
7580
  className = "",
7581
+ dataTestId,
7573
7582
  onIconRightClick = () => {
7574
7583
  return;
7575
7584
  },
@@ -7590,7 +7599,7 @@ function Input$2({
7590
7599
  },
7591
7600
  ...props
7592
7601
  }) {
7593
- const classesFull = [classes];
7602
+ const classesFull = [controlClasses];
7594
7603
  if (iconLeftPath || iconLeftName) {
7595
7604
  classesFull.push(additionalClassesIconLeft);
7596
7605
  }
@@ -7614,7 +7623,7 @@ function Input$2({
7614
7623
  " ",
7615
7624
  required && "*"
7616
7625
  ] }),
7617
- /* @__PURE__ */ jsxs("div", { className: "relative", children: [
7626
+ /* @__PURE__ */ jsxs("div", { className: classes, children: [
7618
7627
  mask ? /* @__PURE__ */ jsx(
7619
7628
  IMaskInput,
7620
7629
  {
@@ -7623,6 +7632,7 @@ function Input$2({
7623
7632
  unmask: true,
7624
7633
  ref,
7625
7634
  step,
7635
+ "data-testid": dataTestId,
7626
7636
  inputRef,
7627
7637
  placeholder,
7628
7638
  value: value?.toString(),
@@ -7632,7 +7642,9 @@ function Input$2({
7632
7642
  onChange(e.currentTarget.value);
7633
7643
  },
7634
7644
  onClick: (e) => {
7635
- ref.current?.showPicker?.();
7645
+ if (e.isTrusted) {
7646
+ ref.current?.showPicker?.();
7647
+ }
7636
7648
  onClick(e);
7637
7649
  },
7638
7650
  onBlur,
@@ -7646,13 +7658,16 @@ function Input$2({
7646
7658
  ...props,
7647
7659
  ref,
7648
7660
  placeholder,
7649
- value: value?.toString(),
7650
- defaultValue: defaultValue?.toString(),
7661
+ "data-testid": dataTestId,
7662
+ value: value?.toString() || "",
7663
+ defaultValue: defaultValue?.toString() || "",
7651
7664
  onInput: (e) => {
7652
7665
  onChange(e.currentTarget.value);
7653
7666
  },
7654
7667
  onClick: (e) => {
7655
- ref.current?.showPicker();
7668
+ if (e.isTrusted) {
7669
+ ref.current?.showPicker?.();
7670
+ }
7656
7671
  onClick(e);
7657
7672
  },
7658
7673
  step,
@@ -8197,7 +8212,7 @@ function requireReactDom_production () {
8197
8212
  reactDom_production.useFormStatus = function () {
8198
8213
  return ReactSharedInternals.H.useHostTransitionStatus();
8199
8214
  };
8200
- reactDom_production.version = "19.1.0";
8215
+ reactDom_production.version = "19.2.0";
8201
8216
  return reactDom_production;
8202
8217
  }
8203
8218
 
@@ -8625,7 +8640,7 @@ function requireReactDom_development () {
8625
8640
  reactDom_development.useFormStatus = function () {
8626
8641
  return resolveDispatcher().useHostTransitionStatus();
8627
8642
  };
8628
- reactDom_development.version = "19.1.0";
8643
+ reactDom_development.version = "19.2.0";
8629
8644
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
8630
8645
  "function" ===
8631
8646
  typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
@@ -8722,8 +8737,9 @@ function getOppositeAxis(axis) {
8722
8737
  function getAxisLength(axis) {
8723
8738
  return axis === 'y' ? 'height' : 'width';
8724
8739
  }
8740
+ const yAxisSides = /*#__PURE__*/new Set(['top', 'bottom']);
8725
8741
  function getSideAxis(placement) {
8726
- return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';
8742
+ return yAxisSides.has(getSide(placement)) ? 'y' : 'x';
8727
8743
  }
8728
8744
  function getAlignmentAxis(placement) {
8729
8745
  return getOppositeAxis(getSideAxis(placement));
@@ -8748,19 +8764,19 @@ function getExpandedPlacements(placement) {
8748
8764
  function getOppositeAlignmentPlacement(placement) {
8749
8765
  return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
8750
8766
  }
8767
+ const lrPlacement = ['left', 'right'];
8768
+ const rlPlacement = ['right', 'left'];
8769
+ const tbPlacement = ['top', 'bottom'];
8770
+ const btPlacement = ['bottom', 'top'];
8751
8771
  function getSideList(side, isStart, rtl) {
8752
- const lr = ['left', 'right'];
8753
- const rl = ['right', 'left'];
8754
- const tb = ['top', 'bottom'];
8755
- const bt = ['bottom', 'top'];
8756
8772
  switch (side) {
8757
8773
  case 'top':
8758
8774
  case 'bottom':
8759
- if (rtl) return isStart ? rl : lr;
8760
- return isStart ? lr : rl;
8775
+ if (rtl) return isStart ? rlPlacement : lrPlacement;
8776
+ return isStart ? lrPlacement : rlPlacement;
8761
8777
  case 'left':
8762
8778
  case 'right':
8763
- return isStart ? tb : bt;
8779
+ return isStart ? tbPlacement : btPlacement;
8764
8780
  default:
8765
8781
  return [];
8766
8782
  }
@@ -9102,7 +9118,7 @@ const flip$2 = function (options) {
9102
9118
  if (!ignoreCrossAxisOverflow ||
9103
9119
  // We leave the current main axis only if every placement on that axis
9104
9120
  // overflows the main axis.
9105
- overflowsData.every(d => d.overflows[0] > 0 && getSideAxis(d.placement) === initialSideAxis)) {
9121
+ overflowsData.every(d => getSideAxis(d.placement) === initialSideAxis ? d.overflows[0] > 0 : true)) {
9106
9122
  // Try next placement and re-run the lifecycle.
9107
9123
  return {
9108
9124
  data: {
@@ -9281,6 +9297,7 @@ function isShadowRoot(value) {
9281
9297
  }
9282
9298
  return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
9283
9299
  }
9300
+ const invalidOverflowDisplayValues = /*#__PURE__*/new Set(['inline', 'contents']);
9284
9301
  function isOverflowElement(element) {
9285
9302
  const {
9286
9303
  overflow,
@@ -9288,27 +9305,32 @@ function isOverflowElement(element) {
9288
9305
  overflowY,
9289
9306
  display
9290
9307
  } = getComputedStyle$1(element);
9291
- return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);
9308
+ return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !invalidOverflowDisplayValues.has(display);
9292
9309
  }
9310
+ const tableElements = /*#__PURE__*/new Set(['table', 'td', 'th']);
9293
9311
  function isTableElement(element) {
9294
- return ['table', 'td', 'th'].includes(getNodeName(element));
9312
+ return tableElements.has(getNodeName(element));
9295
9313
  }
9314
+ const topLayerSelectors = [':popover-open', ':modal'];
9296
9315
  function isTopLayer(element) {
9297
- return [':popover-open', ':modal'].some(selector => {
9316
+ return topLayerSelectors.some(selector => {
9298
9317
  try {
9299
9318
  return element.matches(selector);
9300
- } catch (e) {
9319
+ } catch (_e) {
9301
9320
  return false;
9302
9321
  }
9303
9322
  });
9304
9323
  }
9324
+ const transformProperties = ['transform', 'translate', 'scale', 'rotate', 'perspective'];
9325
+ const willChangeValues = ['transform', 'translate', 'scale', 'rotate', 'perspective', 'filter'];
9326
+ const containValues = ['paint', 'layout', 'strict', 'content'];
9305
9327
  function isContainingBlock(elementOrCss) {
9306
9328
  const webkit = isWebKit();
9307
9329
  const css = isElement(elementOrCss) ? getComputedStyle$1(elementOrCss) : elementOrCss;
9308
9330
 
9309
9331
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
9310
9332
  // https://drafts.csswg.org/css-transforms-2/#individual-transforms
9311
- return ['transform', 'translate', 'scale', 'rotate', 'perspective'].some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'translate', 'scale', 'rotate', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
9333
+ return transformProperties.some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || willChangeValues.some(value => (css.willChange || '').includes(value)) || containValues.some(value => (css.contain || '').includes(value));
9312
9334
  }
9313
9335
  function getContainingBlock(element) {
9314
9336
  let currentNode = getParentNode(element);
@@ -9326,8 +9348,9 @@ function isWebKit() {
9326
9348
  if (typeof CSS === 'undefined' || !CSS.supports) return false;
9327
9349
  return CSS.supports('-webkit-backdrop-filter', 'none');
9328
9350
  }
9351
+ const lastTraversableNodeNames = /*#__PURE__*/new Set(['html', 'body', '#document']);
9329
9352
  function isLastTraversableNode(node) {
9330
- return ['html', 'body', '#document'].includes(getNodeName(node));
9353
+ return lastTraversableNodeNames.has(getNodeName(node));
9331
9354
  }
9332
9355
  function getComputedStyle$1(element) {
9333
9356
  return getWindow(element).getComputedStyle(element);
@@ -9527,14 +9550,9 @@ function getWindowScrollBarX(element, rect) {
9527
9550
  return rect.left + leftScroll;
9528
9551
  }
9529
9552
 
9530
- function getHTMLOffset(documentElement, scroll, ignoreScrollbarX) {
9531
- if (ignoreScrollbarX === void 0) {
9532
- ignoreScrollbarX = false;
9533
- }
9553
+ function getHTMLOffset(documentElement, scroll) {
9534
9554
  const htmlRect = documentElement.getBoundingClientRect();
9535
- const x = htmlRect.left + scroll.scrollLeft - (ignoreScrollbarX ? 0 :
9536
- // RTL <body> scrollbar.
9537
- getWindowScrollBarX(documentElement, htmlRect));
9555
+ const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
9538
9556
  const y = htmlRect.top + scroll.scrollTop;
9539
9557
  return {
9540
9558
  x,
@@ -9573,7 +9591,7 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
9573
9591
  offsets.y = offsetRect.y + offsetParent.clientTop;
9574
9592
  }
9575
9593
  }
9576
- const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll, true) : createCoords(0);
9594
+ const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
9577
9595
  return {
9578
9596
  width: rect.width * scale.x,
9579
9597
  height: rect.height * scale.y,
@@ -9607,6 +9625,10 @@ function getDocumentRect(element) {
9607
9625
  };
9608
9626
  }
9609
9627
 
9628
+ // Safety check: ensure the scrollbar space is reasonable in case this
9629
+ // calculation is affected by unusual styles.
9630
+ // Most scrollbars leave 15-18px of space.
9631
+ const SCROLLBAR_MAX = 25;
9610
9632
  function getViewportRect(element, strategy) {
9611
9633
  const win = getWindow(element);
9612
9634
  const html = getDocumentElement(element);
@@ -9624,6 +9646,24 @@ function getViewportRect(element, strategy) {
9624
9646
  y = visualViewport.offsetTop;
9625
9647
  }
9626
9648
  }
9649
+ const windowScrollbarX = getWindowScrollBarX(html);
9650
+ // <html> `overflow: hidden` + `scrollbar-gutter: stable` reduces the
9651
+ // visual width of the <html> but this is not considered in the size
9652
+ // of `html.clientWidth`.
9653
+ if (windowScrollbarX <= 0) {
9654
+ const doc = html.ownerDocument;
9655
+ const body = doc.body;
9656
+ const bodyStyles = getComputedStyle(body);
9657
+ const bodyMarginInline = doc.compatMode === 'CSS1Compat' ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;
9658
+ const clippingStableScrollbarWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);
9659
+ if (clippingStableScrollbarWidth <= SCROLLBAR_MAX) {
9660
+ width -= clippingStableScrollbarWidth;
9661
+ }
9662
+ } else if (windowScrollbarX <= SCROLLBAR_MAX) {
9663
+ // If the <body> scrollbar is on the left, the width needs to be extended
9664
+ // by the scrollbar amount so there isn't extra space on the right.
9665
+ width += windowScrollbarX;
9666
+ }
9627
9667
  return {
9628
9668
  width,
9629
9669
  height,
@@ -9632,6 +9672,7 @@ function getViewportRect(element, strategy) {
9632
9672
  };
9633
9673
  }
9634
9674
 
9675
+ const absoluteOrFixed = /*#__PURE__*/new Set(['absolute', 'fixed']);
9635
9676
  // Returns the inner client rect, subtracting scrollbars if present.
9636
9677
  function getInnerBoundingClientRect(element, strategy) {
9637
9678
  const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
@@ -9696,7 +9737,7 @@ function getClippingElementAncestors(element, cache) {
9696
9737
  if (!currentNodeIsContaining && computedStyle.position === 'fixed') {
9697
9738
  currentContainingBlockComputedStyle = null;
9698
9739
  }
9699
- const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);
9740
+ const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && absoluteOrFixed.has(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);
9700
9741
  if (shouldDropCurrentNode) {
9701
9742
  // Drop non-containing blocks.
9702
9743
  result = result.filter(ancestor => ancestor !== currentNode);
@@ -12671,7 +12712,8 @@ var Select$1 = /*#__PURE__*/function (_Component) {
12671
12712
  prevWasFocused: false,
12672
12713
  inputIsHiddenAfterUpdate: undefined,
12673
12714
  prevProps: undefined,
12674
- instancePrefix: ''
12715
+ instancePrefix: '',
12716
+ isAppleDevice: false
12675
12717
  };
12676
12718
  _this.blockOptionHover = false;
12677
12719
  _this.isComposing = false;
@@ -12681,7 +12723,6 @@ var Select$1 = /*#__PURE__*/function (_Component) {
12681
12723
  _this.openAfterFocus = false;
12682
12724
  _this.scrollToFocusedOptionOnUpdate = false;
12683
12725
  _this.userIsDragging = void 0;
12684
- _this.isAppleDevice = isAppleDevice();
12685
12726
  _this.controlRef = null;
12686
12727
  _this.getControlRef = function (ref) {
12687
12728
  _this.controlRef = ref;
@@ -13218,6 +13259,12 @@ var Select$1 = /*#__PURE__*/function (_Component) {
13218
13259
  if (this.props.menuIsOpen && this.state.focusedOption && this.menuListRef && this.focusedOptionRef) {
13219
13260
  scrollIntoView(this.menuListRef, this.focusedOptionRef);
13220
13261
  }
13262
+ if (isAppleDevice()) {
13263
+ // eslint-disable-next-line react/no-did-mount-set-state
13264
+ this.setState({
13265
+ isAppleDevice: true
13266
+ });
13267
+ }
13221
13268
  }
13222
13269
  }, {
13223
13270
  key: "componentDidUpdate",
@@ -13597,7 +13644,7 @@ var Select$1 = /*#__PURE__*/function (_Component) {
13597
13644
  'aria-labelledby': this.props['aria-labelledby'],
13598
13645
  'aria-required': required,
13599
13646
  role: 'combobox',
13600
- 'aria-activedescendant': this.isAppleDevice ? undefined : this.state.focusedOptionId || ''
13647
+ 'aria-activedescendant': this.state.isAppleDevice ? undefined : this.state.focusedOptionId || ''
13601
13648
  }, menuIsOpen && {
13602
13649
  'aria-controls': this.getElementId('listbox')
13603
13650
  }), !isSearchable && {
@@ -13846,7 +13893,7 @@ var Select$1 = /*#__PURE__*/function (_Component) {
13846
13893
  onMouseOver: onHover,
13847
13894
  tabIndex: -1,
13848
13895
  role: 'option',
13849
- 'aria-selected': _this4.isAppleDevice ? undefined : isSelected // is not supported on Apple devices
13896
+ 'aria-selected': _this4.state.isAppleDevice ? undefined : isSelected // is not supported on Apple devices
13850
13897
  };
13851
13898
 
13852
13899
  return /*#__PURE__*/React.createElement(Option, _extends({}, commonProps, {
@@ -14025,7 +14072,7 @@ var Select$1 = /*#__PURE__*/function (_Component) {
14025
14072
  isFocused: isFocused,
14026
14073
  selectValue: selectValue,
14027
14074
  focusableOptions: focusableOptions,
14028
- isAppleDevice: this.isAppleDevice
14075
+ isAppleDevice: this.state.isAppleDevice
14029
14076
  }));
14030
14077
  }
14031
14078
  }, {
@@ -14245,7 +14292,7 @@ function ComponentsWrapper({ children, locale }) {
14245
14292
  const CUSTOM_ENTRY_VALUE = "CUSTOM_ENTRY_VALUE";
14246
14293
  const baseClasses$a = {
14247
14294
  classes: "rounded-krc-select h-10 py-0 border shadow-none",
14248
- errorClasses: "text-sm text-error-500",
14295
+ errorClasses: "text-sm text-error-500 -mt-4",
14249
14296
  labelClasses: "text-sm font-medium text-secondary-900",
14250
14297
  labelWrapperClasses: "group flex flex-col gap-1",
14251
14298
  classesNeutral: "border-secondary-300 group-hover:border-secondary-400",
@@ -14295,6 +14342,7 @@ function Select({
14295
14342
  customValueLabel = "Eigenen Wert hinzufügen",
14296
14343
  menuPortalTarget,
14297
14344
  isMulti,
14345
+ dataTestId,
14298
14346
  onInput = () => {
14299
14347
  return;
14300
14348
  },
@@ -14348,6 +14396,8 @@ function Select({
14348
14396
  borderRadius: void 0
14349
14397
  })
14350
14398
  },
14399
+ "data-testid": dataTestId,
14400
+ id: dataTestId,
14351
14401
  isSearchable: searchable,
14352
14402
  menuPlacement,
14353
14403
  isDisabled: disabled,
@@ -14474,6 +14524,7 @@ function PhoneInput({
14474
14524
  name,
14475
14525
  value,
14476
14526
  defaultValue,
14527
+ dataTestId,
14477
14528
  className = "",
14478
14529
  onChange = () => {
14479
14530
  return;
@@ -14563,6 +14614,7 @@ function PhoneInput({
14563
14614
  mask: masks[countryCode.label],
14564
14615
  radix: ".",
14565
14616
  unmask: true,
14617
+ "data-testid": dataTestId,
14566
14618
  ref,
14567
14619
  id: name,
14568
14620
  placeholder: placeholders[countryCode.label],
@@ -14615,6 +14667,7 @@ function RadioButtonGroup({
14615
14667
  value,
14616
14668
  label,
14617
14669
  name,
14670
+ dataTestId = "",
14618
14671
  arrangement = "horizontal",
14619
14672
  onChange = () => {
14620
14673
  return;
@@ -14634,6 +14687,7 @@ function RadioButtonGroup({
14634
14687
  {
14635
14688
  className: "appearance-none",
14636
14689
  type: "radio",
14690
+ "data-testid": dataTestId + i,
14637
14691
  name,
14638
14692
  value: option.value.toString(),
14639
14693
  checked: value?.toString() === option.value.toString(),
@@ -14664,6 +14718,7 @@ function Tag({
14664
14718
  iconLeftName,
14665
14719
  iconRightPath,
14666
14720
  iconRightName,
14721
+ dataTestId,
14667
14722
  title,
14668
14723
  onClick = () => {
14669
14724
  return;
@@ -14675,7 +14730,7 @@ function Tag({
14675
14730
  return;
14676
14731
  }
14677
14732
  }) {
14678
- return /* @__PURE__ */ jsxs("div", { className: wrapperClasses, onClick, children: [
14733
+ return /* @__PURE__ */ jsxs("div", { className: wrapperClasses, onClick, "data-testid": dataTestId, children: [
14679
14734
  (iconLeftPath || iconLeftName) && /* @__PURE__ */ jsx(Icon, { name: iconLeftName, path: iconLeftPath, className: iconLeftClasses, onClick: onClickIconLeft }),
14680
14735
  /* @__PURE__ */ jsx("div", { className: titleClasses, children: title }),
14681
14736
  (iconRightPath || iconRightName) && /* @__PURE__ */ jsx(Icon, { name: iconRightName, path: iconRightPath, className: iconRightClasses, onClick: onClickIconRight })
@@ -14700,6 +14755,7 @@ function TagList({
14700
14755
  error,
14701
14756
  required,
14702
14757
  values,
14758
+ dataTestId,
14703
14759
  addTagTitle = "",
14704
14760
  onChange = () => {
14705
14761
  return;
@@ -14720,12 +14776,22 @@ function TagList({
14720
14776
  required && "*"
14721
14777
  ] }),
14722
14778
  /* @__PURE__ */ jsxs("div", { className: classesFull.join(" "), children: [
14723
- values?.map((value, i) => /* @__PURE__ */ jsx(Tag, { title: value.toString(), onClick: () => onChange(value), iconRightName: "heroicons:x-mark-16-solid" }, i)),
14779
+ values?.map((value, i) => /* @__PURE__ */ jsx(
14780
+ Tag,
14781
+ {
14782
+ title: value.toString(),
14783
+ onClick: () => onChange(value),
14784
+ "data-testid": dataTestId,
14785
+ iconRightName: "heroicons:x-mark-16-solid"
14786
+ },
14787
+ i
14788
+ )),
14724
14789
  /* @__PURE__ */ jsx(
14725
14790
  Tag,
14726
14791
  {
14727
14792
  title: addTagTitle,
14728
14793
  iconLeftName: "heroicons:plus-16-solid",
14794
+ "data-testid": dataTestId,
14729
14795
  wrapperClasses: "flex flex-row h-6 cursor-pointer items-center justify-center gap-1 rounded-krc-tag-list-add border border-secondary-300 px-3 py-1 bg-white",
14730
14796
  onClick: () => onChange("")
14731
14797
  }
@@ -15608,6 +15674,7 @@ function Textarea({
15608
15674
  value,
15609
15675
  disabled,
15610
15676
  defaultValue,
15677
+ dataTestId,
15611
15678
  maxLengthLabel,
15612
15679
  /** UNUSED, only listed so that the typing for onInput does not clash with the onInput event of the textarea */
15613
15680
  onInput = () => {
@@ -15667,6 +15734,7 @@ function Textarea({
15667
15734
  {
15668
15735
  maxLength: maxLength || void 0,
15669
15736
  ref: textarea,
15737
+ "data-testid": dataTestId,
15670
15738
  value: text,
15671
15739
  disabled,
15672
15740
  defaultValue: defaultValue?.toString(),
@@ -15750,7 +15818,7 @@ const validators = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty
15750
15818
  }, Symbol.toStringTag, { value: 'Module' }));
15751
15819
 
15752
15820
  /*!
15753
- * tabbable 6.2.0
15821
+ * tabbable 6.3.0
15754
15822
  * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
15755
15823
  */
15756
15824
  // NOTE: separate `:not()` selectors has broader browser support than the newer
@@ -15777,7 +15845,7 @@ var getRootNode = !NoElement && Element.prototype.getRootNode ? function (elemen
15777
15845
  * @returns {boolean} True if inert itself or by way of being in an inert ancestor.
15778
15846
  * False if `node` is falsy.
15779
15847
  */
15780
- var isInert = function isInert(node, lookUp) {
15848
+ var _isInert = function isInert(node, lookUp) {
15781
15849
  var _node$getAttribute;
15782
15850
  if (lookUp === void 0) {
15783
15851
  lookUp = true;
@@ -15793,7 +15861,7 @@ var isInert = function isInert(node, lookUp) {
15793
15861
  // code works for any kind of node
15794
15862
  // CAREFUL: JSDom does not appear to support certain selectors like `:not([inert] *)`
15795
15863
  // so it likely would not support `:is([inert] *)` either...
15796
- var result = inert || lookUp && node && isInert(node.parentNode); // recursive
15864
+ var result = inert || lookUp && node && _isInert(node.parentNode); // recursive
15797
15865
 
15798
15866
  return result;
15799
15867
  };
@@ -15821,7 +15889,7 @@ var isContentEditable = function isContentEditable(node) {
15821
15889
  var getCandidates = function getCandidates(el, includeContainer, filter) {
15822
15890
  // even if `includeContainer=false`, we still have to check it for inertness because
15823
15891
  // if it's inert, all its children are inert
15824
- if (isInert(el)) {
15892
+ if (_isInert(el)) {
15825
15893
  return [];
15826
15894
  }
15827
15895
  var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector));
@@ -15866,12 +15934,12 @@ var getCandidates = function getCandidates(el, includeContainer, filter) {
15866
15934
  * @param {IterativeOptions} options
15867
15935
  * @returns {Array.<Element|CandidateScope>}
15868
15936
  */
15869
- var getCandidatesIteratively = function getCandidatesIteratively(elements, includeContainer, options) {
15937
+ var _getCandidatesIteratively = function getCandidatesIteratively(elements, includeContainer, options) {
15870
15938
  var candidates = [];
15871
15939
  var elementsToCheck = Array.from(elements);
15872
15940
  while (elementsToCheck.length) {
15873
15941
  var element = elementsToCheck.shift();
15874
- if (isInert(element, false)) {
15942
+ if (_isInert(element, false)) {
15875
15943
  // no need to look up since we're drilling down
15876
15944
  // anything inside this container will also be inert
15877
15945
  continue;
@@ -15880,7 +15948,7 @@ var getCandidatesIteratively = function getCandidatesIteratively(elements, inclu
15880
15948
  // add shadow dom slot scope (slot itself cannot be focusable)
15881
15949
  var assigned = element.assignedElements();
15882
15950
  var content = assigned.length ? assigned : element.children;
15883
- var nestedCandidates = getCandidatesIteratively(content, true, options);
15951
+ var nestedCandidates = _getCandidatesIteratively(content, true, options);
15884
15952
  if (options.flatten) {
15885
15953
  candidates.push.apply(candidates, nestedCandidates);
15886
15954
  } else {
@@ -15904,7 +15972,7 @@ var getCandidatesIteratively = function getCandidatesIteratively(elements, inclu
15904
15972
  // no inert look up because we're already drilling down and checking for inertness
15905
15973
  // on the way down, so all containers to this root node should have already been
15906
15974
  // vetted as non-inert
15907
- var validShadowRoot = !isInert(shadowRoot, false) && (!options.shadowRootFilter || options.shadowRootFilter(element));
15975
+ var validShadowRoot = !_isInert(shadowRoot, false) && (!options.shadowRootFilter || options.shadowRootFilter(element));
15908
15976
  if (shadowRoot && validShadowRoot) {
15909
15977
  // add shadow dom scope IIF a shadow root node was given; otherwise, an undisclosed
15910
15978
  // shadow exists, so look at light dom children as fallback BUT create a scope for any
@@ -15912,7 +15980,7 @@ var getCandidatesIteratively = function getCandidatesIteratively(elements, inclu
15912
15980
  // children of the web component element (which has the shadow), in the light dom, but
15913
15981
  // slotted somewhere _inside_ the undisclosed shadow) -- the scope is created below,
15914
15982
  // _after_ we return from this recursive call
15915
- var _nestedCandidates = getCandidatesIteratively(shadowRoot === true ? element.children : shadowRoot.children, true, options);
15983
+ var _nestedCandidates = _getCandidatesIteratively(shadowRoot === true ? element.children : shadowRoot.children, true, options);
15916
15984
  if (options.flatten) {
15917
15985
  candidates.push.apply(candidates, _nestedCandidates);
15918
15986
  } else {
@@ -16089,6 +16157,28 @@ var isZeroArea = function isZeroArea(node) {
16089
16157
  var isHidden = function isHidden(node, _ref) {
16090
16158
  var displayCheck = _ref.displayCheck,
16091
16159
  getShadowRoot = _ref.getShadowRoot;
16160
+ if (displayCheck === 'full-native') {
16161
+ if ('checkVisibility' in node) {
16162
+ // Chrome >= 105, Edge >= 105, Firefox >= 106, Safari >= 17.4
16163
+ // @see https://developer.mozilla.org/en-US/docs/Web/API/Element/checkVisibility#browser_compatibility
16164
+ var visible = node.checkVisibility({
16165
+ // Checking opacity might be desirable for some use cases, but natively,
16166
+ // opacity zero elements _are_ focusable and tabbable.
16167
+ checkOpacity: false,
16168
+ opacityProperty: false,
16169
+ contentVisibilityAuto: true,
16170
+ visibilityProperty: true,
16171
+ // This is an alias for `visibilityProperty`. Contemporary browsers
16172
+ // support both. However, this alias has wider browser support (Chrome
16173
+ // >= 105 and Firefox >= 106, vs. Chrome >= 121 and Firefox >= 122), so
16174
+ // we include it anyway.
16175
+ checkVisibilityCSS: true
16176
+ });
16177
+ return !visible;
16178
+ }
16179
+ // Fall through to manual visibility checks
16180
+ }
16181
+
16092
16182
  // NOTE: visibility will be `undefined` if node is detached from the document
16093
16183
  // (see notes about this further down), which means we will consider it visible
16094
16184
  // (this is legacy behavior from a very long way back)
@@ -16102,7 +16192,10 @@ var isHidden = function isHidden(node, _ref) {
16102
16192
  if (matches.call(nodeUnderDetails, 'details:not([open]) *')) {
16103
16193
  return true;
16104
16194
  }
16105
- if (!displayCheck || displayCheck === 'full' || displayCheck === 'legacy-full') {
16195
+ if (!displayCheck || displayCheck === 'full' ||
16196
+ // full-native can run this branch when it falls through in case
16197
+ // Element#checkVisibility is unsupported
16198
+ displayCheck === 'full-native' || displayCheck === 'legacy-full') {
16106
16199
  if (typeof getShadowRoot === 'function') {
16107
16200
  // figure out if we should consider the node to be in an undisclosed shadow and use the
16108
16201
  // 'non-zero-area' fallback
@@ -16215,7 +16308,7 @@ var isNodeMatchingSelectorFocusable = function isNodeMatchingSelectorFocusable(o
16215
16308
  // we must do an inert look up to filter out any elements inside an inert ancestor
16216
16309
  // because we're limited in the type of selectors we can use in JSDom (see related
16217
16310
  // note related to `candidateSelectors`)
16218
- isInert(node) || isHiddenInput(node) || isHidden(node, options) ||
16311
+ _isInert(node) || isHiddenInput(node) || isHidden(node, options) ||
16219
16312
  // For a details element with a summary, the summary element gets the focus
16220
16313
  isDetailsWithSummary(node) || isDisabledFromFieldset(node)) {
16221
16314
  return false;
@@ -16228,7 +16321,7 @@ var isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable(opt
16228
16321
  }
16229
16322
  return true;
16230
16323
  };
16231
- var isValidShadowRootTabbable = function isValidShadowRootTabbable(shadowHostNode) {
16324
+ var isShadowRootTabbable = function isShadowRootTabbable(shadowHostNode) {
16232
16325
  var tabIndex = parseInt(shadowHostNode.getAttribute('tabindex'), 10);
16233
16326
  if (isNaN(tabIndex) || tabIndex >= 0) {
16234
16327
  return true;
@@ -16242,14 +16335,14 @@ var isValidShadowRootTabbable = function isValidShadowRootTabbable(shadowHostNod
16242
16335
  * @param {Array.<Element|CandidateScope>} candidates
16243
16336
  * @returns Element[]
16244
16337
  */
16245
- var sortByOrder = function sortByOrder(candidates) {
16338
+ var _sortByOrder = function sortByOrder(candidates) {
16246
16339
  var regularTabbables = [];
16247
16340
  var orderedTabbables = [];
16248
16341
  candidates.forEach(function (item, i) {
16249
16342
  var isScope = !!item.scopeParent;
16250
16343
  var element = isScope ? item.scopeParent : item;
16251
16344
  var candidateTabindex = getSortOrderTabIndex(element, isScope);
16252
- var elements = isScope ? sortByOrder(item.candidates) : element;
16345
+ var elements = isScope ? _sortByOrder(item.candidates) : element;
16253
16346
  if (candidateTabindex === 0) {
16254
16347
  isScope ? regularTabbables.push.apply(regularTabbables, elements) : regularTabbables.push(element);
16255
16348
  } else {
@@ -16271,22 +16364,22 @@ var tabbable = function tabbable(container, options) {
16271
16364
  options = options || {};
16272
16365
  var candidates;
16273
16366
  if (options.getShadowRoot) {
16274
- candidates = getCandidatesIteratively([container], options.includeContainer, {
16367
+ candidates = _getCandidatesIteratively([container], options.includeContainer, {
16275
16368
  filter: isNodeMatchingSelectorTabbable.bind(null, options),
16276
16369
  flatten: false,
16277
16370
  getShadowRoot: options.getShadowRoot,
16278
- shadowRootFilter: isValidShadowRootTabbable
16371
+ shadowRootFilter: isShadowRootTabbable
16279
16372
  });
16280
16373
  } else {
16281
16374
  candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));
16282
16375
  }
16283
- return sortByOrder(candidates);
16376
+ return _sortByOrder(candidates);
16284
16377
  };
16285
16378
  var focusable = function focusable(container, options) {
16286
16379
  options = options || {};
16287
16380
  var candidates;
16288
16381
  if (options.getShadowRoot) {
16289
- candidates = getCandidatesIteratively([container], options.includeContainer, {
16382
+ candidates = _getCandidatesIteratively([container], options.includeContainer, {
16290
16383
  filter: isNodeMatchingSelectorFocusable.bind(null, options),
16291
16384
  flatten: true,
16292
16385
  getShadowRoot: options.getShadowRoot
@@ -16422,23 +16515,15 @@ function getFloatingFocusElement(floatingElement) {
16422
16515
  return floatingElement.hasAttribute(FOCUSABLE_ATTRIBUTE$1) ? floatingElement : floatingElement.querySelector("[" + FOCUSABLE_ATTRIBUTE$1 + "]") || floatingElement;
16423
16516
  }
16424
16517
 
16425
- function getNodeChildren(nodes, id) {
16426
- let allChildren = nodes.filter(node => {
16518
+ function getNodeChildren(nodes, id, onlyOpenChildren) {
16519
+ if (onlyOpenChildren === void 0) {
16520
+ onlyOpenChildren = true;
16521
+ }
16522
+ const directChildren = nodes.filter(node => {
16427
16523
  var _node$context;
16428
- return node.parentId === id && ((_node$context = node.context) == null ? void 0 : _node$context.open);
16524
+ return node.parentId === id && (!onlyOpenChildren || ((_node$context = node.context) == null ? void 0 : _node$context.open));
16429
16525
  });
16430
- let currentChildren = allChildren;
16431
- while (currentChildren.length) {
16432
- currentChildren = nodes.filter(node => {
16433
- var _currentChildren;
16434
- return (_currentChildren = currentChildren) == null ? void 0 : _currentChildren.some(n => {
16435
- var _node$context2;
16436
- return node.parentId === n.id && ((_node$context2 = node.context) == null ? void 0 : _node$context2.open);
16437
- });
16438
- });
16439
- allChildren = allChildren.concat(currentChildren);
16440
- }
16441
- return allChildren;
16526
+ return directChildren.flatMap(child => [child, ...getNodeChildren(nodes, child.id, onlyOpenChildren)]);
16442
16527
  }
16443
16528
  function getNodeAncestors(nodes, id) {
16444
16529
  var _nodes$find;
@@ -17064,7 +17149,7 @@ function markOthers(avoidElements, ariaHidden, inert) {
17064
17149
  inert = false;
17065
17150
  }
17066
17151
  const body = getDocument(avoidElements[0]).body;
17067
- return applyAttributeToOthers(avoidElements.concat(Array.from(body.querySelectorAll('[aria-live]'))), body, ariaHidden, inert);
17152
+ return applyAttributeToOthers(avoidElements.concat(Array.from(body.querySelectorAll('[aria-live],[role="status"],output'))), body, ariaHidden, inert);
17068
17153
  }
17069
17154
 
17070
17155
  const HIDDEN_STYLES = {
@@ -17157,7 +17242,7 @@ function useFloatingPortalNode(props) {
17157
17242
  if (!uniqueId) return;
17158
17243
  if (portalNodeRef.current) return;
17159
17244
  let container = root || (portalContext == null ? void 0 : portalContext.portalNode);
17160
- if (container && !isElement(container)) container = container.current;
17245
+ if (container && !isNode(container)) container = container.current;
17161
17246
  container = container || document.body;
17162
17247
  let idWrapper = null;
17163
17248
  if (id) {
@@ -17300,8 +17385,11 @@ function useLiteMergeRefs(refs) {
17300
17385
 
17301
17386
  const LIST_LIMIT = 20;
17302
17387
  let previouslyFocusedElements = [];
17303
- function addPreviouslyFocusedElement(element) {
17388
+ function clearDisconnectedPreviouslyFocusedElements() {
17304
17389
  previouslyFocusedElements = previouslyFocusedElements.filter(el => el.isConnected);
17390
+ }
17391
+ function addPreviouslyFocusedElement(element) {
17392
+ clearDisconnectedPreviouslyFocusedElements();
17305
17393
  if (element && getNodeName(element) !== 'body') {
17306
17394
  previouslyFocusedElements.push(element);
17307
17395
  if (previouslyFocusedElements.length > LIST_LIMIT) {
@@ -17310,7 +17398,8 @@ function addPreviouslyFocusedElement(element) {
17310
17398
  }
17311
17399
  }
17312
17400
  function getPreviouslyFocusedElement() {
17313
- return previouslyFocusedElements.slice().reverse().find(el => el.isConnected);
17401
+ clearDisconnectedPreviouslyFocusedElements();
17402
+ return previouslyFocusedElements[previouslyFocusedElements.length - 1];
17314
17403
  }
17315
17404
  function getFirstTabbableElement(container) {
17316
17405
  const tabbableOptions = getTabbableOptions();
@@ -17406,6 +17495,7 @@ function FloatingFocusManager(props) {
17406
17495
  const preventReturnFocusRef = React.useRef(false);
17407
17496
  const isPointerDownRef = React.useRef(false);
17408
17497
  const tabbableIndexRef = React.useRef(-1);
17498
+ const blurTimeoutRef = React.useRef(-1);
17409
17499
  const isInsidePortal = portalContext != null;
17410
17500
  const floatingFocusElement = getFloatingFocusElement(floating);
17411
17501
  const getTabbableContent = useEffectEvent(function (container) {
@@ -17533,14 +17623,28 @@ function FloatingFocusManager(props) {
17533
17623
  }
17534
17624
  });
17535
17625
  }
17626
+ const shouldHandleBlurCapture = Boolean(!tree && portalContext);
17627
+ function markInsideReactTree() {
17628
+ clearTimeoutIfSet(blurTimeoutRef);
17629
+ dataRef.current.insideReactTree = true;
17630
+ blurTimeoutRef.current = window.setTimeout(() => {
17631
+ dataRef.current.insideReactTree = false;
17632
+ });
17633
+ }
17536
17634
  if (floating && isHTMLElement(domReference)) {
17537
17635
  domReference.addEventListener('focusout', handleFocusOutside);
17538
17636
  domReference.addEventListener('pointerdown', handlePointerDown);
17539
17637
  floating.addEventListener('focusout', handleFocusOutside);
17638
+ if (shouldHandleBlurCapture) {
17639
+ floating.addEventListener('focusout', markInsideReactTree, true);
17640
+ }
17540
17641
  return () => {
17541
17642
  domReference.removeEventListener('focusout', handleFocusOutside);
17542
17643
  domReference.removeEventListener('pointerdown', handlePointerDown);
17543
17644
  floating.removeEventListener('focusout', handleFocusOutside);
17645
+ if (shouldHandleBlurCapture) {
17646
+ floating.removeEventListener('focusout', markInsideReactTree, true);
17647
+ }
17544
17648
  };
17545
17649
  }
17546
17650
  }, [disabled, domReference, floating, floatingFocusElement, modal, tree, portalContext, onOpenChange, closeOnFocusOut, restoreFocus, getTabbableContent, isUntrappedTypeableCombobox, getNodeId, orderRef, dataRef]);
@@ -17556,15 +17660,11 @@ function FloatingFocusManager(props) {
17556
17660
  // Don't hide portals nested within the parent portal.
17557
17661
  const portalNodes = Array.from((portalContext == null || (_portalContext$portal = portalContext.portalNode) == null ? void 0 : _portalContext$portal.querySelectorAll("[" + createAttribute('portal') + "]")) || []);
17558
17662
  const ancestors = tree ? getNodeAncestors(tree.nodesRef.current, getNodeId()) : [];
17559
- const ancestorFloatingNodes = tree && !modal ? ancestors.map(node => {
17560
- var _node$context6;
17561
- return (_node$context6 = node.context) == null ? void 0 : _node$context6.elements.floating;
17562
- }) : [];
17563
17663
  const rootAncestorComboboxDomReference = (_ancestors$find = ancestors.find(node => {
17564
- var _node$context7;
17565
- return isTypeableCombobox(((_node$context7 = node.context) == null ? void 0 : _node$context7.elements.domReference) || null);
17664
+ var _node$context6;
17665
+ return isTypeableCombobox(((_node$context6 = node.context) == null ? void 0 : _node$context6.elements.domReference) || null);
17566
17666
  })) == null || (_ancestors$find = _ancestors$find.context) == null ? void 0 : _ancestors$find.elements.domReference;
17567
- const insideElements = [floating, rootAncestorComboboxDomReference, ...portalNodes, ...ancestorFloatingNodes, ...getInsideElements(), startDismissButtonRef.current, endDismissButtonRef.current, beforeGuardRef.current, afterGuardRef.current, portalContext == null ? void 0 : portalContext.beforeOutsideRef.current, portalContext == null ? void 0 : portalContext.afterOutsideRef.current, orderRef.current.includes('reference') || isUntrappedTypeableCombobox ? domReference : null].filter(x => x != null);
17667
+ const insideElements = [floating, rootAncestorComboboxDomReference, ...portalNodes, ...getInsideElements(), startDismissButtonRef.current, endDismissButtonRef.current, beforeGuardRef.current, afterGuardRef.current, portalContext == null ? void 0 : portalContext.beforeOutsideRef.current, portalContext == null ? void 0 : portalContext.afterOutsideRef.current, orderRef.current.includes('reference') || isUntrappedTypeableCombobox ? domReference : null].filter(x => x != null);
17568
17668
  const cleanup = modal || isUntrappedTypeableCombobox ? markOthers(insideElements, !useInert, useInert) : markOthers(insideElements);
17569
17669
  return () => {
17570
17670
  cleanup();
@@ -17643,9 +17743,9 @@ function FloatingFocusManager(props) {
17643
17743
  return () => {
17644
17744
  events.off('openchange', onOpenChange);
17645
17745
  const activeEl = activeElement(doc);
17646
- const isFocusInsideFloatingTree = contains(floating, activeEl) || tree && getNodeChildren(tree.nodesRef.current, getNodeId()).some(node => {
17647
- var _node$context8;
17648
- return contains((_node$context8 = node.context) == null ? void 0 : _node$context8.elements.floating, activeEl);
17746
+ const isFocusInsideFloatingTree = contains(floating, activeEl) || tree && getNodeChildren(tree.nodesRef.current, getNodeId(), false).some(node => {
17747
+ var _node$context7;
17748
+ return contains((_node$context7 = node.context) == null ? void 0 : _node$context7.elements.floating, activeEl);
17649
17749
  });
17650
17750
  const returnElement = getReturnElement();
17651
17751
  queueMicrotask(() => {
@@ -17672,6 +17772,9 @@ function FloatingFocusManager(props) {
17672
17772
  queueMicrotask(() => {
17673
17773
  preventReturnFocusRef.current = false;
17674
17774
  });
17775
+ return () => {
17776
+ queueMicrotask(clearDisconnectedPreviouslyFocusedElements);
17777
+ };
17675
17778
  }, [disabled]);
17676
17779
 
17677
17780
  // Synchronize the `context` & `modal` value to the FloatingPortal context.
@@ -17912,7 +18015,6 @@ function useDismiss(context, props) {
17912
18015
  outsidePress: outsidePressCapture
17913
18016
  } = normalizeProp(capture);
17914
18017
  const isComposingRef = React.useRef(false);
17915
- const blurTimeoutRef = React.useRef(-1);
17916
18018
  const closeOnEscapeKeyDown = useEffectEvent(event => {
17917
18019
  var _dataRef$current$floa;
17918
18020
  if (!open || !enabled || !escapeKey || event.key !== 'Escape') {
@@ -18147,16 +18249,8 @@ function useDismiss(context, props) {
18147
18249
  },
18148
18250
  [captureHandlerKeys[outsidePressEvent]]: () => {
18149
18251
  dataRef.current.insideReactTree = true;
18150
- },
18151
- onBlurCapture() {
18152
- if (tree) return;
18153
- clearTimeoutIfSet(blurTimeoutRef);
18154
- dataRef.current.insideReactTree = true;
18155
- blurTimeoutRef.current = window.setTimeout(() => {
18156
- dataRef.current.insideReactTree = false;
18157
- });
18158
18252
  }
18159
- }), [closeOnEscapeKeyDown, outsidePressEvent, dataRef, tree]);
18253
+ }), [closeOnEscapeKeyDown, outsidePressEvent, dataRef]);
18160
18254
  return React.useMemo(() => enabled ? {
18161
18255
  reference,
18162
18256
  floating
@@ -18485,17 +18579,11 @@ function useRole(context, props) {
18485
18579
  // avoid defaulting to `menuitem` as it may overwrite custom role props.
18486
18580
  switch (role) {
18487
18581
  case 'select':
18582
+ case 'combobox':
18488
18583
  return {
18489
18584
  ...commonProps,
18490
- 'aria-selected': active && selected
18585
+ 'aria-selected': selected
18491
18586
  };
18492
- case 'combobox':
18493
- {
18494
- return {
18495
- ...commonProps,
18496
- 'aria-selected': selected
18497
- };
18498
- }
18499
18587
  }
18500
18588
  return {};
18501
18589
  }, [floatingId, role]);
@@ -18598,11 +18686,9 @@ function Pagination({
18598
18686
  controlClasses = baseClasses$3.controlClasses,
18599
18687
  xToY,
18600
18688
  currentPage,
18601
- currentStart,
18602
- currentEnd,
18603
- currentTotal,
18604
18689
  totalPages,
18605
18690
  showButtons,
18691
+ dataTestId,
18606
18692
  onFirstPage = () => {
18607
18693
  return;
18608
18694
  },
@@ -18615,7 +18701,7 @@ function Pagination({
18615
18701
  onLastPage = () => {
18616
18702
  return;
18617
18703
  },
18618
- toPage = (page) => {
18704
+ toPage = () => {
18619
18705
  return;
18620
18706
  }
18621
18707
  }) {
@@ -18640,6 +18726,7 @@ function Pagination({
18640
18726
  Icon,
18641
18727
  {
18642
18728
  className: previousPageActive ? activeIconClasses : inactiveIconClasses,
18729
+ dataTestId: dataTestId ? dataTestId + "-first-page" : void 0,
18643
18730
  name: "lucide:chevron-first",
18644
18731
  onClick: () => previousPageActive ? onFirstPage() : void 0
18645
18732
  }
@@ -18648,6 +18735,7 @@ function Pagination({
18648
18735
  Icon,
18649
18736
  {
18650
18737
  className: previousPageActive ? activeIconClasses : inactiveIconClasses,
18738
+ dataTestId: dataTestId ? dataTestId + "-previous-page" : void 0,
18651
18739
  name: "lucide:chevron-left",
18652
18740
  onClick: () => previousPageActive ? onPreviousPage() : void 0
18653
18741
  }
@@ -18656,6 +18744,7 @@ function Pagination({
18656
18744
  Input$2,
18657
18745
  {
18658
18746
  centered: true,
18747
+ dataTestId: dataTestId ? dataTestId + "-page-input" : void 0,
18659
18748
  value: pageInternal,
18660
18749
  onChange: (v) => setPageInternal(+v),
18661
18750
  onKeyDown: (e) => onKeyDown(e)
@@ -18665,6 +18754,7 @@ function Pagination({
18665
18754
  Icon,
18666
18755
  {
18667
18756
  className: nextPageActive ? activeIconClasses : inactiveIconClasses,
18757
+ dataTestId: dataTestId ? dataTestId + "-next-page" : void 0,
18668
18758
  name: "lucide:chevron-right",
18669
18759
  onClick: () => nextPageActive ? onNextPage() : void 0
18670
18760
  }
@@ -18673,6 +18763,7 @@ function Pagination({
18673
18763
  Icon,
18674
18764
  {
18675
18765
  className: nextPageActive ? activeIconClasses : inactiveIconClasses,
18766
+ dataTestId: dataTestId ? dataTestId + "-last-page" : void 0,
18676
18767
  name: "lucide:chevron-last",
18677
18768
  onClick: () => nextPageActive ? onLastPage() : void 0
18678
18769
  }
@@ -22459,6 +22550,7 @@ function Table({
22459
22550
  pagesize = 10,
22460
22551
  xToY,
22461
22552
  isInfinite = true,
22553
+ name = "",
22462
22554
  onDragRow = () => {
22463
22555
  return;
22464
22556
  },
@@ -22508,7 +22600,7 @@ function Table({
22508
22600
  async function updateFilters(newFilters) {
22509
22601
  await onUpdateFilters(newFilters);
22510
22602
  }
22511
- return /* @__PURE__ */ jsxs("div", { className: wrapperClasses, children: [
22603
+ return /* @__PURE__ */ jsxs("div", { className: wrapperClasses, "data-testid": name + "-table", children: [
22512
22604
  /* @__PURE__ */ jsxs(
22513
22605
  "div",
22514
22606
  {
@@ -22524,12 +22616,14 @@ function Table({
22524
22616
  /* @__PURE__ */ jsxs(
22525
22617
  "div",
22526
22618
  {
22619
+ "data-testid": name + "-table-header",
22527
22620
  ref: header,
22528
22621
  className: "sticky top-0 z-1 flex flex-row items-center justify-between rounded-t-krc-table bg-krc-table-header",
22529
22622
  children: [
22530
- !!currentColumnsLeft.length && /* @__PURE__ */ jsx("div", { className: "sticky left-0 flex flex-row z-1", children: currentColumnsLeft.map((column) => /* @__PURE__ */ jsxs(
22623
+ !!currentColumnsLeft.length && /* @__PURE__ */ jsx("div", { className: "sticky left-0 flex flex-row z-1", "data-testid": name + "-table-header-left", children: currentColumnsLeft.map((column) => /* @__PURE__ */ jsxs(
22531
22624
  "div",
22532
22625
  {
22626
+ "data-testid": `${name}-table-header-left-${column.id.toString()}`,
22533
22627
  style: {
22534
22628
  minWidth: column.initialWidth,
22535
22629
  maxWidth: !column.grow ? column.initialWidth : void 0
@@ -22572,6 +22666,7 @@ function Table({
22572
22666
  Input$2,
22573
22667
  {
22574
22668
  defaultValue: filters[column.filterKey]?.join(", "),
22669
+ dataTestId: `${name}-table-header-left-filter-${column.id.toString()}`,
22575
22670
  onKeyDown: async (e) => {
22576
22671
  if (e.key === "Enter" && column.filterKey) {
22577
22672
  const key = column.filterKey;
@@ -22617,6 +22712,7 @@ function Table({
22617
22712
  minWidth: column.initialWidth,
22618
22713
  maxWidth: !column.grow ? column.initialWidth : void 0
22619
22714
  },
22715
+ "data-testid": `${name}-table-header-center-${column.id.toString()}`,
22620
22716
  className: [
22621
22717
  headerClasses,
22622
22718
  hasFilters ? "h-24" : "h-12",
@@ -22655,6 +22751,7 @@ function Table({
22655
22751
  Input$2,
22656
22752
  {
22657
22753
  defaultValue: filters[column.filterKey]?.join(", "),
22754
+ dataTestId: `${name}-table-header-center-filter-${column.id.toString()}`,
22658
22755
  onKeyDown: async (e) => {
22659
22756
  if (e.key === "Enter" && column.filterKey) {
22660
22757
  const key = column.filterKey;
@@ -22700,6 +22797,7 @@ function Table({
22700
22797
  minWidth: column.initialWidth,
22701
22798
  maxWidth: !column.grow ? column.initialWidth : void 0
22702
22799
  },
22800
+ "data-testid": `${name}-table-header-right-${column.id.toString()}`,
22703
22801
  className: "flex h-full flex-row items-start justify-end truncate bg-krc-table-header px-4 py-3 text-xs font-medium last:rounded-tr-krc-table",
22704
22802
  children: column.title
22705
22803
  },
@@ -22714,6 +22812,7 @@ function Table({
22714
22812
  Row,
22715
22813
  {
22716
22814
  index: i,
22815
+ name,
22717
22816
  entry,
22718
22817
  onDragRow,
22719
22818
  onDropRow,
@@ -22732,62 +22831,73 @@ function Table({
22732
22831
  i
22733
22832
  );
22734
22833
  }) }) : /* @__PURE__ */ jsx(Fragment, { children: data.map((entry, i) => {
22735
- return /* @__PURE__ */ jsxs("div", { className: rowClasses, onClick: () => onRowClick(entry), onDoubleClick: () => onRowDoubleClick(entry), children: [
22736
- !!currentColumnsLeft.length && /* @__PURE__ */ jsx("div", { className: "sticky left-0 flex flex-row border-r", children: currentColumnsLeft.map((column) => {
22737
- return /* @__PURE__ */ jsx(
22738
- "div",
22739
- {
22740
- style: {
22741
- minWidth: column.initialWidth,
22742
- maxWidth: !column.grow ? column.initialWidth : void 0
22743
- },
22744
- className: [rowLeftWrapperClasses, column.grow ? "grow" : ""].join(" "),
22745
- title: entry[column.id] || "",
22746
- children: cellRenderer?.[column.id]?.(entry) || /* @__PURE__ */ jsx("div", { className: "h-14 truncate p-4 text-sm", children: entry[column.id] || "-" })
22747
- },
22748
- column.id.toString()
22749
- );
22750
- }) }),
22751
- currentColumnsCenter.map((column) => {
22752
- return /* @__PURE__ */ jsx(
22753
- "div",
22754
- {
22755
- style: {
22756
- minWidth: column.initialWidth,
22757
- maxWidth: !column.grow ? column.initialWidth : void 0
22758
- },
22759
- className: [rowCenterWrapperClasses, column.grow ? "grow" : ""].join(" "),
22760
- title: entry[column.id] ? entry[column.id].toString() : "",
22761
- children: cellRenderer?.[column.id]?.(entry) || /* @__PURE__ */ jsx("div", { className: "h-14 truncate p-4 text-sm", children: entry[column.id] || "-" })
22762
- },
22763
- column.id.toString()
22764
- );
22765
- }),
22766
- !!currentColumnsRight.length && /* @__PURE__ */ jsx("div", { className: "sticky right-0 flex flex-row border-l", children: currentColumnsRight.map((column) => {
22767
- return /* @__PURE__ */ jsx(
22768
- "div",
22769
- {
22770
- style: {
22771
- minWidth: column.initialWidth,
22772
- maxWidth: !column.grow ? column.initialWidth : void 0
22773
- },
22774
- className: [rowRightWrapperClasses, column.grow ? "grow" : ""].join(" "),
22775
- title: entry[column.id] || "",
22776
- children: cellRenderer?.[column.id]?.(entry) || /* @__PURE__ */ jsx("div", { className: "h-14 truncate p-4 text-sm", children: entry[column.id] || "-" })
22777
- },
22778
- column.id.toString()
22779
- );
22780
- }) }),
22781
- /* @__PURE__ */ jsx(
22782
- "div",
22783
- {
22784
- style: { width: `${(header.current?.scrollWidth || 0) - 1}px` },
22785
- className: "absolute bottom-0 left-0 right-0 h-px bg-krc-table-header"
22786
- }
22787
- )
22788
- ] }, i);
22834
+ return /* @__PURE__ */ jsxs(
22835
+ "div",
22836
+ {
22837
+ "data-testid": `${name}-table-row`,
22838
+ "data-foo": "bar",
22839
+ className: rowClasses,
22840
+ onClick: () => onRowClick(entry),
22841
+ onDoubleClick: () => onRowDoubleClick(entry),
22842
+ children: [
22843
+ !!currentColumnsLeft.length && /* @__PURE__ */ jsx("div", { className: "sticky left-0 flex flex-row border-r", children: currentColumnsLeft.map((column) => {
22844
+ return /* @__PURE__ */ jsx(
22845
+ "div",
22846
+ {
22847
+ style: {
22848
+ minWidth: column.initialWidth,
22849
+ maxWidth: !column.grow ? column.initialWidth : void 0
22850
+ },
22851
+ className: [rowLeftWrapperClasses, column.grow ? "grow" : ""].join(" "),
22852
+ title: entry[column.id] || "",
22853
+ children: cellRenderer?.[column.id]?.(entry) || /* @__PURE__ */ jsx("div", { "data-testid": `${name}-table-row-left-${column.id.toString()}`, className: "h-14 truncate p-4 text-sm", children: entry[column.id] || "-" })
22854
+ },
22855
+ column.id.toString()
22856
+ );
22857
+ }) }),
22858
+ currentColumnsCenter.map((column) => {
22859
+ return /* @__PURE__ */ jsx(
22860
+ "div",
22861
+ {
22862
+ style: {
22863
+ minWidth: column.initialWidth,
22864
+ maxWidth: !column.grow ? column.initialWidth : void 0
22865
+ },
22866
+ className: [rowCenterWrapperClasses, column.grow ? "grow" : ""].join(" "),
22867
+ title: entry[column.id] ? entry[column.id].toString() : "",
22868
+ children: cellRenderer?.[column.id]?.(entry) || /* @__PURE__ */ jsx("div", { "data-testid": `${name}-table-row-center-${column.id.toString()}}`, className: "h-14 truncate p-4 text-sm", children: entry[column.id] || "-" })
22869
+ },
22870
+ column.id.toString()
22871
+ );
22872
+ }),
22873
+ !!currentColumnsRight.length && /* @__PURE__ */ jsx("div", { className: "sticky right-0 flex flex-row border-l", children: currentColumnsRight.map((column) => {
22874
+ return /* @__PURE__ */ jsx(
22875
+ "div",
22876
+ {
22877
+ style: {
22878
+ minWidth: column.initialWidth,
22879
+ maxWidth: !column.grow ? column.initialWidth : void 0
22880
+ },
22881
+ className: [rowRightWrapperClasses, column.grow ? "grow" : ""].join(" "),
22882
+ title: entry[column.id] || "",
22883
+ children: cellRenderer?.[column.id]?.(entry) || /* @__PURE__ */ jsx("div", { "data-testid": `${name}-table-row-right-${column.id.toString()}`, className: "h-14 truncate p-4 text-sm", children: entry[column.id] || "-" })
22884
+ },
22885
+ column.id.toString()
22886
+ );
22887
+ }) }),
22888
+ /* @__PURE__ */ jsx(
22889
+ "div",
22890
+ {
22891
+ style: { width: `${(header.current?.scrollWidth || 0) - 1}px` },
22892
+ className: "absolute bottom-0 left-0 right-0 h-px bg-krc-table-header"
22893
+ }
22894
+ )
22895
+ ]
22896
+ },
22897
+ i
22898
+ );
22789
22899
  }) }),
22790
- data.length === 0 && /* @__PURE__ */ jsx("div", { className: noDataClasses, children: noEntryLabel })
22900
+ data.length === 0 && /* @__PURE__ */ jsx("div", { "data-testid": name + "-table-no-data", className: noDataClasses, children: noEntryLabel })
22791
22901
  ]
22792
22902
  }
22793
22903
  ),
@@ -22796,6 +22906,7 @@ function Table({
22796
22906
  {
22797
22907
  showButtons: !isInfinite,
22798
22908
  xToY,
22909
+ dataTestId: `${name}-table-pagination`,
22799
22910
  currentTotal: totalRows,
22800
22911
  currentLoaded: data.length,
22801
22912
  currentStart,
@@ -22827,7 +22938,8 @@ function Row({
22827
22938
  rowClasses,
22828
22939
  rowLeftWrapperClasses,
22829
22940
  rowCenterWrapperClasses,
22830
- rowRightWrapperClasses
22941
+ rowRightWrapperClasses,
22942
+ name
22831
22943
  }) {
22832
22944
  const dragRef = useRef(null);
22833
22945
  const previewRef = useRef(null);
@@ -22893,6 +23005,7 @@ function Row({
22893
23005
  ref: previewRef,
22894
23006
  style: { opacity },
22895
23007
  "data-handler-id": handlerId,
23008
+ "data-testid": `${name}-table-row`,
22896
23009
  children: [
22897
23010
  !!currentColumnsLeft.length && /* @__PURE__ */ jsx("div", { className: "sticky left-0 flex flex-row border-r", children: currentColumnsLeft.map((column) => {
22898
23011
  return /* @__PURE__ */ jsx(
@@ -23053,6 +23166,8 @@ function Button({
23053
23166
  iconLeftName,
23054
23167
  iconRightPath,
23055
23168
  iconRightName,
23169
+ name,
23170
+ dataTestId,
23056
23171
  onClick
23057
23172
  }) {
23058
23173
  const classes = [classesBase, className];
@@ -23079,19 +23194,30 @@ function Button({
23079
23194
  loadingClasses.push(loadingClassesAlert);
23080
23195
  break;
23081
23196
  }
23082
- return /* @__PURE__ */ jsxs("button", { onClick: async (e) => await onClick?.(e), className: classes.join(" "), disabled, type, children: [
23083
- (iconLeftPath || iconLeftName) && /* @__PURE__ */ jsx(Icon, { className: iconLeftClasses, name: iconLeftName, path: iconLeftPath }),
23084
- label && /* @__PURE__ */ jsx("span", { children: label }),
23085
- (iconRightPath || iconRightName) && /* @__PURE__ */ jsx(Icon, { className: iconRightClasses, name: iconRightName, path: iconRightPath }),
23086
- loading && /* @__PURE__ */ jsx(LoadingIndicator, { className: loadingClasses.join(" ") })
23087
- ] });
23197
+ return /* @__PURE__ */ jsxs(
23198
+ "button",
23199
+ {
23200
+ "data-testid": dataTestId,
23201
+ name,
23202
+ onClick: async (e) => await onClick?.(e),
23203
+ className: classes.join(" "),
23204
+ disabled,
23205
+ type,
23206
+ children: [
23207
+ (iconLeftPath || iconLeftName) && /* @__PURE__ */ jsx(Icon, { className: iconLeftClasses, name: iconLeftName, path: iconLeftPath }),
23208
+ label && /* @__PURE__ */ jsx("span", { children: label }),
23209
+ (iconRightPath || iconRightName) && /* @__PURE__ */ jsx(Icon, { className: iconRightClasses, name: iconRightName, path: iconRightPath }),
23210
+ loading && /* @__PURE__ */ jsx(LoadingIndicator, { className: loadingClasses.join(" ") })
23211
+ ]
23212
+ }
23213
+ );
23088
23214
  }
23089
23215
 
23090
23216
  function Modal({
23091
23217
  backdropClasses = "fixed inset-0 z-10 flex items-center justify-center bg-black/50",
23092
23218
  contentClasses = "rounded-krc-modal bg-white shadow-lg flex flex-col",
23093
- headerWrapperClasses = "w-full h-16 px-6 bg-primary-900 rounded-t justify-start items-center flex",
23094
- footerWrapperClasses = "w-full pb-4 px-6 bg-white rounded-b justify-between items-center flex flex-row",
23219
+ headerWrapperClasses = "w-full h-16 px-6 bg-primary-900 rounded-t-krc-modal justify-start items-center flex",
23220
+ footerWrapperClasses = "w-full pb-4 px-6 bg-white rounded-b-krc-modal justify-between items-center flex flex-row",
23095
23221
  footerLeftClasses = "flex flex-row gap-4 justify-start",
23096
23222
  footerRightClasses = "grow flex flex-row gap-4 justify-end",
23097
23223
  titleClasses = "text-white text-base font-semibold",
@@ -23101,12 +23227,13 @@ function Modal({
23101
23227
  headerContent,
23102
23228
  footerContent,
23103
23229
  title,
23230
+ dataTestId,
23104
23231
  footerActions,
23105
23232
  hasCloseIcon,
23106
23233
  onClose
23107
23234
  }) {
23108
23235
  return /* @__PURE__ */ jsx(Fragment, { children: reactDomExports.createPortal(
23109
- /* @__PURE__ */ jsx("div", { className: backdropClasses, onMouseDown: onClose, role: "presentation", children: /* @__PURE__ */ jsxs(
23236
+ /* @__PURE__ */ jsx("div", { className: backdropClasses, onMouseDown: onClose, role: "presentation", "data-testid": dataTestId, children: /* @__PURE__ */ jsxs(
23110
23237
  "div",
23111
23238
  {
23112
23239
  role: "presentation",
@@ -23151,6 +23278,7 @@ function Tabs({
23151
23278
  showCounts = true,
23152
23279
  tabs,
23153
23280
  active,
23281
+ dataTestId = "",
23154
23282
  onClick
23155
23283
  }) {
23156
23284
  function equalTabs(tab1, tab2) {
@@ -23162,6 +23290,7 @@ function Tabs({
23162
23290
  return /* @__PURE__ */ jsx("div", { className: wrapperClasses, children: tabs.map((tab, i) => /* @__PURE__ */ jsxs(
23163
23291
  "div",
23164
23292
  {
23293
+ "data-testid": dataTestId + i,
23165
23294
  onClick: () => {
23166
23295
  onClick(tab.id);
23167
23296
  },