smartsell-ui-kit 0.1.16 → 0.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -21,7 +21,7 @@ function styleInject(css, { insertAt } = {}) {
21
21
  }
22
22
 
23
23
  // src/styles/ui-kit.css
24
- styleInject(':root {\n --ui-kit-font-family:\n "Lato",\n system-ui,\n sans-serif;\n}\n.ui-kit-root {\n border-width: 0;\n border-style: solid;\n box-shadow: none;\n font-family: var(--ui-kit-font-family);\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.ui-kit-root:where(button, input, textarea, select),\n.ui-kit-root :where(button, input, textarea, select, option) {\n border-width: 0;\n border-style: solid;\n box-shadow: none;\n font-family: var(--ui-kit-font-family);\n}\n.ui-kit-sr-only {\n position: absolute;\n height: 1px;\n width: 1px;\n overflow: hidden;\n white-space: nowrap;\n border-width: 0px;\n padding: 0px;\n clip: rect(0, 0, 0, 0);\n margin: -1px;\n}\n.ui-kit-floating-placeholder {\n color: var(--theme-textLight);\n font-size: var(--floating-label-font-size);\n font-weight: 400;\n line-height: var(--floating-label-line-height);\n top: var(--floating-label-resting-top);\n transform: var(--floating-label-resting-transform);\n}\n.group:has(input:not(:-moz-placeholder)) > .ui-kit-floating-placeholder,\n.group:has(textarea:not(:-moz-placeholder)) > .ui-kit-floating-placeholder {\n color: var(--theme-text);\n font-size: var(--floating-label-active-font-size);\n font-weight: 500;\n left: 12px !important;\n line-height: var(--floating-label-active-line-height);\n top: 0;\n transform: translateY(-50%) scale(0.85);\n}\n.group:focus-within > .ui-kit-floating-placeholder,\n.group:has(input:not(:placeholder-shown)) > .ui-kit-floating-placeholder,\n.group:has(textarea:not(:placeholder-shown)) > .ui-kit-floating-placeholder,\n.group:has([data-has-value=true]) > .ui-kit-floating-placeholder,\n.ui-kit-floating-placeholder--active {\n color: var(--theme-text);\n font-size: var(--floating-label-active-font-size);\n font-weight: 500;\n left: 12px !important;\n line-height: var(--floating-label-active-line-height);\n top: 0;\n transform: translateY(-50%) scale(0.85);\n}\n:where(.ui-kit-root),\n:where(.ui-kit-root) :where(*),\n:where(.ui-kit-root) :where(*)::before,\n:where(.ui-kit-root) :where(*)::after {\n box-sizing: border-box;\n border-width: 0;\n border-style: solid;\n border-color: #e5e7eb;\n}\n:where(.ui-kit-root) :where(*)::before,\n:where(.ui-kit-root) :where(*)::after {\n --tw-content: "";\n}\n:where(.ui-kit-root) :where(hr) {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n}\n:where(.ui-kit-root) :where(abbr:where([title])) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n:where(.ui-kit-root) :where(h1, h2, h3, h4, h5, h6) {\n font-size: inherit;\n font-weight: inherit;\n}\n:where(.ui-kit-root) :where(a) {\n color: inherit;\n text-decoration: inherit;\n}\n:where(.ui-kit-root) :where(b, strong) {\n font-weight: bolder;\n}\n:where(.ui-kit-root) :where(code, kbd, samp, pre) {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n "Liberation Mono",\n "Courier New",\n monospace;\n font-size: 1em;\n}\n:where(.ui-kit-root) :where(small) {\n font-size: 80%;\n}\n:where(.ui-kit-root) :where(sub, sup) {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n:where(.ui-kit-root) :where(sub) {\n bottom: -0.25em;\n}\n:where(.ui-kit-root) :where(sup) {\n top: -0.5em;\n}\n:where(.ui-kit-root) :where(table) {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\n:where(.ui-kit-root):where(button, input, optgroup, select, textarea),\n:where(.ui-kit-root) :where(button, input, optgroup, select, textarea) {\n font-family: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\n:where(.ui-kit-root):where(button, select),\n:where(.ui-kit-root) :where(button, select) {\n text-transform: none;\n}\n:where(.ui-kit-root):where(button),\n:where(.ui-kit-root) :where(button),\n:where(.ui-kit-root) :where(input:where([type=button], [type=reset], [type=submit])) {\n -webkit-appearance: button;\n background-color: transparent;\n background-image: none;\n}\n:where(.ui-kit-root) :where(progress) {\n vertical-align: baseline;\n}\n:where(.ui-kit-root) :where(input)::-webkit-inner-spin-button,\n:where(.ui-kit-root) :where(input)::-webkit-outer-spin-button {\n height: auto;\n}\n:where(.ui-kit-root) :where([type=search]) {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n:where(.ui-kit-root) :where(input)::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n:where(.ui-kit-root) :where(summary) {\n display: list-item;\n}\n:where(.ui-kit-root) :where(blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre) {\n margin: 0;\n}\n:where(.ui-kit-root) :where(fieldset) {\n margin: 0;\n padding: 0;\n}\n:where(.ui-kit-root) :where(legend) {\n padding: 0;\n}\n:where(.ui-kit-root) :where(ol, ul, menu) {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n:where(.ui-kit-root) :where(dialog) {\n padding: 0;\n}\n:where(.ui-kit-root) :where(option) {\n margin: 0;\n padding: 0;\n}\n:where(.ui-kit-root) :where(textarea) {\n resize: vertical;\n}\n:where(.ui-kit-root):where(input)::-moz-placeholder,\n:where(.ui-kit-root):where(textarea)::-moz-placeholder,\n:where(.ui-kit-root) :where(input)::-moz-placeholder,\n:where(.ui-kit-root) :where(textarea)::-moz-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n:where(.ui-kit-root):where(input)::placeholder,\n:where(.ui-kit-root):where(textarea)::placeholder,\n:where(.ui-kit-root) :where(input)::placeholder,\n:where(.ui-kit-root) :where(textarea)::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n:where(.ui-kit-root):where(button, [role=button]),\n:where(.ui-kit-root) :where(button, [role=button]) {\n cursor: pointer;\n}\n:where(.ui-kit-root):where(:disabled),\n:where(.ui-kit-root) :where(:disabled) {\n cursor: default;\n}\n:where(.ui-kit-root) :where(img, svg, video, canvas, audio, iframe, embed, object) {\n display: block;\n vertical-align: middle;\n}\n:where(.ui-kit-root) :where(img, video) {\n max-width: 100%;\n height: auto;\n}\n:where(.ui-kit-root) :where([hidden]) {\n display: none;\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.pointer-events-auto {\n pointer-events: auto;\n}\n.visible {\n visibility: visible;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.sticky {\n position: sticky;\n}\n.inset-0 {\n inset: 0px;\n}\n.inset-y-0 {\n top: 0px;\n bottom: 0px;\n}\n.left-0 {\n left: 0px;\n}\n.left-\\[var\\(--label-left-base\\,12px\\)\\] {\n left: var(--label-left-base,12px);\n}\n.top-1\\/2 {\n top: 50%;\n}\n.z-50 {\n z-index: 50;\n}\n.z-\\[70\\] {\n z-index: 70;\n}\n.z-\\[99999\\] {\n z-index: 99999;\n}\n.col-span-1 {\n grid-column: span 1 / span 1;\n}\n.col-span-2 {\n grid-column: span 2 / span 2;\n}\n.m-0 {\n margin: 0px;\n}\n.-mt-2 {\n margin-top: -0.5rem;\n}\n.mb-\\[18px\\] {\n margin-bottom: 18px;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.ml-4 {\n margin-left: 1rem;\n}\n.ml-auto {\n margin-left: auto;\n}\n.mt-0 {\n margin-top: 0px;\n}\n.mt-1 {\n margin-top: 0.25rem;\n}\n.mt-px {\n margin-top: 1px;\n}\n.box-border {\n box-sizing: border-box;\n}\n.block {\n display: block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.inline-flex {\n display: inline-flex;\n}\n.table {\n display: table;\n}\n.grid {\n display: grid;\n}\n.hidden {\n display: none;\n}\n.h-14 {\n height: 3.5rem;\n}\n.h-2 {\n height: 0.5rem;\n}\n.h-5 {\n height: 1.25rem;\n}\n.h-\\[30px\\] {\n height: 30px;\n}\n.h-\\[34px\\] {\n height: 34px;\n}\n.h-\\[52px\\] {\n height: 52px;\n}\n.h-full {\n height: 100%;\n}\n.max-h-\\[280px\\] {\n max-height: 280px;\n}\n.min-h-0 {\n min-height: 0px;\n}\n.min-h-20 {\n min-height: 5rem;\n}\n.min-h-\\[220px\\] {\n min-height: 220px;\n}\n.w-14 {\n width: 3.5rem;\n}\n.w-2 {\n width: 0.5rem;\n}\n.w-5 {\n width: 1.25rem;\n}\n.w-\\[25px\\] {\n width: 25px;\n}\n.w-\\[30px\\] {\n width: 30px;\n}\n.w-\\[52px\\] {\n width: 52px;\n}\n.w-\\[72px\\] {\n width: 72px;\n}\n.w-auto {\n width: auto;\n}\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n}\n.w-full {\n width: 100%;\n}\n.w-max {\n width: -moz-max-content;\n width: max-content;\n}\n.min-w-0 {\n min-width: 0px;\n}\n.min-w-full {\n min-width: 100%;\n}\n.min-w-max {\n min-width: -moz-max-content;\n min-width: max-content;\n}\n.max-w-\\[360px\\] {\n max-width: 360px;\n}\n.max-w-\\[calc\\(100\\%-24px\\)\\] {\n max-width: calc(100% - 24px);\n}\n.max-w-fit {\n max-width: -moz-fit-content;\n max-width: fit-content;\n}\n.max-w-full {\n max-width: 100%;\n}\n.max-w-none {\n max-width: none;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.flex-\\[0_1_45\\%\\] {\n flex: 0 1 45%;\n}\n.flex-\\[1_1_260px\\] {\n flex: 1 1 260px;\n}\n.flex-none {\n flex: none;\n}\n.shrink-0 {\n flex-shrink: 0;\n}\n.border-separate {\n border-collapse: separate;\n}\n.border-spacing-0 {\n --tw-border-spacing-x: 0px;\n --tw-border-spacing-y: 0px;\n border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);\n}\n.origin-\\[left_center\\] {\n transform-origin: left center;\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.cursor-text {\n cursor: text;\n}\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.resize-y {\n resize: vertical;\n}\n.resize {\n resize: both;\n}\n.appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n.grid-cols-\\[7rem_minmax\\(0\\,1fr\\)\\] {\n grid-template-columns: 7rem minmax(0, 1fr);\n}\n.grid-cols-\\[minmax\\(0\\,1fr\\)\\] {\n grid-template-columns: minmax(0, 1fr);\n}\n.grid-cols-\\[repeat\\(2\\,minmax\\(0\\,1fr\\)\\)\\] {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.flex-nowrap {\n flex-wrap: nowrap;\n}\n.items-start {\n align-items: flex-start;\n}\n.items-center {\n align-items: center;\n}\n.justify-start {\n justify-content: flex-start;\n}\n.justify-end {\n justify-content: flex-end;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.gap-0 {\n gap: 0px;\n}\n.gap-1 {\n gap: 0.25rem;\n}\n.gap-1\\.5 {\n gap: 0.375rem;\n}\n.gap-2 {\n gap: 0.5rem;\n}\n.gap-2\\.5 {\n gap: 0.625rem;\n}\n.gap-3 {\n gap: 0.75rem;\n}\n.gap-3\\.5 {\n gap: 0.875rem;\n}\n.gap-4 {\n gap: 1rem;\n}\n.self-stretch {\n align-self: stretch;\n}\n.overflow-auto {\n overflow: auto;\n}\n.overflow-hidden {\n overflow: hidden;\n}\n.overflow-x-auto {\n overflow-x: auto;\n}\n.overflow-y-auto {\n overflow-y: auto;\n}\n.overflow-x-hidden {\n overflow-x: hidden;\n}\n.overflow-y-hidden {\n overflow-y: hidden;\n}\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.text-ellipsis {\n text-overflow: ellipsis;\n}\n.whitespace-nowrap {\n white-space: nowrap;\n}\n.break-words {\n overflow-wrap: break-word;\n}\n.rounded-2xl {\n border-radius: 1rem;\n}\n.rounded-\\[20px\\] {\n border-radius: 20px;\n}\n.rounded-\\[24px\\] {\n border-radius: 24px;\n}\n.rounded-\\[28px\\] {\n border-radius: 28px;\n}\n.rounded-\\[30px\\] {\n border-radius: 30px;\n}\n.rounded-\\[var\\(--ui-radius\\,12px\\)\\] {\n border-radius: var(--ui-radius,12px);\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-none {\n border-radius: 0px;\n}\n.rounded-xl {\n border-radius: 0.75rem;\n}\n.rounded-tl-\\[16px\\] {\n border-top-left-radius: 16px;\n}\n.rounded-tr-\\[16px\\] {\n border-top-right-radius: 16px;\n}\n.border {\n border-width: 1px;\n}\n.border-0 {\n border-width: 0px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-\\[3px\\] {\n border-width: 3px;\n}\n.border-b {\n border-bottom-width: 1px;\n}\n.border-solid {\n border-style: solid;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-\\[var\\(--theme-background\\)\\] {\n border-color: var(--theme-background);\n}\n.border-\\[var\\(--theme-negative\\)\\] {\n border-color: var(--theme-negative);\n}\n.border-\\[var\\(--theme-primary\\)\\] {\n border-color: var(--theme-primary);\n}\n.border-\\[var\\(--theme-textLight\\)\\] {\n border-color: var(--theme-textLight);\n}\n.border-transparent {\n border-color: transparent;\n}\n.bg-\\[color-mix\\(in_srgb\\,var\\(--ui-kit-accent\\)_24\\%\\,transparent\\)\\] {\n background-color: color-mix(in srgb, var(--ui-kit-accent) 24%, transparent);\n}\n.bg-\\[var\\(--theme-background\\)\\] {\n background-color: var(--theme-background);\n}\n.bg-\\[var\\(--theme-primary\\)\\] {\n background-color: var(--theme-primary);\n}\n.bg-\\[var\\(--theme-surface\\)\\] {\n background-color: var(--theme-surface);\n}\n.bg-\\[var\\(--ui-kit-accent\\)\\] {\n background-color: var(--ui-kit-accent);\n}\n.bg-transparent {\n background-color: transparent;\n}\n.p-0 {\n padding: 0px;\n}\n.p-0\\.5 {\n padding: 0.125rem;\n}\n.p-2 {\n padding: 0.5rem;\n}\n.p-2\\.5 {\n padding: 0.625rem;\n}\n.p-4 {\n padding: 1rem;\n}\n.p-6 {\n padding: 1.5rem;\n}\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n.px-1\\.5 {\n padding-left: 0.375rem;\n padding-right: 0.375rem;\n}\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-3\\.5 {\n padding-left: 0.875rem;\n padding-right: 0.875rem;\n}\n.px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n.px-\\[11px\\] {\n padding-left: 11px;\n padding-right: 11px;\n}\n.px-\\[13px\\] {\n padding-left: 13px;\n padding-right: 13px;\n}\n.py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n.py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n.py-\\[10px\\] {\n padding-top: 10px;\n padding-bottom: 10px;\n}\n.py-\\[14px\\] {\n padding-top: 14px;\n padding-bottom: 14px;\n}\n.py-\\[18px\\] {\n padding-top: 18px;\n padding-bottom: 18px;\n}\n.py-\\[9px\\] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n.pb-0\\.5 {\n padding-bottom: 0.125rem;\n}\n.pb-1 {\n padding-bottom: 0.25rem;\n}\n.pb-3 {\n padding-bottom: 0.75rem;\n}\n.pb-4 {\n padding-bottom: 1rem;\n}\n.pb-\\[10px\\] {\n padding-bottom: 10px;\n}\n.pl-5 {\n padding-left: 1.25rem;\n}\n.pl-6 {\n padding-left: 1.5rem;\n}\n.pr-6 {\n padding-right: 1.5rem;\n}\n.pt-1 {\n padding-top: 0.25rem;\n}\n.pt-1\\.5 {\n padding-top: 0.375rem;\n}\n.pt-2\\.5 {\n padding-top: 0.625rem;\n}\n.pt-3 {\n padding-top: 0.75rem;\n}\n.pt-\\[18px\\] {\n padding-top: 18px;\n}\n.text-left {\n text-align: left;\n}\n.text-center {\n text-align: center;\n}\n.text-right {\n text-align: right;\n}\n.align-middle {\n vertical-align: middle;\n}\n.font-sans {\n font-family:\n ui-sans-serif,\n system-ui,\n sans-serif,\n "Apple Color Emoji",\n "Segoe UI Emoji",\n "Segoe UI Symbol",\n "Noto Color Emoji";\n}\n.text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.text-\\[11px\\] {\n font-size: 11px;\n}\n.text-\\[12px\\] {\n font-size: 12px;\n}\n.text-\\[13px\\] {\n font-size: 13px;\n}\n.text-\\[15px\\] {\n font-size: 15px;\n}\n.text-\\[18px\\] {\n font-size: 18px;\n}\n.text-\\[20px\\] {\n font-size: 20px;\n}\n.text-\\[24px\\] {\n font-size: 24px;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-extrabold {\n font-weight: 800;\n}\n.font-medium {\n font-weight: 500;\n}\n.font-normal {\n font-weight: 400;\n}\n.font-semibold {\n font-weight: 600;\n}\n.uppercase {\n text-transform: uppercase;\n}\n.leading-4 {\n line-height: 1rem;\n}\n.leading-5 {\n line-height: 1.25rem;\n}\n.leading-\\[1\\.15\\] {\n line-height: 1.15;\n}\n.leading-\\[1\\.1\\] {\n line-height: 1.1;\n}\n.leading-\\[1\\.25\\] {\n line-height: 1.25;\n}\n.leading-\\[1\\.2\\] {\n line-height: 1.2;\n}\n.leading-\\[1\\.35\\] {\n line-height: 1.35;\n}\n.leading-\\[1\\.3\\] {\n line-height: 1.3;\n}\n.leading-\\[1\\.45\\] {\n line-height: 1.45;\n}\n.leading-\\[1\\.4\\] {\n line-height: 1.4;\n}\n.leading-\\[18px\\] {\n line-height: 18px;\n}\n.leading-none {\n line-height: 1;\n}\n.tracking-\\[0\\.01em\\] {\n letter-spacing: 0.01em;\n}\n.tracking-\\[0\\.08em\\] {\n letter-spacing: 0.08em;\n}\n.tracking-\\[0\\.16em\\] {\n letter-spacing: 0.16em;\n}\n.text-\\[var\\(--theme-negative\\)\\] {\n color: var(--theme-negative);\n}\n.text-\\[var\\(--theme-onPrimary\\)\\] {\n color: var(--theme-onPrimary);\n}\n.text-\\[var\\(--theme-primary\\)\\] {\n color: var(--theme-primary);\n}\n.text-\\[var\\(--theme-secondary\\)\\] {\n color: var(--theme-secondary);\n}\n.text-\\[var\\(--theme-text\\)\\] {\n color: var(--theme-text);\n}\n.text-\\[var\\(--theme-textLight\\)\\] {\n color: var(--theme-textLight);\n}\n.text-\\[var\\(--ui-kit-accent\\)\\] {\n color: var(--ui-kit-accent);\n}\n.text-transparent {\n color: transparent;\n}\n.placeholder-\\[var\\(--theme-textLight\\)\\]::-moz-placeholder {\n color: var(--theme-textLight);\n}\n.placeholder-\\[var\\(--theme-textLight\\)\\]::placeholder {\n color: var(--theme-textLight);\n}\n.placeholder-transparent::-moz-placeholder {\n color: transparent;\n}\n.placeholder-transparent::placeholder {\n color: transparent;\n}\n.opacity-0 {\n opacity: 0;\n}\n.opacity-100 {\n opacity: 1;\n}\n.opacity-45 {\n opacity: 0.45;\n}\n.opacity-70 {\n opacity: 0.7;\n}\n.opacity-80 {\n opacity: 0.8;\n}\n.opacity-\\[0\\.38\\] {\n opacity: 0.38;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-none {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.outline {\n outline-style: solid;\n}\n.blur {\n --tw-blur: blur(8px);\n 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);\n}\n.saturate-100 {\n --tw-saturate: saturate(1);\n 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);\n}\n.saturate-\\[0\\.8\\] {\n --tw-saturate: saturate(0.8);\n 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);\n}\n.filter {\n 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);\n}\n.backdrop-blur-\\[2px\\] {\n --tw-backdrop-blur: blur(2px);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n.backdrop-blur-\\[8px\\] {\n --tw-backdrop-blur: blur(8px);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n.transition {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-\\[background-color\\,color\\] {\n transition-property: background-color, color;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-\\[border-color\\] {\n transition-property: border-color;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-\\[opacity\\,filter\\] {\n transition-property: opacity, filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-\\[transform\\,color\\] {\n transition-property: transform, color;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.duration-150 {\n transition-duration: 150ms;\n}\n.duration-300 {\n transition-duration: 300ms;\n}\n.ease-in-out {\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n.\\[overflow-wrap\\:anywhere\\] {\n overflow-wrap: anywhere;\n}\n.hover\\:border-\\[var\\(--theme-primaryDark\\)\\]:hover {\n border-color: var(--theme-primaryDark);\n}\n.hover\\:border-\\[var\\(--theme-primaryLight\\)\\]:hover {\n border-color: var(--theme-primaryLight);\n}\n.hover\\:bg-\\[var\\(--theme-primaryLight\\)\\]:hover {\n background-color: var(--theme-primaryLight);\n}\n.hover\\:text-\\[var\\(--theme-negative\\)\\]:hover {\n color: var(--theme-negative);\n}\n.hover\\:text-\\[var\\(--theme-onPrimary\\)\\]:hover {\n color: var(--theme-onPrimary);\n}\n.hover\\:text-\\[var\\(--theme-primary\\)\\]:hover {\n color: var(--theme-primary);\n}\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n.hover\\:no-underline:hover {\n text-decoration-line: none;\n}\n.active\\:border-\\[var\\(--theme-negative\\)\\]:active {\n border-color: var(--theme-negative);\n}\n.active\\:border-\\[var\\(--theme-primary\\)\\]:active {\n border-color: var(--theme-primary);\n}\n.active\\:border-transparent:active {\n border-color: transparent;\n}\n.active\\:bg-\\[var\\(--theme-negative\\)\\]:active {\n background-color: var(--theme-negative);\n}\n.active\\:bg-\\[var\\(--theme-primaryDark\\)\\]:active {\n background-color: var(--theme-primaryDark);\n}\n.active\\:text-\\[var\\(--theme-onPrimary\\)\\]:active {\n color: var(--theme-onPrimary);\n}\n.disabled\\:translate-y-0:disabled {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.disabled\\:scale-100:disabled {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n.group:has(:disabled) .group-has-\\[\\:disabled\\]\\:opacity-70 {\n opacity: 0.7;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:absolute::-webkit-calendar-picker-indicator {\n position: absolute;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:left-0::-webkit-calendar-picker-indicator {\n left: 0px;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:top-0::-webkit-calendar-picker-indicator {\n top: 0px;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:h-full::-webkit-calendar-picker-indicator {\n height: 100%;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:w-full::-webkit-calendar-picker-indicator {\n width: 100%;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:cursor-pointer::-webkit-calendar-picker-indicator {\n cursor: pointer;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:opacity-0::-webkit-calendar-picker-indicator {\n opacity: 0;\n}\n.\\[\\&\\:\\:-webkit-datetime-edit\\]\\:flex::-webkit-datetime-edit {\n display: flex;\n}\n.\\[\\&\\:\\:-webkit-datetime-edit\\]\\:h-full::-webkit-datetime-edit {\n height: 100%;\n}\n.\\[\\&\\:\\:-webkit-datetime-edit\\]\\:items-center::-webkit-datetime-edit {\n align-items: center;\n}\n');
24
+ styleInject(':root {\n --ui-kit-font-family:\n "Lato",\n system-ui,\n sans-serif;\n}\n.ui-kit-root {\n border-width: 0;\n border-style: solid;\n box-shadow: none;\n font-family: var(--ui-kit-font-family);\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.ui-kit-root:where(button, input, textarea, select),\n.ui-kit-root :where(button, input, textarea, select, option) {\n border-width: 0;\n border-style: solid;\n box-shadow: none;\n font-family: var(--ui-kit-font-family);\n}\n.ui-kit-sr-only {\n position: absolute;\n height: 1px;\n width: 1px;\n overflow: hidden;\n white-space: nowrap;\n border-width: 0px;\n padding: 0px;\n clip: rect(0, 0, 0, 0);\n margin: -1px;\n}\n.ui-kit-floating-placeholder {\n color: var(--theme-textLight);\n font-size: var(--floating-label-font-size);\n font-weight: 400;\n line-height: var(--floating-label-line-height);\n top: var(--floating-label-resting-top);\n transform: var(--floating-label-resting-transform);\n}\n.group:has(input:not(:-moz-placeholder)) > .ui-kit-floating-placeholder,\n.group:has(textarea:not(:-moz-placeholder)) > .ui-kit-floating-placeholder {\n color: var(--theme-text);\n font-size: var(--floating-label-active-font-size);\n font-weight: 500;\n left: 12px !important;\n line-height: var(--floating-label-active-line-height);\n top: 0;\n transform: translateY(-50%) scale(0.85);\n}\n.group:focus-within > .ui-kit-floating-placeholder,\n.group:has(input:not(:placeholder-shown)) > .ui-kit-floating-placeholder,\n.group:has(textarea:not(:placeholder-shown)) > .ui-kit-floating-placeholder,\n.group:has([data-has-value=true]) > .ui-kit-floating-placeholder,\n.ui-kit-floating-placeholder--active {\n color: var(--theme-text);\n font-size: var(--floating-label-active-font-size);\n font-weight: 500;\n left: 12px !important;\n line-height: var(--floating-label-active-line-height);\n top: 0;\n transform: translateY(-50%) scale(0.85);\n}\n:where(.ui-kit-root),\n:where(.ui-kit-root) :where(*),\n:where(.ui-kit-root) :where(*)::before,\n:where(.ui-kit-root) :where(*)::after {\n box-sizing: border-box;\n border-width: 0;\n border-style: solid;\n border-color: #e5e7eb;\n}\n:where(.ui-kit-root) :where(*)::before,\n:where(.ui-kit-root) :where(*)::after {\n --tw-content: "";\n}\n:where(.ui-kit-root) :where(hr) {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n}\n:where(.ui-kit-root) :where(abbr:where([title])) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n:where(.ui-kit-root) :where(h1, h2, h3, h4, h5, h6) {\n font-size: inherit;\n font-weight: inherit;\n}\n:where(.ui-kit-root) :where(a) {\n color: inherit;\n text-decoration: inherit;\n}\n:where(.ui-kit-root) :where(b, strong) {\n font-weight: bolder;\n}\n:where(.ui-kit-root) :where(code, kbd, samp, pre) {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n "Liberation Mono",\n "Courier New",\n monospace;\n font-size: 1em;\n}\n:where(.ui-kit-root) :where(small) {\n font-size: 80%;\n}\n:where(.ui-kit-root) :where(sub, sup) {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n:where(.ui-kit-root) :where(sub) {\n bottom: -0.25em;\n}\n:where(.ui-kit-root) :where(sup) {\n top: -0.5em;\n}\n:where(.ui-kit-root) :where(table) {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\n:where(.ui-kit-root):where(button, input, optgroup, select, textarea),\n:where(.ui-kit-root) :where(button, input, optgroup, select, textarea) {\n font-family: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\n:where(.ui-kit-root):where(button, select),\n:where(.ui-kit-root) :where(button, select) {\n text-transform: none;\n}\n:where(.ui-kit-root):where(button),\n:where(.ui-kit-root) :where(button),\n:where(.ui-kit-root) :where(input:where([type=button], [type=reset], [type=submit])) {\n -webkit-appearance: button;\n background-color: transparent;\n background-image: none;\n}\n:where(.ui-kit-root) :where(progress) {\n vertical-align: baseline;\n}\n:where(.ui-kit-root) :where(input)::-webkit-inner-spin-button,\n:where(.ui-kit-root) :where(input)::-webkit-outer-spin-button {\n height: auto;\n}\n:where(.ui-kit-root) :where([type=search]) {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n:where(.ui-kit-root) :where(input)::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n:where(.ui-kit-root) :where(summary) {\n display: list-item;\n}\n:where(.ui-kit-root) :where(blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre) {\n margin: 0;\n}\n:where(.ui-kit-root) :where(fieldset) {\n margin: 0;\n padding: 0;\n}\n:where(.ui-kit-root) :where(legend) {\n padding: 0;\n}\n:where(.ui-kit-root) :where(ol, ul, menu) {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n:where(.ui-kit-root) :where(dialog) {\n padding: 0;\n}\n:where(.ui-kit-root) :where(option) {\n margin: 0;\n padding: 0;\n}\n:where(.ui-kit-root) :where(textarea) {\n resize: vertical;\n}\n:where(.ui-kit-root):where(input)::-moz-placeholder,\n:where(.ui-kit-root):where(textarea)::-moz-placeholder,\n:where(.ui-kit-root) :where(input)::-moz-placeholder,\n:where(.ui-kit-root) :where(textarea)::-moz-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n:where(.ui-kit-root):where(input)::placeholder,\n:where(.ui-kit-root):where(textarea)::placeholder,\n:where(.ui-kit-root) :where(input)::placeholder,\n:where(.ui-kit-root) :where(textarea)::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n:where(.ui-kit-root):where(button, [role=button]),\n:where(.ui-kit-root) :where(button, [role=button]) {\n cursor: pointer;\n}\n:where(.ui-kit-root):where(:disabled),\n:where(.ui-kit-root) :where(:disabled) {\n cursor: default;\n}\n:where(.ui-kit-root) :where(img, svg, video, canvas, audio, iframe, embed, object) {\n display: block;\n vertical-align: middle;\n}\n:where(.ui-kit-root) :where(img, video) {\n max-width: 100%;\n height: auto;\n}\n:where(.ui-kit-root) :where([hidden]) {\n display: none;\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.pointer-events-auto {\n pointer-events: auto;\n}\n.visible {\n visibility: visible;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.sticky {\n position: sticky;\n}\n.inset-0 {\n inset: 0px;\n}\n.inset-y-0 {\n top: 0px;\n bottom: 0px;\n}\n.left-0 {\n left: 0px;\n}\n.left-\\[var\\(--label-left-base\\,12px\\)\\] {\n left: var(--label-left-base,12px);\n}\n.top-1\\/2 {\n top: 50%;\n}\n.z-50 {\n z-index: 50;\n}\n.z-\\[70\\] {\n z-index: 70;\n}\n.z-\\[99999\\] {\n z-index: 99999;\n}\n.col-span-1 {\n grid-column: span 1 / span 1;\n}\n.col-span-2 {\n grid-column: span 2 / span 2;\n}\n.m-0 {\n margin: 0px;\n}\n.-mt-2 {\n margin-top: -0.5rem;\n}\n.mb-\\[18px\\] {\n margin-bottom: 18px;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.ml-4 {\n margin-left: 1rem;\n}\n.ml-auto {\n margin-left: auto;\n}\n.mt-0 {\n margin-top: 0px;\n}\n.mt-1 {\n margin-top: 0.25rem;\n}\n.mt-px {\n margin-top: 1px;\n}\n.box-border {\n box-sizing: border-box;\n}\n.block {\n display: block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.inline-flex {\n display: inline-flex;\n}\n.table {\n display: table;\n}\n.grid {\n display: grid;\n}\n.hidden {\n display: none;\n}\n.h-14 {\n height: 3.5rem;\n}\n.h-2 {\n height: 0.5rem;\n}\n.h-5 {\n height: 1.25rem;\n}\n.h-\\[30px\\] {\n height: 30px;\n}\n.h-\\[34px\\] {\n height: 34px;\n}\n.h-\\[52px\\] {\n height: 52px;\n}\n.h-full {\n height: 100%;\n}\n.max-h-\\[280px\\] {\n max-height: 280px;\n}\n.min-h-0 {\n min-height: 0px;\n}\n.min-h-20 {\n min-height: 5rem;\n}\n.min-h-\\[220px\\] {\n min-height: 220px;\n}\n.w-14 {\n width: 3.5rem;\n}\n.w-2 {\n width: 0.5rem;\n}\n.w-5 {\n width: 1.25rem;\n}\n.w-\\[25px\\] {\n width: 25px;\n}\n.w-\\[30px\\] {\n width: 30px;\n}\n.w-\\[52px\\] {\n width: 52px;\n}\n.w-\\[72px\\] {\n width: 72px;\n}\n.w-auto {\n width: auto;\n}\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n}\n.w-full {\n width: 100%;\n}\n.w-max {\n width: -moz-max-content;\n width: max-content;\n}\n.min-w-0 {\n min-width: 0px;\n}\n.min-w-full {\n min-width: 100%;\n}\n.min-w-max {\n min-width: -moz-max-content;\n min-width: max-content;\n}\n.max-w-\\[360px\\] {\n max-width: 360px;\n}\n.max-w-\\[calc\\(100\\%-24px\\)\\] {\n max-width: calc(100% - 24px);\n}\n.max-w-fit {\n max-width: -moz-fit-content;\n max-width: fit-content;\n}\n.max-w-full {\n max-width: 100%;\n}\n.max-w-none {\n max-width: none;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.flex-\\[0_1_45\\%\\] {\n flex: 0 1 45%;\n}\n.flex-\\[1_1_260px\\] {\n flex: 1 1 260px;\n}\n.flex-none {\n flex: none;\n}\n.shrink-0 {\n flex-shrink: 0;\n}\n.border-separate {\n border-collapse: separate;\n}\n.border-spacing-0 {\n --tw-border-spacing-x: 0px;\n --tw-border-spacing-y: 0px;\n border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);\n}\n.origin-\\[left_center\\] {\n transform-origin: left center;\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.cursor-text {\n cursor: text;\n}\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.resize-y {\n resize: vertical;\n}\n.resize {\n resize: both;\n}\n.appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n.grid-cols-\\[7rem_minmax\\(0\\,1fr\\)\\] {\n grid-template-columns: 7rem minmax(0, 1fr);\n}\n.grid-cols-\\[minmax\\(0\\,1fr\\)\\] {\n grid-template-columns: minmax(0, 1fr);\n}\n.grid-cols-\\[repeat\\(2\\,minmax\\(0\\,1fr\\)\\)\\] {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.flex-nowrap {\n flex-wrap: nowrap;\n}\n.items-start {\n align-items: flex-start;\n}\n.items-center {\n align-items: center;\n}\n.justify-start {\n justify-content: flex-start;\n}\n.justify-end {\n justify-content: flex-end;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.gap-0 {\n gap: 0px;\n}\n.gap-1 {\n gap: 0.25rem;\n}\n.gap-1\\.5 {\n gap: 0.375rem;\n}\n.gap-2 {\n gap: 0.5rem;\n}\n.gap-2\\.5 {\n gap: 0.625rem;\n}\n.gap-3 {\n gap: 0.75rem;\n}\n.gap-3\\.5 {\n gap: 0.875rem;\n}\n.gap-4 {\n gap: 1rem;\n}\n.self-stretch {\n align-self: stretch;\n}\n.overflow-auto {\n overflow: auto;\n}\n.overflow-hidden {\n overflow: hidden;\n}\n.overflow-x-auto {\n overflow-x: auto;\n}\n.overflow-y-auto {\n overflow-y: auto;\n}\n.overflow-x-hidden {\n overflow-x: hidden;\n}\n.overflow-y-hidden {\n overflow-y: hidden;\n}\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.text-ellipsis {\n text-overflow: ellipsis;\n}\n.whitespace-nowrap {\n white-space: nowrap;\n}\n.break-words {\n overflow-wrap: break-word;\n}\n.rounded-2xl {\n border-radius: 1rem;\n}\n.rounded-\\[20px\\] {\n border-radius: 20px;\n}\n.rounded-\\[24px\\] {\n border-radius: 24px;\n}\n.rounded-\\[28px\\] {\n border-radius: 28px;\n}\n.rounded-\\[30px\\] {\n border-radius: 30px;\n}\n.rounded-\\[var\\(--ui-radius\\,12px\\)\\] {\n border-radius: var(--ui-radius,12px);\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-none {\n border-radius: 0px;\n}\n.rounded-xl {\n border-radius: 0.75rem;\n}\n.rounded-tl-\\[16px\\] {\n border-top-left-radius: 16px;\n}\n.rounded-tr-\\[16px\\] {\n border-top-right-radius: 16px;\n}\n.border {\n border-width: 1px;\n}\n.border-0 {\n border-width: 0px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-\\[3px\\] {\n border-width: 3px;\n}\n.border-b {\n border-bottom-width: 1px;\n}\n.border-solid {\n border-style: solid;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-\\[var\\(--theme-background\\)\\] {\n border-color: var(--theme-background);\n}\n.border-\\[var\\(--theme-negative\\)\\] {\n border-color: var(--theme-negative);\n}\n.border-\\[var\\(--theme-primary\\)\\] {\n border-color: var(--theme-primary);\n}\n.border-\\[var\\(--theme-textLight\\)\\] {\n border-color: var(--theme-textLight);\n}\n.border-transparent {\n border-color: transparent;\n}\n.bg-\\[color-mix\\(in_srgb\\,var\\(--ui-kit-accent\\)_24\\%\\,transparent\\)\\] {\n background-color: color-mix(in srgb, var(--ui-kit-accent) 24%, transparent);\n}\n.bg-\\[var\\(--theme-background\\)\\] {\n background-color: var(--theme-background);\n}\n.bg-\\[var\\(--theme-primary\\)\\] {\n background-color: var(--theme-primary);\n}\n.bg-\\[var\\(--theme-surface\\)\\] {\n background-color: var(--theme-surface);\n}\n.bg-\\[var\\(--ui-kit-accent\\)\\] {\n background-color: var(--ui-kit-accent);\n}\n.bg-transparent {\n background-color: transparent;\n}\n.p-0 {\n padding: 0px;\n}\n.p-0\\.5 {\n padding: 0.125rem;\n}\n.p-2 {\n padding: 0.5rem;\n}\n.p-2\\.5 {\n padding: 0.625rem;\n}\n.p-4 {\n padding: 1rem;\n}\n.p-6 {\n padding: 1.5rem;\n}\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n.px-1\\.5 {\n padding-left: 0.375rem;\n padding-right: 0.375rem;\n}\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-3\\.5 {\n padding-left: 0.875rem;\n padding-right: 0.875rem;\n}\n.px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n.px-\\[11px\\] {\n padding-left: 11px;\n padding-right: 11px;\n}\n.px-\\[13px\\] {\n padding-left: 13px;\n padding-right: 13px;\n}\n.py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n.py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n.py-\\[10px\\] {\n padding-top: 10px;\n padding-bottom: 10px;\n}\n.py-\\[14px\\] {\n padding-top: 14px;\n padding-bottom: 14px;\n}\n.py-\\[18px\\] {\n padding-top: 18px;\n padding-bottom: 18px;\n}\n.py-\\[9px\\] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n.pb-0\\.5 {\n padding-bottom: 0.125rem;\n}\n.pb-1 {\n padding-bottom: 0.25rem;\n}\n.pb-3 {\n padding-bottom: 0.75rem;\n}\n.pb-4 {\n padding-bottom: 1rem;\n}\n.pb-\\[10px\\] {\n padding-bottom: 10px;\n}\n.pl-5 {\n padding-left: 1.25rem;\n}\n.pl-6 {\n padding-left: 1.5rem;\n}\n.pr-6 {\n padding-right: 1.5rem;\n}\n.pt-1 {\n padding-top: 0.25rem;\n}\n.pt-1\\.5 {\n padding-top: 0.375rem;\n}\n.pt-2\\.5 {\n padding-top: 0.625rem;\n}\n.pt-3 {\n padding-top: 0.75rem;\n}\n.pt-\\[18px\\] {\n padding-top: 18px;\n}\n.text-left {\n text-align: left;\n}\n.text-center {\n text-align: center;\n}\n.text-right {\n text-align: right;\n}\n.align-middle {\n vertical-align: middle;\n}\n.font-sans {\n font-family:\n ui-sans-serif,\n system-ui,\n sans-serif,\n "Apple Color Emoji",\n "Segoe UI Emoji",\n "Segoe UI Symbol",\n "Noto Color Emoji";\n}\n.text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.text-\\[11px\\] {\n font-size: 11px;\n}\n.text-\\[12px\\] {\n font-size: 12px;\n}\n.text-\\[13px\\] {\n font-size: 13px;\n}\n.text-\\[15px\\] {\n font-size: 15px;\n}\n.text-\\[18px\\] {\n font-size: 18px;\n}\n.text-\\[24px\\] {\n font-size: 24px;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-extrabold {\n font-weight: 800;\n}\n.font-medium {\n font-weight: 500;\n}\n.font-normal {\n font-weight: 400;\n}\n.font-semibold {\n font-weight: 600;\n}\n.uppercase {\n text-transform: uppercase;\n}\n.leading-4 {\n line-height: 1rem;\n}\n.leading-5 {\n line-height: 1.25rem;\n}\n.leading-\\[1\\.15\\] {\n line-height: 1.15;\n}\n.leading-\\[1\\.1\\] {\n line-height: 1.1;\n}\n.leading-\\[1\\.25\\] {\n line-height: 1.25;\n}\n.leading-\\[1\\.2\\] {\n line-height: 1.2;\n}\n.leading-\\[1\\.35\\] {\n line-height: 1.35;\n}\n.leading-\\[1\\.3\\] {\n line-height: 1.3;\n}\n.leading-\\[1\\.45\\] {\n line-height: 1.45;\n}\n.leading-\\[1\\.4\\] {\n line-height: 1.4;\n}\n.leading-\\[18px\\] {\n line-height: 18px;\n}\n.tracking-\\[0\\.01em\\] {\n letter-spacing: 0.01em;\n}\n.tracking-\\[0\\.08em\\] {\n letter-spacing: 0.08em;\n}\n.tracking-\\[0\\.16em\\] {\n letter-spacing: 0.16em;\n}\n.text-\\[var\\(--theme-negative\\)\\] {\n color: var(--theme-negative);\n}\n.text-\\[var\\(--theme-onPrimary\\)\\] {\n color: var(--theme-onPrimary);\n}\n.text-\\[var\\(--theme-primary\\)\\] {\n color: var(--theme-primary);\n}\n.text-\\[var\\(--theme-secondary\\)\\] {\n color: var(--theme-secondary);\n}\n.text-\\[var\\(--theme-text\\)\\] {\n color: var(--theme-text);\n}\n.text-\\[var\\(--theme-textLight\\)\\] {\n color: var(--theme-textLight);\n}\n.text-\\[var\\(--ui-kit-accent\\)\\] {\n color: var(--ui-kit-accent);\n}\n.text-transparent {\n color: transparent;\n}\n.placeholder-\\[var\\(--theme-textLight\\)\\]::-moz-placeholder {\n color: var(--theme-textLight);\n}\n.placeholder-\\[var\\(--theme-textLight\\)\\]::placeholder {\n color: var(--theme-textLight);\n}\n.placeholder-transparent::-moz-placeholder {\n color: transparent;\n}\n.placeholder-transparent::placeholder {\n color: transparent;\n}\n.opacity-0 {\n opacity: 0;\n}\n.opacity-100 {\n opacity: 1;\n}\n.opacity-45 {\n opacity: 0.45;\n}\n.opacity-70 {\n opacity: 0.7;\n}\n.opacity-80 {\n opacity: 0.8;\n}\n.opacity-\\[0\\.38\\] {\n opacity: 0.38;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-none {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.outline {\n outline-style: solid;\n}\n.blur {\n --tw-blur: blur(8px);\n 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);\n}\n.saturate-100 {\n --tw-saturate: saturate(1);\n 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);\n}\n.saturate-\\[0\\.8\\] {\n --tw-saturate: saturate(0.8);\n 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);\n}\n.filter {\n 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);\n}\n.backdrop-blur-\\[2px\\] {\n --tw-backdrop-blur: blur(2px);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n.backdrop-blur-\\[8px\\] {\n --tw-backdrop-blur: blur(8px);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n.transition {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-\\[background-color\\,color\\] {\n transition-property: background-color, color;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-\\[border-color\\] {\n transition-property: border-color;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-\\[opacity\\,filter\\] {\n transition-property: opacity, filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-\\[transform\\,color\\] {\n transition-property: transform, color;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.duration-150 {\n transition-duration: 150ms;\n}\n.duration-300 {\n transition-duration: 300ms;\n}\n.ease-in-out {\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n.\\[overflow-wrap\\:anywhere\\] {\n overflow-wrap: anywhere;\n}\n.hover\\:border-\\[var\\(--theme-primaryDark\\)\\]:hover {\n border-color: var(--theme-primaryDark);\n}\n.hover\\:border-\\[var\\(--theme-primaryLight\\)\\]:hover {\n border-color: var(--theme-primaryLight);\n}\n.hover\\:bg-\\[var\\(--theme-background\\)\\]:hover {\n background-color: var(--theme-background);\n}\n.hover\\:bg-\\[var\\(--theme-primaryLight\\)\\]:hover {\n background-color: var(--theme-primaryLight);\n}\n.hover\\:text-\\[var\\(--theme-negative\\)\\]:hover {\n color: var(--theme-negative);\n}\n.hover\\:text-\\[var\\(--theme-onPrimary\\)\\]:hover {\n color: var(--theme-onPrimary);\n}\n.hover\\:text-\\[var\\(--theme-primary\\)\\]:hover {\n color: var(--theme-primary);\n}\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n.hover\\:no-underline:hover {\n text-decoration-line: none;\n}\n.focus-visible\\:outline:focus-visible {\n outline-style: solid;\n}\n.focus-visible\\:outline-2:focus-visible {\n outline-width: 2px;\n}\n.focus-visible\\:outline-offset-2:focus-visible {\n outline-offset: 2px;\n}\n.focus-visible\\:outline-\\[var\\(--theme-primary\\)\\]:focus-visible {\n outline-color: var(--theme-primary);\n}\n.active\\:border-\\[var\\(--theme-negative\\)\\]:active {\n border-color: var(--theme-negative);\n}\n.active\\:border-\\[var\\(--theme-primary\\)\\]:active {\n border-color: var(--theme-primary);\n}\n.active\\:border-transparent:active {\n border-color: transparent;\n}\n.active\\:bg-\\[var\\(--theme-background\\)\\]:active {\n background-color: var(--theme-background);\n}\n.active\\:bg-\\[var\\(--theme-negative\\)\\]:active {\n background-color: var(--theme-negative);\n}\n.active\\:bg-\\[var\\(--theme-primaryDark\\)\\]:active {\n background-color: var(--theme-primaryDark);\n}\n.active\\:text-\\[var\\(--theme-onPrimary\\)\\]:active {\n color: var(--theme-onPrimary);\n}\n.disabled\\:translate-y-0:disabled {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.disabled\\:scale-100:disabled {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n.group:has(:disabled) .group-has-\\[\\:disabled\\]\\:opacity-70 {\n opacity: 0.7;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:absolute::-webkit-calendar-picker-indicator {\n position: absolute;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:left-0::-webkit-calendar-picker-indicator {\n left: 0px;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:top-0::-webkit-calendar-picker-indicator {\n top: 0px;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:h-full::-webkit-calendar-picker-indicator {\n height: 100%;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:w-full::-webkit-calendar-picker-indicator {\n width: 100%;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:cursor-pointer::-webkit-calendar-picker-indicator {\n cursor: pointer;\n}\n.\\[\\&\\:\\:-webkit-calendar-picker-indicator\\]\\:opacity-0::-webkit-calendar-picker-indicator {\n opacity: 0;\n}\n.\\[\\&\\:\\:-webkit-datetime-edit\\]\\:flex::-webkit-datetime-edit {\n display: flex;\n}\n.\\[\\&\\:\\:-webkit-datetime-edit\\]\\:h-full::-webkit-datetime-edit {\n height: 100%;\n}\n.\\[\\&\\:\\:-webkit-datetime-edit\\]\\:items-center::-webkit-datetime-edit {\n align-items: center;\n}\n');
25
25
 
26
26
  // node_modules/@fontsource/lato/files/lato-latin-400-normal.woff
27
27
  var lato_latin_400_normal_default = "data:font/woff;base64,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";
@@ -108,6 +108,16 @@ var cx = (...values) => {
108
108
  };
109
109
  var UI_KIT_ROOT_CLASSNAME = "ui-kit-root";
110
110
 
111
+ // src/foundation/color.ts
112
+ function withAlpha(hex, alpha) {
113
+ const normalized = hex.replace("#", "").trim();
114
+ const value = normalized.length === 3 ? normalized.split("").map((char) => char + char).join("") : normalized;
115
+ const red = Number.parseInt(value.slice(0, 2), 16);
116
+ const green = Number.parseInt(value.slice(2, 4), 16);
117
+ const blue = Number.parseInt(value.slice(4, 6), 16);
118
+ return `rgba(${red}, ${green}, ${blue}, ${alpha})`;
119
+ }
120
+
111
121
  // src/foundation/componentState.ts
112
122
  var DISABLED_COMPONENT_OPACITY = 0.5;
113
123
  var DISABLED_FIELD_OPACITY = 0.7;
@@ -420,8 +430,210 @@ function Button({
420
430
  );
421
431
  }
422
432
 
423
- // src/components/Card.tsx
433
+ // src/components/Alert.tsx
434
+ import { useId } from "react";
435
+
436
+ // src/components/feedbackPrimitives.tsx
424
437
  import { jsx, jsxs as jsxs2 } from "react/jsx-runtime";
438
+ var FEEDBACK_TONE_COLOR_NAMES = {
439
+ info: "info",
440
+ positive: "positive",
441
+ warning: "warning",
442
+ negative: "negative"
443
+ };
444
+ var iconProps = ({ size = 20, style, ...rest }) => ({
445
+ ...rest,
446
+ width: size,
447
+ height: size,
448
+ viewBox: "0 0 24 24",
449
+ fill: "none",
450
+ xmlns: "http://www.w3.org/2000/svg",
451
+ "aria-hidden": true,
452
+ focusable: false,
453
+ style
454
+ });
455
+ function InfoIcon(props) {
456
+ return /* @__PURE__ */ jsxs2("svg", { ...iconProps(props), children: [
457
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "12", r: "9", stroke: "currentColor", strokeWidth: "2" }),
458
+ /* @__PURE__ */ jsx("path", { d: "M12 10V16", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round" }),
459
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "7.25", r: "1.25", fill: "currentColor" })
460
+ ] });
461
+ }
462
+ function PositiveIcon(props) {
463
+ return /* @__PURE__ */ jsxs2("svg", { ...iconProps(props), children: [
464
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "12", r: "9", stroke: "currentColor", strokeWidth: "2" }),
465
+ /* @__PURE__ */ jsx(
466
+ "path",
467
+ {
468
+ d: "M8.25 12.4L10.75 14.9L15.75 9.9",
469
+ stroke: "currentColor",
470
+ strokeWidth: "2",
471
+ strokeLinecap: "round",
472
+ strokeLinejoin: "round"
473
+ }
474
+ )
475
+ ] });
476
+ }
477
+ function WarningIcon(props) {
478
+ return /* @__PURE__ */ jsxs2("svg", { ...iconProps(props), children: [
479
+ /* @__PURE__ */ jsx(
480
+ "path",
481
+ {
482
+ d: "M12 3.75L20 18.5C20.35 19.15 19.88 20 19.14 20H4.86C4.12 20 3.65 19.15 4 18.5L12 3.75Z",
483
+ stroke: "currentColor",
484
+ strokeWidth: "2",
485
+ strokeLinejoin: "round"
486
+ }
487
+ ),
488
+ /* @__PURE__ */ jsx("path", { d: "M12 9V13", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round" }),
489
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "16.25", r: "1.15", fill: "currentColor" })
490
+ ] });
491
+ }
492
+ function NegativeIcon(props) {
493
+ return /* @__PURE__ */ jsxs2("svg", { ...iconProps(props), children: [
494
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "12", r: "9", stroke: "currentColor", strokeWidth: "2" }),
495
+ /* @__PURE__ */ jsx(
496
+ "path",
497
+ {
498
+ d: "M9 9L15 15M15 9L9 15",
499
+ stroke: "currentColor",
500
+ strokeWidth: "2",
501
+ strokeLinecap: "round"
502
+ }
503
+ )
504
+ ] });
505
+ }
506
+ var getFeedbackDefaultRole = (tone) => {
507
+ return tone === "warning" || tone === "negative" ? "alert" : "status";
508
+ };
509
+ var getFeedbackToneColor = (theme, tone) => {
510
+ return theme.colors[FEEDBACK_TONE_COLOR_NAMES[tone]];
511
+ };
512
+ var getFeedbackContainerStyle = (theme, tone, alpha) => {
513
+ const toneColor = getFeedbackToneColor(theme, tone);
514
+ return {
515
+ backgroundColor: withAlpha(toneColor, alpha),
516
+ borderColor: toneColor
517
+ };
518
+ };
519
+ var getFeedbackIconBadgeStyle = (theme, tone, alpha) => {
520
+ const toneColor = getFeedbackToneColor(theme, tone);
521
+ return {
522
+ backgroundColor: withAlpha(toneColor, alpha),
523
+ color: toneColor
524
+ };
525
+ };
526
+ var getDefaultFeedbackIcon = (tone, size = 20) => {
527
+ switch (tone) {
528
+ case "positive":
529
+ return /* @__PURE__ */ jsx(PositiveIcon, { size });
530
+ case "warning":
531
+ return /* @__PURE__ */ jsx(WarningIcon, { size });
532
+ case "negative":
533
+ return /* @__PURE__ */ jsx(NegativeIcon, { size });
534
+ case "info":
535
+ default:
536
+ return /* @__PURE__ */ jsx(InfoIcon, { size });
537
+ }
538
+ };
539
+
540
+ // src/components/Alert.tsx
541
+ import { jsx as jsx2, jsxs as jsxs3 } from "react/jsx-runtime";
542
+ function Alert({
543
+ tone = "info",
544
+ children,
545
+ title,
546
+ icon,
547
+ action,
548
+ role,
549
+ className,
550
+ style,
551
+ ...rest
552
+ }) {
553
+ const theme = useUiKitTheme();
554
+ const titleId = useId();
555
+ const descriptionId = useId();
556
+ const resolvedRole = role != null ? role : getFeedbackDefaultRole(tone);
557
+ const ariaLive = resolvedRole === "alert" ? "assertive" : resolvedRole === "status" ? "polite" : void 0;
558
+ const iconNode = icon === void 0 ? getDefaultFeedbackIcon(tone, 20) : icon;
559
+ const containerToneStyle = getFeedbackContainerStyle(theme, tone, 0.12);
560
+ const iconToneStyle = getFeedbackIconBadgeStyle(theme, tone, 0.18);
561
+ const contentStyle = {
562
+ display: "flex",
563
+ flexDirection: "column",
564
+ gap: title ? 4 : 0,
565
+ flex: "1 1 220px",
566
+ minWidth: 0
567
+ };
568
+ return /* @__PURE__ */ jsxs3(
569
+ "div",
570
+ {
571
+ ...rest,
572
+ role: resolvedRole,
573
+ "aria-live": ariaLive,
574
+ "aria-atomic": ariaLive ? true : void 0,
575
+ "aria-labelledby": title ? titleId : void 0,
576
+ "aria-describedby": children ? descriptionId : void 0,
577
+ className: cx(
578
+ UI_KIT_ROOT_CLASSNAME,
579
+ "rounded-2xl border border-solid text-[var(--theme-text)]",
580
+ className
581
+ ),
582
+ style: {
583
+ ...containerToneStyle,
584
+ display: "flex",
585
+ alignItems: "flex-start",
586
+ flexWrap: "wrap",
587
+ gap: 12,
588
+ padding: "14px 16px",
589
+ ...style
590
+ },
591
+ children: [
592
+ iconNode ? /* @__PURE__ */ jsx2(
593
+ "div",
594
+ {
595
+ "aria-hidden": "true",
596
+ className: UI_KIT_ROOT_CLASSNAME,
597
+ style: {
598
+ ...iconToneStyle,
599
+ display: "inline-flex",
600
+ alignItems: "center",
601
+ justifyContent: "center",
602
+ width: 40,
603
+ height: 40,
604
+ borderRadius: 12,
605
+ flexShrink: 0
606
+ },
607
+ children: iconNode
608
+ }
609
+ ) : null,
610
+ /* @__PURE__ */ jsxs3("div", { style: contentStyle, children: [
611
+ title ? /* @__PURE__ */ jsx2(
612
+ "div",
613
+ {
614
+ id: titleId,
615
+ className: cx(UI_KIT_ROOT_CLASSNAME, "font-bold text-sm"),
616
+ style: { color: containerToneStyle.borderColor },
617
+ children: title
618
+ }
619
+ ) : null,
620
+ /* @__PURE__ */ jsx2("div", { id: descriptionId, className: cx(UI_KIT_ROOT_CLASSNAME, "text-sm"), style: { lineHeight: "1.5" }, children })
621
+ ] }),
622
+ action ? /* @__PURE__ */ jsx2(
623
+ "div",
624
+ {
625
+ className: cx(UI_KIT_ROOT_CLASSNAME, "shrink-0"),
626
+ style: { alignSelf: "center", color: "var(--theme-text)" },
627
+ children: action
628
+ }
629
+ ) : null
630
+ ]
631
+ }
632
+ );
633
+ }
634
+
635
+ // src/components/Card.tsx
636
+ import { jsx as jsx3, jsxs as jsxs4 } from "react/jsx-runtime";
425
637
  function Card({
426
638
  children,
427
639
  eyebrow,
@@ -432,7 +644,7 @@ function Card({
432
644
  ...rest
433
645
  }) {
434
646
  useUiKitTheme();
435
- return /* @__PURE__ */ jsxs2(
647
+ return /* @__PURE__ */ jsxs4(
436
648
  "div",
437
649
  {
438
650
  ...rest,
@@ -444,12 +656,12 @@ function Card({
444
656
  className
445
657
  ),
446
658
  children: [
447
- (eyebrow || title || action) && /* @__PURE__ */ jsxs2("div", { className: "mb-[18px] flex items-start justify-between gap-4", children: [
448
- /* @__PURE__ */ jsxs2("div", { className: "flex flex-col gap-1.5", children: [
449
- eyebrow ? /* @__PURE__ */ jsx("span", { className: "text-xs font-extrabold uppercase tracking-[0.16em] text-[var(--theme-textLight)]", children: eyebrow }) : null,
450
- title ? /* @__PURE__ */ jsx("div", { className: "text-2xl font-bold leading-[1.2] text-[var(--theme-text)]", children: title }) : null
659
+ (eyebrow || title || action) && /* @__PURE__ */ jsxs4("div", { className: "mb-[18px] flex items-start justify-between gap-4", children: [
660
+ /* @__PURE__ */ jsxs4("div", { className: "flex flex-col gap-1.5", children: [
661
+ eyebrow ? /* @__PURE__ */ jsx3("span", { className: "text-xs font-extrabold uppercase tracking-[0.16em] text-[var(--theme-textLight)]", children: eyebrow }) : null,
662
+ title ? /* @__PURE__ */ jsx3("div", { className: "text-2xl font-bold leading-[1.2] text-[var(--theme-text)]", children: title }) : null
451
663
  ] }),
452
- action ? /* @__PURE__ */ jsx("div", { className: "text-[var(--theme-text)]", children: action }) : null
664
+ action ? /* @__PURE__ */ jsx3("div", { className: "text-[var(--theme-text)]", children: action }) : null
453
665
  ] }),
454
666
  children
455
667
  ]
@@ -458,7 +670,7 @@ function Card({
458
670
  }
459
671
 
460
672
  // src/components/CardSmall.tsx
461
- import { jsx as jsx2, jsxs as jsxs3 } from "react/jsx-runtime";
673
+ import { jsx as jsx4, jsxs as jsxs5 } from "react/jsx-runtime";
462
674
  function CardSmall({
463
675
  title,
464
676
  value,
@@ -470,7 +682,7 @@ function CardSmall({
470
682
  }) {
471
683
  const theme = useUiKitTheme();
472
684
  const accentColor = color != null ? color : theme.colors.primary;
473
- return /* @__PURE__ */ jsxs3(
685
+ return /* @__PURE__ */ jsxs5(
474
686
  "div",
475
687
  {
476
688
  ...rest,
@@ -487,14 +699,14 @@ function CardSmall({
487
699
  ...style
488
700
  },
489
701
  children: [
490
- /* @__PURE__ */ jsx2(
702
+ /* @__PURE__ */ jsx4(
491
703
  "div",
492
704
  {
493
705
  "aria-hidden": "true",
494
706
  className: "absolute inset-y-0 left-0 w-[25px] bg-[var(--ui-kit-accent)]"
495
707
  }
496
708
  ),
497
- icon ? /* @__PURE__ */ jsx2(
709
+ icon ? /* @__PURE__ */ jsx4(
498
710
  "div",
499
711
  {
500
712
  "aria-hidden": "true",
@@ -506,9 +718,9 @@ function CardSmall({
506
718
  children: icon
507
719
  }
508
720
  ) : null,
509
- /* @__PURE__ */ jsxs3("div", { className: "flex min-w-0 flex-col gap-1.5", children: [
510
- title ? /* @__PURE__ */ jsx2("div", { className: "truncate text-sm font-bold leading-[1.25] text-[var(--theme-text)]", children: title }) : null,
511
- value ? /* @__PURE__ */ jsx2("div", { className: "truncate text-[18px] font-extrabold leading-[1.15] text-[var(--theme-text)]", children: value }) : null
721
+ /* @__PURE__ */ jsxs5("div", { className: "flex min-w-0 flex-col gap-1.5", children: [
722
+ title ? /* @__PURE__ */ jsx4("div", { className: "truncate text-sm font-bold leading-[1.25] text-[var(--theme-text)]", children: title }) : null,
723
+ value ? /* @__PURE__ */ jsx4("div", { className: "truncate text-[18px] font-extrabold leading-[1.15] text-[var(--theme-text)]", children: value }) : null
512
724
  ] })
513
725
  ]
514
726
  }
@@ -516,8 +728,8 @@ function CardSmall({
516
728
  }
517
729
 
518
730
  // src/components/Checkbox.tsx
519
- import { useEffect as useEffect2, useId, useRef, useState } from "react";
520
- import { jsx as jsx3, jsxs as jsxs4 } from "react/jsx-runtime";
731
+ import { useEffect as useEffect2, useId as useId2, useRef, useState } from "react";
732
+ import { jsx as jsx5, jsxs as jsxs6 } from "react/jsx-runtime";
521
733
  var CHECKBOX_SIZE_BY_SIZE = {
522
734
  sm: 14,
523
735
  md: 16,
@@ -539,7 +751,7 @@ var hasNodeContent = (value) => {
539
751
  return value !== null && value !== void 0 && value !== false;
540
752
  };
541
753
  function CheckIcon({ size, color }) {
542
- return /* @__PURE__ */ jsx3("svg", { width: size, height: size, viewBox: "0 0 20 20", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx3(
754
+ return /* @__PURE__ */ jsx5("svg", { width: size, height: size, viewBox: "0 0 20 20", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx5(
543
755
  "path",
544
756
  {
545
757
  d: "M5.75 10.25L8.5 13l5.75-6",
@@ -551,7 +763,7 @@ function CheckIcon({ size, color }) {
551
763
  ) });
552
764
  }
553
765
  function MixedIcon({ size, color }) {
554
- return /* @__PURE__ */ jsx3("svg", { width: size, height: size, viewBox: "0 0 20 20", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx3("path", { d: "M5.5 10H14.5", stroke: color, strokeWidth: "1.8", strokeLinecap: "round" }) });
766
+ return /* @__PURE__ */ jsx5("svg", { width: size, height: size, viewBox: "0 0 20 20", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx5("path", { d: "M5.5 10H14.5", stroke: color, strokeWidth: "1.8", strokeLinecap: "round" }) });
555
767
  }
556
768
  function CheckboxIndicator({
557
769
  checked,
@@ -568,7 +780,7 @@ function CheckboxIndicator({
568
780
  const resolvedCheckedColor = checkedColor != null ? checkedColor : theme.colors.textLight;
569
781
  const resolvedIconColor = iconColor != null ? iconColor : theme.colors.surface;
570
782
  const resolvedUncheckedBackgroundColor = uncheckedBackgroundColor != null ? uncheckedBackgroundColor : theme.colors.surface;
571
- return /* @__PURE__ */ jsxs4(
783
+ return /* @__PURE__ */ jsxs6(
572
784
  "span",
573
785
  {
574
786
  "aria-hidden": "true",
@@ -588,8 +800,8 @@ function CheckboxIndicator({
588
800
  ...style
589
801
  },
590
802
  children: [
591
- indeterminate ? /* @__PURE__ */ jsx3(MixedIcon, { size: Math.max(10, size - 6), color: resolvedIconColor }) : null,
592
- !indeterminate && checked ? /* @__PURE__ */ jsx3(CheckIcon, { size: Math.max(10, size - 6), color: resolvedIconColor }) : null
803
+ indeterminate ? /* @__PURE__ */ jsx5(MixedIcon, { size: Math.max(10, size - 6), color: resolvedIconColor }) : null,
804
+ !indeterminate && checked ? /* @__PURE__ */ jsx5(CheckIcon, { size: Math.max(10, size - 6), color: resolvedIconColor }) : null
593
805
  ]
594
806
  }
595
807
  );
@@ -619,7 +831,7 @@ function Checkbox({
619
831
  const hasHint = hasNodeContent(hint);
620
832
  const hasError = hasNodeContent(error);
621
833
  const hasSecondaryContent = hasLabel && hasHint;
622
- const resolvedId = id != null ? id : `ss-checkbox-${useId().replace(/:/g, "")}`;
834
+ const resolvedId = id != null ? id : `ss-checkbox-${useId2().replace(/:/g, "")}`;
623
835
  const inputRef = useRef(null);
624
836
  const [internalChecked, setInternalChecked] = useState(Boolean(defaultChecked));
625
837
  const isControlled = checked !== void 0;
@@ -630,12 +842,12 @@ function Checkbox({
630
842
  }
631
843
  inputRef.current.indeterminate = indeterminate;
632
844
  }, [indeterminate, resolvedChecked]);
633
- return /* @__PURE__ */ jsx3(
845
+ return /* @__PURE__ */ jsx5(
634
846
  "div",
635
847
  {
636
848
  className: cx(UI_KIT_ROOT_CLASSNAME, "flex w-full flex-col gap-1.5", className),
637
849
  style,
638
- children: /* @__PURE__ */ jsxs4(
850
+ children: /* @__PURE__ */ jsxs6(
639
851
  "label",
640
852
  {
641
853
  htmlFor: resolvedId,
@@ -647,7 +859,7 @@ function Checkbox({
647
859
  ),
648
860
  style: disabled ? { opacity: DISABLED_FIELD_OPACITY } : void 0,
649
861
  children: [
650
- /* @__PURE__ */ jsxs4(
862
+ /* @__PURE__ */ jsxs6(
651
863
  "span",
652
864
  {
653
865
  className: cx(
@@ -655,7 +867,7 @@ function Checkbox({
655
867
  hasSecondaryContent ? "mt-px" : "mt-0"
656
868
  ),
657
869
  children: [
658
- /* @__PURE__ */ jsx3(
870
+ /* @__PURE__ */ jsx5(
659
871
  "input",
660
872
  {
661
873
  ...rest,
@@ -683,7 +895,7 @@ function Checkbox({
683
895
  )
684
896
  }
685
897
  ),
686
- /* @__PURE__ */ jsx3(
898
+ /* @__PURE__ */ jsx5(
687
899
  CheckboxIndicator,
688
900
  {
689
901
  checked: resolvedChecked,
@@ -699,7 +911,7 @@ function Checkbox({
699
911
  ]
700
912
  }
701
913
  ),
702
- hasLabel || hasHint || hasError ? /* @__PURE__ */ jsxs4(
914
+ hasLabel || hasHint || hasError ? /* @__PURE__ */ jsxs6(
703
915
  "span",
704
916
  {
705
917
  className: cx(
@@ -707,12 +919,12 @@ function Checkbox({
707
919
  hasSecondaryContent ? "justify-start" : "justify-center"
708
920
  ),
709
921
  children: [
710
- label ? /* @__PURE__ */ jsxs4("span", { className: cx("font-semibold text-[var(--theme-text)]", CHECKBOX_LABEL_CLASSNAMES[size]), children: [
922
+ label ? /* @__PURE__ */ jsxs6("span", { className: cx("font-semibold text-[var(--theme-text)]", CHECKBOX_LABEL_CLASSNAMES[size]), children: [
711
923
  label,
712
- required ? /* @__PURE__ */ jsx3("span", { className: "ml-1 text-[var(--theme-negative)]", children: "*" }) : null
924
+ required ? /* @__PURE__ */ jsx5("span", { className: "ml-1 text-[var(--theme-negative)]", children: "*" }) : null
713
925
  ] }) : null,
714
- hint ? /* @__PURE__ */ jsx3("span", { className: "text-[13px] leading-[1.45] text-[var(--theme-textLight)]", children: hint }) : null,
715
- error ? /* @__PURE__ */ jsx3("span", { className: "text-[13px] font-semibold leading-[1.45] text-[var(--theme-negative)]", children: error }) : null
926
+ hint ? /* @__PURE__ */ jsx5("span", { className: "text-[13px] leading-[1.45] text-[var(--theme-textLight)]", children: hint }) : null,
927
+ error ? /* @__PURE__ */ jsx5("span", { className: "text-[13px] font-semibold leading-[1.45] text-[var(--theme-negative)]", children: error }) : null
716
928
  ]
717
929
  }
718
930
  ) : null
@@ -728,7 +940,7 @@ import { useMemo as useMemo3 } from "react";
728
940
 
729
941
  // src/components/Modal.tsx
730
942
  import { useEffect as useEffect3, useMemo as useMemo2, useState as useState2 } from "react";
731
- import { jsx as jsx4, jsxs as jsxs5 } from "react/jsx-runtime";
943
+ import { jsx as jsx6, jsxs as jsxs7 } from "react/jsx-runtime";
732
944
  var isUiKitTheme = (theme) => {
733
945
  return Boolean(theme && typeof theme === "object" && "title" in theme && "color" in theme);
734
946
  };
@@ -770,6 +982,9 @@ var createTitleId = (title) => {
770
982
  }
771
983
  return "smartsell-modal-dialog";
772
984
  };
985
+ var MODAL_HEADER_CONTROL_METRICS = getControlMetrics("sm");
986
+ var MODAL_HEADER_CONTROL_SIZE = MODAL_HEADER_CONTROL_METRICS.height;
987
+ var MODAL_HEADER_ICON_SIZE = 18;
773
988
  function ModalActionButton({
774
989
  action
775
990
  }) {
@@ -782,7 +997,7 @@ function ModalActionButton({
782
997
  style
783
998
  } = action;
784
999
  const variant = appearance === "contained" ? "solid" : appearance === "outlined" ? "outline" : "ghost";
785
- return /* @__PURE__ */ jsx4(
1000
+ return /* @__PURE__ */ jsx6(
786
1001
  "div",
787
1002
  {
788
1003
  className: "m-0 flex items-center justify-center",
@@ -791,7 +1006,7 @@ function ModalActionButton({
791
1006
  marginBottom: (_b = style == null ? void 0 : style.marginBottom) != null ? _b : 0,
792
1007
  ...style
793
1008
  },
794
- children: /* @__PURE__ */ jsx4(
1009
+ children: /* @__PURE__ */ jsx6(
795
1010
  Button,
796
1011
  {
797
1012
  variant,
@@ -806,7 +1021,7 @@ function ModalActionButton({
806
1021
  function ModalBusyIndicator({
807
1022
  theme
808
1023
  }) {
809
- return /* @__PURE__ */ jsxs5(
1024
+ return /* @__PURE__ */ jsxs7(
810
1025
  "div",
811
1026
  {
812
1027
  "aria-live": "polite",
@@ -816,9 +1031,9 @@ function ModalBusyIndicator({
816
1031
  backgroundColor: theme.colors.surface
817
1032
  },
818
1033
  children: [
819
- /* @__PURE__ */ jsx4("span", { className: "ui-kit-sr-only", children: "Loading" }),
820
- /* @__PURE__ */ jsxs5("svg", { "aria-hidden": "true", width: "32", height: "32", viewBox: "0 0 40 40", fill: "none", children: [
821
- /* @__PURE__ */ jsx4(
1034
+ /* @__PURE__ */ jsx6("span", { className: "ui-kit-sr-only", children: "Loading" }),
1035
+ /* @__PURE__ */ jsxs7("svg", { "aria-hidden": "true", width: "32", height: "32", viewBox: "0 0 40 40", fill: "none", children: [
1036
+ /* @__PURE__ */ jsx6(
822
1037
  "circle",
823
1038
  {
824
1039
  cx: "20",
@@ -828,14 +1043,14 @@ function ModalBusyIndicator({
828
1043
  strokeWidth: "4"
829
1044
  }
830
1045
  ),
831
- /* @__PURE__ */ jsx4(
1046
+ /* @__PURE__ */ jsx6(
832
1047
  "path",
833
1048
  {
834
1049
  d: "M20 4C28.837 4 36 11.163 36 20",
835
1050
  stroke: theme.colors.primary,
836
1051
  strokeWidth: "4",
837
1052
  strokeLinecap: "round",
838
- children: /* @__PURE__ */ jsx4(
1053
+ children: /* @__PURE__ */ jsx6(
839
1054
  "animateTransform",
840
1055
  {
841
1056
  attributeName: "transform",
@@ -854,32 +1069,107 @@ function ModalBusyIndicator({
854
1069
  );
855
1070
  }
856
1071
  function MaximizeIcon() {
857
- return /* @__PURE__ */ jsx4("svg", { "aria-hidden": "true", width: "15", height: "15", viewBox: "0 0 20 20", fill: "none", children: /* @__PURE__ */ jsx4("rect", { x: "4.25", y: "4.25", width: "11.5", height: "11.5", rx: "2.2", stroke: "currentColor", strokeWidth: "1.7" }) });
1072
+ return /* @__PURE__ */ jsx6("svg", { "aria-hidden": "true", width: MODAL_HEADER_ICON_SIZE, height: MODAL_HEADER_ICON_SIZE, viewBox: "0 0 20 20", fill: "none", children: /* @__PURE__ */ jsx6("rect", { x: "4.25", y: "4.25", width: "11.5", height: "11.5", rx: "2.2", stroke: "currentColor", strokeWidth: "1.8" }) });
858
1073
  }
859
1074
  function MinimizeIcon() {
860
- return /* @__PURE__ */ jsxs5("svg", { "aria-hidden": "true", width: "15", height: "15", viewBox: "0 0 20 20", fill: "none", children: [
861
- /* @__PURE__ */ jsx4(
1075
+ return /* @__PURE__ */ jsxs7("svg", { "aria-hidden": "true", width: MODAL_HEADER_ICON_SIZE, height: MODAL_HEADER_ICON_SIZE, viewBox: "0 0 20 20", fill: "none", children: [
1076
+ /* @__PURE__ */ jsx6(
862
1077
  "path",
863
1078
  {
864
1079
  d: "M6.25 4.75H13a2.25 2.25 0 0 1 2.25 2.25v6.75",
865
1080
  stroke: "currentColor",
866
- strokeWidth: "1.7",
1081
+ strokeWidth: "1.8",
867
1082
  strokeLinecap: "round",
868
1083
  strokeLinejoin: "round"
869
1084
  }
870
1085
  ),
871
- /* @__PURE__ */ jsx4(
1086
+ /* @__PURE__ */ jsx6(
872
1087
  "path",
873
1088
  {
874
1089
  d: "M13.75 9.5v4.25a1.5 1.5 0 0 1-1.5 1.5H6a1.75 1.75 0 0 1-1.75-1.75V7.75A1.5 1.5 0 0 1 5.75 6.25H10",
875
1090
  stroke: "currentColor",
876
- strokeWidth: "1.7",
1091
+ strokeWidth: "1.8",
877
1092
  strokeLinecap: "round",
878
1093
  strokeLinejoin: "round"
879
1094
  }
880
1095
  )
881
1096
  ] });
882
1097
  }
1098
+ function CloseIcon() {
1099
+ return /* @__PURE__ */ jsxs7("svg", { "aria-hidden": "true", width: MODAL_HEADER_ICON_SIZE, height: MODAL_HEADER_ICON_SIZE, viewBox: "0 0 20 20", fill: "none", children: [
1100
+ /* @__PURE__ */ jsx6(
1101
+ "path",
1102
+ {
1103
+ d: "M4.5 4.5 15.5 15.5",
1104
+ stroke: "currentColor",
1105
+ strokeWidth: "1.8",
1106
+ strokeLinecap: "round"
1107
+ }
1108
+ ),
1109
+ /* @__PURE__ */ jsx6(
1110
+ "path",
1111
+ {
1112
+ d: "M15.5 4.5 4.5 15.5",
1113
+ stroke: "currentColor",
1114
+ strokeWidth: "1.8",
1115
+ strokeLinecap: "round"
1116
+ }
1117
+ )
1118
+ ] });
1119
+ }
1120
+ function ModalHeaderControl({
1121
+ ariaLabel,
1122
+ title,
1123
+ onClick,
1124
+ disabled = false,
1125
+ children
1126
+ }) {
1127
+ return /* @__PURE__ */ jsx6(
1128
+ Button,
1129
+ {
1130
+ variant: "ghost",
1131
+ size: "sm",
1132
+ "aria-label": ariaLabel,
1133
+ title,
1134
+ onClick,
1135
+ disabled,
1136
+ className: cx(
1137
+ "m-0 gap-0 rounded-xl text-[var(--theme-text)] transition-colors",
1138
+ "hover:bg-[var(--theme-background)] hover:no-underline",
1139
+ "active:bg-[var(--theme-background)]",
1140
+ "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--theme-primary)]"
1141
+ ),
1142
+ style: {
1143
+ width: MODAL_HEADER_CONTROL_SIZE,
1144
+ minWidth: MODAL_HEADER_CONTROL_SIZE,
1145
+ maxWidth: MODAL_HEADER_CONTROL_SIZE,
1146
+ height: MODAL_HEADER_CONTROL_SIZE,
1147
+ minHeight: MODAL_HEADER_CONTROL_SIZE,
1148
+ maxHeight: MODAL_HEADER_CONTROL_SIZE,
1149
+ padding: 0,
1150
+ aspectRatio: "1 / 1"
1151
+ },
1152
+ children: /* @__PURE__ */ jsx6(
1153
+ "span",
1154
+ {
1155
+ "aria-hidden": "true",
1156
+ style: {
1157
+ display: "inline-flex",
1158
+ width: MODAL_HEADER_ICON_SIZE,
1159
+ height: MODAL_HEADER_ICON_SIZE,
1160
+ minWidth: MODAL_HEADER_ICON_SIZE,
1161
+ minHeight: MODAL_HEADER_ICON_SIZE,
1162
+ alignItems: "center",
1163
+ justifyContent: "center",
1164
+ lineHeight: 0,
1165
+ flexShrink: 0
1166
+ },
1167
+ children
1168
+ }
1169
+ )
1170
+ }
1171
+ );
1172
+ }
883
1173
  function UnifiedModal({
884
1174
  isOpen,
885
1175
  onClose,
@@ -951,7 +1241,7 @@ function UnifiedModal({
951
1241
  if (!isOpen) {
952
1242
  return null;
953
1243
  }
954
- const resolvedHeader = headerContent != null ? headerContent : title ? /* @__PURE__ */ jsx4(
1244
+ const resolvedHeader = headerContent != null ? headerContent : title ? /* @__PURE__ */ jsx6(
955
1245
  "h2",
956
1246
  {
957
1247
  id: titleId,
@@ -962,7 +1252,7 @@ function UnifiedModal({
962
1252
  let footerContent = footer;
963
1253
  if (footerContent === void 0) {
964
1254
  if (closeAction && !closeAction.hidden) {
965
- footerContent = /* @__PURE__ */ jsx4(
1255
+ footerContent = /* @__PURE__ */ jsx6(
966
1256
  ModalActionButton,
967
1257
  {
968
1258
  action: { ...closeAction, disabled: closeAction.disabled || isBusy }
@@ -995,7 +1285,7 @@ function UnifiedModal({
995
1285
  items.push(action);
996
1286
  return items;
997
1287
  }, []);
998
- footerContent = resolvedActions.length > 0 ? resolvedActions.map((action, index) => /* @__PURE__ */ jsx4(
1288
+ footerContent = resolvedActions.length > 0 ? resolvedActions.map((action, index) => /* @__PURE__ */ jsx6(
999
1289
  ModalActionButton,
1000
1290
  {
1001
1291
  action
@@ -1005,7 +1295,7 @@ function UnifiedModal({
1005
1295
  }
1006
1296
  }
1007
1297
  const shouldRenderFooter = footerContent !== void 0 && footerContent !== null && footerContent !== false;
1008
- return /* @__PURE__ */ jsx4(
1298
+ return /* @__PURE__ */ jsx6(
1009
1299
  "div",
1010
1300
  {
1011
1301
  "aria-label": headerContent ? typeof title === "string" ? title : "Dialog" : void 0,
@@ -1024,7 +1314,7 @@ function UnifiedModal({
1024
1314
  padding: isMaximized ? 0 : 16,
1025
1315
  backgroundColor: modalTheme.colors.shadow
1026
1316
  },
1027
- children: /* @__PURE__ */ jsxs5(
1317
+ children: /* @__PURE__ */ jsxs7(
1028
1318
  "div",
1029
1319
  {
1030
1320
  className: cx(
@@ -1042,12 +1332,12 @@ function UnifiedModal({
1042
1332
  ...contentStyle
1043
1333
  },
1044
1334
  children: [
1045
- /* @__PURE__ */ jsxs5(
1335
+ /* @__PURE__ */ jsxs7(
1046
1336
  "div",
1047
1337
  {
1048
1338
  className: "flex items-start justify-between gap-3 px-5 pb-3 pt-[18px]",
1049
1339
  children: [
1050
- /* @__PURE__ */ jsx4(
1340
+ /* @__PURE__ */ jsx6(
1051
1341
  "div",
1052
1342
  {
1053
1343
  className: cx(
@@ -1057,44 +1347,37 @@ function UnifiedModal({
1057
1347
  children: resolvedHeader
1058
1348
  }
1059
1349
  ),
1060
- /* @__PURE__ */ jsxs5("div", { className: "flex items-center gap-2", children: [
1061
- !hideExpandButton ? /* @__PURE__ */ jsx4(
1062
- Button,
1350
+ /* @__PURE__ */ jsxs7("div", { className: "flex items-center gap-2", children: [
1351
+ !hideExpandButton ? /* @__PURE__ */ jsx6(
1352
+ ModalHeaderControl,
1063
1353
  {
1064
- variant: "ghost",
1065
- size: "sm",
1066
- "aria-label": isMaximized ? "Minimize modal" : "Maximize modal",
1354
+ ariaLabel: isMaximized ? "Minimize modal" : "Maximize modal",
1067
1355
  title: isMaximized ? "Minimize" : "Maximize",
1068
1356
  onClick: () => setIsMaximized((current) => !current),
1069
- className: "m-0 text-[var(--theme-text)] hover:no-underline",
1070
- style: { height: 30, maxWidth: 30, padding: 0, width: 30 },
1071
- children: isMaximized ? /* @__PURE__ */ jsx4(MinimizeIcon, {}) : /* @__PURE__ */ jsx4(MaximizeIcon, {})
1357
+ children: isMaximized ? /* @__PURE__ */ jsx6(MinimizeIcon, {}) : /* @__PURE__ */ jsx6(MaximizeIcon, {})
1072
1358
  }
1073
1359
  ) : null,
1074
- !hideCloseButton ? /* @__PURE__ */ jsx4(
1075
- Button,
1360
+ !hideCloseButton ? /* @__PURE__ */ jsx6(
1361
+ ModalHeaderControl,
1076
1362
  {
1077
- variant: "ghost",
1078
- size: "sm",
1079
- "aria-label": "Close modal",
1363
+ ariaLabel: "Close modal",
1364
+ title: "Close",
1080
1365
  onClick: onClose,
1081
1366
  disabled: shouldDisableDismiss,
1082
- className: "m-0 text-[20px] leading-none text-[var(--theme-text)] hover:no-underline",
1083
- style: { height: 30, maxWidth: 30, padding: 0, width: 30 },
1084
- children: "\xD7"
1367
+ children: /* @__PURE__ */ jsx6(CloseIcon, {})
1085
1368
  }
1086
1369
  ) : null
1087
1370
  ] })
1088
1371
  ]
1089
1372
  }
1090
1373
  ),
1091
- /* @__PURE__ */ jsxs5(
1374
+ /* @__PURE__ */ jsxs7(
1092
1375
  "div",
1093
1376
  {
1094
1377
  className: "relative min-h-0 flex-1 overflow-auto p-6",
1095
1378
  style: bodyStyle,
1096
1379
  children: [
1097
- /* @__PURE__ */ jsx4(
1380
+ /* @__PURE__ */ jsx6(
1098
1381
  "div",
1099
1382
  {
1100
1383
  className: cx(
@@ -1104,18 +1387,18 @@ function UnifiedModal({
1104
1387
  children
1105
1388
  }
1106
1389
  ),
1107
- isBusy ? /* @__PURE__ */ jsx4(
1390
+ isBusy ? /* @__PURE__ */ jsx6(
1108
1391
  "div",
1109
1392
  {
1110
1393
  className: "absolute inset-0 flex items-center justify-center backdrop-blur-[2px]",
1111
1394
  style: { backgroundColor: modalTheme.colors.background },
1112
- children: /* @__PURE__ */ jsx4(ModalBusyIndicator, { theme: modalTheme })
1395
+ children: /* @__PURE__ */ jsx6(ModalBusyIndicator, { theme: modalTheme })
1113
1396
  }
1114
1397
  ) : null
1115
1398
  ]
1116
1399
  }
1117
1400
  ),
1118
- shouldRenderFooter ? /* @__PURE__ */ jsx4(
1401
+ shouldRenderFooter ? /* @__PURE__ */ jsx6(
1119
1402
  "div",
1120
1403
  {
1121
1404
  className: "flex justify-end gap-2.5 px-5 pb-4 pt-3",
@@ -1129,11 +1412,11 @@ function UnifiedModal({
1129
1412
  );
1130
1413
  }
1131
1414
  function Modal(props) {
1132
- return /* @__PURE__ */ jsx4(UnifiedModal, { ...props });
1415
+ return /* @__PURE__ */ jsx6(UnifiedModal, { ...props });
1133
1416
  }
1134
1417
 
1135
1418
  // src/components/ComposableModal.tsx
1136
- import { Fragment, jsx as jsx5, jsxs as jsxs6 } from "react/jsx-runtime";
1419
+ import { Fragment, jsx as jsx7, jsxs as jsxs8 } from "react/jsx-runtime";
1137
1420
  var createModalSlotIds = (slotBaseId) => ({
1138
1421
  header: `${slotBaseId}:modal-header`,
1139
1422
  body: `${slotBaseId}:modal-body`,
@@ -1174,11 +1457,11 @@ function ComposableModal({
1174
1457
  }),
1175
1458
  [cancelLabel, confirmLabel, isBusy, isOpen, onClose, onConfirm, payload, title]
1176
1459
  );
1177
- const defaultFooter = hideDefaultFooter ? void 0 : footerFallback != null ? footerFallback : /* @__PURE__ */ jsxs6(Fragment, { children: [
1178
- /* @__PURE__ */ jsx5(Button, { variant: "outline", onClick: onClose, disabled: isBusy, children: cancelLabel }),
1179
- onConfirm ? /* @__PURE__ */ jsx5(Button, { onClick: onConfirm, disabled: isBusy, children: confirmLabel }) : null
1460
+ const defaultFooter = hideDefaultFooter ? void 0 : footerFallback != null ? footerFallback : /* @__PURE__ */ jsxs8(Fragment, { children: [
1461
+ /* @__PURE__ */ jsx7(Button, { variant: "outline", onClick: onClose, disabled: isBusy, children: cancelLabel }),
1462
+ onConfirm ? /* @__PURE__ */ jsx7(Button, { onClick: onConfirm, disabled: isBusy, children: confirmLabel }) : null
1180
1463
  ] });
1181
- const defaultHeader = headerFallback != null ? headerFallback : /* @__PURE__ */ jsx5(
1464
+ const defaultHeader = headerFallback != null ? headerFallback : /* @__PURE__ */ jsx7(
1182
1465
  "h2",
1183
1466
  {
1184
1467
  className: "m-0 text-[24px] font-extrabold leading-[1.1]",
@@ -1198,7 +1481,7 @@ function ComposableModal({
1198
1481
  const headerContent = renderSlotContent(slotIds.header, defaultHeader);
1199
1482
  const bodyContent = renderSlotContent(slotIds.body, children);
1200
1483
  const footerContent = renderSlotContent(slotIds.footer, defaultFooter);
1201
- return /* @__PURE__ */ jsx5(
1484
+ return /* @__PURE__ */ jsx7(
1202
1485
  Modal,
1203
1486
  {
1204
1487
  isOpen,
@@ -1220,11 +1503,11 @@ function ComposableModal({
1220
1503
  // src/components/Input.tsx
1221
1504
  import {
1222
1505
  useEffect as useEffect4,
1223
- useId as useId2,
1506
+ useId as useId3,
1224
1507
  useRef as useRef2,
1225
1508
  useState as useState3
1226
1509
  } from "react";
1227
- import { Fragment as Fragment2, jsx as jsx6, jsxs as jsxs7 } from "react/jsx-runtime";
1510
+ import { Fragment as Fragment2, jsx as jsx8, jsxs as jsxs9 } from "react/jsx-runtime";
1228
1511
  var PASSWORD_TOGGLE_METRICS_BY_SIZE = {
1229
1512
  sm: {
1230
1513
  buttonSize: 18,
@@ -1269,7 +1552,7 @@ var getInputValidationError = (type, value) => {
1269
1552
  return void 0;
1270
1553
  };
1271
1554
  function EmailIcon({ size }) {
1272
- return /* @__PURE__ */ jsxs7(
1555
+ return /* @__PURE__ */ jsxs9(
1273
1556
  "svg",
1274
1557
  {
1275
1558
  width: size,
@@ -1278,7 +1561,7 @@ function EmailIcon({ size }) {
1278
1561
  fill: "none",
1279
1562
  "aria-hidden": "true",
1280
1563
  children: [
1281
- /* @__PURE__ */ jsx6(
1564
+ /* @__PURE__ */ jsx8(
1282
1565
  "path",
1283
1566
  {
1284
1567
  d: "M3.75 6.25A1.875 1.875 0 0 1 5.625 4.375h8.75A1.875 1.875 0 0 1 16.25 6.25v7.5a1.875 1.875 0 0 1-1.875 1.875h-8.75A1.875 1.875 0 0 1 3.75 13.75v-7.5Z",
@@ -1288,7 +1571,7 @@ function EmailIcon({ size }) {
1288
1571
  strokeLinejoin: "round"
1289
1572
  }
1290
1573
  ),
1291
- /* @__PURE__ */ jsx6(
1574
+ /* @__PURE__ */ jsx8(
1292
1575
  "path",
1293
1576
  {
1294
1577
  d: "M4.375 6.25 10 10.625l5.625-4.375",
@@ -1303,7 +1586,7 @@ function EmailIcon({ size }) {
1303
1586
  );
1304
1587
  }
1305
1588
  function LoginIcon({ size }) {
1306
- return /* @__PURE__ */ jsxs7(
1589
+ return /* @__PURE__ */ jsxs9(
1307
1590
  "svg",
1308
1591
  {
1309
1592
  width: size,
@@ -1312,8 +1595,8 @@ function LoginIcon({ size }) {
1312
1595
  fill: "none",
1313
1596
  "aria-hidden": "true",
1314
1597
  children: [
1315
- /* @__PURE__ */ jsx6("circle", { cx: "10", cy: "6.25", r: "3", stroke: "currentColor", strokeWidth: "1.6" }),
1316
- /* @__PURE__ */ jsx6(
1598
+ /* @__PURE__ */ jsx8("circle", { cx: "10", cy: "6.25", r: "3", stroke: "currentColor", strokeWidth: "1.6" }),
1599
+ /* @__PURE__ */ jsx8(
1317
1600
  "path",
1318
1601
  {
1319
1602
  d: "M4.75 16a5.25 5.25 0 0 1 10.5 0",
@@ -1327,7 +1610,7 @@ function LoginIcon({ size }) {
1327
1610
  );
1328
1611
  }
1329
1612
  function UsernameIcon({ size }) {
1330
- return /* @__PURE__ */ jsxs7(
1613
+ return /* @__PURE__ */ jsxs9(
1331
1614
  "svg",
1332
1615
  {
1333
1616
  width: size,
@@ -1336,7 +1619,7 @@ function UsernameIcon({ size }) {
1336
1619
  fill: "none",
1337
1620
  "aria-hidden": "true",
1338
1621
  children: [
1339
- /* @__PURE__ */ jsx6(
1622
+ /* @__PURE__ */ jsx8(
1340
1623
  "circle",
1341
1624
  {
1342
1625
  cx: "12",
@@ -1348,7 +1631,7 @@ function UsernameIcon({ size }) {
1348
1631
  strokeLinejoin: "round"
1349
1632
  }
1350
1633
  ),
1351
- /* @__PURE__ */ jsx6(
1634
+ /* @__PURE__ */ jsx8(
1352
1635
  "path",
1353
1636
  {
1354
1637
  d: "M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",
@@ -1363,7 +1646,7 @@ function UsernameIcon({ size }) {
1363
1646
  );
1364
1647
  }
1365
1648
  function FullNameIcon({ size }) {
1366
- return /* @__PURE__ */ jsx6(
1649
+ return /* @__PURE__ */ jsx8(
1367
1650
  "svg",
1368
1651
  {
1369
1652
  width: size,
@@ -1371,7 +1654,7 @@ function FullNameIcon({ size }) {
1371
1654
  viewBox: "0 0 24 24",
1372
1655
  fill: "none",
1373
1656
  "aria-hidden": "true",
1374
- children: /* @__PURE__ */ jsx6(
1657
+ children: /* @__PURE__ */ jsx8(
1375
1658
  "path",
1376
1659
  {
1377
1660
  d: "M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z",
@@ -1385,7 +1668,7 @@ function FullNameIcon({ size }) {
1385
1668
  );
1386
1669
  }
1387
1670
  function CalendarIcon({ size }) {
1388
- return /* @__PURE__ */ jsxs7(
1671
+ return /* @__PURE__ */ jsxs9(
1389
1672
  "svg",
1390
1673
  {
1391
1674
  width: size,
@@ -1394,7 +1677,7 @@ function CalendarIcon({ size }) {
1394
1677
  fill: "none",
1395
1678
  "aria-hidden": "true",
1396
1679
  children: [
1397
- /* @__PURE__ */ jsx6(
1680
+ /* @__PURE__ */ jsx8(
1398
1681
  "rect",
1399
1682
  {
1400
1683
  width: "18",
@@ -1409,7 +1692,7 @@ function CalendarIcon({ size }) {
1409
1692
  strokeLinejoin: "round"
1410
1693
  }
1411
1694
  ),
1412
- /* @__PURE__ */ jsx6(
1695
+ /* @__PURE__ */ jsx8(
1413
1696
  "line",
1414
1697
  {
1415
1698
  x1: "16",
@@ -1422,7 +1705,7 @@ function CalendarIcon({ size }) {
1422
1705
  strokeLinejoin: "round"
1423
1706
  }
1424
1707
  ),
1425
- /* @__PURE__ */ jsx6(
1708
+ /* @__PURE__ */ jsx8(
1426
1709
  "line",
1427
1710
  {
1428
1711
  x1: "8",
@@ -1435,7 +1718,7 @@ function CalendarIcon({ size }) {
1435
1718
  strokeLinejoin: "round"
1436
1719
  }
1437
1720
  ),
1438
- /* @__PURE__ */ jsx6(
1721
+ /* @__PURE__ */ jsx8(
1439
1722
  "line",
1440
1723
  {
1441
1724
  x1: "3",
@@ -1453,7 +1736,7 @@ function CalendarIcon({ size }) {
1453
1736
  );
1454
1737
  }
1455
1738
  function FileIcon({ size, selected }) {
1456
- return /* @__PURE__ */ jsx6(
1739
+ return /* @__PURE__ */ jsx8(
1457
1740
  "svg",
1458
1741
  {
1459
1742
  width: size,
@@ -1461,8 +1744,8 @@ function FileIcon({ size, selected }) {
1461
1744
  viewBox: "0 0 20 20",
1462
1745
  fill: "none",
1463
1746
  "aria-hidden": "true",
1464
- children: selected ? /* @__PURE__ */ jsxs7(Fragment2, { children: [
1465
- /* @__PURE__ */ jsx6(
1747
+ children: selected ? /* @__PURE__ */ jsxs9(Fragment2, { children: [
1748
+ /* @__PURE__ */ jsx8(
1466
1749
  "path",
1467
1750
  {
1468
1751
  d: "M5.5 6.25h9",
@@ -1471,7 +1754,7 @@ function FileIcon({ size, selected }) {
1471
1754
  strokeLinecap: "round"
1472
1755
  }
1473
1756
  ),
1474
- /* @__PURE__ */ jsx6(
1757
+ /* @__PURE__ */ jsx8(
1475
1758
  "path",
1476
1759
  {
1477
1760
  d: "M7.25 6.25V5.25A1.5 1.5 0 0 1 8.75 3.75h2.5a1.5 1.5 0 0 1 1.5 1.5v1",
@@ -1481,7 +1764,7 @@ function FileIcon({ size, selected }) {
1481
1764
  strokeLinejoin: "round"
1482
1765
  }
1483
1766
  ),
1484
- /* @__PURE__ */ jsx6(
1767
+ /* @__PURE__ */ jsx8(
1485
1768
  "path",
1486
1769
  {
1487
1770
  d: "M7.75 8.25v5.5",
@@ -1490,7 +1773,7 @@ function FileIcon({ size, selected }) {
1490
1773
  strokeLinecap: "round"
1491
1774
  }
1492
1775
  ),
1493
- /* @__PURE__ */ jsx6(
1776
+ /* @__PURE__ */ jsx8(
1494
1777
  "path",
1495
1778
  {
1496
1779
  d: "M10 8.25v5.5",
@@ -1499,7 +1782,7 @@ function FileIcon({ size, selected }) {
1499
1782
  strokeLinecap: "round"
1500
1783
  }
1501
1784
  ),
1502
- /* @__PURE__ */ jsx6(
1785
+ /* @__PURE__ */ jsx8(
1503
1786
  "path",
1504
1787
  {
1505
1788
  d: "M12.25 8.25v5.5",
@@ -1508,7 +1791,7 @@ function FileIcon({ size, selected }) {
1508
1791
  strokeLinecap: "round"
1509
1792
  }
1510
1793
  ),
1511
- /* @__PURE__ */ jsx6(
1794
+ /* @__PURE__ */ jsx8(
1512
1795
  "path",
1513
1796
  {
1514
1797
  d: "M6.75 6.25l.5 8a1.5 1.5 0 0 0 1.497 1.406h2.506A1.5 1.5 0 0 0 12.75 14.25l.5-8",
@@ -1518,8 +1801,8 @@ function FileIcon({ size, selected }) {
1518
1801
  strokeLinejoin: "round"
1519
1802
  }
1520
1803
  )
1521
- ] }) : /* @__PURE__ */ jsxs7(Fragment2, { children: [
1522
- /* @__PURE__ */ jsx6(
1804
+ ] }) : /* @__PURE__ */ jsxs9(Fragment2, { children: [
1805
+ /* @__PURE__ */ jsx8(
1523
1806
  "path",
1524
1807
  {
1525
1808
  d: "M6.25 2.5h5.652l4.348 4.348V15A2.5 2.5 0 0 1 13.75 17.5h-7.5A2.5 2.5 0 0 1 3.75 15V5A2.5 2.5 0 0 1 6.25 2.5Z",
@@ -1529,7 +1812,7 @@ function FileIcon({ size, selected }) {
1529
1812
  strokeLinejoin: "round"
1530
1813
  }
1531
1814
  ),
1532
- /* @__PURE__ */ jsx6(
1815
+ /* @__PURE__ */ jsx8(
1533
1816
  "path",
1534
1817
  {
1535
1818
  d: "M11.875 2.75V6.25H15.375",
@@ -1539,7 +1822,7 @@ function FileIcon({ size, selected }) {
1539
1822
  strokeLinejoin: "round"
1540
1823
  }
1541
1824
  ),
1542
- /* @__PURE__ */ jsx6(
1825
+ /* @__PURE__ */ jsx8(
1543
1826
  "path",
1544
1827
  {
1545
1828
  d: "M7.5 10h5",
@@ -1548,7 +1831,7 @@ function FileIcon({ size, selected }) {
1548
1831
  strokeLinecap: "round"
1549
1832
  }
1550
1833
  ),
1551
- /* @__PURE__ */ jsx6(
1834
+ /* @__PURE__ */ jsx8(
1552
1835
  "path",
1553
1836
  {
1554
1837
  d: "M7.5 13h5",
@@ -1565,7 +1848,7 @@ function PasswordVisibleIcon({
1565
1848
  size,
1566
1849
  playing = false
1567
1850
  }) {
1568
- return /* @__PURE__ */ jsxs7(
1851
+ return /* @__PURE__ */ jsxs9(
1569
1852
  "svg",
1570
1853
  {
1571
1854
  width: size,
@@ -1577,8 +1860,8 @@ function PasswordVisibleIcon({
1577
1860
  animation: `lf-lock-hint-blink ${LOCK_HINT_DURATION_MS}ms ease-in-out`
1578
1861
  } : void 0,
1579
1862
  children: [
1580
- playing ? /* @__PURE__ */ jsx6("style", { children: LOCK_HINT_STYLE }) : null,
1581
- /* @__PURE__ */ jsx6(
1863
+ playing ? /* @__PURE__ */ jsx8("style", { children: LOCK_HINT_STYLE }) : null,
1864
+ /* @__PURE__ */ jsx8(
1582
1865
  "path",
1583
1866
  {
1584
1867
  d: "M6.75 8V6.75A3.25 3.25 0 0 1 12.262 4.415",
@@ -1588,7 +1871,7 @@ function PasswordVisibleIcon({
1588
1871
  strokeLinejoin: "round"
1589
1872
  }
1590
1873
  ),
1591
- /* @__PURE__ */ jsx6(
1874
+ /* @__PURE__ */ jsx8(
1592
1875
  "path",
1593
1876
  {
1594
1877
  d: "M6 8.25h8a1.75 1.75 0 0 1 1.75 1.75V14A1.75 1.75 0 0 1 14 15.75H6A1.75 1.75 0 0 1 4.25 14V10A1.75 1.75 0 0 1 6 8.25Z",
@@ -1598,7 +1881,7 @@ function PasswordVisibleIcon({
1598
1881
  strokeLinejoin: "round"
1599
1882
  }
1600
1883
  ),
1601
- /* @__PURE__ */ jsx6(
1884
+ /* @__PURE__ */ jsx8(
1602
1885
  "path",
1603
1886
  {
1604
1887
  d: "M10 11.25v1.5",
@@ -1628,7 +1911,7 @@ function PasswordHiddenIcon({
1628
1911
  size,
1629
1912
  playing = false
1630
1913
  }) {
1631
- return /* @__PURE__ */ jsxs7(
1914
+ return /* @__PURE__ */ jsxs9(
1632
1915
  "svg",
1633
1916
  {
1634
1917
  width: size,
@@ -1640,8 +1923,8 @@ function PasswordHiddenIcon({
1640
1923
  animation: `lf-lock-hint-blink ${LOCK_HINT_DURATION_MS}ms ease-in-out`
1641
1924
  } : void 0,
1642
1925
  children: [
1643
- playing ? /* @__PURE__ */ jsx6("style", { children: LOCK_HINT_STYLE }) : null,
1644
- /* @__PURE__ */ jsx6(
1926
+ playing ? /* @__PURE__ */ jsx8("style", { children: LOCK_HINT_STYLE }) : null,
1927
+ /* @__PURE__ */ jsx8(
1645
1928
  "path",
1646
1929
  {
1647
1930
  d: "M6.75 8V6.75A3.25 3.25 0 1 1 13.25 6.75V8",
@@ -1656,7 +1939,7 @@ function PasswordHiddenIcon({
1656
1939
  } : void 0
1657
1940
  }
1658
1941
  ),
1659
- /* @__PURE__ */ jsx6(
1942
+ /* @__PURE__ */ jsx8(
1660
1943
  "path",
1661
1944
  {
1662
1945
  d: "M6 8.25h8a1.75 1.75 0 0 1 1.75 1.75V14A1.75 1.75 0 0 1 14 15.75H6A1.75 1.75 0 0 1 4.25 14V10A1.75 1.75 0 0 1 6 8.25Z",
@@ -1666,7 +1949,7 @@ function PasswordHiddenIcon({
1666
1949
  strokeLinejoin: "round"
1667
1950
  }
1668
1951
  ),
1669
- /* @__PURE__ */ jsx6(
1952
+ /* @__PURE__ */ jsx8(
1670
1953
  "path",
1671
1954
  {
1672
1955
  d: "M10 11.25v1.5",
@@ -1698,7 +1981,7 @@ function ControlFrame({
1698
1981
  useUiKitTheme();
1699
1982
  const isTextarea = alignLabel === "top";
1700
1983
  const controlMetrics = getControlMetrics(size);
1701
- const floatingElement = floatingPlaceholder ? /* @__PURE__ */ jsx6(
1984
+ const floatingElement = floatingPlaceholder ? /* @__PURE__ */ jsx8(
1702
1985
  "span",
1703
1986
  {
1704
1987
  className: cx(
@@ -1724,16 +2007,16 @@ function ControlFrame({
1724
2007
  children: floatingPlaceholder
1725
2008
  }
1726
2009
  ) : null;
1727
- const innerContent = /* @__PURE__ */ jsxs7("div", { className: "relative w-full flex group", children: [
2010
+ const innerContent = /* @__PURE__ */ jsxs9("div", { className: "relative w-full flex group", children: [
1728
2011
  children,
1729
2012
  floatingElement
1730
2013
  ] });
1731
- const hintsContent = hint || error ? /* @__PURE__ */ jsxs7("div", { className: "flex flex-col gap-1 mt-0", style: { paddingLeft: controlMetrics.paddingX }, children: [
1732
- hint && !error ? /* @__PURE__ */ jsx6("span", { className: "text-[13px] leading-[1.45] text-[var(--theme-textLight)]", children: hint }) : null,
1733
- error ? /* @__PURE__ */ jsx6("span", { className: "text-[13px] font-semibold leading-[1.45] text-[var(--theme-negative)]", children: error }) : null
2014
+ const hintsContent = hint || error ? /* @__PURE__ */ jsxs9("div", { className: "flex flex-col gap-1 mt-0", style: { paddingLeft: controlMetrics.paddingX }, children: [
2015
+ hint && !error ? /* @__PURE__ */ jsx8("span", { className: "text-[13px] leading-[1.45] text-[var(--theme-textLight)]", children: hint }) : null,
2016
+ error ? /* @__PURE__ */ jsx8("span", { className: "text-[13px] font-semibold leading-[1.45] text-[var(--theme-negative)]", children: error }) : null
1734
2017
  ] }) : null;
1735
2018
  if (label && useLabelWrapper) {
1736
- return /* @__PURE__ */ jsxs7(
2019
+ return /* @__PURE__ */ jsxs9(
1737
2020
  "label",
1738
2021
  {
1739
2022
  htmlFor,
@@ -1743,9 +2026,9 @@ function ControlFrame({
1743
2026
  ),
1744
2027
  style,
1745
2028
  children: [
1746
- /* @__PURE__ */ jsxs7("span", { className: "text-[13px] font-semibold leading-[1.45] text-[var(--theme-text)]", children: [
2029
+ /* @__PURE__ */ jsxs9("span", { className: "text-[13px] font-semibold leading-[1.45] text-[var(--theme-text)]", children: [
1747
2030
  label,
1748
- required ? /* @__PURE__ */ jsx6("span", { className: "ml-1 text-[var(--theme-negative)]", children: "*" }) : null
2031
+ required ? /* @__PURE__ */ jsx8("span", { className: "ml-1 text-[var(--theme-negative)]", children: "*" }) : null
1749
2032
  ] }),
1750
2033
  innerContent,
1751
2034
  hintsContent
@@ -1753,20 +2036,20 @@ function ControlFrame({
1753
2036
  }
1754
2037
  );
1755
2038
  }
1756
- return /* @__PURE__ */ jsxs7(
2039
+ return /* @__PURE__ */ jsxs9(
1757
2040
  "div",
1758
2041
  {
1759
2042
  className: cx(UI_KIT_ROOT_CLASSNAME, "flex w-full flex-col gap-1"),
1760
2043
  style,
1761
2044
  children: [
1762
- label && !useLabelWrapper ? /* @__PURE__ */ jsxs7(
2045
+ label && !useLabelWrapper ? /* @__PURE__ */ jsxs9(
1763
2046
  "label",
1764
2047
  {
1765
2048
  htmlFor,
1766
2049
  className: "text-[13px] font-semibold leading-[1.45] text-[var(--theme-text)]",
1767
2050
  children: [
1768
2051
  label,
1769
- required ? /* @__PURE__ */ jsx6("span", { className: "ml-1 text-[var(--theme-negative)]", children: "*" }) : null
2052
+ required ? /* @__PURE__ */ jsx8("span", { className: "ml-1 text-[var(--theme-negative)]", children: "*" }) : null
1770
2053
  ]
1771
2054
  }
1772
2055
  ) : null,
@@ -1796,7 +2079,7 @@ function Input({
1796
2079
  }) {
1797
2080
  const controlMetrics = getControlMetrics(size);
1798
2081
  const passwordToggleMetrics = getPasswordToggleMetrics(size);
1799
- const generatedId = useId2();
2082
+ const generatedId = useId3();
1800
2083
  const inputId = id != null ? id : generatedId;
1801
2084
  const fileInputRef = useRef2(null);
1802
2085
  const [isPasswordVisible, setIsPasswordVisible] = useState3(false);
@@ -1889,12 +2172,12 @@ function Input({
1889
2172
  const floatingPlaceholder = !disableFloatingLabel && placeholder !== void 0 && placeholder !== "" ? placeholder : void 0;
1890
2173
  const resolvedPlaceholder = placeholder != null ? placeholder : " ";
1891
2174
  const isStaticPlaceholderVisible = disableFloatingLabel && (rest.value === "" || rest.value == null && rest.defaultValue == null);
1892
- const defaultLeadingIcon = isEmailField ? /* @__PURE__ */ jsx6(EmailIcon, { size: fileIconSize }) : isUsernameField ? /* @__PURE__ */ jsx6(UsernameIcon, { size: fileIconSize }) : isFullNameField ? /* @__PURE__ */ jsx6(FullNameIcon, { size: fileIconSize }) : isLoginField ? /* @__PURE__ */ jsx6(LoginIcon, { size: fileIconSize }) : isDateField ? /* @__PURE__ */ jsx6(CalendarIcon, { size: fileIconSize }) : null;
2175
+ const defaultLeadingIcon = isEmailField ? /* @__PURE__ */ jsx8(EmailIcon, { size: fileIconSize }) : isUsernameField ? /* @__PURE__ */ jsx8(UsernameIcon, { size: fileIconSize }) : isFullNameField ? /* @__PURE__ */ jsx8(FullNameIcon, { size: fileIconSize }) : isLoginField ? /* @__PURE__ */ jsx8(LoginIcon, { size: fileIconSize }) : isDateField ? /* @__PURE__ */ jsx8(CalendarIcon, { size: fileIconSize }) : null;
1893
2176
  const resolvedLeadingIcon = icon != null ? icon : defaultLeadingIcon;
1894
2177
  const hasLeadingIcon = isRenderableNode(resolvedLeadingIcon);
1895
2178
  const hasCustomLeadingIcon = isRenderableNode(icon) && hasLeadingIcon;
1896
- const resolvedFileIcon = icon != null ? icon : /* @__PURE__ */ jsx6(FileIcon, { size: fileIconSize, selected: hasSelectedFiles });
1897
- const resolvedPasswordIcon = icon != null ? icon : isPasswordVisible || isLockHinting && isLockHintOpen ? /* @__PURE__ */ jsx6(PasswordVisibleIcon, { size: passwordLockIconSize, playing: isLockHinting }) : /* @__PURE__ */ jsx6(PasswordHiddenIcon, { size: passwordLockIconSize, playing: isLockHinting });
2179
+ const resolvedFileIcon = icon != null ? icon : /* @__PURE__ */ jsx8(FileIcon, { size: fileIconSize, selected: hasSelectedFiles });
2180
+ const resolvedPasswordIcon = icon != null ? icon : isPasswordVisible || isLockHinting && isLockHintOpen ? /* @__PURE__ */ jsx8(PasswordVisibleIcon, { size: passwordLockIconSize, playing: isLockHinting }) : /* @__PURE__ */ jsx8(PasswordHiddenIcon, { size: passwordLockIconSize, playing: isLockHinting });
1898
2181
  const placeholderClass = floatingPlaceholder ? "placeholder-transparent" : "placeholder-[var(--theme-textLight)]";
1899
2182
  let resolvedLabelOffset = void 0;
1900
2183
  if (isFileField) {
@@ -1977,8 +2260,8 @@ function Input({
1977
2260
  fileInputRef.current.value = "";
1978
2261
  fileInputRef.current.dispatchEvent(new Event("change", { bubbles: true }));
1979
2262
  };
1980
- const input = isFileField ? /* @__PURE__ */ jsxs7(Fragment2, { children: [
1981
- /* @__PURE__ */ jsx6(
2263
+ const input = isFileField ? /* @__PURE__ */ jsxs9(Fragment2, { children: [
2264
+ /* @__PURE__ */ jsx8(
1982
2265
  "input",
1983
2266
  {
1984
2267
  ...rest,
@@ -1998,7 +2281,7 @@ function Input({
1998
2281
  className: "hidden"
1999
2282
  }
2000
2283
  ),
2001
- /* @__PURE__ */ jsxs7(
2284
+ /* @__PURE__ */ jsxs9(
2002
2285
  "div",
2003
2286
  {
2004
2287
  className: cx(
@@ -2008,7 +2291,7 @@ function Input({
2008
2291
  ),
2009
2292
  style: { ...style, ...getFieldSizeStyles(size) },
2010
2293
  children: [
2011
- /* @__PURE__ */ jsxs7(
2294
+ /* @__PURE__ */ jsxs9(
2012
2295
  "button",
2013
2296
  {
2014
2297
  type: "button",
@@ -2033,7 +2316,7 @@ function Input({
2033
2316
  paddingLeft: leadingIconInset
2034
2317
  },
2035
2318
  children: [
2036
- /* @__PURE__ */ jsx6(
2319
+ /* @__PURE__ */ jsx8(
2037
2320
  "span",
2038
2321
  {
2039
2322
  className: cx(
@@ -2044,11 +2327,11 @@ function Input({
2044
2327
  children: resolvedFileIcon
2045
2328
  }
2046
2329
  ),
2047
- showUploadLabel ? /* @__PURE__ */ jsx6("span", { children: fileButtonLabel }) : null
2330
+ showUploadLabel ? /* @__PURE__ */ jsx8("span", { children: fileButtonLabel }) : null
2048
2331
  ]
2049
2332
  }
2050
2333
  ),
2051
- /* @__PURE__ */ jsx6(
2334
+ /* @__PURE__ */ jsx8(
2052
2335
  "button",
2053
2336
  {
2054
2337
  type: "button",
@@ -2061,7 +2344,7 @@ function Input({
2061
2344
  "text-left appearance-none",
2062
2345
  disabled ? "cursor-not-allowed" : "cursor-pointer"
2063
2346
  ),
2064
- children: fileSelectionText ? /* @__PURE__ */ jsx6(
2347
+ children: fileSelectionText ? /* @__PURE__ */ jsx8(
2065
2348
  "span",
2066
2349
  {
2067
2350
  className: cx(
@@ -2081,13 +2364,13 @@ function Input({
2081
2364
  ]
2082
2365
  }
2083
2366
  )
2084
- ] }) : canTogglePasswordVisibility ? /* @__PURE__ */ jsxs7(
2367
+ ] }) : canTogglePasswordVisibility ? /* @__PURE__ */ jsxs9(
2085
2368
  "div",
2086
2369
  {
2087
2370
  className: cx(adornedFieldClassName, className),
2088
2371
  style: { ...style, ...getFieldSizeStyles(size) },
2089
2372
  children: [
2090
- /* @__PURE__ */ jsx6(
2373
+ /* @__PURE__ */ jsx8(
2091
2374
  "button",
2092
2375
  {
2093
2376
  type: "button",
@@ -2117,7 +2400,7 @@ function Input({
2117
2400
  children: resolvedPasswordIcon
2118
2401
  }
2119
2402
  ),
2120
- /* @__PURE__ */ jsx6(
2403
+ /* @__PURE__ */ jsx8(
2121
2404
  "input",
2122
2405
  {
2123
2406
  ...rest,
@@ -2147,13 +2430,13 @@ function Input({
2147
2430
  )
2148
2431
  ]
2149
2432
  }
2150
- ) : hasLeadingIcon ? /* @__PURE__ */ jsxs7(
2433
+ ) : hasLeadingIcon ? /* @__PURE__ */ jsxs9(
2151
2434
  "div",
2152
2435
  {
2153
2436
  className: cx(adornedFieldClassName, className),
2154
2437
  style: { ...style, ...getFieldSizeStyles(size) },
2155
2438
  children: [
2156
- /* @__PURE__ */ jsx6(
2439
+ /* @__PURE__ */ jsx8(
2157
2440
  "span",
2158
2441
  {
2159
2442
  className: cx(
@@ -2170,7 +2453,7 @@ function Input({
2170
2453
  children: resolvedLeadingIcon
2171
2454
  }
2172
2455
  ),
2173
- /* @__PURE__ */ jsx6(
2456
+ /* @__PURE__ */ jsx8(
2174
2457
  "input",
2175
2458
  {
2176
2459
  ...rest,
@@ -2202,7 +2485,7 @@ function Input({
2202
2485
  )
2203
2486
  ]
2204
2487
  }
2205
- ) : /* @__PURE__ */ jsx6(
2488
+ ) : /* @__PURE__ */ jsx8(
2206
2489
  "input",
2207
2490
  {
2208
2491
  ...rest,
@@ -2221,7 +2504,7 @@ function Input({
2221
2504
  }
2222
2505
  }
2223
2506
  );
2224
- return /* @__PURE__ */ jsx6(
2507
+ return /* @__PURE__ */ jsx8(
2225
2508
  ControlFrame,
2226
2509
  {
2227
2510
  label,
@@ -2241,7 +2524,7 @@ function Input({
2241
2524
  }
2242
2525
 
2243
2526
  // src/components/DatePicker.tsx
2244
- import { jsx as jsx7 } from "react/jsx-runtime";
2527
+ import { jsx as jsx9 } from "react/jsx-runtime";
2245
2528
  var pad = (value) => String(value).padStart(2, "0");
2246
2529
  function normalizeDateValue(value, mode) {
2247
2530
  if (value == null || value === "") {
@@ -2277,7 +2560,7 @@ function DatePicker({
2277
2560
  const nativeType = mode === "datetime" ? "datetime-local" : "date";
2278
2561
  const normalizedValue = normalizeDateValue(value, mode);
2279
2562
  const normalizedDefaultValue = normalizeDateValue(defaultValue, mode);
2280
- return /* @__PURE__ */ jsx7(
2563
+ return /* @__PURE__ */ jsx9(
2281
2564
  Input,
2282
2565
  {
2283
2566
  ...props,
@@ -2301,8 +2584,80 @@ function DatePicker({
2301
2584
  );
2302
2585
  }
2303
2586
 
2587
+ // src/components/IconButton.tsx
2588
+ import {
2589
+ cloneElement,
2590
+ isValidElement
2591
+ } from "react";
2592
+ import { jsx as jsx10 } from "react/jsx-runtime";
2593
+ var ICON_SIZE_BY_CONTROL_SIZE = {
2594
+ sm: 16,
2595
+ md: 18,
2596
+ lg: 20
2597
+ };
2598
+ var resolveIcon = (icon) => {
2599
+ var _a;
2600
+ if (!isValidElement(icon)) {
2601
+ return icon;
2602
+ }
2603
+ const iconElement = icon;
2604
+ return cloneElement(iconElement, {
2605
+ style: {
2606
+ width: "100%",
2607
+ height: "100%",
2608
+ ...(_a = iconElement.props.style) != null ? _a : {}
2609
+ }
2610
+ });
2611
+ };
2612
+ function IconButton({
2613
+ icon,
2614
+ ariaLabel,
2615
+ size = "md",
2616
+ variant = "solid",
2617
+ className,
2618
+ style,
2619
+ ...rest
2620
+ }) {
2621
+ const controlMetrics = getControlMetrics(size);
2622
+ const iconSize = ICON_SIZE_BY_CONTROL_SIZE[size];
2623
+ return /* @__PURE__ */ jsx10(
2624
+ Button,
2625
+ {
2626
+ ...rest,
2627
+ "aria-label": ariaLabel,
2628
+ size,
2629
+ variant,
2630
+ className: className ? `gap-0 ${className}` : "gap-0",
2631
+ style: {
2632
+ width: controlMetrics.height,
2633
+ minWidth: controlMetrics.height,
2634
+ maxWidth: controlMetrics.height,
2635
+ padding: 0,
2636
+ aspectRatio: "1 / 1",
2637
+ ...style
2638
+ },
2639
+ children: /* @__PURE__ */ jsx10(
2640
+ "span",
2641
+ {
2642
+ "aria-hidden": "true",
2643
+ style: {
2644
+ display: "inline-flex",
2645
+ alignItems: "center",
2646
+ justifyContent: "center",
2647
+ width: iconSize,
2648
+ height: iconSize,
2649
+ lineHeight: 0,
2650
+ flexShrink: 0
2651
+ },
2652
+ children: resolveIcon(icon)
2653
+ }
2654
+ )
2655
+ }
2656
+ );
2657
+ }
2658
+
2304
2659
  // src/components/Loading.tsx
2305
- import { jsx as jsx8, jsxs as jsxs8 } from "react/jsx-runtime";
2660
+ import { jsx as jsx11, jsxs as jsxs10 } from "react/jsx-runtime";
2306
2661
  var SIZE_BY_CONTROL_SIZE = {
2307
2662
  sm: 28,
2308
2663
  md: 40,
@@ -2376,7 +2731,7 @@ function Loading({
2376
2731
  animation: `ss-loading-drop ${dropDuration}ms cubic-bezier(0.45, 0, 0.35, 1) infinite`,
2377
2732
  animationDelay: `${ITEM_DELAY_RATIOS[index] * dropDuration}ms`
2378
2733
  });
2379
- return /* @__PURE__ */ jsxs8(
2734
+ return /* @__PURE__ */ jsxs10(
2380
2735
  "div",
2381
2736
  {
2382
2737
  ...rest,
@@ -2390,7 +2745,7 @@ function Loading({
2390
2745
  ...style
2391
2746
  },
2392
2747
  children: [
2393
- /* @__PURE__ */ jsxs8(
2748
+ /* @__PURE__ */ jsxs10(
2394
2749
  "svg",
2395
2750
  {
2396
2751
  className: "ss-loading-svg",
@@ -2401,8 +2756,8 @@ function Loading({
2401
2756
  "aria-hidden": "true",
2402
2757
  style: { color: strokeColor, overflow: "hidden" },
2403
2758
  children: [
2404
- /* @__PURE__ */ jsx8("style", { children: LOADING_KEYFRAMES }),
2405
- /* @__PURE__ */ jsxs8(
2759
+ /* @__PURE__ */ jsx11("style", { children: LOADING_KEYFRAMES }),
2760
+ /* @__PURE__ */ jsxs10(
2406
2761
  "g",
2407
2762
  {
2408
2763
  className: "ss-loading-cart",
@@ -2412,7 +2767,7 @@ function Loading({
2412
2767
  animation: `ss-loading-bob ${BASE_BOB_MS / safeSpeed}ms ease-in-out infinite`
2413
2768
  },
2414
2769
  children: [
2415
- /* @__PURE__ */ jsx8(
2770
+ /* @__PURE__ */ jsx11(
2416
2771
  "rect",
2417
2772
  {
2418
2773
  className: "ss-loading-item",
@@ -2426,7 +2781,7 @@ function Loading({
2426
2781
  style: itemAnimation(0)
2427
2782
  }
2428
2783
  ),
2429
- /* @__PURE__ */ jsx8(
2784
+ /* @__PURE__ */ jsx11(
2430
2785
  "circle",
2431
2786
  {
2432
2787
  className: "ss-loading-item",
@@ -2438,7 +2793,7 @@ function Loading({
2438
2793
  style: itemAnimation(1)
2439
2794
  }
2440
2795
  ),
2441
- /* @__PURE__ */ jsx8(
2796
+ /* @__PURE__ */ jsx11(
2442
2797
  "rect",
2443
2798
  {
2444
2799
  className: "ss-loading-item",
@@ -2452,13 +2807,13 @@ function Loading({
2452
2807
  style: itemAnimation(2)
2453
2808
  }
2454
2809
  ),
2455
- /* @__PURE__ */ jsxs8("g", { stroke: "currentColor", strokeWidth: 2.6, strokeLinecap: "round", strokeLinejoin: "round", children: [
2456
- /* @__PURE__ */ jsx8("path", { d: "M3.5 7.5h4.6l1.6 5" }),
2457
- /* @__PURE__ */ jsx8("path", { d: "M9.7 12.5H43l-4.4 13.5H14.1z" }),
2458
- /* @__PURE__ */ jsx8("path", { d: "M18 26v3.4" }),
2459
- /* @__PURE__ */ jsx8("path", { d: "M35 26v3.4" })
2810
+ /* @__PURE__ */ jsxs10("g", { stroke: "currentColor", strokeWidth: 2.6, strokeLinecap: "round", strokeLinejoin: "round", children: [
2811
+ /* @__PURE__ */ jsx11("path", { d: "M3.5 7.5h4.6l1.6 5" }),
2812
+ /* @__PURE__ */ jsx11("path", { d: "M9.7 12.5H43l-4.4 13.5H14.1z" }),
2813
+ /* @__PURE__ */ jsx11("path", { d: "M18 26v3.4" }),
2814
+ /* @__PURE__ */ jsx11("path", { d: "M35 26v3.4" })
2460
2815
  ] }),
2461
- WHEELS.map((wheel) => /* @__PURE__ */ jsxs8(
2816
+ WHEELS.map((wheel) => /* @__PURE__ */ jsxs10(
2462
2817
  "g",
2463
2818
  {
2464
2819
  className: "ss-loading-wheel",
@@ -2468,7 +2823,7 @@ function Loading({
2468
2823
  animation: `ss-loading-wheel ${BASE_WHEEL_MS / safeSpeed}ms linear infinite`
2469
2824
  },
2470
2825
  children: [
2471
- /* @__PURE__ */ jsx8(
2826
+ /* @__PURE__ */ jsx11(
2472
2827
  "circle",
2473
2828
  {
2474
2829
  cx: wheel.cx,
@@ -2479,7 +2834,7 @@ function Loading({
2479
2834
  fill: "none"
2480
2835
  }
2481
2836
  ),
2482
- /* @__PURE__ */ jsx8(
2837
+ /* @__PURE__ */ jsx11(
2483
2838
  "path",
2484
2839
  {
2485
2840
  d: `M${wheel.cx} ${wheel.cy}V${wheel.cy - 3.2}`,
@@ -2498,7 +2853,7 @@ function Loading({
2498
2853
  ]
2499
2854
  }
2500
2855
  ),
2501
- label ? /* @__PURE__ */ jsx8(
2856
+ label ? /* @__PURE__ */ jsx11(
2502
2857
  "span",
2503
2858
  {
2504
2859
  style: {
@@ -2508,14 +2863,14 @@ function Loading({
2508
2863
  },
2509
2864
  children: label
2510
2865
  }
2511
- ) : /* @__PURE__ */ jsx8("span", { className: "ui-kit-sr-only", children: accessibleLabel })
2866
+ ) : /* @__PURE__ */ jsx11("span", { className: "ui-kit-sr-only", children: accessibleLabel })
2512
2867
  ]
2513
2868
  }
2514
2869
  );
2515
2870
  }
2516
2871
 
2517
2872
  // src/components/Separator.tsx
2518
- import { jsx as jsx9 } from "react/jsx-runtime";
2873
+ import { jsx as jsx12 } from "react/jsx-runtime";
2519
2874
  function Separator({
2520
2875
  orientation = "vertical",
2521
2876
  color,
@@ -2532,7 +2887,7 @@ function Separator({
2532
2887
  height: orientation === "vertical" ? usesVerticalStretch ? "auto" : size : 3,
2533
2888
  ...style
2534
2889
  };
2535
- return /* @__PURE__ */ jsx9(
2890
+ return /* @__PURE__ */ jsx12(
2536
2891
  "div",
2537
2892
  {
2538
2893
  ...rest,
@@ -2551,7 +2906,7 @@ function Separator({
2551
2906
  // src/componentsBase/select/SelectBase.tsx
2552
2907
  import {
2553
2908
  useEffect as useEffect5,
2554
- useId as useId3,
2909
+ useId as useId4,
2555
2910
  useRef as useRef3,
2556
2911
  useState as useState4,
2557
2912
  useSyncExternalStore
@@ -2559,7 +2914,7 @@ import {
2559
2914
  import { createPortal } from "react-dom";
2560
2915
 
2561
2916
  // src/componentsBase/select/utils.ts
2562
- import { isValidElement } from "react";
2917
+ import { isValidElement as isValidElement2 } from "react";
2563
2918
  function getTextContent(node) {
2564
2919
  if (node == null || typeof node === "boolean") {
2565
2920
  return "";
@@ -2570,7 +2925,7 @@ function getTextContent(node) {
2570
2925
  if (Array.isArray(node)) {
2571
2926
  return node.map(getTextContent).join("");
2572
2927
  }
2573
- if (isValidElement(node)) {
2928
+ if (isValidElement2(node)) {
2574
2929
  return getTextContent(node.props.children);
2575
2930
  }
2576
2931
  return "";
@@ -2605,13 +2960,13 @@ function filterSelectGroups(groups, query) {
2605
2960
  }
2606
2961
 
2607
2962
  // src/componentsBase/select/SelectBase.tsx
2608
- import { Fragment as Fragment3, jsx as jsx10, jsxs as jsxs9 } from "react/jsx-runtime";
2963
+ import { Fragment as Fragment3, jsx as jsx13, jsxs as jsxs11 } from "react/jsx-runtime";
2609
2964
  var MENU_OFFSET = 8;
2610
2965
  var MENU_MAX_HEIGHT = 280;
2611
2966
  var emptySubscribe = () => () => {
2612
2967
  };
2613
2968
  function SearchIcon({ size }) {
2614
- return /* @__PURE__ */ jsx10("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx10(
2969
+ return /* @__PURE__ */ jsx13("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx13(
2615
2970
  "path",
2616
2971
  {
2617
2972
  d: "m21 21-4.35-4.35M10.5 18a7.5 7.5 0 1 1 0-15 7.5 7.5 0 0 1 0 15Z",
@@ -2665,7 +3020,7 @@ function SelectBase({
2665
3020
  ...rest
2666
3021
  }) {
2667
3022
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m;
2668
- const generatedId = useId3().replace(/:/g, "");
3023
+ const generatedId = useId4().replace(/:/g, "");
2669
3024
  const resolvedId = id != null ? id : `ss-select-${generatedId}`;
2670
3025
  const isMultiSelect = Boolean(isMulti || multiple);
2671
3026
  const hasFilter = Boolean(isFilterable);
@@ -2992,7 +3347,7 @@ function SelectBase({
2992
3347
  const hasSomeVisibleSelected = visibleSelectedCount > 0 && visibleSelectedCount < visibleEnabledValues.length;
2993
3348
  const hasAllVisibleSelected = visibleEnabledValues.length > 0 && visibleSelectedCount === visibleEnabledValues.length;
2994
3349
  const canToggleVisibleSelection = !disabled && visibleEnabledValues.length > 0;
2995
- const bulkToggleControl = isMultiSelect ? /* @__PURE__ */ jsx10(
3350
+ const bulkToggleControl = isMultiSelect ? /* @__PURE__ */ jsx13(
2996
3351
  "button",
2997
3352
  {
2998
3353
  type: "button",
@@ -3012,7 +3367,7 @@ function SelectBase({
3012
3367
  "m-0 inline-flex h-5 w-5 shrink-0 items-center justify-center border-0 bg-transparent p-0",
3013
3368
  canToggleVisibleSelection ? "cursor-pointer opacity-100" : "cursor-not-allowed opacity-45"
3014
3369
  ),
3015
- children: /* @__PURE__ */ jsx10(
3370
+ children: /* @__PURE__ */ jsx13(
3016
3371
  CheckboxIndicator,
3017
3372
  {
3018
3373
  checked: hasAllVisibleSelected,
@@ -3169,7 +3524,7 @@ function SelectBase({
3169
3524
  }
3170
3525
  };
3171
3526
  const emptyState = isLoading ? loadingMessage : emptyMessage;
3172
- return /* @__PURE__ */ jsx10(
3527
+ return /* @__PURE__ */ jsx13(
3173
3528
  ControlFrame,
3174
3529
  {
3175
3530
  label,
@@ -3180,8 +3535,8 @@ function SelectBase({
3180
3535
  size,
3181
3536
  hasValue: hasSelection || isOpen,
3182
3537
  floatingPlaceholder,
3183
- children: /* @__PURE__ */ jsxs9("div", { ref: shellRef, className: "relative w-full", children: [
3184
- /* @__PURE__ */ jsxs9(
3538
+ children: /* @__PURE__ */ jsxs11("div", { ref: shellRef, className: "relative w-full", children: [
3539
+ /* @__PURE__ */ jsxs11(
3185
3540
  "button",
3186
3541
  {
3187
3542
  ...buttonPassthroughProps,
@@ -3210,12 +3565,12 @@ function SelectBase({
3210
3565
  ...isTriggerDisabled ? { opacity: DISABLED_FIELD_OPACITY } : {}
3211
3566
  },
3212
3567
  children: [
3213
- /* @__PURE__ */ jsx10(
3568
+ /* @__PURE__ */ jsx13(
3214
3569
  "span",
3215
3570
  {
3216
3571
  className: "block min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap",
3217
3572
  style: controlTextNudgeStyle,
3218
- children: hasSelection ? displayContent : /* @__PURE__ */ jsx10(
3573
+ children: hasSelection ? displayContent : /* @__PURE__ */ jsx13(
3219
3574
  "span",
3220
3575
  {
3221
3576
  className: floatingPlaceholder ? "" : "text-[var(--theme-textLight)]",
@@ -3224,7 +3579,7 @@ function SelectBase({
3224
3579
  )
3225
3580
  }
3226
3581
  ),
3227
- /* @__PURE__ */ jsx10(
3582
+ /* @__PURE__ */ jsx13(
3228
3583
  "span",
3229
3584
  {
3230
3585
  "aria-hidden": "true",
@@ -3237,7 +3592,7 @@ function SelectBase({
3237
3592
  right: indicatorOffset,
3238
3593
  transform: `translateY(-50%) rotate(${isOpen ? 180 : 0}deg)`
3239
3594
  },
3240
- children: /* @__PURE__ */ jsx10("svg", { width: "18", height: "18", viewBox: "0 0 20 20", fill: "none", children: /* @__PURE__ */ jsx10(
3595
+ children: /* @__PURE__ */ jsx13("svg", { width: "18", height: "18", viewBox: "0 0 20 20", fill: "none", children: /* @__PURE__ */ jsx13(
3241
3596
  "path",
3242
3597
  {
3243
3598
  d: "M5.75 7.75L10 12l4.25-4.25",
@@ -3252,7 +3607,7 @@ function SelectBase({
3252
3607
  ]
3253
3608
  }
3254
3609
  ),
3255
- /* @__PURE__ */ jsx10(
3610
+ /* @__PURE__ */ jsx13(
3256
3611
  "select",
3257
3612
  {
3258
3613
  ...rest,
@@ -3270,8 +3625,8 @@ function SelectBase({
3270
3625
  }
3271
3626
  ),
3272
3627
  isMounted && isOpen ? createPortal(
3273
- /* @__PURE__ */ jsxs9(Fragment3, { children: [
3274
- /* @__PURE__ */ jsx10("style", { children: `
3628
+ /* @__PURE__ */ jsxs11(Fragment3, { children: [
3629
+ /* @__PURE__ */ jsx13("style", { children: `
3275
3630
  #${listboxId} {
3276
3631
  scrollbar-width: thin;
3277
3632
  scrollbar-color: ${scrollbarThumbColor} transparent;
@@ -3302,7 +3657,7 @@ function SelectBase({
3302
3657
  opacity: 1;
3303
3658
  }
3304
3659
  ` }),
3305
- /* @__PURE__ */ jsxs9(
3660
+ /* @__PURE__ */ jsxs11(
3306
3661
  "div",
3307
3662
  {
3308
3663
  ref: menuRef,
@@ -3325,7 +3680,7 @@ function SelectBase({
3325
3680
  visibility: isPlacementResolved ? "visible" : "hidden"
3326
3681
  },
3327
3682
  children: [
3328
- hasFilter ? /* @__PURE__ */ jsxs9(
3683
+ hasFilter ? /* @__PURE__ */ jsxs11(
3329
3684
  "div",
3330
3685
  {
3331
3686
  className: cx(
@@ -3333,20 +3688,20 @@ function SelectBase({
3333
3688
  ),
3334
3689
  children: [
3335
3690
  bulkToggleControl,
3336
- /* @__PURE__ */ jsx10(
3691
+ /* @__PURE__ */ jsx13(
3337
3692
  "div",
3338
3693
  {
3339
3694
  className: "flex-1",
3340
3695
  onClick: (event) => event.stopPropagation(),
3341
3696
  onMouseDown: (event) => event.stopPropagation(),
3342
3697
  onPointerDown: (event) => event.stopPropagation(),
3343
- children: /* @__PURE__ */ jsx10(
3698
+ children: /* @__PURE__ */ jsx13(
3344
3699
  Input,
3345
3700
  {
3346
3701
  id: searchInputId,
3347
3702
  ref: searchInputRef,
3348
3703
  type: "text",
3349
- icon: /* @__PURE__ */ jsx10(SearchIcon, { size: 16 }),
3704
+ icon: /* @__PURE__ */ jsx13(SearchIcon, { size: 16 }),
3350
3705
  disableFloatingLabel: true,
3351
3706
  value: currentSearchQuery,
3352
3707
  onChange: (event) => {
@@ -3366,7 +3721,7 @@ function SelectBase({
3366
3721
  )
3367
3722
  ]
3368
3723
  }
3369
- ) : isMultiSelect ? /* @__PURE__ */ jsx10(
3724
+ ) : isMultiSelect ? /* @__PURE__ */ jsx13(
3370
3725
  "div",
3371
3726
  {
3372
3727
  className: cx(
@@ -3375,8 +3730,8 @@ function SelectBase({
3375
3730
  children: bulkToggleControl
3376
3731
  }
3377
3732
  ) : null,
3378
- hasFilter && /* @__PURE__ */ jsx10(Separator, {}),
3379
- /* @__PURE__ */ jsx10(
3733
+ hasFilter && /* @__PURE__ */ jsx13(Separator, {}),
3734
+ /* @__PURE__ */ jsx13(
3380
3735
  "div",
3381
3736
  {
3382
3737
  id: listboxId,
@@ -3385,7 +3740,7 @@ function SelectBase({
3385
3740
  "aria-multiselectable": isMultiSelect || void 0,
3386
3741
  onScroll: onListboxScroll,
3387
3742
  className: "min-h-0 flex-1 overflow-y-auto overflow-x-hidden py-1",
3388
- children: visibleGroups.length === 0 ? /* @__PURE__ */ jsx10("div", { className: "px-3 py-[14px] text-center text-[13px] text-[var(--theme-textLight)]", children: emptyState }) : visibleGroups.map((group) => /* @__PURE__ */ jsxs9(
3743
+ children: visibleGroups.length === 0 ? /* @__PURE__ */ jsx13("div", { className: "px-3 py-[14px] text-center text-[13px] text-[var(--theme-textLight)]", children: emptyState }) : visibleGroups.map((group) => /* @__PURE__ */ jsxs11(
3389
3744
  "div",
3390
3745
  {
3391
3746
  className: cx(
@@ -3393,7 +3748,7 @@ function SelectBase({
3393
3748
  group.label ? "mt-1" : "mt-0"
3394
3749
  ),
3395
3750
  children: [
3396
- group.label ? /* @__PURE__ */ jsx10(
3751
+ group.label ? /* @__PURE__ */ jsx13(
3397
3752
  "span",
3398
3753
  {
3399
3754
  className: cx(
@@ -3411,7 +3766,7 @@ function SelectBase({
3411
3766
  );
3412
3767
  const isHighlighted = option.value === highlightedValue;
3413
3768
  const isActive = isSelected || isHighlighted;
3414
- return /* @__PURE__ */ jsx10(
3769
+ return /* @__PURE__ */ jsx13(
3415
3770
  "div",
3416
3771
  {
3417
3772
  role: "option",
@@ -3441,7 +3796,7 @@ function SelectBase({
3441
3796
  !option.disabled && isActive ? "text-[var(--theme-onPrimary)]" : null,
3442
3797
  !option.disabled && !isActive ? "text-[var(--theme-text)]" : null
3443
3798
  ),
3444
- children: /* @__PURE__ */ jsxs9(
3799
+ children: /* @__PURE__ */ jsxs11(
3445
3800
  "div",
3446
3801
  {
3447
3802
  className: cx(
@@ -3454,8 +3809,8 @@ function SelectBase({
3454
3809
  !isSelected && !isHighlighted ? "bg-[var(--theme-surface)] font-medium" : null
3455
3810
  ),
3456
3811
  children: [
3457
- /* @__PURE__ */ jsxs9("span", { className: "flex min-w-0 flex-1 items-center gap-2.5", children: [
3458
- isMultiSelect ? /* @__PURE__ */ jsx10(
3812
+ /* @__PURE__ */ jsxs11("span", { className: "flex min-w-0 flex-1 items-center gap-2.5", children: [
3813
+ isMultiSelect ? /* @__PURE__ */ jsx13(
3459
3814
  CheckboxIndicator,
3460
3815
  {
3461
3816
  checked: isSelected,
@@ -3467,21 +3822,21 @@ function SelectBase({
3467
3822
  uncheckedBackgroundColor: "transparent"
3468
3823
  }
3469
3824
  ) : null,
3470
- /* @__PURE__ */ jsx10("span", { className: "block min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap", children: option.label })
3825
+ /* @__PURE__ */ jsx13("span", { className: "block min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap", children: option.label })
3471
3826
  ] }),
3472
- !isMultiSelect && isSelected ? /* @__PURE__ */ jsx10(
3827
+ !isMultiSelect && isSelected ? /* @__PURE__ */ jsx13(
3473
3828
  "span",
3474
3829
  {
3475
3830
  "aria-hidden": "true",
3476
3831
  className: "flex shrink-0 items-center justify-center text-[var(--theme-onPrimary)]",
3477
- children: /* @__PURE__ */ jsx10(
3832
+ children: /* @__PURE__ */ jsx13(
3478
3833
  "svg",
3479
3834
  {
3480
3835
  width: "16",
3481
3836
  height: "16",
3482
3837
  viewBox: "0 0 20 20",
3483
3838
  fill: "none",
3484
- children: /* @__PURE__ */ jsx10(
3839
+ children: /* @__PURE__ */ jsx13(
3485
3840
  "path",
3486
3841
  {
3487
3842
  d: "M5.75 10.25L8.5 13l5.75-6",
@@ -3508,9 +3863,9 @@ function SelectBase({
3508
3863
  ))
3509
3864
  }
3510
3865
  ),
3511
- menuFooter ? /* @__PURE__ */ jsxs9(Fragment3, { children: [
3512
- /* @__PURE__ */ jsx10(Separator, {}),
3513
- /* @__PURE__ */ jsx10("div", { className: "shrink-0 px-2 pb-1 pt-2.5", children: menuFooter })
3866
+ menuFooter ? /* @__PURE__ */ jsxs11(Fragment3, { children: [
3867
+ /* @__PURE__ */ jsx13(Separator, {}),
3868
+ /* @__PURE__ */ jsx13("div", { className: "shrink-0 px-2 pb-1 pt-2.5", children: menuFooter })
3514
3869
  ] }) : null
3515
3870
  ]
3516
3871
  }
@@ -3524,7 +3879,7 @@ function SelectBase({
3524
3879
  }
3525
3880
 
3526
3881
  // src/componentsBase/select/childrenAdapter.ts
3527
- import { Children, isValidElement as isValidElement2 } from "react";
3882
+ import { Children, isValidElement as isValidElement3 } from "react";
3528
3883
  function buildOption(keyPrefix, index, props, groupDisabled = false) {
3529
3884
  var _a;
3530
3885
  const rawValue = props.value !== void 0 ? props.value : getTextContent(props.children).trim();
@@ -3552,7 +3907,7 @@ function parseSelectChildren(children) {
3552
3907
  standaloneOptions.length = 0;
3553
3908
  };
3554
3909
  Children.forEach(children, (child) => {
3555
- if (!isValidElement2(child)) {
3910
+ if (!isValidElement3(child)) {
3556
3911
  return;
3557
3912
  }
3558
3913
  if (child.type === "option") {
@@ -3567,7 +3922,7 @@ function parseSelectChildren(children) {
3567
3922
  const groupOptions = [];
3568
3923
  let groupOptionIndex = 0;
3569
3924
  Children.forEach(child.props.children, (optionChild) => {
3570
- if (!isValidElement2(optionChild) || optionChild.type !== "option") {
3925
+ if (!isValidElement3(optionChild) || optionChild.type !== "option") {
3571
3926
  return;
3572
3927
  }
3573
3928
  groupOptions.push(
@@ -3594,17 +3949,17 @@ function parseSelectChildren(children) {
3594
3949
  }
3595
3950
 
3596
3951
  // src/components/Select.tsx
3597
- import { jsx as jsx11 } from "react/jsx-runtime";
3952
+ import { jsx as jsx14 } from "react/jsx-runtime";
3598
3953
  function Select({ children, options, ...props }) {
3599
- const actualChildren = options ? options.map((option) => /* @__PURE__ */ jsx11("option", { value: option.value, children: option.label }, option.value)) : children;
3600
- return /* @__PURE__ */ jsx11(SelectBase, { ...props, groups: parseSelectChildren(actualChildren), nativeOptions: actualChildren });
3954
+ const actualChildren = options ? options.map((option) => /* @__PURE__ */ jsx14("option", { value: option.value, children: option.label }, option.value)) : children;
3955
+ return /* @__PURE__ */ jsx14(SelectBase, { ...props, groups: parseSelectChildren(actualChildren), nativeOptions: actualChildren });
3601
3956
  }
3602
3957
 
3603
3958
  // src/components/SelectAsync.tsx
3604
3959
  import { useEffect as useEffect6, useMemo as useMemo4, useRef as useRef4, useState as useState5 } from "react";
3605
3960
 
3606
3961
  // src/componentsBase/select/objectOptionsAdapter.tsx
3607
- import { jsx as jsx12 } from "react/jsx-runtime";
3962
+ import { jsx as jsx15 } from "react/jsx-runtime";
3608
3963
  var getOptionKey = (option) => {
3609
3964
  return String(option.value);
3610
3965
  };
@@ -3660,13 +4015,13 @@ var buildNativeOptionsFromObjectOptions = (options) => {
3660
4015
  return options.map((option) => {
3661
4016
  const optionValue = getOptionKey(option);
3662
4017
  const optionText = getTextContent(option.label).trim() || optionValue;
3663
- return /* @__PURE__ */ jsx12("option", { value: optionValue, disabled: option.disabled, children: optionText }, `native-${optionValue}`);
4018
+ return /* @__PURE__ */ jsx15("option", { value: optionValue, disabled: option.disabled, children: optionText }, `native-${optionValue}`);
3664
4019
  });
3665
4020
  };
3666
4021
  var getSelectObjectOptionKey = getOptionKey;
3667
4022
 
3668
4023
  // src/components/SelectAsync.tsx
3669
- import { jsx as jsx13, jsxs as jsxs10 } from "react/jsx-runtime";
4024
+ import { jsx as jsx16, jsxs as jsxs12 } from "react/jsx-runtime";
3670
4025
  var DEFAULT_LOAD_MORE_THRESHOLD = 24;
3671
4026
  var normalizeAsyncValue = (value, isMulti) => {
3672
4027
  if (value == null) {
@@ -3859,15 +4214,15 @@ function SelectAsync({
3859
4214
  }
3860
4215
  onChange == null ? void 0 : onChange(nextValue);
3861
4216
  };
3862
- const menuFooter = isLoadingMore || hasMore ? /* @__PURE__ */ jsxs10(
4217
+ const menuFooter = isLoadingMore || hasMore ? /* @__PURE__ */ jsxs12(
3863
4218
  "div",
3864
4219
  {
3865
4220
  "aria-live": "polite",
3866
4221
  className: "flex items-center gap-3 text-xs leading-[1.4] text-[var(--theme-textLight)]",
3867
4222
  style: { justifyContent: hasMore ? "space-between" : "center" },
3868
4223
  children: [
3869
- /* @__PURE__ */ jsx13("span", { children: isLoadingMore ? loadingMoreMessage : hasMore ? loadMoreHintMessage : null }),
3870
- isLoadingMore ? /* @__PURE__ */ jsx13(
4224
+ /* @__PURE__ */ jsx16("span", { children: isLoadingMore ? loadingMoreMessage : hasMore ? loadMoreHintMessage : null }),
4225
+ isLoadingMore ? /* @__PURE__ */ jsx16(
3871
4226
  "span",
3872
4227
  {
3873
4228
  "aria-hidden": "true",
@@ -3879,7 +4234,7 @@ function SelectAsync({
3879
4234
  ) : null;
3880
4235
  const resolvedEmptyMessage = loadError && remoteOptions.length === 0 ? loadError : emptyMessage;
3881
4236
  const resolvedValue = selectedOptions.map((option) => getSelectObjectOptionKey(option));
3882
- return /* @__PURE__ */ jsx13(
4237
+ return /* @__PURE__ */ jsx16(
3883
4238
  SelectBase,
3884
4239
  {
3885
4240
  ...props,
@@ -3904,20 +4259,115 @@ function SelectAsync({
3904
4259
  );
3905
4260
  }
3906
4261
 
4262
+ // src/components/ResultState.tsx
4263
+ import { useId as useId5 } from "react";
4264
+ import { jsx as jsx17, jsxs as jsxs13 } from "react/jsx-runtime";
4265
+ function ResultState({
4266
+ tone = "info",
4267
+ icon,
4268
+ title,
4269
+ description,
4270
+ action,
4271
+ className,
4272
+ style,
4273
+ ...rest
4274
+ }) {
4275
+ const theme = useUiKitTheme();
4276
+ const titleId = useId5();
4277
+ const descriptionId = useId5();
4278
+ const iconNode = icon === void 0 ? getDefaultFeedbackIcon(tone, 28) : icon;
4279
+ const containerToneStyle = getFeedbackContainerStyle(theme, tone, 0.08);
4280
+ const iconToneStyle = getFeedbackIconBadgeStyle(theme, tone, 0.14);
4281
+ const descriptionStyle = {
4282
+ maxWidth: "44ch",
4283
+ lineHeight: "1.6",
4284
+ color: "var(--theme-textLight)"
4285
+ };
4286
+ return /* @__PURE__ */ jsxs13(
4287
+ "div",
4288
+ {
4289
+ ...rest,
4290
+ "aria-labelledby": titleId,
4291
+ "aria-describedby": description ? descriptionId : void 0,
4292
+ className: cx(
4293
+ UI_KIT_ROOT_CLASSNAME,
4294
+ "rounded-2xl border border-dashed text-[var(--theme-text)] text-center",
4295
+ className
4296
+ ),
4297
+ style: {
4298
+ ...containerToneStyle,
4299
+ width: "100%",
4300
+ display: "flex",
4301
+ flexDirection: "column",
4302
+ alignItems: "center",
4303
+ justifyContent: "center",
4304
+ gap: 16,
4305
+ padding: "32px 24px",
4306
+ ...style
4307
+ },
4308
+ children: [
4309
+ iconNode ? /* @__PURE__ */ jsx17(
4310
+ "div",
4311
+ {
4312
+ "aria-hidden": "true",
4313
+ className: UI_KIT_ROOT_CLASSNAME,
4314
+ style: {
4315
+ ...iconToneStyle,
4316
+ display: "inline-flex",
4317
+ alignItems: "center",
4318
+ justifyContent: "center",
4319
+ width: 64,
4320
+ height: 64,
4321
+ borderRadius: 20,
4322
+ flexShrink: 0
4323
+ },
4324
+ children: iconNode
4325
+ }
4326
+ ) : null,
4327
+ /* @__PURE__ */ jsxs13(
4328
+ "div",
4329
+ {
4330
+ className: UI_KIT_ROOT_CLASSNAME,
4331
+ style: {
4332
+ display: "flex",
4333
+ flexDirection: "column",
4334
+ alignItems: "center",
4335
+ gap: description ? 8 : 0
4336
+ },
4337
+ children: [
4338
+ /* @__PURE__ */ jsx17(
4339
+ "h2",
4340
+ {
4341
+ id: titleId,
4342
+ className: cx(UI_KIT_ROOT_CLASSNAME, "font-bold text-2xl"),
4343
+ style: { color: containerToneStyle.borderColor, lineHeight: 1.2 },
4344
+ children: title
4345
+ }
4346
+ ),
4347
+ description ? /* @__PURE__ */ jsx17("div", { id: descriptionId, className: cx(UI_KIT_ROOT_CLASSNAME, "text-sm"), style: descriptionStyle, children: description }) : null
4348
+ ]
4349
+ }
4350
+ ),
4351
+ action ? /* @__PURE__ */ jsx17("div", { className: UI_KIT_ROOT_CLASSNAME, children: action }) : null
4352
+ ]
4353
+ }
4354
+ );
4355
+ }
4356
+
3907
4357
  // src/components/Table.tsx
3908
4358
  import { useEffect as useEffect8, useMemo as useMemo5, useState as useState7 } from "react";
3909
4359
 
3910
4360
  // src/componentsBase/table/TableBase.tsx
3911
4361
  import {
3912
4362
  useEffect as useEffect7,
3913
- useId as useId4,
4363
+ useId as useId6,
3914
4364
  useRef as useRef5,
3915
4365
  useState as useState6
3916
4366
  } from "react";
3917
4367
  import { createPortal as createPortal2 } from "react-dom";
3918
4368
 
3919
4369
  // src/componentsBase/table/utils.ts
3920
- import { isValidElement as isValidElement3 } from "react";
4370
+ import { isValidElement as isValidElement4 } from "react";
3921
4371
  var DEFAULT_COLLAPSE_BELOW = 768;
3922
4372
  var DEFAULT_MAX_INLINE_ACTIONS = 2;
3923
4373
  var DEFAULT_PAGE_SIZE = 10;
@@ -3960,7 +4410,7 @@ var getNodeText = (node) => {
3960
4410
  if (Array.isArray(node)) {
3961
4411
  return node.map((entry) => getNodeText(entry)).join(" ");
3962
4412
  }
3963
- if (isValidElement3(node)) {
4413
+ if (isValidElement4(node)) {
3964
4414
  const element = node;
3965
4415
  return getNodeText(element.props.children);
3966
4416
  }
@@ -3976,7 +4426,7 @@ var normalizeTableText = (value) => {
3976
4426
  if (Array.isArray(value)) {
3977
4427
  return value.map((entry) => normalizeTableText(entry)).join(" ");
3978
4428
  }
3979
- if (isValidElement3(value)) {
4429
+ if (isValidElement4(value)) {
3980
4430
  return getNodeText(value);
3981
4431
  }
3982
4432
  return "";
@@ -4297,10 +4747,10 @@ var downloadTableAsPdf = (matrix, fileBaseName, title, page, totalPages) => {
4297
4747
  };
4298
4748
 
4299
4749
  // src/componentsBase/table/TableBase.tsx
4300
- import { Fragment as Fragment4, jsx as jsx14, jsxs as jsxs11 } from "react/jsx-runtime";
4750
+ import { Fragment as Fragment4, jsx as jsx18, jsxs as jsxs14 } from "react/jsx-runtime";
4301
4751
  var OVERFLOW_MENU_WIDTH = 220;
4302
4752
  function SettingsIcon() {
4303
- return /* @__PURE__ */ jsxs11(
4753
+ return /* @__PURE__ */ jsxs14(
4304
4754
  "svg",
4305
4755
  {
4306
4756
  width: "16",
@@ -4309,7 +4759,7 @@ function SettingsIcon() {
4309
4759
  fill: "none",
4310
4760
  "aria-hidden": "true",
4311
4761
  children: [
4312
- /* @__PURE__ */ jsx14(
4762
+ /* @__PURE__ */ jsx18(
4313
4763
  "path",
4314
4764
  {
4315
4765
  d: "M12 15.2a3.2 3.2 0 1 0 0-6.4 3.2 3.2 0 0 0 0 6.4Z",
@@ -4317,7 +4767,7 @@ function SettingsIcon() {
4317
4767
  strokeWidth: "2"
4318
4768
  }
4319
4769
  ),
4320
- /* @__PURE__ */ jsx14(
4770
+ /* @__PURE__ */ jsx18(
4321
4771
  "path",
4322
4772
  {
4323
4773
  d: `
@@ -4341,7 +4791,7 @@ function SettingsIcon() {
4341
4791
  );
4342
4792
  }
4343
4793
  function MoreActionsIcon() {
4344
- return /* @__PURE__ */ jsxs11(
4794
+ return /* @__PURE__ */ jsxs14(
4345
4795
  "svg",
4346
4796
  {
4347
4797
  width: "16",
@@ -4350,16 +4800,16 @@ function MoreActionsIcon() {
4350
4800
  fill: "currentColor",
4351
4801
  "aria-hidden": "true",
4352
4802
  children: [
4353
- /* @__PURE__ */ jsx14("circle", { cx: "5", cy: "12", r: "1.8" }),
4354
- /* @__PURE__ */ jsx14("circle", { cx: "12", cy: "12", r: "1.8" }),
4355
- /* @__PURE__ */ jsx14("circle", { cx: "19", cy: "12", r: "1.8" })
4803
+ /* @__PURE__ */ jsx18("circle", { cx: "5", cy: "12", r: "1.8" }),
4804
+ /* @__PURE__ */ jsx18("circle", { cx: "12", cy: "12", r: "1.8" }),
4805
+ /* @__PURE__ */ jsx18("circle", { cx: "19", cy: "12", r: "1.8" })
4356
4806
  ]
4357
4807
  }
4358
4808
  );
4359
4809
  }
4360
4810
  function ChevronIcon({ direction }) {
4361
4811
  const isLeft = direction === "left";
4362
- return /* @__PURE__ */ jsx14(
4812
+ return /* @__PURE__ */ jsx18(
4363
4813
  "svg",
4364
4814
  {
4365
4815
  width: "14",
@@ -4367,7 +4817,7 @@ function ChevronIcon({ direction }) {
4367
4817
  viewBox: "0 0 24 24",
4368
4818
  fill: "none",
4369
4819
  "aria-hidden": "true",
4370
- children: /* @__PURE__ */ jsx14(
4820
+ children: /* @__PURE__ */ jsx18(
4371
4821
  "path",
4372
4822
  {
4373
4823
  d: isLeft ? "M15 6 9 12l6 6" : "m9 6 6 6-6 6",
@@ -4427,8 +4877,8 @@ function OverflowMenu({ label, children }) {
4427
4877
  window.removeEventListener("scroll", updateMenuPosition, true);
4428
4878
  };
4429
4879
  }, [isOpen]);
4430
- return /* @__PURE__ */ jsxs11("div", { ref: containerRef, className: "relative", children: [
4431
- /* @__PURE__ */ jsx14(
4880
+ return /* @__PURE__ */ jsxs14("div", { ref: containerRef, className: "relative", children: [
4881
+ /* @__PURE__ */ jsx18(
4432
4882
  "button",
4433
4883
  {
4434
4884
  type: "button",
@@ -4436,7 +4886,8 @@ function OverflowMenu({ label, children }) {
4436
4886
  "aria-label": label,
4437
4887
  "aria-haspopup": "menu",
4438
4888
  "aria-expanded": isOpen,
4439
- onClick: () => {
4889
+ onClick: (event) => {
4890
+ event.stopPropagation();
4440
4891
  if (!isOpen) {
4441
4892
  updateMenuPosition();
4442
4893
  }
@@ -4447,11 +4898,11 @@ function OverflowMenu({ label, children }) {
4447
4898
  "cursor-pointer border-0 bg-transparent text-[var(--theme-text)]",
4448
4899
  "transition-colors hover:text-[var(--theme-primary)]"
4449
4900
  ].join(" "),
4450
- children: /* @__PURE__ */ jsx14(MoreActionsIcon, {})
4901
+ children: /* @__PURE__ */ jsx18(MoreActionsIcon, {})
4451
4902
  }
4452
4903
  ),
4453
4904
  isOpen && menuPosition && typeof document !== "undefined" ? createPortal2(
4454
- /* @__PURE__ */ jsx14(
4905
+ /* @__PURE__ */ jsx18(
4455
4906
  "div",
4456
4907
  {
4457
4908
  ref: menuRef,
@@ -4491,6 +4942,7 @@ function TableBase({
4491
4942
  desktopColumns,
4492
4943
  mobileColumns,
4493
4944
  getRowId: getCustomRowId,
4945
+ onRowClick,
4494
4946
  actions,
4495
4947
  stickyActionsColumn = true,
4496
4948
  maxInlineActions = DEFAULT_MAX_INLINE_ACTIONS,
@@ -4517,7 +4969,7 @@ function TableBase({
4517
4969
  onInternalPageSizeChange
4518
4970
  }) {
4519
4971
  useUiKitTheme();
4520
- const scrollRegionId = useId4().replace(/:/g, "");
4972
+ const scrollRegionId = useId6().replace(/:/g, "");
4521
4973
  const containerRef = useRef5(null);
4522
4974
  const [containerWidth, setContainerWidth] = useState6(null);
4523
4975
  const [isSettingsModalOpen, setIsSettingsModalOpen] = useState6(false);
@@ -4580,6 +5032,7 @@ function TableBase({
4580
5032
  ariaLabel,
4581
5033
  normalizedPage
4582
5034
  );
5035
+ const hasRowClick = Boolean(onRowClick);
4583
5036
  const shouldStickActionsColumn = Boolean(actions) && stickyActionsColumn;
4584
5037
  const getStickyActionsCellStyle = (backgroundColor, backgroundImage, isHeader = false) => ({
4585
5038
  position: "sticky",
@@ -4640,7 +5093,7 @@ function TableBase({
4640
5093
  const tone = (_a = action.tone) != null ? _a : "default";
4641
5094
  const iconOnly = appearance === "inline" && action.icon != null;
4642
5095
  const isMenuAction = appearance === "menu";
4643
- return /* @__PURE__ */ jsxs11(
5096
+ return /* @__PURE__ */ jsxs14(
4644
5097
  "button",
4645
5098
  {
4646
5099
  type: "button",
@@ -4648,7 +5101,8 @@ function TableBase({
4648
5101
  disabled,
4649
5102
  title: action.label,
4650
5103
  "aria-label": action.label,
4651
- onClick: () => {
5104
+ onClick: (event) => {
5105
+ event.stopPropagation();
4652
5106
  if (disabled) {
4653
5107
  return;
4654
5108
  }
@@ -4665,7 +5119,7 @@ function TableBase({
4665
5119
  ),
4666
5120
  children: [
4667
5121
  action.icon,
4668
- appearance === "menu" || !iconOnly ? /* @__PURE__ */ jsx14("span", { children: action.label }) : null
5122
+ appearance === "menu" || !iconOnly ? /* @__PURE__ */ jsx18("span", { children: action.label }) : null
4669
5123
  ]
4670
5124
  },
4671
5125
  (_b = action.id) != null ? _b : `${action.label}-${rowIndex}`
@@ -4678,7 +5132,7 @@ function TableBase({
4678
5132
  }
4679
5133
  const inlineActions = resolvedActions.slice(0, visibleInlineActions);
4680
5134
  const overflowActions = resolvedActions.slice(visibleInlineActions);
4681
- return /* @__PURE__ */ jsxs11(
5135
+ return /* @__PURE__ */ jsxs14(
4682
5136
  "div",
4683
5137
  {
4684
5138
  className: cx(
@@ -4691,7 +5145,7 @@ function TableBase({
4691
5145
  inlineActions.map(
4692
5146
  (action) => renderActionButton(action, item, rowIndex, "inline")
4693
5147
  ),
4694
- overflowActions.length > 0 ? /* @__PURE__ */ jsx14(OverflowMenu, { label: resolvedLabels.actionsMenuLabel, children: overflowActions.map(
5148
+ overflowActions.length > 0 ? /* @__PURE__ */ jsx18(OverflowMenu, { label: resolvedLabels.actionsMenuLabel, children: overflowActions.map(
4695
5149
  (action) => renderActionButton(action, item, rowIndex, "menu")
4696
5150
  ) }) : null
4697
5151
  ]
@@ -4702,7 +5156,7 @@ function TableBase({
4702
5156
  var _a;
4703
5157
  const content = resolveColumnContent(column, item, rowIndex);
4704
5158
  const align = (_a = column.align) != null ? _a : column.type === "actions" ? "right" : "left";
4705
- return /* @__PURE__ */ jsx14(
5159
+ return /* @__PURE__ */ jsx18(
4706
5160
  "td",
4707
5161
  {
4708
5162
  colSpan: column.colSpan,
@@ -4715,14 +5169,14 @@ function TableBase({
4715
5169
  width: column.width,
4716
5170
  minWidth: column.minWidth
4717
5171
  },
4718
- children: hasRenderableContent(content) ? content : /* @__PURE__ */ jsx14("span", { className: "text-[var(--theme-textLight)]", children: "-" })
5172
+ children: hasRenderableContent(content) ? content : /* @__PURE__ */ jsx18("span", { className: "text-[var(--theme-textLight)]", children: "-" })
4719
5173
  },
4720
5174
  `${getColumnKey(column, columnIndex)}-${rowIndex}`
4721
5175
  );
4722
5176
  };
4723
5177
  const renderEmptyState = () => {
4724
5178
  const message = error ? error : loading ? resolvedLabels.loadingMessage : hasSearchValue ? resolvedLabels.noResultsMessage : resolvedLabels.emptyMessage;
4725
- return /* @__PURE__ */ jsxs11(
5179
+ return /* @__PURE__ */ jsxs14(
4726
5180
  "div",
4727
5181
  {
4728
5182
  className: [
@@ -4731,13 +5185,13 @@ function TableBase({
4731
5185
  "p-6 text-center text-[var(--theme-text)] shadow-none"
4732
5186
  ].join(" "),
4733
5187
  children: [
4734
- /* @__PURE__ */ jsx14("strong", { className: "text-base", children: message }),
4735
- error && onRetry ? /* @__PURE__ */ jsx14(Button, { variant: "secondary", onClick: onRetry, children: resolvedLabels.retryLabel }) : null
5188
+ /* @__PURE__ */ jsx18("strong", { className: "text-base", children: message }),
5189
+ error && onRetry ? /* @__PURE__ */ jsx18(Button, { variant: "secondary", onClick: onRetry, children: resolvedLabels.retryLabel }) : null
4736
5190
  ]
4737
5191
  }
4738
5192
  );
4739
5193
  };
4740
- return /* @__PURE__ */ jsxs11(
5194
+ return /* @__PURE__ */ jsxs14(
4741
5195
  "div",
4742
5196
  {
4743
5197
  ref: containerRef,
@@ -4749,8 +5203,8 @@ function TableBase({
4749
5203
  ),
4750
5204
  style,
4751
5205
  children: [
4752
- shouldRenderToolbar ? /* @__PURE__ */ jsxs11("div", { className: "flex min-w-0 flex-wrap items-center justify-between gap-3", children: [
4753
- shouldRenderToolbarPrimaryGroup ? /* @__PURE__ */ jsxs11(
5206
+ shouldRenderToolbar ? /* @__PURE__ */ jsxs14("div", { className: "flex min-w-0 flex-wrap items-center justify-between gap-3", children: [
5207
+ shouldRenderToolbarPrimaryGroup ? /* @__PURE__ */ jsxs14(
4754
5208
  "div",
4755
5209
  {
4756
5210
  className: cx(
@@ -4763,7 +5217,7 @@ function TableBase({
4763
5217
  // to the Input would land on the inner <input>, which lives inside a
4764
5218
  // flex-column ControlFrame — there flex-basis becomes height and the
4765
5219
  // field grows absurdly tall.
4766
- /* @__PURE__ */ jsx14("div", { className: "min-w-0 max-w-[360px] flex-[1_1_260px]", children: /* @__PURE__ */ jsx14(
5220
+ /* @__PURE__ */ jsx18("div", { className: "min-w-0 max-w-[360px] flex-[1_1_260px]", children: /* @__PURE__ */ jsx18(
4767
5221
  Input,
4768
5222
  {
4769
5223
  type: "search",
@@ -4774,7 +5228,7 @@ function TableBase({
4774
5228
  }
4775
5229
  ) })
4776
5230
  ) : null,
4777
- showSettingsButton && !loading ? /* @__PURE__ */ jsx14(
5231
+ showSettingsButton && !loading ? /* @__PURE__ */ jsx18(
4778
5232
  Button,
4779
5233
  {
4780
5234
  variant: "secondary",
@@ -4782,13 +5236,13 @@ function TableBase({
4782
5236
  title: resolvedLabels.settingsButtonLabel,
4783
5237
  onClick: () => setIsSettingsModalOpen(true),
4784
5238
  className: "shrink-0",
4785
- children: /* @__PURE__ */ jsx14(SettingsIcon, {})
5239
+ children: /* @__PURE__ */ jsx18(SettingsIcon, {})
4786
5240
  }
4787
5241
  ) : null
4788
5242
  ]
4789
5243
  }
4790
5244
  ) : null,
4791
- shouldShowToolbarStatus ? /* @__PURE__ */ jsxs11(
5245
+ shouldShowToolbarStatus ? /* @__PURE__ */ jsxs14(
4792
5246
  "div",
4793
5247
  {
4794
5248
  className: cx(
@@ -4796,17 +5250,17 @@ function TableBase({
4796
5250
  shouldRenderToolbarPrimaryGroup ? "ml-auto" : ""
4797
5251
  ),
4798
5252
  children: [
4799
- loading ? /* @__PURE__ */ jsx14("span", { className: "text-[13px] font-semibold text-[var(--theme-textLight)]", children: resolvedLabels.loadingMessage }) : null,
4800
- !loading && error && hasRows ? /* @__PURE__ */ jsxs11("div", { className: "inline-flex items-center gap-2.5", children: [
4801
- /* @__PURE__ */ jsx14("span", { className: "text-[13px] font-semibold text-[var(--theme-negative)]", children: resolvedLabels.errorMessage }),
4802
- onRetry ? /* @__PURE__ */ jsx14(Button, { variant: "ghost", onClick: onRetry, children: resolvedLabels.retryLabel }) : null
5253
+ loading ? /* @__PURE__ */ jsx18("span", { className: "text-[13px] font-semibold text-[var(--theme-textLight)]", children: resolvedLabels.loadingMessage }) : null,
5254
+ !loading && error && hasRows ? /* @__PURE__ */ jsxs14("div", { className: "inline-flex items-center gap-2.5", children: [
5255
+ /* @__PURE__ */ jsx18("span", { className: "text-[13px] font-semibold text-[var(--theme-negative)]", children: resolvedLabels.errorMessage }),
5256
+ onRetry ? /* @__PURE__ */ jsx18(Button, { variant: "ghost", onClick: onRetry, children: resolvedLabels.retryLabel }) : null
4803
5257
  ] }) : null
4804
5258
  ]
4805
5259
  }
4806
5260
  ) : null
4807
5261
  ] }) : null,
4808
5262
  !hasRows && (!loading || error) ? renderEmptyState() : null,
4809
- hasRows ? isCollapsed ? /* @__PURE__ */ jsx14(
5263
+ hasRows ? isCollapsed ? /* @__PURE__ */ jsx18(
4810
5264
  "div",
4811
5265
  {
4812
5266
  role: "list",
@@ -4814,7 +5268,7 @@ function TableBase({
4814
5268
  className: "flex min-w-0 flex-col gap-3.5",
4815
5269
  children: items.map((item, rowIndex) => {
4816
5270
  const rowActions = renderActions(item, rowIndex);
4817
- return /* @__PURE__ */ jsxs11(
5271
+ return /* @__PURE__ */ jsxs14(
4818
5272
  "article",
4819
5273
  {
4820
5274
  role: "listitem",
@@ -4822,10 +5276,12 @@ function TableBase({
4822
5276
  "flex min-w-0 flex-col rounded-[20px]",
4823
5277
  rowActions ? "gap-1" : "gap-2.5",
4824
5278
  "border-[3px] border-solid border-[var(--theme-background)] bg-[var(--theme-surface)]",
4825
- "px-3.5 py-3 shadow-none"
5279
+ "px-3.5 py-3 shadow-none",
5280
+ hasRowClick ? "cursor-pointer" : ""
4826
5281
  ].join(" "),
5282
+ onClick: onRowClick ? () => onRowClick(item, rowIndex) : void 0,
4827
5283
  children: [
4828
- /* @__PURE__ */ jsx14(
5284
+ /* @__PURE__ */ jsx18(
4829
5285
  "div",
4830
5286
  {
4831
5287
  className: cx(
@@ -4844,7 +5300,7 @@ function TableBase({
4844
5300
  1,
4845
5301
  Math.min((_b = column.colSpan) != null ? _b : 1, mobileGridColumnCount)
4846
5302
  );
4847
- return /* @__PURE__ */ jsxs11(
5303
+ return /* @__PURE__ */ jsxs14(
4848
5304
  "div",
4849
5305
  {
4850
5306
  className: cx(
@@ -4852,7 +5308,7 @@ function TableBase({
4852
5308
  span === 2 ? "col-span-2" : "col-span-1"
4853
5309
  ),
4854
5310
  children: [
4855
- !column.hideLabel && column.label ? /* @__PURE__ */ jsx14(
5311
+ !column.hideLabel && column.label ? /* @__PURE__ */ jsx18(
4856
5312
  "span",
4857
5313
  {
4858
5314
  className: [
@@ -4864,14 +5320,14 @@ function TableBase({
4864
5320
  children: column.label
4865
5321
  }
4866
5322
  ) : null,
4867
- /* @__PURE__ */ jsx14(
5323
+ /* @__PURE__ */ jsx18(
4868
5324
  "div",
4869
5325
  {
4870
5326
  className: cx(
4871
5327
  "min-w-0 max-w-full",
4872
5328
  mobileGridColumnCount === 2 ? "" : "flex-1"
4873
5329
  ),
4874
- children: /* @__PURE__ */ jsx14(
5330
+ children: /* @__PURE__ */ jsx18(
4875
5331
  "div",
4876
5332
  {
4877
5333
  className: cx(
@@ -4879,7 +5335,7 @@ function TableBase({
4879
5335
  "text-[var(--theme-text)] [overflow-wrap:anywhere]",
4880
5336
  getAlignClassName(align)
4881
5337
  ),
4882
- children: hasRenderableContent(content) ? content : /* @__PURE__ */ jsx14("span", { className: "text-[var(--theme-textLight)]", children: "-" })
5338
+ children: hasRenderableContent(content) ? content : /* @__PURE__ */ jsx18("span", { className: "text-[var(--theme-textLight)]", children: "-" })
4883
5339
  }
4884
5340
  )
4885
5341
  }
@@ -4891,15 +5347,15 @@ function TableBase({
4891
5347
  })
4892
5348
  }
4893
5349
  ),
4894
- rowActions ? /* @__PURE__ */ jsx14("div", { className: "flex justify-end pt-1", children: rowActions }) : null
5350
+ rowActions ? /* @__PURE__ */ jsx18("div", { className: "flex justify-end pt-1", children: rowActions }) : null
4895
5351
  ]
4896
5352
  },
4897
5353
  getRowId(item, rowIndex, getCustomRowId)
4898
5354
  );
4899
5355
  })
4900
5356
  }
4901
- ) : /* @__PURE__ */ jsxs11(Fragment4, { children: [
4902
- /* @__PURE__ */ jsx14("style", { children: `
5357
+ ) : /* @__PURE__ */ jsxs14(Fragment4, { children: [
5358
+ /* @__PURE__ */ jsx18("style", { children: `
4903
5359
  #${scrollRegionId} {
4904
5360
  scrollbar-width: thin;
4905
5361
  scrollbar-color: var(--theme-secondary) transparent;
@@ -4926,7 +5382,7 @@ function TableBase({
4926
5382
  background-clip: padding-box;
4927
5383
  }
4928
5384
  ` }),
4929
- /* @__PURE__ */ jsx14(
5385
+ /* @__PURE__ */ jsx18(
4930
5386
  "div",
4931
5387
  {
4932
5388
  id: scrollRegionId,
@@ -4937,12 +5393,12 @@ function TableBase({
4937
5393
  "rounded-[20px] border-2 border-solid border-[var(--theme-background)]",
4938
5394
  "bg-[var(--theme-surface)] shadow-none"
4939
5395
  ),
4940
- children: /* @__PURE__ */ jsxs11("table", { className: "w-max min-w-full max-w-none border-separate border-spacing-0", children: [
4941
- /* @__PURE__ */ jsx14("thead", { children: /* @__PURE__ */ jsxs11("tr", { children: [
5396
+ children: /* @__PURE__ */ jsxs14("table", { className: "w-max min-w-full max-w-none border-separate border-spacing-0", children: [
5397
+ /* @__PURE__ */ jsx18("thead", { children: /* @__PURE__ */ jsxs14("tr", { children: [
4942
5398
  desktopColumns.map((column, columnIndex) => {
4943
5399
  var _a, _b;
4944
5400
  const align = (_a = column.align) != null ? _a : column.type === "actions" ? "right" : "left";
4945
- return /* @__PURE__ */ jsx14(
5401
+ return /* @__PURE__ */ jsx18(
4946
5402
  "th",
4947
5403
  {
4948
5404
  colSpan: (_b = column.headerColSpan) != null ? _b : column.colSpan,
@@ -4962,7 +5418,7 @@ function TableBase({
4962
5418
  getColumnKey(column, columnIndex)
4963
5419
  );
4964
5420
  }),
4965
- actions ? /* @__PURE__ */ jsx14(
5421
+ actions ? /* @__PURE__ */ jsx18(
4966
5422
  "th",
4967
5423
  {
4968
5424
  scope: "col",
@@ -4983,14 +5439,18 @@ function TableBase({
4983
5439
  }
4984
5440
  ) : null
4985
5441
  ] }) }),
4986
- /* @__PURE__ */ jsx14("tbody", { children: items.map((item, rowIndex) => {
5442
+ /* @__PURE__ */ jsx18("tbody", { children: items.map((item, rowIndex) => {
4987
5443
  const rowActions = renderActions(item, rowIndex);
4988
5444
  const isAlternateRow = rowIndex % 2 !== 0;
4989
5445
  const stickyRowBackgroundImage = rowIndex % 2 === 0 ? void 0 : "linear-gradient(var(--theme-background), var(--theme-background))";
4990
- return /* @__PURE__ */ jsxs11(
5446
+ return /* @__PURE__ */ jsxs14(
4991
5447
  "tr",
4992
5448
  {
4993
- className: isAlternateRow ? "bg-[var(--theme-background)]" : "bg-[var(--theme-surface)]",
5449
+ className: [
5450
+ isAlternateRow ? "bg-[var(--theme-background)]" : "bg-[var(--theme-surface)]",
5451
+ hasRowClick ? "cursor-pointer" : ""
5452
+ ].join(" "),
5453
+ onClick: onRowClick ? () => onRowClick(item, rowIndex) : void 0,
4994
5454
  children: [
4995
5455
  desktopColumns.map((column, columnIndex) => {
4996
5456
  return renderDesktopCell(
@@ -5000,7 +5460,7 @@ function TableBase({
5000
5460
  columnIndex
5001
5461
  );
5002
5462
  }),
5003
- actions ? /* @__PURE__ */ jsx14(
5463
+ actions ? /* @__PURE__ */ jsx18(
5004
5464
  "td",
5005
5465
  {
5006
5466
  className: cx(
@@ -5026,9 +5486,9 @@ function TableBase({
5026
5486
  }
5027
5487
  )
5028
5488
  ] }) : null,
5029
- hasRows && shouldRenderFooter ? /* @__PURE__ */ jsxs11("div", { className: "-mt-2 flex flex-wrap items-center justify-between gap-3", children: [
5030
- shouldShowPaginationControls ? /* @__PURE__ */ jsxs11("div", { className: "flex flex-wrap items-center gap-2", children: [
5031
- /* @__PURE__ */ jsx14(
5489
+ hasRows && shouldRenderFooter ? /* @__PURE__ */ jsxs14("div", { className: "-mt-2 flex flex-wrap items-center justify-between gap-3", children: [
5490
+ shouldShowPaginationControls ? /* @__PURE__ */ jsxs14("div", { className: "flex flex-wrap items-center gap-2", children: [
5491
+ /* @__PURE__ */ jsx18(
5032
5492
  Button,
5033
5493
  {
5034
5494
  variant: "secondary",
@@ -5039,7 +5499,7 @@ function TableBase({
5039
5499
  children: 1
5040
5500
  }
5041
5501
  ),
5042
- /* @__PURE__ */ jsx14(
5502
+ /* @__PURE__ */ jsx18(
5043
5503
  Button,
5044
5504
  {
5045
5505
  variant: "secondary",
@@ -5047,10 +5507,10 @@ function TableBase({
5047
5507
  disabled: !canGoToPreviousPage,
5048
5508
  "aria-label": resolvedLabels.previousPageLabel,
5049
5509
  style: paginationButtonStyle,
5050
- children: /* @__PURE__ */ jsx14(ChevronIcon, { direction: "left" })
5510
+ children: /* @__PURE__ */ jsx18(ChevronIcon, { direction: "left" })
5051
5511
  }
5052
5512
  ),
5053
- /* @__PURE__ */ jsx14(
5513
+ /* @__PURE__ */ jsx18(
5054
5514
  Button,
5055
5515
  {
5056
5516
  variant: "secondary",
@@ -5060,7 +5520,7 @@ function TableBase({
5060
5520
  children: normalizedPage
5061
5521
  }
5062
5522
  ),
5063
- /* @__PURE__ */ jsx14(
5523
+ /* @__PURE__ */ jsx18(
5064
5524
  Button,
5065
5525
  {
5066
5526
  variant: "secondary",
@@ -5068,10 +5528,10 @@ function TableBase({
5068
5528
  disabled: !canGoToNextPage,
5069
5529
  "aria-label": resolvedLabels.nextPageLabel,
5070
5530
  style: paginationButtonStyle,
5071
- children: /* @__PURE__ */ jsx14(ChevronIcon, { direction: "right" })
5531
+ children: /* @__PURE__ */ jsx18(ChevronIcon, { direction: "right" })
5072
5532
  }
5073
5533
  ),
5074
- /* @__PURE__ */ jsx14(
5534
+ /* @__PURE__ */ jsx18(
5075
5535
  Button,
5076
5536
  {
5077
5537
  variant: "secondary",
@@ -5083,16 +5543,16 @@ function TableBase({
5083
5543
  }
5084
5544
  )
5085
5545
  ] }) : null,
5086
- /* @__PURE__ */ jsx14(
5546
+ /* @__PURE__ */ jsx18(
5087
5547
  "div",
5088
5548
  {
5089
5549
  className: cx(
5090
5550
  "flex items-center gap-2.5 text-[13px] text-[var(--theme-textLight)]",
5091
5551
  shouldShowRowsPerPageControl ? "ml-auto" : ""
5092
5552
  ),
5093
- children: shouldShowRowsPerPageControl ? /* @__PURE__ */ jsxs11(Fragment4, { children: [
5094
- resolvedLabels.rowsPerPageLabel ? /* @__PURE__ */ jsx14("span", { children: resolvedLabels.rowsPerPageLabel }) : null,
5095
- /* @__PURE__ */ jsx14("div", { className: "w-[72px]", children: /* @__PURE__ */ jsx14(
5553
+ children: shouldShowRowsPerPageControl ? /* @__PURE__ */ jsxs14(Fragment4, { children: [
5554
+ resolvedLabels.rowsPerPageLabel ? /* @__PURE__ */ jsx18("span", { children: resolvedLabels.rowsPerPageLabel }) : null,
5555
+ /* @__PURE__ */ jsx18("div", { className: "w-[72px]", children: /* @__PURE__ */ jsx18(
5096
5556
  Select,
5097
5557
  {
5098
5558
  value: String(pageSize),
@@ -5111,7 +5571,7 @@ function TableBase({
5111
5571
  }
5112
5572
  )
5113
5573
  ] }) : null,
5114
- /* @__PURE__ */ jsxs11(
5574
+ /* @__PURE__ */ jsxs14(
5115
5575
  Modal,
5116
5576
  {
5117
5577
  isOpen: isSettingsModalOpen,
@@ -5128,9 +5588,9 @@ function TableBase({
5128
5588
  paddingTop: 8
5129
5589
  },
5130
5590
  children: [
5131
- /* @__PURE__ */ jsxs11("section", { className: "grid gap-3", children: [
5132
- /* @__PURE__ */ jsx14("strong", { className: "text-sm text-[var(--theme-text)]", children: resolvedLabels.tableInfoSectionTitle }),
5133
- /* @__PURE__ */ jsxs11(
5591
+ /* @__PURE__ */ jsxs14("section", { className: "grid gap-3", children: [
5592
+ /* @__PURE__ */ jsx18("strong", { className: "text-sm text-[var(--theme-text)]", children: resolvedLabels.tableInfoSectionTitle }),
5593
+ /* @__PURE__ */ jsxs14(
5134
5594
  "div",
5135
5595
  {
5136
5596
  className: cx(
@@ -5138,31 +5598,31 @@ function TableBase({
5138
5598
  "border-2 border-[var(--theme-background)] bg-[var(--theme-surface)]"
5139
5599
  ),
5140
5600
  children: [
5141
- /* @__PURE__ */ jsxs11("div", { className: "grid gap-1", children: [
5142
- /* @__PURE__ */ jsx14("span", { className: "text-xs text-[var(--theme-textLight)]", children: resolvedLabels.totalItemsInfoLabel }),
5143
- /* @__PURE__ */ jsx14("strong", { className: "font-medium text-[var(--theme-text)]", children: totalItemCount })
5601
+ /* @__PURE__ */ jsxs14("div", { className: "grid gap-1", children: [
5602
+ /* @__PURE__ */ jsx18("span", { className: "text-xs text-[var(--theme-textLight)]", children: resolvedLabels.totalItemsInfoLabel }),
5603
+ /* @__PURE__ */ jsx18("strong", { className: "font-medium text-[var(--theme-text)]", children: totalItemCount })
5144
5604
  ] }),
5145
- /* @__PURE__ */ jsxs11("div", { className: "grid gap-1", children: [
5146
- /* @__PURE__ */ jsx14("span", { className: "text-xs text-[var(--theme-textLight)]", children: resolvedLabels.totalPagesInfoLabel }),
5147
- /* @__PURE__ */ jsx14("strong", { className: "font-medium text-[var(--theme-text)]", children: totalPages })
5605
+ /* @__PURE__ */ jsxs14("div", { className: "grid gap-1", children: [
5606
+ /* @__PURE__ */ jsx18("span", { className: "text-xs text-[var(--theme-textLight)]", children: resolvedLabels.totalPagesInfoLabel }),
5607
+ /* @__PURE__ */ jsx18("strong", { className: "font-medium text-[var(--theme-text)]", children: totalPages })
5148
5608
  ] }),
5149
- /* @__PURE__ */ jsxs11("div", { className: "grid gap-1", children: [
5150
- /* @__PURE__ */ jsx14("span", { className: "text-xs text-[var(--theme-textLight)]", children: resolvedLabels.currentPageItemsInfoLabel }),
5151
- /* @__PURE__ */ jsx14("strong", { className: "font-medium text-[var(--theme-text)]", children: currentPageItemCount })
5609
+ /* @__PURE__ */ jsxs14("div", { className: "grid gap-1", children: [
5610
+ /* @__PURE__ */ jsx18("span", { className: "text-xs text-[var(--theme-textLight)]", children: resolvedLabels.currentPageItemsInfoLabel }),
5611
+ /* @__PURE__ */ jsx18("strong", { className: "font-medium text-[var(--theme-text)]", children: currentPageItemCount })
5152
5612
  ] }),
5153
- /* @__PURE__ */ jsxs11("div", { className: "grid gap-1", children: [
5154
- /* @__PURE__ */ jsx14("span", { className: "text-xs text-[var(--theme-textLight)]", children: resolvedLabels.currentPageInfoLabel }),
5155
- /* @__PURE__ */ jsx14("strong", { className: "font-medium text-[var(--theme-text)]", children: normalizedPage })
5613
+ /* @__PURE__ */ jsxs14("div", { className: "grid gap-1", children: [
5614
+ /* @__PURE__ */ jsx18("span", { className: "text-xs text-[var(--theme-textLight)]", children: resolvedLabels.currentPageInfoLabel }),
5615
+ /* @__PURE__ */ jsx18("strong", { className: "font-medium text-[var(--theme-text)]", children: normalizedPage })
5156
5616
  ] })
5157
5617
  ]
5158
5618
  }
5159
5619
  )
5160
5620
  ] }),
5161
- /* @__PURE__ */ jsx14("div", { className: "py-[18px]", children: /* @__PURE__ */ jsx14(Separator, {}) }),
5162
- /* @__PURE__ */ jsxs11("section", { className: "grid gap-3", children: [
5163
- /* @__PURE__ */ jsx14("strong", { className: "text-sm text-[var(--theme-text)]", children: resolvedLabels.downloadSectionTitle }),
5164
- /* @__PURE__ */ jsxs11("div", { className: "flex flex-wrap gap-2.5", children: [
5165
- /* @__PURE__ */ jsx14(
5621
+ /* @__PURE__ */ jsx18("div", { className: "py-[18px]", children: /* @__PURE__ */ jsx18(Separator, {}) }),
5622
+ /* @__PURE__ */ jsxs14("section", { className: "grid gap-3", children: [
5623
+ /* @__PURE__ */ jsx18("strong", { className: "text-sm text-[var(--theme-text)]", children: resolvedLabels.downloadSectionTitle }),
5624
+ /* @__PURE__ */ jsxs14("div", { className: "flex flex-wrap gap-2.5", children: [
5625
+ /* @__PURE__ */ jsx18(
5166
5626
  Button,
5167
5627
  {
5168
5628
  variant: "secondary",
@@ -5171,7 +5631,7 @@ function TableBase({
5171
5631
  children: resolvedLabels.downloadCsvLabel
5172
5632
  }
5173
5633
  ),
5174
- /* @__PURE__ */ jsx14(
5634
+ /* @__PURE__ */ jsx18(
5175
5635
  Button,
5176
5636
  {
5177
5637
  variant: "secondary",
@@ -5180,7 +5640,7 @@ function TableBase({
5180
5640
  children: resolvedLabels.downloadXlsLabel
5181
5641
  }
5182
5642
  ),
5183
- /* @__PURE__ */ jsx14(
5643
+ /* @__PURE__ */ jsx18(
5184
5644
  Button,
5185
5645
  {
5186
5646
  variant: "secondary",
@@ -5200,7 +5660,7 @@ function TableBase({
5200
5660
  }
5201
5661
 
5202
5662
  // src/components/Table.tsx
5203
- import { jsx as jsx15 } from "react/jsx-runtime";
5663
+ import { jsx as jsx19 } from "react/jsx-runtime";
5204
5664
  function Table({
5205
5665
  items,
5206
5666
  desktopColumns,
@@ -5259,7 +5719,7 @@ function Table({
5259
5719
  const startIndex = (normalizedPage - 1) * pageSize;
5260
5720
  return filteredItems.slice(startIndex, startIndex + pageSize);
5261
5721
  }, [filteredItems, normalizedPage, pageSize]);
5262
- return /* @__PURE__ */ jsx15(
5722
+ return /* @__PURE__ */ jsx19(
5263
5723
  TableBase,
5264
5724
  {
5265
5725
  ...props,
@@ -5296,7 +5756,7 @@ function Table({
5296
5756
 
5297
5757
  // src/components/TableAsync.tsx
5298
5758
  import { useEffect as useEffect9, useMemo as useMemo6, useRef as useRef6, useState as useState8 } from "react";
5299
- import { jsx as jsx16 } from "react/jsx-runtime";
5759
+ import { jsx as jsx20 } from "react/jsx-runtime";
5300
5760
  var areUnknownArraysEqual2 = (left, right) => {
5301
5761
  if (left.length !== right.length) {
5302
5762
  return false;
@@ -5415,7 +5875,7 @@ function TableAsync({
5415
5875
  setPage(normalizedPage);
5416
5876
  onPageChange == null ? void 0 : onPageChange(normalizedPage);
5417
5877
  }, [normalizedPage, onPageChange, page]);
5418
- return /* @__PURE__ */ jsx16(
5878
+ return /* @__PURE__ */ jsx20(
5419
5879
  TableBase,
5420
5880
  {
5421
5881
  ...props,
@@ -5454,7 +5914,7 @@ function TableAsync({
5454
5914
  }
5455
5915
 
5456
5916
  // src/components/Textarea.tsx
5457
- import { jsx as jsx17 } from "react/jsx-runtime";
5917
+ import { jsx as jsx21 } from "react/jsx-runtime";
5458
5918
  function Textarea({
5459
5919
  label,
5460
5920
  hint,
@@ -5471,7 +5931,7 @@ function Textarea({
5471
5931
  const resolvedPlaceholder = placeholder != null ? placeholder : " ";
5472
5932
  const placeholderClass = floatingPlaceholder ? "placeholder-transparent" : "placeholder-[var(--theme-textLight)]";
5473
5933
  const isPopulated = rest.value !== void 0 && rest.value !== "" && rest.value !== null;
5474
- const textarea = /* @__PURE__ */ jsx17(
5934
+ const textarea = /* @__PURE__ */ jsx21(
5475
5935
  "textarea",
5476
5936
  {
5477
5937
  ...rest,
@@ -5496,7 +5956,7 @@ function Textarea({
5496
5956
  }
5497
5957
  }
5498
5958
  );
5499
- return /* @__PURE__ */ jsx17(
5959
+ return /* @__PURE__ */ jsx21(
5500
5960
  ControlFrame,
5501
5961
  {
5502
5962
  label,
@@ -5516,15 +5976,18 @@ function Textarea({
5516
5976
  // src/index.ts
5517
5977
  injectUiKitFonts();
5518
5978
  export {
5979
+ Alert,
5519
5980
  Button,
5520
5981
  Card,
5521
5982
  CardSmall,
5522
5983
  Checkbox,
5523
5984
  ComposableModal,
5524
5985
  DatePicker,
5986
+ IconButton,
5525
5987
  Input,
5526
5988
  Loading,
5527
5989
  Modal,
5990
+ ResultState,
5528
5991
  Select,
5529
5992
  SelectAsync,
5530
5993
  Separator,