@epam/ai-dial-ui-kit 0.3.0-rc.2 → 0.3.0-rc.21
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/dial-ui-kit.cjs.js +1 -1
- package/dist/dial-ui-kit.es.js +4475 -1146
- package/dist/index.css +2 -2
- package/dist/src/components/Breadcrumb/Breadcrumb.d.ts +41 -0
- package/dist/src/components/Breadcrumb/BreadcrumbItem.d.ts +13 -0
- package/dist/src/components/Breadcrumb/constants.d.ts +9 -0
- package/dist/src/components/Checkbox/Checkbox.d.ts +3 -1
- package/dist/src/components/Dropdown/Dropdown.d.ts +2 -0
- package/dist/src/components/EllipsisTooltip/EllipsisTooltip.d.ts +31 -0
- package/dist/src/components/EllipsisTooltip/constants.d.ts +1 -0
- package/dist/src/components/Input/Input.d.ts +4 -1
- package/dist/src/components/InputField/InputField.d.ts +1 -1
- package/dist/src/components/InputPopup/InputPopup.d.ts +3 -3
- package/dist/src/components/RadioGroupPopupField/RadioGroupPopupField.d.ts +69 -0
- package/dist/src/components/Select/Select.d.ts +59 -0
- package/dist/src/components/Select/constants.d.ts +8 -0
- package/dist/src/components/Tab/Tab.d.ts +35 -0
- package/dist/src/components/Tabs/Tabs.d.ts +40 -0
- package/dist/src/components/Tag/Tag.d.ts +6 -2
- package/dist/src/hooks/use-is-tablet-screen.d.ts +1 -0
- package/dist/src/index.d.ts +13 -0
- package/dist/src/models/breadcrumb.d.ts +9 -0
- package/dist/src/models/field-control-props.d.ts +1 -0
- package/dist/src/models/select.d.ts +7 -0
- package/dist/src/models/tab.d.ts +4 -0
- package/dist/src/types/tab.d.ts +4 -0
- package/dist/src/utils/merge-classes.d.ts +3 -0
- package/dist/src/utils/mobile.d.ts +1 -0
- package/package.json +6 -3
- package/dist/src/components/RadioGroupModalField/RadioGroupModal.d.ts +0 -1
package/dist/index.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.dial-h1{font-weight:600}.dial-h1,.dial-h2{font-size:20px;line-height:24px}.dial-h2{font-weight:400}.dial-h3{font-weight:600;line-height:18px}.dial-body,.dial-h3{font-size:16px}.dial-body{font-weight:400;line-height:28px}.dial-small{font-weight:400}.dial-small,.dial-small-semi{font-size:14px;line-height:16px}.dial-small-semi{font-weight:600}.dial-small-medium{font-weight:400;font-size:14px;line-height:16px}.dial-small-150{font-weight:400;font-size:14px;line-height:21px}.dial-tiny{line-height:14px}.dial-tiny,.dial-tiny-150{font-weight:400;font-size:12px}.dial-tiny-150{line-height:18px}.dial-caption{font-weight:400;font-size:10px;line-height:12px}h1{font-weight:600}h1,h2{font-size:20px;line-height:24px}h2{font-weight:400}h3{font-weight:600;font-size:16px;line-height:18px}.dial-base-button{display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px}.dial-base-button-disable{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}.dial-primary-button{background-color:var(--controls-bg-accent,#5c8dea);color:var(--controls-primary,#fcfcfc);display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px;&:focus,&:hover{background-color:var(--controls-bg-accent-hover,#4878d2)}&:focus{border-color:var(--stroke-hover,#f3f4f6)}&:disabled{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}}.dial-secondary-button{background-color:transparent;color:var(--text-primary,#f3f4f6);display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px;border-color:var(--stroke-primary,#333942);&:focus,&:hover{background-color:var(--bg-layer-4,#333942)}&:focus{border-color:var(--stroke-hover,#f3f4f6)}&:disabled{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}}.dial-tertiary-button{background-color:transparent;color:var(--text-accent-primary,#5c8dea);display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px;&:focus,&:hover{background-color:var(--controls-bg-accent-alpha,#5c8dea2b)}&:active,&:focus{border-color:var(--stroke-accent-primary,#5c8dea)}&:disabled{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}}.dial-danger-button{background-color:var(--bg-red-400,#f76464);color:var(--text-primary,#f3f4f6);display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px;&:focus,&:hover{background-color:var(--bg-red-800,#ae2f2f)}&:focus{border-color:var(--stroke-hover,#f3f4f6)}&:disabled{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}}.dial-input{border-radius:3px;border-width:1px;border-style:solid;border-color:var(--stroke-primary,#333942);&:hover{border-color:var(--stroke-hover,#f3f4f6)}&:focus,&:focus-within{border-color:var(--stroke-accent-primary,#5c8dea)}}.dial-input,.dial-input-no-border{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:transparent;font-weight:400;font-size:14px;line-height:16px;width:100%;outline-width:0;&:not(:-moz-placeholder){color:var(--text-primary,#f3f4f6)}&:not(:placeholder-shown){color:var(--text-primary,#f3f4f6)}&:disabled{background-color:var(--bg-layer-3,#222932)}&:disabled:not(:-moz-placeholder){color:var(--text-secondary,#7f8792)}&:disabled,&:disabled:not(:placeholder-shown){color:var(--text-secondary,#7f8792)}}.dial-input-disable,.dial-input-readonly{background-color:var(--bg-layer-3,#222932)}.dial-input-disable:not(:-moz-placeholder){color:var(--text-secondary,#7f8792)}.dial-input-disable,.dial-input-disable:not(:placeholder-shown){color:var(--text-secondary,#7f8792)}.dial-input-error{border-color:var(--stroke-error,#f76464)}.dial-input-field{height:38px}input{-moz-appearance:textfield;&::-webkit-inner-spin-button,&::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}&:focus{outline:none}}.dial-textarea{min-height:72px;resize:both;overflow:auto;white-space:normal}.dial-input-radio{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;padding:0;height:18px;width:18px;border-color:var(--stroke-hover,#f3f4f6);background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:currentColor;font:inherit;&:checked{border-color:var(--stroke-accent-primary,#5c8dea)}&:checked{&:after{height:10px;width:10px;background-color:var(--bg-accent-primary,#5c8dea);content:"";border-radius:18px}}&:focus,&:hover{border-width:1px;border-color:var(--stroke-accent-primary,#5c8dea);background-color:transparent}&:disabled{pointer-events:none}&:disabled{&:checked{border-color:var(--stroke-primary,#333942)}&:checked{&:after{background-color:var(--controls-bg-disable,#7f8792)}}}}div .dial-sm-popup{max-width:100%}@media (min-width:768px){div .dial-sm-popup{max-width:400px}}div .dial-md-popup{max-width:100%}@media (min-width:768px){div .dial-md-popup{max-width:800px}}div .dial-lg-popup{max-width:100%}@media (min-width:768px){div .dial-lg-popup{max-width:1200px}}div .dial-popup{position:relative;display:flex;height:100%;max-height:100%;width:100%;flex-direction:column;border-radius:3px;background-color:var(--bg-layer-3,#222932);--tw-shadow:0 0 4px 0 var(--bg-blackout,#090d13b3);--tw-shadow-colored:0 0 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (min-width:768px){div .dial-popup{height:auto}}@layer ui{*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
|
|
2
|
-
/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}::-webkit-scrollbar-corner,::-webkit-scrollbar-track,::-webkit-scrollbar-track:hover,:not(:hover)::-webkit-scrollbar-thumb{background-color:transparent}::-webkit-scrollbar-thumb{cursor:pointer;border-radius:3px;background-color:var(--bg-layer-4,#333942)}::-webkit-scrollbar{height:4px;width:4px}*{scrollbar-width:thin;scrollbar-color:transparent transparent}:hover{scrollbar-color:var(--bg-layer-4,#333942) transparent}.divide-y>:empty~:not([hidden]){border-top:none;border-bottom:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.relative{position:relative}.z-\[52\]{z-index:52}.z-\[53\]{z-index:53}.z-\[55\]{z-index:55}.my-1{margin-top:.25rem}.mb-1,.my-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-\[26px\]{margin-left:26px}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-3{width:.75rem;height:.75rem}.h-0{height:0}.h-\[10px\]{height:10px}.h-\[120px\]{height:120px}.h-\[18px\]{height:18px}.h-\[22px\]{height:22px}.h-\[250px\]{height:250px}.h-\[300px\]{height:300px}.h-\[32px\]{height:32px}.h-\[34px\]{height:34px}.h-\[38px\]{height:38px}.h-\[4px\]{height:4px}.h-auto{height:auto}.h-full{height:100%}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-4{min-height:1rem}.min-h-\[220px\]{min-height:220px}.min-h-\[38px\]{min-height:38px}.min-h-\[72px\]{min-height:72px}.min-h-screen{min-height:100vh}.w-0{width:0}.w-2{width:.5rem}.w-80{width:20rem}.w-\[10px\]{width:10px}.w-\[18px\]{width:18px}.w-\[22px\]{width:22px}.w-\[250px\]{width:250px}.w-\[320px\]{width:320px}.w-\[360px\]{width:360px}.w-\[36px\]{width:36px}.w-\[400px\]{width:400px}.w-\[450px\]{width:450px}.w-\[4px\]{width:4px}.w-\[500px\]{width:500px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0}.min-w-\[100px\]{min-width:100px}.min-w-\[180px\]{min-width:180px}.min-w-\[400px\]{min-width:400px}.min-w-\[600px\]{min-width:600px}.min-w-\[800px\]{min-width:800px}.max-w-80{max-width:20rem}.max-w-\[1000px\]{max-width:1000px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[1400px\]{max-width:1400px}.max-w-\[200px\]{max-width:200px}.max-w-\[300px\]{max-width:300px}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.grow-0{flex-grow:0}.basis-auto{flex-basis:auto}.border-collapse{border-collapse:collapse}.rotate-180{--tw-rotate:180deg}.rotate-180,.transform{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))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin-steps{animation:spin .75s steps(8) infinite}.\!cursor-not-allowed{cursor:not-allowed!important}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-\[minmax\(0\2c 100px\)_1fr\]{grid-template-columns:minmax(0,100px) 1fr}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-\[160px\]{-moz-column-gap:160px;column-gap:160px}.gap-y-1{row-gap:.25rem}.gap-y-10{row-gap:2.5rem}.gap-y-3{row-gap:.75rem}.gap-y-6{row-gap:1.5rem}.gap-y-\[80px\]{row-gap:80px}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-tertiary>:not([hidden])~:not([hidden]){border-color:var(--stroke-tertiary,#090d13)}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;white-space:nowrap}.overflow-ellipsis,.truncate{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:3px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.border{border-width:1px}.border-0{border-width:0}.border-l-0{border-left-width:0}.border-r-0{border-right-width:0}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-t-4{border-top-width:4px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-accent-primary{border-color:var(--stroke-accent-primary,#5c8dea)}.border-accent-secondary{border-color:var(--stroke-accent-secondary,#37babc)}.border-error{border-color:var(--stroke-error,#f76464)}.border-hover{border-color:var(--stroke-hover,#f3f4f6)}.border-icon-secondary{border-color:var(--icon-secondary,#7f8792)}.border-primary{border-color:var(--stroke-primary,#333942)}.border-red-900{border-color:var(--red-900,#402027)}.border-tertiary{border-color:var(--stroke-tertiary,#090d13)}.\!bg-accent-secondary{background-color:var(--bg-accent-secondary,#37babc)!important}.bg-accent-primary{background-color:var(--bg-accent-primary,#5c8dea)}.bg-accent-secondary{background-color:var(--bg-accent-secondary,#37babc)}.bg-blackout{background-color:var(--bg-blackout,#090d13b3)}.bg-controls-accent{background-color:var(--controls-bg-accent,#5c8dea)}.bg-controls-disable{background-color:var(--controls-bg-disable,#7f8792)}.bg-controls-enable-primary{background-color:var(--controls-enable-primary,#fcfcfc)}.bg-error{background-color:var(--bg-error,#402027)}.bg-info{background-color:var(--bg-info,#1c2c47)}.bg-layer-0{background-color:var(--bg-layer-0,#000)}.bg-layer-2{background-color:var(--bg-layer-2,#141a23)}.bg-layer-3{background-color:var(--bg-layer-3,#222932)}.bg-layer-4{background-color:var(--bg-layer-4,#333942)}.bg-red-400{background-color:var(--bg-red-400,#f76464)}.bg-success{background-color:var(--bg-success,#1d3841)}.bg-transparent{background-color:transparent}.bg-warning{background-color:var(--bg-warning,#3f3d25)}.stroke-primary{stroke:var(--stroke-primary,#333942)}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[6px\]{padding:6px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-\[6px\]{padding-left:6px;padding-right:6px}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-1{padding-bottom:.25rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font{font-family:var(--theme-font,var(--font-inter))}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.tracking-wider{letter-spacing:.05em}.text-\[var\(--bg-layer-0\2c _\#000000\)\]{color:var(--bg-layer-0,#000)}.text-accent-primary{color:var(--text-accent-primary,#5c8dea)}.text-controls-disable{color:var(--controls-disable,#333942)}.text-error{color:var(--text-error,#f76464)}.text-icon-accent-primary{color:var(--icon-accent-primary,#5c8dea)}.text-icon-accent-secondary{color:var(--icon-accent-secondary,#37babc)}.text-info{color:var(--text-info,#5c8dea)}.text-primary{color:var(--text-primary,#f3f4f6)}.text-secondary{color:var(--text-secondary,#7f8792)}.text-success{color:var(--text-success,#37babc)}.text-warning{color:var(--text-warning,#f4ce46)}.text-white{color:var(--text-white,#fff)}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 0 4px 0 var(--bg-blackout,#090d13b3);--tw-shadow-colored:0 0 4px 0 var(--tw-shadow-color)}.shadow,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-offset-0{outline-offset:0}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-sky-400{--tw-ring-opacity:1;--tw-ring-color:rgb(56 189 248/var(--tw-ring-opacity,1))}.ring-offset-0{--tw-ring-offset-width:0px}.ring-offset-1{--tw-ring-offset-width:1px}.ring-offset-2{--tw-ring-offset-width:2px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.\[writing-mode\:tb-rl\]{writing-mode:tb-rl}}.before\:mr-2:before{content:var(--tw-content);margin-right:.5rem}.before\:inline-block:before{content:var(--tw-content);display:inline-block}.before\:h-\[18px\]:before{content:var(--tw-content);height:18px}.before\:w-\[18px\]:before{content:var(--tw-content);width:18px}.before\:rounded:before{content:var(--tw-content);border-radius:3px}.before\:border:before{content:var(--tw-content);border-width:1px}.before\:border-hover:before{content:var(--tw-content);border-color:var(--stroke-hover,#f3f4f6)}.before\:border-icon-secondary:before{content:var(--tw-content);border-color:var(--icon-secondary,#7f8792)}.before\:bg-layer-4:before{content:var(--tw-content);background-color:var(--bg-layer-4,#333942)}.before\:content-\[\"\"\]:before{--tw-content:"";content:var(--tw-content)}.hover\:bg-accent-primary-alpha:hover{background-color:var(--bg-accent-primary-alpha,#5c8dea2b)}.hover\:text-accent-primary:hover{color:var(--text-accent-primary,#5c8dea)}.hover\:text-error:hover{color:var(--text-error,#f76464)}.hover\:text-icon-accent-primary:hover{color:var(--icon-accent-primary,#5c8dea)}.hover\:text-primary:hover{color:var(--text-primary,#f3f4f6)}.hover\:opacity-90:hover{opacity:.9}.focus-visible\:border-none:focus-visible{border-style:none}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline:focus-visible{outline-style:solid}@media (min-width:640px){.sm\:inline{display:inline}}@media (min-width:768px){.md\:max-w-\[1200px\]{max-width:1200px}.md\:max-w-\[400px\]{max-width:400px}.md\:max-w-\[800px\]{max-width:800px}.md\:p-4{padding:1rem}}
|
|
1
|
+
.dial-h1{font-weight:600}.dial-h1,.dial-h2{font-size:20px;line-height:24px}.dial-h2{font-weight:400}.dial-h3{font-weight:600;line-height:18px}.dial-body,.dial-h3{font-size:16px}.dial-body{font-weight:400;line-height:28px}.dial-small{font-weight:400}.dial-small,.dial-small-semi{font-size:14px;line-height:16px}.dial-small-semi{font-weight:600}.dial-small-medium{font-weight:400;font-size:14px;line-height:16px}.dial-small-150{font-weight:400;font-size:14px;line-height:21px}.dial-tiny{line-height:14px}.dial-tiny,.dial-tiny-150{font-weight:400;font-size:12px}.dial-tiny-150{line-height:18px}.dial-caption{font-weight:400;font-size:10px;line-height:12px}h1{font-weight:600}h1,h2{font-size:20px;line-height:24px}h2{font-weight:400}h3{font-weight:600;font-size:16px;line-height:18px}.dial-base-button{display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px}.dial-base-button-disable{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}.dial-primary-button{background-color:var(--controls-bg-accent,#5c8dea);color:var(--controls-primary,#fcfcfc);display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px;&:focus,&:hover{background-color:var(--controls-bg-accent-hover,#4878d2)}&:focus{border-color:var(--stroke-hover,#f3f4f6)}&:disabled{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}}.dial-secondary-button{background-color:transparent;color:var(--text-primary,#f3f4f6);display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px;border-color:var(--stroke-primary,#333942);&:focus,&:hover{background-color:var(--bg-layer-4,#333942)}&:focus{border-color:var(--stroke-hover,#f3f4f6)}&:disabled{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}}.dial-tertiary-button{background-color:transparent;color:var(--text-accent-primary,#5c8dea);display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px;&:focus,&:hover{background-color:var(--controls-bg-accent-alpha,#5c8dea2b)}&:active,&:focus{border-color:var(--stroke-accent-primary,#5c8dea)}&:disabled{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}}.dial-danger-button{background-color:var(--bg-red-400,#f76464);color:var(--text-primary,#f3f4f6);display:flex;flex-direction:row;align-items:center;padding:.5rem .75rem;border-radius:3px;border:1px solid transparent;font-weight:400;font-size:14px;line-height:16px;min-width:38px;min-height:38px;&:focus,&:hover{background-color:var(--bg-red-800,#ae2f2f)}&:focus{border-color:var(--stroke-hover,#f3f4f6)}&:disabled{pointer-events:none;background-color:var(--controls-bg-disable,#7f8792);color:var(--controls-disable,#333942)}}.dial-input{border-radius:3px;border-width:1px;border-style:solid;border-color:var(--stroke-primary,#333942);&:hover{border-color:var(--stroke-hover,#f3f4f6)}&:focus,&:focus-within{border-color:var(--stroke-accent-primary,#5c8dea)}}.dial-input,.dial-input-no-border{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:transparent;font-weight:400;font-size:14px;line-height:16px;width:100%;outline-width:0;&:not(:-moz-placeholder){color:var(--text-primary,#f3f4f6)}&:not(:placeholder-shown){color:var(--text-primary,#f3f4f6)}&:disabled{background-color:var(--bg-layer-3,#222932)}&:disabled:not(:-moz-placeholder){color:var(--text-secondary,#7f8792)}&:disabled,&:disabled:not(:placeholder-shown){color:var(--text-secondary,#7f8792)}}.dial-input-disable,.dial-input-readonly{background-color:var(--bg-layer-3,#222932)}.dial-input-disable:not(:-moz-placeholder){color:var(--text-secondary,#7f8792)}.dial-input-disable,.dial-input-disable:not(:placeholder-shown){color:var(--text-secondary,#7f8792)}.dial-input-error{border-color:var(--stroke-error,#f76464)}.dial-input-field{height:38px}input{-moz-appearance:textfield;&::-webkit-inner-spin-button,&::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}&:focus{outline:none}}.dial-textarea{min-height:72px;resize:both;overflow:auto;white-space:normal}.dial-input-radio{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;padding:0;height:18px;width:18px;border-color:var(--stroke-hover,#f3f4f6);background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:currentColor;font:inherit;&:checked{border-color:var(--stroke-accent-primary,#5c8dea)}&:checked{&:after{height:10px;width:10px;background-color:var(--bg-accent-primary,#5c8dea);content:"";border-radius:18px}}&:focus,&:hover{border-width:1px;border-color:var(--stroke-accent-primary,#5c8dea);background-color:transparent}&:disabled{pointer-events:none}&:disabled{&:checked{border-color:var(--stroke-primary,#333942)}&:checked{&:after{background-color:var(--controls-bg-disable,#7f8792)}}}}div .dial-sm-popup{max-width:100%}@media (min-width:768px){div .dial-sm-popup{max-width:400px}}div .dial-md-popup{max-width:100%}@media (min-width:768px){div .dial-md-popup{max-width:800px}}div .dial-lg-popup{max-width:100%}@media (min-width:768px){div .dial-lg-popup{max-width:1200px}}div .dial-popup{position:relative;display:flex;height:100%;max-height:100%;width:100%;flex-direction:column;border-radius:3px;background-color:var(--bg-layer-3,#222932);--tw-shadow:0 0 4px 0 var(--bg-blackout,#090d13b3);--tw-shadow-colored:0 0 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (min-width:768px){div .dial-popup{height:auto}}div .dial-danger-popup{border-top-width:4px;border-color:var(--stroke-error,#f76464)}@layer ui{*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
|
|
2
|
+
/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}::-webkit-scrollbar-corner,::-webkit-scrollbar-track,::-webkit-scrollbar-track:hover,:not(:hover)::-webkit-scrollbar-thumb{background-color:transparent}::-webkit-scrollbar-thumb{cursor:pointer;border-radius:3px;background-color:var(--bg-layer-4,#333942)}::-webkit-scrollbar{height:4px;width:4px}*{scrollbar-width:thin;scrollbar-color:transparent transparent}:hover{scrollbar-color:var(--bg-layer-4,#333942) transparent}.divide-y>:empty~:not([hidden]){border-top:none;border-bottom:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.relative{position:relative}.z-\[52\]{z-index:52}.z-\[53\]{z-index:53}.z-\[55\]{z-index:55}.my-1{margin-top:.25rem}.mb-1,.my-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-\[26px\]{margin-left:26px}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-3{width:.75rem;height:.75rem}.h-0{height:0}.h-11{height:2.75rem}.h-\[10px\]{height:10px}.h-\[120px\]{height:120px}.h-\[18px\]{height:18px}.h-\[22px\]{height:22px}.h-\[250px\]{height:250px}.h-\[300px\]{height:300px}.h-\[32px\]{height:32px}.h-\[34px\]{height:34px}.h-\[38px\]{height:38px}.h-\[4px\]{height:4px}.h-auto{height:auto}.h-full{height:100%}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-4{min-height:1rem}.min-h-\[220px\]{min-height:220px}.min-h-\[38px\]{min-height:38px}.min-h-\[72px\]{min-height:72px}.min-h-screen{min-height:100vh}.w-0{width:0}.w-2{width:.5rem}.w-32{width:8rem}.w-40{width:10rem}.w-48{width:12rem}.w-72{width:18rem}.w-80{width:20rem}.w-96{width:24rem}.w-\[10px\]{width:10px}.w-\[18px\]{width:18px}.w-\[22px\]{width:22px}.w-\[250px\]{width:250px}.w-\[280px\]{width:280px}.w-\[320px\]{width:320px}.w-\[360px\]{width:360px}.w-\[36px\]{width:36px}.w-\[400px\]{width:400px}.w-\[450px\]{width:450px}.w-\[4px\]{width:4px}.w-\[500px\]{width:500px}.w-\[600px\]{width:600px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0}.min-w-\[100px\]{min-width:100px}.min-w-\[180px\]{min-width:180px}.min-w-\[400px\]{min-width:400px}.min-w-\[600px\]{min-width:600px}.min-w-\[800px\]{min-width:800px}.max-w-80{max-width:20rem}.max-w-\[1000px\]{max-width:1000px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[1400px\]{max-width:1400px}.max-w-\[160px\]{max-width:160px}.max-w-\[200px\]{max-width:200px}.max-w-\[300px\]{max-width:300px}.max-w-\[80px\]{max-width:80px}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.grow-0{flex-grow:0}.basis-auto{flex-basis:auto}.border-collapse{border-collapse:collapse}.rotate-180{--tw-rotate:180deg}.rotate-180,.transform{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))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin-steps{animation:spin .75s steps(8) infinite}.\!cursor-not-allowed{cursor:not-allowed!important}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-\[minmax\(0\2c 100px\)_1fr\]{grid-template-columns:minmax(0,100px) 1fr}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-\[160px\]{-moz-column-gap:160px;column-gap:160px}.gap-y-1{row-gap:.25rem}.gap-y-10{row-gap:2.5rem}.gap-y-3{row-gap:.75rem}.gap-y-6{row-gap:1.5rem}.gap-y-\[80px\]{row-gap:80px}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-tertiary>:not([hidden])~:not([hidden]){border-color:var(--stroke-tertiary,#090d13)}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;white-space:nowrap}.overflow-ellipsis,.truncate{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:3px}.rounded-\[8px\]{border-radius:8px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.border{border-width:1px}.border-0{border-width:0}.border-b-2,.border-b-\[2px\]{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-0{border-left-width:0}.border-l-2{border-left-width:2px}.border-r-0{border-right-width:0}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-t-4{border-top-width:4px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[\#F4CE46\]{--tw-border-opacity:1;border-color:rgb(244 206 70/var(--tw-border-opacity,1))}.border-accent-primary{border-color:var(--stroke-accent-primary,#5c8dea)}.border-accent-secondary{border-color:var(--stroke-accent-secondary,#37babc)}.border-error{border-color:var(--stroke-error,#f76464)}.border-hover{border-color:var(--stroke-hover,#f3f4f6)}.border-icon-secondary{border-color:var(--icon-secondary,#7f8792)}.border-primary{border-color:var(--stroke-primary,#333942)}.border-red-900{border-color:var(--red-900,#402027)}.border-tertiary{border-color:var(--stroke-tertiary,#090d13)}.border-transparent{border-color:transparent}.border-b-accent-primary{border-bottom-color:var(--stroke-accent-primary,#5c8dea)}.border-l-accent-primary{border-left-color:var(--stroke-accent-primary,#5c8dea)}.\!bg-accent-secondary{background-color:var(--bg-accent-secondary,#37babc)!important}.bg-accent-primary{background-color:var(--bg-accent-primary,#5c8dea)}.bg-accent-primary-alpha{background-color:var(--bg-accent-primary-alpha,#5c8dea2b)}.bg-accent-secondary{background-color:var(--bg-accent-secondary,#37babc)}.bg-blackout{background-color:var(--bg-blackout,#090d13b3)}.bg-controls-accent{background-color:var(--controls-bg-accent,#5c8dea)}.bg-controls-disable{background-color:var(--controls-bg-disable,#7f8792)}.bg-controls-enable-primary{background-color:var(--controls-enable-primary,#fcfcfc)}.bg-error{background-color:var(--bg-error,#402027)}.bg-info{background-color:var(--bg-info,#1c2c47)}.bg-layer-0{background-color:var(--bg-layer-0,#000)}.bg-layer-1{background-color:var(--bg-layer-1,#090d13)}.bg-layer-2{background-color:var(--bg-layer-2,#141a23)}.bg-layer-3{background-color:var(--bg-layer-3,#222932)}.bg-layer-4{background-color:var(--bg-layer-4,#333942)}.bg-red-400{background-color:var(--bg-red-400,#f76464)}.bg-success{background-color:var(--bg-success,#1d3841)}.bg-transparent{background-color:transparent}.bg-warning{background-color:var(--bg-warning,#3f3d25)}.stroke-primary{stroke:var(--stroke-primary,#333942)}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[6px\]{padding:6px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-\[6px\]{padding-left:6px;padding-right:6px}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-1{padding-bottom:.25rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font{font-family:var(--theme-font,var(--font-inter))}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.leading-4{line-height:1rem}.leading-none{line-height:1}.tracking-wider{letter-spacing:.05em}.text-\[var\(--bg-layer-0\2c _\#000000\)\]{color:var(--bg-layer-0,#000)}.text-accent-primary{color:var(--text-accent-primary,#5c8dea)}.text-controls-disable{color:var(--controls-disable,#333942)}.text-error{color:var(--text-error,#f76464)}.text-icon-accent-primary{color:var(--icon-accent-primary,#5c8dea)}.text-icon-accent-secondary{color:var(--icon-accent-secondary,#37babc)}.text-icon-secondary{color:var(--icon-secondary,#7f8792)}.text-info{color:var(--text-info,#5c8dea)}.text-primary{color:var(--text-primary,#f3f4f6)}.text-secondary{color:var(--text-secondary,#7f8792)}.text-success{color:var(--text-success,#37babc)}.text-warning{color:var(--text-warning,#f4ce46)}.text-white{color:var(--text-white,#fff)}.underline{text-decoration-line:underline}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 0 4px 0 var(--bg-blackout,#090d13b3);--tw-shadow-colored:0 0 4px 0 var(--tw-shadow-color)}.shadow,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-offset-0{outline-offset:0}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-sky-400{--tw-ring-opacity:1;--tw-ring-color:rgb(56 189 248/var(--tw-ring-opacity,1))}.ring-offset-0{--tw-ring-offset-width:0px}.ring-offset-1{--tw-ring-offset-width:1px}.ring-offset-2{--tw-ring-offset-width:2px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.\[writing-mode\:tb-rl\]{writing-mode:tb-rl}}.before\:mr-2:before{content:var(--tw-content);margin-right:.5rem}.before\:inline-block:before{content:var(--tw-content);display:inline-block}.before\:h-\[18px\]:before{content:var(--tw-content);height:18px}.before\:w-\[18px\]:before{content:var(--tw-content);width:18px}.before\:rounded:before{content:var(--tw-content);border-radius:3px}.before\:border:before{content:var(--tw-content);border-width:1px}.before\:border-hover:before{content:var(--tw-content);border-color:var(--stroke-hover,#f3f4f6)}.before\:border-icon-secondary:before{content:var(--tw-content);border-color:var(--icon-secondary,#7f8792)}.before\:bg-layer-4:before{content:var(--tw-content);background-color:var(--bg-layer-4,#333942)}.before\:content-\[\"\"\]:before{--tw-content:"";content:var(--tw-content)}.hover\:bg-accent-primary-alpha:hover{background-color:var(--bg-accent-primary-alpha,#5c8dea2b)}.hover\:text-accent-primary:hover{color:var(--text-accent-primary,#5c8dea)}.hover\:text-accent-tertiary:hover{color:var(--text-accent-tertiary,#a972ff)}.hover\:text-error:hover{color:var(--text-error,#f76464)}.hover\:text-icon-accent-primary:hover{color:var(--icon-accent-primary,#5c8dea)}.hover\:text-primary:hover{color:var(--text-primary,#f3f4f6)}.hover\:opacity-90:hover{opacity:.9}.focus\:bg-accent-primary-alpha:focus{background-color:var(--bg-accent-primary-alpha,#5c8dea2b)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\:border-none:focus-visible{border-style:none}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline:focus-visible{outline-style:solid}@media (min-width:640px){.sm\:inline{display:inline}}@media (min-width:768px){.md\:max-w-\[1200px\]{max-width:1200px}.md\:max-w-\[400px\]{max-width:400px}.md\:max-w-\[800px\]{max-width:800px}.md\:p-4{padding:1rem}}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { FC, ReactNode } from 'react';
|
|
2
|
+
import { DialBreadcrumbPathItem } from '../../models/breadcrumb';
|
|
3
|
+
export interface DialBreadcrumbProps {
|
|
4
|
+
pathItems?: DialBreadcrumbPathItem[];
|
|
5
|
+
separator?: ReactNode;
|
|
6
|
+
ariaLabel?: string;
|
|
7
|
+
cssClass?: string;
|
|
8
|
+
children?: ReactNode;
|
|
9
|
+
titleCssClass?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Breadcrumb navigation component with horizontal scroll on overflow.
|
|
13
|
+
*
|
|
14
|
+
* Use either the `pathItems` prop or compose with `<DialBreadcrumbItem/>` as children.
|
|
15
|
+
* The last item is treated as the current page.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* <DialBreadcrumb
|
|
20
|
+
* pathItems={[
|
|
21
|
+
* { title: 'Home', href: '/' },
|
|
22
|
+
* { title: 'Section', href: '/section' },
|
|
23
|
+
* { title: 'Current Page' },
|
|
24
|
+
* ]}
|
|
25
|
+
* />
|
|
26
|
+
*
|
|
27
|
+
* <DialBreadcrumb>
|
|
28
|
+
* <DialBreadcrumbItem title="Home" href="/" />
|
|
29
|
+
* <DialBreadcrumbItem title="Section" href="/section" />
|
|
30
|
+
* <DialBreadcrumbItem title="Current Page" />
|
|
31
|
+
* </DialBreadcrumb>
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @param pathItems - Array of breadcrumb pathItems (see `DialBreadcrumbItem`).
|
|
35
|
+
* @param separator - Custom separator node (default: right chevron icon).
|
|
36
|
+
* @param ariaLabel - Aria label for the `<nav>` element (default: "Breadcrumb").
|
|
37
|
+
* @param cssClass - Additional CSS classes for the `<nav>` container.
|
|
38
|
+
* @param children - Alternatively, compose with `<DialBreadcrumbItem/>` as children.
|
|
39
|
+
* @param titleCssClass - Additional CSS classes applied to each item when using `pathItems` prop.
|
|
40
|
+
*/
|
|
41
|
+
export declare const DialBreadcrumb: FC<DialBreadcrumbProps>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FC, ReactNode } from 'react';
|
|
2
|
+
export interface DialBreadcrumbItemProps {
|
|
3
|
+
title: ReactNode;
|
|
4
|
+
href?: string;
|
|
5
|
+
onClick?: React.MouseEventHandler<HTMLAnchorElement>;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
iconBefore?: ReactNode;
|
|
8
|
+
cssClass?: string;
|
|
9
|
+
titleCssClass?: string;
|
|
10
|
+
isLast?: boolean;
|
|
11
|
+
separator?: ReactNode;
|
|
12
|
+
}
|
|
13
|
+
export declare const DialBreadcrumbItem: FC<DialBreadcrumbItemProps>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export declare const breadcrumbBaseClasses = "w-full overflow-x-auto";
|
|
3
|
+
export declare const breadcrumbListClasses = "flex flex-nowrap items-center gap-2 min-w-0 px-0 py-0 whitespace-nowrap";
|
|
4
|
+
export declare const breadcrumbItemBaseClasses = "flex items-center gap-2 min-w-0 shrink-0 dial-small";
|
|
5
|
+
export declare const breadcrumbLinkBaseClasses = "inline-flex items-center gap-1 min-w-0 transition-colors";
|
|
6
|
+
export declare const breadcrumbLinkInteractiveClasses = "text-secondary hover:text-accent-primary";
|
|
7
|
+
export declare const breadcrumbCurrentClasses = "text-primary cursor-default";
|
|
8
|
+
export declare const breadcrumbSeparatorClasses = "flex-none inline-flex items-center leading-none text-icon-secondary";
|
|
9
|
+
export declare const defaultSeparator: ReactNode;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
export interface DialCheckboxProps {
|
|
3
3
|
id: string;
|
|
4
|
-
label?: string;
|
|
4
|
+
label?: string | React.ReactNode;
|
|
5
5
|
checked: boolean;
|
|
6
6
|
disabled?: boolean;
|
|
7
7
|
indeterminate?: boolean;
|
|
8
8
|
ariaLabel?: string;
|
|
9
9
|
onChange?: (value?: boolean, id?: string) => void;
|
|
10
|
+
cssClass?: string;
|
|
10
11
|
}
|
|
11
12
|
/**
|
|
12
13
|
* A Checkbox component with styling options
|
|
@@ -29,5 +30,6 @@ export interface DialCheckboxProps {
|
|
|
29
30
|
* @param [indeterminate=false] - indeterminate state
|
|
30
31
|
* @param [ariaLabel] - Accessible label for screen readers when no title is provided
|
|
31
32
|
* @param [onChange] - Callback function called when the checkbox value changes
|
|
33
|
+
* @param [cssClass] - Additional CSS classes to apply to the checkbox wrapper
|
|
32
34
|
*/
|
|
33
35
|
export declare const DialCheckbox: FC<DialCheckboxProps>;
|
|
@@ -15,6 +15,7 @@ export interface DialDropdownProps {
|
|
|
15
15
|
renderOverlay?: () => ReactNode;
|
|
16
16
|
trigger?: DropdownTrigger[];
|
|
17
17
|
placement?: Placement;
|
|
18
|
+
allowedPlacements?: Placement[];
|
|
18
19
|
disabled?: boolean;
|
|
19
20
|
open?: boolean;
|
|
20
21
|
defaultOpen?: boolean;
|
|
@@ -56,6 +57,7 @@ export interface DialDropdownProps {
|
|
|
56
57
|
* @param [renderOverlay] - Render function for fully custom overlay content (ignored when `menu` is provided)
|
|
57
58
|
* @param [trigger=[DropdownTrigger.Click]] - Interactions that open the menu
|
|
58
59
|
* @param [placement] - Floating UI placement string; when omitted, auto placement is used
|
|
60
|
+
* @param [allowedPlacements] - Restricts the allowed placements
|
|
59
61
|
* @param [disabled=false] - Disables interaction and prevents opening
|
|
60
62
|
* @param [open] - Controlled open state (when provided, `defaultOpen` is ignored)
|
|
61
63
|
* @param [defaultOpen=false] - Initial open state in uncontrolled mode
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { FC, ReactNode } from 'react';
|
|
2
|
+
import { DialTooltipContainerOptions } from '../Tooltip/TooltipContext';
|
|
3
|
+
export interface DialEllipsisTooltipProps extends DialTooltipContainerOptions {
|
|
4
|
+
text: string | ReactNode;
|
|
5
|
+
cssClass?: string;
|
|
6
|
+
contentClassName?: string;
|
|
7
|
+
hideTooltip?: boolean;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Single-line text with CSS ellipsis that shows a tooltip **only when actually truncated**.
|
|
11
|
+
* If the text fits, tooltip content is empty and the popup stays hidden.
|
|
12
|
+
*
|
|
13
|
+
* Important: width must be finite for truncation.
|
|
14
|
+
* Consumers can override via `cssClass`.
|
|
15
|
+
*
|
|
16
|
+
* a11y: when truncated, the full text is exposed via `aria-label` on the reference node.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```tsx
|
|
20
|
+
* <DialEllipsisTooltip text="Very long message that will be truncated" />
|
|
21
|
+
* <DialEllipsisTooltip text={<span className="font-medium">Custom node</span>} cssClass="max-w-[160px]" />
|
|
22
|
+
* <DialEllipsisTooltip text="Tooltip disabled even if truncated" hideTooltip />
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @param text The text or node to display (truncated with ellipsis if too long).
|
|
26
|
+
* @param cssClass Optional additional CSS classes for the text container (e.g. to set width).
|
|
27
|
+
* @param contentClassName Optional additional CSS classes for the tooltip content.
|
|
28
|
+
* @param hideTooltip If true, disables the tooltip even if text is truncated.
|
|
29
|
+
* @param tooltipProps Additional props to pass to the underlying DialTooltipContainer.
|
|
30
|
+
*/
|
|
31
|
+
export declare const DialEllipsisTooltip: FC<DialEllipsisTooltipProps>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const tooltipContentBaseClasses = "text-primary";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
1
|
+
import { FC, FocusEvent } from 'react';
|
|
2
2
|
import { InputBaseProps } from '../../models/field-control-props';
|
|
3
3
|
export interface DialInputProps extends InputBaseProps {
|
|
4
4
|
type?: string;
|
|
@@ -7,6 +7,7 @@ export interface DialInputProps extends InputBaseProps {
|
|
|
7
7
|
hideBorder?: boolean;
|
|
8
8
|
tooltipTriggerClassName?: string;
|
|
9
9
|
onChange?: (value: string) => void;
|
|
10
|
+
onBlur?: (event: FocusEvent<HTMLInputElement, Element>) => void;
|
|
10
11
|
}
|
|
11
12
|
/**
|
|
12
13
|
* A flexible input component with icon support and various styling options
|
|
@@ -24,7 +25,9 @@ export interface DialInputProps extends InputBaseProps {
|
|
|
24
25
|
*
|
|
25
26
|
* @param elementId - Unique identifier for the input element
|
|
26
27
|
* @param [value] - The current value of the input
|
|
28
|
+
* @param [defaultValue] - The initial value of the input
|
|
27
29
|
* @param [onChange] - Callback function called when the input value changes
|
|
30
|
+
* @param [onBlur] - Callback function called when the input blurs
|
|
28
31
|
* @param [iconBefore] - Icon or element to display before the input
|
|
29
32
|
* @param [iconAfter] - Icon or element to display after the input
|
|
30
33
|
* @param [placeholder] - Placeholder text displayed when input is empty
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
import { FieldControlProps, InputBaseProps } from '../../models/field-control-props';
|
|
3
3
|
export interface DialInputFieldBaseProps extends FieldControlProps, InputBaseProps {
|
|
4
|
-
value?: string | number;
|
|
4
|
+
value?: string | number | null;
|
|
5
5
|
defaultEmptyText?: string;
|
|
6
6
|
errorText?: string;
|
|
7
7
|
elementCssClass?: string;
|
|
@@ -4,7 +4,7 @@ export interface DialInputPopupProps {
|
|
|
4
4
|
selectedValue?: string | string[];
|
|
5
5
|
children: ReactNode;
|
|
6
6
|
onOpen: () => void;
|
|
7
|
-
|
|
7
|
+
disabled?: boolean;
|
|
8
8
|
valueCssClasses?: string;
|
|
9
9
|
inputCssClasses?: string;
|
|
10
10
|
elementId?: string;
|
|
@@ -23,7 +23,7 @@ export interface DialInputPopupProps {
|
|
|
23
23
|
* selectedValue="Selected Item"
|
|
24
24
|
* emptyValueText="No value selected"
|
|
25
25
|
* onOpen={() => setModalState(true)}
|
|
26
|
-
*
|
|
26
|
+
* disabled={false}
|
|
27
27
|
* valueCssClasses="custom-value-class"
|
|
28
28
|
* inputCssClasses="custom-input-class"
|
|
29
29
|
* elementId="input-modal"
|
|
@@ -37,7 +37,7 @@ export interface DialInputPopupProps {
|
|
|
37
37
|
* @param [selectedValue] - The currently selected value(s). Can be a string for a single value or an array of strings for multiple values.
|
|
38
38
|
* @param children - The content to render inside the modal when it is opened.
|
|
39
39
|
* @param onOpen - A callback function triggered when the modal open button is clicked.
|
|
40
|
-
* @param [
|
|
40
|
+
* @param [disabled=false] - Whether the input is disabled, preventing user interaction.
|
|
41
41
|
* @param [valueCssClasses] - Additional CSS classes applied to the displayed value.
|
|
42
42
|
* @param [inputCssClasses] - Additional CSS classes applied to the input container.
|
|
43
43
|
* @param [elementId] - A unique identifier for the input element, useful for accessibility and testing.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { DialFieldLabelProps } from '../Field/Field';
|
|
3
|
+
import { DialInputPopupProps } from '../InputPopup/InputPopup';
|
|
4
|
+
import { DialRadioGroupProps } from '../RadioGroup/RadioGroup';
|
|
5
|
+
import { DialPopupProps } from '../Popup/Popup';
|
|
6
|
+
export interface RadioGroupPopupFieldProps extends Pick<DialFieldLabelProps, 'fieldTitle' | 'htmlFor'>, Omit<DialInputPopupProps, 'onOpen' | 'children'>, Pick<DialRadioGroupProps, 'radioButtons'>, Pick<DialPopupProps, 'onClose' | 'portalId' | 'size'> {
|
|
7
|
+
customInputValue?: string;
|
|
8
|
+
title: string;
|
|
9
|
+
cancelButtonTitle?: string;
|
|
10
|
+
applyButtonTitle?: string;
|
|
11
|
+
isValid: boolean;
|
|
12
|
+
onApply: () => void;
|
|
13
|
+
selectedRadioValue: string;
|
|
14
|
+
onChangeRadioField: (id: string) => void;
|
|
15
|
+
id: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A composite field that opens a popup with a radio group selector.
|
|
19
|
+
*
|
|
20
|
+
* Renders a labeled readout using `DialInputPopup`; when opened, a `DialPopup`
|
|
21
|
+
* displays a `DialRadioGroup` allowing the user to pick from a list of options.
|
|
22
|
+
* The footer provides Cancel/Apply actions, with Apply disabled when `isValid` is false.
|
|
23
|
+
*
|
|
24
|
+
* The value shown in the collapsed field is derived from either `customInputValue`
|
|
25
|
+
* or the name of the currently selected radio option identified by `selectedValue`.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```tsx
|
|
29
|
+
* <DialRadioGroupPopupField
|
|
30
|
+
* fieldTitle="Status"
|
|
31
|
+
* htmlFor="status"
|
|
32
|
+
* title="Select status"
|
|
33
|
+
* emptyValueText="None"
|
|
34
|
+
* radioButtons={[
|
|
35
|
+
* { id: 'draft', name: 'Draft' },
|
|
36
|
+
* { id: 'review', name: 'In Review' },
|
|
37
|
+
* { id: 'published', name: 'Published' },
|
|
38
|
+
* ]}
|
|
39
|
+
* selectedValue="draft"
|
|
40
|
+
* selectedRadioValue="draft"
|
|
41
|
+
* onChangeRadioField={(id) => console.log('radio changed', id)}
|
|
42
|
+
* id="status-group"
|
|
43
|
+
* isValid={true}
|
|
44
|
+
* onApply={() => console.log('applied')}
|
|
45
|
+
* />
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* @param fieldTitle - Field label text displayed above the input
|
|
49
|
+
* @param htmlFor - Associates the label with an input id for a11y
|
|
50
|
+
* @param [readonly] - When true, the popup cannot be opened
|
|
51
|
+
* @param [selectedValue] - Current value id used to resolve the displayed option name
|
|
52
|
+
* @param radioButtons - Collection of radio options (id/name)
|
|
53
|
+
* @param [customInputValue] - Custom value text to display instead of a radio option name
|
|
54
|
+
* @param [valueCssClasses] - Extra classes applied to the value text in the collapsed field
|
|
55
|
+
* @param [inputCssClasses] - Extra classes applied to the collapsed input container
|
|
56
|
+
* @param emptyValueText - Placeholder text when no value is selected
|
|
57
|
+
* @param [onClose] - Callback fired when the popup closes
|
|
58
|
+
* @param title - Title text shown in the popup header
|
|
59
|
+
* @param [portalId] - Target portal id for rendering the popup
|
|
60
|
+
* @param onApply - Callback fired when the Apply button is clicked
|
|
61
|
+
* @param [cancelButtonTitle="Cancel"] - Text for the Cancel button
|
|
62
|
+
* @param [applyButtonTitle="Apply"] - Text for the Apply button
|
|
63
|
+
* @param isValid - Determines whether the Apply action is enabled
|
|
64
|
+
* @param selectedRadioValue - Currently selected radio id inside the popup
|
|
65
|
+
* @param onChangeRadioField - Handler for radio selection changes
|
|
66
|
+
* @param id - Element id used for the internal radio group
|
|
67
|
+
* @param [size=PopupSize.Md] - Size of the popup
|
|
68
|
+
*/
|
|
69
|
+
export declare const DialRadioGroupPopupField: FC<RadioGroupPopupFieldProps>;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { FC, ReactNode, MouseEvent } from 'react';
|
|
2
|
+
import { SelectOption } from '../../models/select';
|
|
3
|
+
export interface DialSelectProps {
|
|
4
|
+
options: SelectOption[];
|
|
5
|
+
multiple?: boolean;
|
|
6
|
+
value?: string | string[];
|
|
7
|
+
defaultValue?: string | string[];
|
|
8
|
+
placeholder?: string;
|
|
9
|
+
searchable?: boolean;
|
|
10
|
+
selectAll?: boolean;
|
|
11
|
+
selectAllLabel?: string;
|
|
12
|
+
emptyStateTitle?: string;
|
|
13
|
+
emptyStateDescription?: string;
|
|
14
|
+
emptyStateIcon?: ReactNode;
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
cssClass?: string;
|
|
17
|
+
closable?: boolean;
|
|
18
|
+
onClose?: (e: MouseEvent<HTMLButtonElement>) => void;
|
|
19
|
+
onChange?: (next: string | string[]) => void;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* A versatile select supporting single and multiple selections.
|
|
23
|
+
*
|
|
24
|
+
* Single mode mirrors the legacy visual:
|
|
25
|
+
* - Trigger shows the selected option's leading icon + label.
|
|
26
|
+
* - In the list, the selected option is indicated by a LEFT border and tinted background
|
|
27
|
+
* (no check icon).
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```tsx
|
|
31
|
+
* <DialSelect
|
|
32
|
+
* options={[
|
|
33
|
+
* { value: 'option-1', label: 'Option 1' },
|
|
34
|
+
* { value: 'option-2', label: 'Option 2' },
|
|
35
|
+
* ]}
|
|
36
|
+
* multiple
|
|
37
|
+
* />
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* Multiple mode uses checkboxes (including Select All with indeterminate state).
|
|
41
|
+
*
|
|
42
|
+
* @property options - Array of options to select from.
|
|
43
|
+
* @property multiple - Whether multiple selections are allowed.
|
|
44
|
+
* @property value - Controlled selected value(s).
|
|
45
|
+
* @property defaultValue - Uncontrolled initial selected value(s).
|
|
46
|
+
* @property placeholder - Placeholder text when no selection is made.
|
|
47
|
+
* @property searchable - Whether to show a search input to filter options.
|
|
48
|
+
* @property selectAll - Whether to show a "Select All" checkbox in multiple mode.
|
|
49
|
+
* @property selectAllLabel - Label for the "Select All" checkbox.
|
|
50
|
+
* @property emptyStateTitle - Title text when there are no options to display.
|
|
51
|
+
* @property emptyStateDescription - Optional description text when there are no options.
|
|
52
|
+
* @property emptyStateIcon - Optional icon to display when there are no options.
|
|
53
|
+
* @property disabled - Whether the select is disabled.
|
|
54
|
+
* @property cssClass - Additional CSS classes to apply to the select trigger.
|
|
55
|
+
* @property closable - Whether to show a close button in the dropdown header.
|
|
56
|
+
* @property onClose - Callback when the dropdown is closed via the close button.
|
|
57
|
+
* @property onChange - Callback when the selection changes.
|
|
58
|
+
*/
|
|
59
|
+
export declare const DialSelect: FC<DialSelectProps>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const selectTriggerBaseClasses = "dial-input flex px-3 py-2 w-full items-center justify-between gap-2 h-auto";
|
|
2
|
+
export declare const selectOverlayBaseClasses = "w-full rounded";
|
|
3
|
+
export declare const selectOptionBaseClasses = "flex w-full items-center justify-between gap-2 px-3 h-[34px] dial-small text-primary truncate hover:bg-accent-primary-alpha focus:bg-accent-primary-alpha focus:outline-none";
|
|
4
|
+
export declare const selectOptionSelectedClasses = "bg-accent-primary-alpha";
|
|
5
|
+
export declare const selectOptionSingleSelectedClasses = "bg-accent-primary-alpha border-l border-accent-primary border-1";
|
|
6
|
+
export declare const selectOptionDisabledClasses = "opacity-75";
|
|
7
|
+
export declare const selectChevronIcon: import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare const selectCheckIcon: import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { TabModel } from '../../models/tab';
|
|
2
|
+
import { FC } from 'react';
|
|
3
|
+
export interface DialTabProps {
|
|
4
|
+
tab: TabModel;
|
|
5
|
+
active: boolean;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
invalid?: boolean;
|
|
8
|
+
horizontal?: boolean;
|
|
9
|
+
cssClass?: string;
|
|
10
|
+
onClick: (id: string) => void;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* A single tab element used within the {@link DialTabs} component.
|
|
14
|
+
* Supports active, disabled, and invalid states, and can render in
|
|
15
|
+
* horizontal or vertical orientations. Displays an optional error icon
|
|
16
|
+
* when marked as invalid.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```tsx
|
|
20
|
+
* <DialTab
|
|
21
|
+
* tab={{ id: 'overview', name: 'Overview' }}
|
|
22
|
+
* isActive={true}
|
|
23
|
+
* onClick={(id) => console.log('Selected tab:', id)}
|
|
24
|
+
* />
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @param tab - The tab model containing its `id` and `name`.
|
|
28
|
+
* @param active - Whether the tab is currently active.
|
|
29
|
+
* @param [disabled=false] - Whether the tab is disabled and non-interactive.
|
|
30
|
+
* @param [invalid=false] - Whether the tab is marked as invalid, displaying an error icon.
|
|
31
|
+
* @param [horizontal=false] - Whether the tab is displayed in horizontal orientation.
|
|
32
|
+
* @param [cssClass] - Additional CSS classes applied to the tab element.
|
|
33
|
+
* @param onClick - Callback fired when the tab is clicked. Receives the tab’s `id`.
|
|
34
|
+
*/
|
|
35
|
+
export declare const DialTab: FC<DialTabProps>;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { TabModel } from '../../models/tab';
|
|
3
|
+
import { TabOrientation } from '../../types/tab';
|
|
4
|
+
export interface DialTabsProps {
|
|
5
|
+
tabs: TabModel[];
|
|
6
|
+
activeTab: string;
|
|
7
|
+
onClick: (id: string) => void;
|
|
8
|
+
jsonEditorEnabled?: boolean;
|
|
9
|
+
orientation?: TabOrientation;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* A responsive tabs component that adapts between horizontal and dropdown (mobile) layouts
|
|
13
|
+
* based on screen size. Supports both horizontal and vertical orientations and can integrate
|
|
14
|
+
* with JSON editor states to toggle visibility when needed.
|
|
15
|
+
*
|
|
16
|
+
* When viewed on larger screens, tabs are displayed horizontally or vertically based on the
|
|
17
|
+
* {@link TabOrientation} prop. On smaller screens, the component automatically switches to
|
|
18
|
+
* a dropdown menu for better usability.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```tsx
|
|
22
|
+
* <DialTabs
|
|
23
|
+
* tabs={[
|
|
24
|
+
* { id: 'overview', label: 'Overview' },
|
|
25
|
+
* { id: 'details', label: 'Details' },
|
|
26
|
+
* { id: 'settings', label: 'Settings' },
|
|
27
|
+
* ]}
|
|
28
|
+
* activeTab="overview"
|
|
29
|
+
* onClick={(id) => setActiveTab(id)}
|
|
30
|
+
* orientation={TabOrientation.Horizontal}
|
|
31
|
+
* />
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @param tabs - Array of tab models to render. Each tab should include an `id` and `label`.
|
|
35
|
+
* @param activeTab - The identifier of the currently active tab.
|
|
36
|
+
* @param onClick - Callback fired when a tab is selected. Receives the tab's `id` as an argument.
|
|
37
|
+
* @param [jsonEditorEnabled=false] - If true, hides the tab UI to integrate with JSON editor layouts.
|
|
38
|
+
* @param [orientation=TabOrientation.Horizontal] - The layout direction of the tabs. Uses the {@link TabOrientation} enum.
|
|
39
|
+
*/
|
|
40
|
+
export declare const DialTabs: FC<DialTabsProps>;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { TagVariant } from '../../types/tag';
|
|
2
|
-
import { FC } from 'react';
|
|
2
|
+
import { FC, ReactNode } from 'react';
|
|
3
3
|
export interface DialTagProps {
|
|
4
4
|
tag: string;
|
|
5
5
|
cssClass?: string;
|
|
6
|
-
remove?: () => void;
|
|
6
|
+
remove?: (event: React.MouseEvent<HTMLButtonElement>) => void;
|
|
7
7
|
variant?: TagVariant;
|
|
8
|
+
iconBefore?: ReactNode;
|
|
9
|
+
bordered?: boolean;
|
|
8
10
|
}
|
|
9
11
|
/**
|
|
10
12
|
* A small tag component used to display labeled items such as categories, filters, or selections.
|
|
@@ -24,5 +26,7 @@ export interface DialTagProps {
|
|
|
24
26
|
* @param [remove] - Optional callback invoked when the remove button is clicked.
|
|
25
27
|
* If not provided, the remove button will not be rendered.
|
|
26
28
|
* @param [variant=TagVariant.Default] - Visual style of the tag. Uses the {@link TagVariant} enum.
|
|
29
|
+
* @param [iconBefore] - Optional icon or element to display before the tag text.
|
|
30
|
+
* @param [bordered=true] - When true, adds a border to the tag for better visibility on light backgrounds.
|
|
27
31
|
*/
|
|
28
32
|
export declare const DialTag: FC<DialTagProps>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useIsTabletScreen: () => boolean;
|
package/dist/src/index.d.ts
CHANGED
|
@@ -11,6 +11,11 @@ export { DialNoDataContent } from './components/NoDataContent/NoDataContent';
|
|
|
11
11
|
export { DialCollapsibleSidebar } from './components/CollapsibleSidebar/CollapsibleSidebar';
|
|
12
12
|
export { DialLabelledText } from './components/LabelledText/LabelledText';
|
|
13
13
|
export { DialTag } from './components/Tag/Tag';
|
|
14
|
+
export { DialEllipsisTooltip } from './components/EllipsisTooltip/EllipsisTooltip';
|
|
15
|
+
export { DialTabs } from './components/Tabs/Tabs';
|
|
16
|
+
export { DialTab } from './components/Tab/Tab';
|
|
17
|
+
export { DialBreadcrumb } from './components/Breadcrumb/Breadcrumb';
|
|
18
|
+
export { DialBreadcrumbItem } from './components/Breadcrumb/BreadcrumbItem';
|
|
14
19
|
export { DialButton } from './components/Button/Button';
|
|
15
20
|
export { DialCloseButton } from './components/CloseButton/CloseButton';
|
|
16
21
|
export { DialTextarea } from './components/Textarea/Textarea';
|
|
@@ -19,7 +24,9 @@ export { DialTooltip } from './components/Tooltip/Tooltip';
|
|
|
19
24
|
export { DialSwitch } from './components/Switch/Switch';
|
|
20
25
|
export { DialPopup } from './components/Popup/Popup';
|
|
21
26
|
export { DialConfirmationPopup } from './components/ConfirmationPopup/ConfirmationPopup';
|
|
27
|
+
export { DialRadioGroupPopupField } from './components/RadioGroupPopupField/RadioGroupPopupField';
|
|
22
28
|
export { DialInput } from './components/Input/Input';
|
|
29
|
+
export type { DialInputProps } from './components/Input/Input';
|
|
23
30
|
export { DialNumberInputField } from './components/InputField/InputField';
|
|
24
31
|
export { DialTextInputField } from './components/InputField/InputField';
|
|
25
32
|
export { DialPasswordInputField } from './components/PasswordInput/PasswordInputField';
|
|
@@ -29,6 +36,7 @@ export { DialInputPopup } from './components/InputPopup/InputPopup';
|
|
|
29
36
|
export { DialAutocompleteInput } from './components/AutocompleteInput/AutocompleteInput';
|
|
30
37
|
export { DialAutocompleteInputValue } from './components/AutocompleteInput/AutocompleteInputValue';
|
|
31
38
|
export { DialTagInput } from './components/TagInput/TagInput';
|
|
39
|
+
export { DialSelect } from './components/Select/Select';
|
|
32
40
|
export { DialDropdown } from './components/Dropdown/Dropdown';
|
|
33
41
|
export { AlertVariant } from './types/alert';
|
|
34
42
|
export { ButtonVariant } from './types/button';
|
|
@@ -38,6 +46,11 @@ export { ConfirmationPopupVariant } from './types/confirmation-popup';
|
|
|
38
46
|
export { DropdownType } from './types/dropdown';
|
|
39
47
|
export { SearchSize } from './types/search';
|
|
40
48
|
export { TagVariant } from './types/tag';
|
|
49
|
+
export { TabOrientation } from './types/tab';
|
|
50
|
+
export type { DialBreadcrumbPathItem } from './models/breadcrumb';
|
|
41
51
|
export { StepStatus } from './models/step';
|
|
42
52
|
export type { Step } from './models/step';
|
|
43
53
|
export type { RadioButtonWithContent } from './models/radio';
|
|
54
|
+
export type { SelectOption } from './models/select';
|
|
55
|
+
export type { TabModel } from './models/tab';
|
|
56
|
+
export { mergeClasses } from './utils/merge-classes';
|