@novu/js 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkKIOGWIKT_js = require('../chunk-KIOGWIKT.js');
3
+ var chunkWZT5QCVB_js = require('../chunk-WZT5QCVB.js');
4
4
  var chunkERC62PGI_js = require('../chunk-ERC62PGI.js');
5
5
  var chunk7B52C2XE_js = require('../chunk-7B52C2XE.js');
6
6
  var web = require('solid-js/web');
@@ -17,8 +17,8 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
17
17
 
18
18
  var clsx__default = /*#__PURE__*/_interopDefault(clsx);
19
19
 
20
- // _qrqgolsn3:/Users/sokratisvidros/Workspace/novu/packages/js/src/ui/index.directcss
21
- var ui_default = `.novu{scrollbar-color:var(--nv-color-secondary-foreground-alpha-300) #0000;:where(*),:where(*) :after,:where(*) :before,:where(*):after,:where(*):before{border:0 solid #e5e7eb;box-sizing:border-box}:where(html,:host){line-height:1.5;-webkit-text-size-adjust:100%;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;tab-size:4;-webkit-tap-highlight-color:transparent}:where(body){line-height:inherit;margin:0}:where(hr){border-top-width:1px;color:inherit;height:0}:where(abbr:where([title])){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}:where(h1,h2,h3,h4,h5,h6){font-size:inherit;font-weight:inherit}:where(a){color:inherit;text-decoration:inherit}:where(b,strong){font-weight:bolder}:where(code,kbd,samp,pre){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}:where(small){font-size:80%}:where(sub,sup){font-size:75%;line-height:0;position:relative;vertical-align:initial}:where(sub){bottom:-.25em}:where(sup){top:-.5em}:where(table){border-collapse:collapse;border-color:inherit;text-indent:0}:where(button,input,optgroup,select,textarea){color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}:where(button,select){text-transform:none}:where(button,input:where([type=button]),input:where([type=reset]),input:where([type=submit])){-webkit-appearance:button;background-color:initial;background-image:none}:where(:-moz-focusring){outline:auto}:where(:-moz-ui-invalid){box-shadow:none}:where(progress){vertical-align:initial}:where(*)::-webkit-inner-spin-button,:where(*)::-webkit-outer-spin-button{height:auto}:where([type=search]){-webkit-appearance:textfield;outline-offset:-2px}:where(*)::-webkit-search-decoration{-webkit-appearance:none}:where(*)::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}:where(summary){display:list-item}:where(blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre){margin:0}:where(fieldset){margin:0;padding:0}:where(legend){padding:0}:where(ol,ul,menu){list-style:none;margin:0;padding:0}:where(dialog){padding:0}:where(textarea){resize:vertical}:where(input)::placeholder,:where(textarea)::placeholder{color:#9ca3af;opacity:1}:where(button,[role=button]){cursor:pointer}:where(:disabled){cursor:default}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block;vertical-align:middle}:where(img,video){height:auto;max-width:100%}:where([hidden]){display:none}:where(*),:where(*) :after,:where(*) :before,:where(*):after,:where(*):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:#3b82f680;--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: }:where(*) ::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:#3b82f680;--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: }::-webkit-scrollbar{height:.5rem;width:.5rem}::-webkit-scrollbar-thumb{background-clip:"padding-box";background-color:var(--nv-color-secondary-foreground-alpha-300);border-radius:.25rem}::-webkit-scrollbar-corner,::-webkit-scrollbar-track{background-color:initial}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}}.nt-sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.\\!nt-pointer-events-auto{pointer-events:auto!important}.nt-invisible{visibility:hidden}.nt-absolute{position:absolute}.nt-relative{position:relative}.nt-inset-0{inset:0}.nt-inset-2{inset:.5rem}.nt-left-0\\.5{left:.125rem}.nt-right-0{right:0}.nt-right-3{right:.75rem}.nt-top-0{top:0}.nt-top-0\\.5{top:.125rem}.nt-top-3{top:.75rem}.nt-z-10{z-index:10}.nt-z-\\[-1\\]{z-index:-1}.nt-mx-auto{margin-left:auto;margin-right:auto}.nt-mb-2{margin-bottom:.5rem}.nt-mb-4{margin-bottom:1rem}.nt-mb-\\[0\\.625rem\\]{margin-bottom:.625rem}.nt-ml-2{margin-left:.5rem}.nt-ml-auto{margin-left:auto}.nt-mr-2{margin-right:.5rem}.nt-mr-auto{margin-right:auto}.nt-mt-auto{margin-top:auto}.nt-block{display:block}.nt-flex{display:flex}.nt-inline-flex{display:inline-flex}.nt-grid{display:grid}.nt-hidden{display:none}.nt-aspect-square{aspect-ratio:1/1}.nt-size-1\\.5{height:.375rem;width:.375rem}.nt-size-2{height:.5rem;width:.5rem}.nt-size-2\\.5{height:.625rem;width:.625rem}.nt-size-3{height:.75rem;width:.75rem}.nt-size-4{height:1rem;width:1rem}.nt-size-5{height:1.25rem;width:1.25rem}.nt-size-8{height:2rem;width:2rem}.nt-size-fit{height:fit-content;width:fit-content}.nt-size-full{height:100%;width:100%}.nt-h-2{height:.5rem}.nt-h-3{height:.75rem}.nt-h-4{height:1rem}.nt-h-5{height:1.25rem}.nt-h-7{height:1.75rem}.nt-h-8{height:2rem}.nt-h-9{height:2.25rem}.nt-h-\\[600px\\]{height:600px}.nt-h-fit{height:fit-content}.nt-h-full{height:100%}.nt-min-h-0{min-height:0}.nt-w-1\\/3{width:33.333333%}.nt-w-2\\/3{width:66.666667%}.nt-w-5{width:1.25rem}.nt-w-7{width:1.75rem}.nt-w-8{width:2rem}.nt-w-\\[260px\\]{width:260px}.nt-w-\\[400px\\]{width:400px}.nt-w-\\[60px\\]{width:60px}.nt-w-\\[calc\\(2ch\\+2rem\\)\\]{width:calc(2ch + 2rem)}.nt-w-fit{width:fit-content}.nt-w-full{width:100%}.nt-w-max{width:max-content}.nt-min-w-52{min-width:13rem}.nt-flex-1{flex:1 1 0%}.nt-shrink-0{flex-shrink:0}.nt-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))}.nt-cursor-default{cursor:default}.nt-cursor-pointer{cursor:pointer}.nt-grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.nt-flex-row{flex-direction:row}.nt-flex-col{flex-direction:column}.nt-flex-wrap{flex-wrap:wrap}.nt-flex-nowrap{flex-wrap:nowrap}.nt-items-start{align-items:flex-start}.nt-items-center{align-items:center}.nt-justify-end{justify-content:flex-end}.nt-justify-center{justify-content:center}.nt-justify-between{justify-content:space-between}.nt-gap-0\\.5{gap:.125rem}.nt-gap-1{gap:.25rem}.nt-gap-1\\.5{gap:.375rem}.nt-gap-2{gap:.5rem}.nt-gap-3{gap:.75rem}.nt-gap-4{gap:1rem}.nt-gap-6{gap:1.5rem}.nt-gap-8{gap:2rem}.nt-self-stretch{align-self:stretch}.nt-overflow-auto{overflow:auto}.nt-overflow-hidden{overflow:hidden}.nt-overflow-y-auto{overflow-y:auto}.nt-truncate{overflow:hidden;text-overflow:ellipsis}.nt-truncate,.nt-whitespace-nowrap{white-space:nowrap}.nt-whitespace-pre-wrap{white-space:pre-wrap}.nt-rounded{border-radius:var(--nv-radius-base)}.nt-rounded-full{border-radius:var(--nv-radius-full)}.nt-rounded-lg{border-radius:var(--nv-radius-lg)}.nt-rounded-md{border-radius:var(--nv-radius-md)}.nt-rounded-sm{border-radius:var(--nv-radius-sm)}.nt-rounded-xl{border-radius:var(--nv-radius-xl)}.nt-border{border-width:1px}.nt-border-b{border-bottom-width:1px}.nt-border-t{border-top-width:1px}.nt-border-background{border-color:var(--nv-color-background)}.nt-border-border{border-color:var(--nv-color-neutral-alpha-100)}.nt-border-neutral-200{--tw-border-opacity:1;border-color:rgb(229 229 229/var(--tw-border-opacity,1))}.nt-border-neutral-alpha-100{border-color:var(--nv-color-neutral-alpha-100)}.nt-border-neutral-alpha-50{border-color:var(--nv-color-neutral-alpha-50)}.nt-border-t-neutral-alpha-200{border-top-color:var(--nv-color-neutral-alpha-200)}.nt-bg-\\[oklch\\(from_var\\(--nv-color-stripes\\)_l_c_h_\\/_0\\.1\\)\\]{background-color:oklch(from var(--nv-color-stripes) l c h/.1)}.nt-bg-background{background-color:var(--nv-color-background)}.nt-bg-counter{background-color:var(--nv-color-counter)}.nt-bg-foreground{background-color:var(--nv-color-foreground)}.nt-bg-neutral-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.nt-bg-neutral-alpha-100{background-color:var(--nv-color-neutral-alpha-100)}.nt-bg-neutral-alpha-25{background-color:var(--nv-color-neutral-alpha-25)}.nt-bg-neutral-alpha-300{background-color:var(--nv-color-neutral-alpha-300)}.nt-bg-neutral-alpha-50{background-color:var(--nv-color-neutral-alpha-50)}.nt-bg-primary{background-color:var(--nv-color-primary)}.nt-bg-primary-alpha-300{background-color:var(--nv-color-primary-alpha-300)}.nt-bg-primary-alpha-400{background-color:var(--nv-color-primary-alpha-400)}.nt-bg-secondary{background-color:var(--nv-color-secondary)}.nt-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.nt-bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.nt-bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.nt-from-foreground-alpha-50{--tw-gradient-from:var(--nv-color-foreground-alpha-50) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.nt-from-primary-foreground-alpha-200{--tw-gradient-from:var(--nv-color-primary-foreground-alpha-200) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.nt-from-transparent{--tw-gradient-from:#0000 var(--tw-gradient-from-position);--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.nt-from-20\\%{--tw-gradient-from-position:20%}.nt-to-background{--tw-gradient-to:var(--nv-color-background) var(--tw-gradient-to-position)}.nt-to-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position)}.nt-object-cover{object-fit:cover}.nt-p-0{padding:0}.nt-p-0\\.5{padding:.125rem}.nt-p-1{padding:.25rem}.nt-p-2{padding:.5rem}.nt-p-2\\.5{padding:.625rem}.nt-p-3{padding:.75rem}.nt-p-4{padding:1rem}.nt-px-1{padding-left:.25rem;padding-right:.25rem}.nt-px-2{padding-left:.5rem;padding-right:.5rem}.nt-px-3{padding-left:.75rem;padding-right:.75rem}.nt-px-4{padding-left:1rem;padding-right:1rem}.nt-px-8{padding-left:2rem;padding-right:2rem}.nt-px-\\[6px\\]{padding-left:6px;padding-right:6px}.nt-py-1{padding-bottom:.25rem;padding-top:.25rem}.nt-py-2{padding-bottom:.5rem;padding-top:.5rem}.nt-py-3{padding-bottom:.75rem;padding-top:.75rem}.nt-py-3\\.5{padding-bottom:.875rem;padding-top:.875rem}.nt-py-4{padding-bottom:1rem;padding-top:1rem}.nt-py-px{padding-bottom:1px;padding-top:1px}.nt-pb-2{padding-bottom:.5rem}.nt-pb-\\[0\\.625rem\\]{padding-bottom:.625rem}.nt-pt-2\\.5{padding-top:.625rem}.nt-text-center{text-align:center}.nt-text-start{text-align:start}.nt-font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.nt-text-\\[0\\.8rem\\]{font-size:.8rem}.nt-text-base{font-size:var(--nv-font-size-base);line-height:var(--nv-line-height-base)}.nt-text-sm{font-size:var(--nv-font-size-sm);line-height:var(--nv-line-height-sm)}.nt-text-xl{font-size:var(--nv-font-size-xl);line-height:var(--nv-line-height-xl)}.nt-text-xs{font-size:var(--nv-font-size-xs);line-height:var(--nv-line-height-xs)}.nt-font-medium{font-weight:500}.nt-font-normal{font-weight:400}.nt-font-semibold{font-weight:600}.nt-leading-none{line-height:1}.nt-text-background{color:var(--nv-color-background)}.nt-text-counter-foreground{color:var(--nv-color-counter-foreground)}.nt-text-foreground{color:var(--nv-color-foreground)}.nt-text-foreground-alpha-300{color:var(--nv-color-foreground-alpha-300)}.nt-text-foreground-alpha-400{color:var(--nv-color-foreground-alpha-400)}.nt-text-foreground-alpha-600{color:var(--nv-color-foreground-alpha-600)}.nt-text-foreground-alpha-700{color:var(--nv-color-foreground-alpha-700)}.nt-text-primary-foreground{color:var(--nv-color-primary-foreground)}.nt-text-secondary-foreground{color:var(--nv-color-secondary-foreground)}.nt-text-stripes{color:var(--nv-color-stripes)}.nt-opacity-0{opacity:0}.nt-opacity-20{opacity:.2}.nt-shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-\\[0_0_0_0\\.5px_var\\(--nv-color-primary-600\\)\\]{--tw-shadow:0 0 0 0.5px var(--nv-color-primary-600);--tw-shadow-colored:0 0 0 0.5px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-\\[0_0_0_0\\.5px_var\\(--nv-color-secondary-600\\)\\]{--tw-shadow:0 0 0 0.5px var(--nv-color-secondary-600);--tw-shadow-colored:0 0 0 0.5px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-\\[0px_1px_2px_0px_rgba\\(10\\,13\\,20\\,0\\.03\\)\\]{--tw-shadow:0px 1px 2px 0px #0a0d1408;--tw-shadow-colored:0px 1px 2px 0px var(--tw-shadow-color)}.nt-shadow-\\[0px_1px_2px_0px_rgba\\(10\\,13\\,20\\,0\\.03\\)\\],.nt-shadow-dropdown{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-dropdown{--tw-shadow:0px 12px 16px -4px oklch(from var(--nv-color-shadow) l c h/0.08),0px 4px 6px -2px oklch(from var(--nv-color-shadow) l c h/0.03);--tw-shadow-colored:0px 12px 16px -4px var(--tw-shadow-color),0px 4px 6px -2px var(--tw-shadow-color)}.nt-shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.nt-shadow-lg,.nt-shadow-popover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-popover{--tw-shadow:0px 8px 26px 0px oklch(from var(--nv-color-shadow) l c h/0.08),0px 2px 6px 0px oklch(from var(--nv-color-shadow) l c h/0.12);--tw-shadow-colored:0px 8px 26px 0px var(--tw-shadow-color),0px 2px 6px 0px var(--tw-shadow-color)}.nt-shadow-tooltip{--tw-shadow:0 5px 20px 0 oklch(from var(--nv-color-shadow) l c h/0.08);--tw-shadow-colored:0 5px 20px 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)}.nt-outline-none{outline:2px solid #0000;outline-offset:2px}.nt-backdrop-blur-lg{--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.nt-transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nt-transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nt-transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nt-duration-100{transition-duration:.1s}.nt-duration-200{transition-duration:.2s}.nt-ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.nt-animate-in{animation-duration:.15s;animation-name:enter;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.nt-fade-in{--tw-enter-opacity:0}.nt-slide-in-from-top-2{--tw-enter-translate-y:-0.5rem}.nt-duration-100{animation-duration:.1s}.nt-duration-200{animation-duration:.2s}.nt-ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.before\\:nt-absolute:before{content:var(--tw-content);position:absolute}.before\\:nt-inset-0:before{content:var(--tw-content);inset:0}.before\\:-nt-right-\\[calc\\(0\\+var\\(--stripes-size\\)\\)\\]:before{content:var(--tw-content);right:calc(var(--stripes-size)*-1)}@keyframes nt-stripes{0%{content:var(--tw-content);transform:translateX(0)}to{content:var(--tw-content);transform:translateX(calc(var(--stripes-size)*-1))}}.before\\:nt-animate-stripes:before{animation:nt-stripes 1s linear infinite paused;content:var(--tw-content)}.before\\:nt-rounded-lg:before{border-radius:var(--nv-radius-lg);content:var(--tw-content)}.before\\:nt-rounded-md:before{border-radius:var(--nv-radius-md);content:var(--tw-content)}.before\\:nt-rounded-xl:before{border-radius:var(--nv-radius-xl);content:var(--tw-content)}.before\\:nt-border:before{border-width:1px;content:var(--tw-content)}.before\\:nt-border-primary-foreground-alpha-100:before{border-color:var(--nv-color-primary-foreground-alpha-100);content:var(--tw-content)}.before\\:nt-border-secondary-foreground-alpha-100:before{border-color:var(--nv-color-secondary-foreground-alpha-100);content:var(--tw-content)}.before\\:nt-bg-dev-stripes-gradient:before{background-image:repeating-linear-gradient(135deg,oklch(from var(--nv-color-stripes) l c h/.1) 25%,oklch(from var(--nv-color-stripes) l c h/.1) 50%,oklch(from var(--nv-color-stripes) l c h/.2) 50%,oklch(from var(--nv-color-stripes) l c h/.2) 75%);content:var(--tw-content)}.before\\:nt-bg-\\[length\\:var\\(--stripes-size\\)_var\\(--stripes-size\\)\\]:before{background-size:var(--stripes-size) var(--stripes-size);content:var(--tw-content)}.before\\:nt-content-\\[\\"\\"\\]:before{--tw-content:"";content:var(--tw-content)}.before\\:\\[mask-image\\:linear-gradient\\(transparent_0\\%\\2c black\\)\\]:before{content:var(--tw-content);-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.after\\:nt-absolute:after{content:var(--tw-content);position:absolute}.after\\:nt-inset-0:after{content:var(--tw-content);inset:0}.after\\:-nt-top-12:after{content:var(--tw-content);top:-3rem}.after\\:nt-bottom-0:after{bottom:0;content:var(--tw-content)}.after\\:nt-left-0:after{content:var(--tw-content);left:0}.after\\:nt-left-0\\.5:after{content:var(--tw-content);left:.125rem}.after\\:nt-top-0\\.5:after{content:var(--tw-content);top:.125rem}.after\\:nt-size-3:after{content:var(--tw-content);height:.75rem;width:.75rem}.after\\:nt-h-\\[2px\\]:after{content:var(--tw-content);height:2px}.after\\:nt-w-full:after{content:var(--tw-content);width:100%}.after\\:nt-rounded-full:after{border-radius:var(--nv-radius-full);content:var(--tw-content)}.after\\:nt-rounded-lg:after{border-radius:var(--nv-radius-lg);content:var(--tw-content)}.after\\:nt-rounded-md:after{border-radius:var(--nv-radius-md);content:var(--tw-content)}.after\\:nt-rounded-xl:after{border-radius:var(--nv-radius-xl);content:var(--tw-content)}.after\\:nt-border-b-2:after{border-bottom-width:2px;content:var(--tw-content)}.after\\:nt-border-b-primary:after{border-bottom-color:var(--nv-color-primary);content:var(--tw-content)}.after\\:nt-border-b-transparent:after{border-bottom-color:#0000;content:var(--tw-content)}.after\\:nt-bg-background:after{background-color:var(--nv-color-background);content:var(--tw-content)}.after\\:nt-bg-\\[linear-gradient\\(180deg\\2c transparent\\2c oklch\\(from_var\\(--nv-color-background\\)_l_c_h_\\/_0\\.9\\)_55\\%\\2c transparent\\)\\]:after{background-image:linear-gradient(180deg,#0000,oklch(from var(--nv-color-background) l c h/.9) 55%,#0000);content:var(--tw-content)}.after\\:nt-bg-\\[linear-gradient\\(180deg\\2c transparent\\2c oklch\\(from_var\\(--nv-color-stripes\\)_l_c_h_\\/_0\\.07\\)_55\\%\\2c transparent\\)\\2c linear-gradient\\(180deg\\2c transparent\\2c oklch\\(from_var\\(--nv-color-background\\)_l_c_h_\\/_0\\.9\\)_55\\%\\2c transparent\\)\\]:after{background-image:linear-gradient(180deg,#0000,oklch(from var(--nv-color-stripes) l c h/.07) 55%,#0000),linear-gradient(180deg,#0000,oklch(from var(--nv-color-background) l c h/.9) 55%,#0000);content:var(--tw-content)}.after\\:nt-bg-gradient-to-b:after{background-image:linear-gradient(to bottom,var(--tw-gradient-stops));content:var(--tw-content)}.after\\:nt-from-primary-foreground-alpha-50:after{content:var(--tw-content);--tw-gradient-from:var(--nv-color-primary-foreground-alpha-50) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.after\\:nt-from-secondary-foreground-alpha-50:after{content:var(--tw-content);--tw-gradient-from:var(--nv-color-secondary-foreground-alpha-50) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.after\\:nt-to-transparent:after{content:var(--tw-content);--tw-gradient-to:#0000 var(--tw-gradient-to-position)}.after\\:nt-opacity-0:after{content:var(--tw-content);opacity:0}.after\\:nt-transition-all:after{content:var(--tw-content);transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\\:nt-transition-opacity:after{content:var(--tw-content);transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\\:nt-duration-200:after{transition-duration:.2s}.after\\:nt-content-\\[\\"\\"\\]:after,.after\\:nt-content-\\[\\'\\'\\]:after{--tw-content:"";content:var(--tw-content)}.after\\:nt-duration-200:after{animation-duration:.2s;content:var(--tw-content)}.hover\\:nt-bg-neutral-alpha-100:hover{background-color:var(--nv-color-neutral-alpha-100)}.hover\\:nt-bg-neutral-alpha-50:hover{background-color:var(--nv-color-neutral-alpha-50)}.hover\\:nt-bg-primary-600:hover{background-color:var(--nv-color-primary-600)}.hover\\:nt-bg-primary-alpha-25:hover{background-color:var(--nv-color-primary-alpha-25)}.hover\\:nt-bg-primary-alpha-400:hover{background-color:var(--nv-color-primary-alpha-400)}.hover\\:nt-text-foreground-alpha-800:hover{color:var(--nv-color-foreground-alpha-800)}.before\\:hover\\:\\[animation-play-state\\:running\\]:hover:before{animation-play-state:running;content:var(--tw-content)}.hover\\:after\\:nt-opacity-100:hover:after{content:var(--tw-content);opacity:1}.focus\\:nt-outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus-visible\\:nt-rounded-lg:focus-visible{border-radius:var(--nv-radius-lg)}.focus-visible\\:nt-rounded-md:focus-visible{border-radius:var(--nv-radius-md)}.focus-visible\\:nt-rounded-xl:focus-visible{border-radius:var(--nv-radius-xl)}.focus-visible\\:nt-bg-neutral-alpha-50:focus-visible{background-color:var(--nv-color-neutral-alpha-50)}.focus-visible\\:nt-outline-none:focus-visible{outline:2px solid #0000;outline-offset:2px}.focus-visible\\:nt-ring-2:focus-visible{--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);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\\:nt-ring-primary:focus-visible{--tw-ring-color:var(--nv-color-primary)}.focus-visible\\:nt-ring-ring:focus-visible{--tw-ring-color:var(--nv-color-ring)}.focus-visible\\:nt-ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\\:nt-pointer-events-none:disabled{pointer-events:none}.disabled\\:nt-opacity-20:disabled{opacity:.2}.disabled\\:nt-opacity-50:disabled{opacity:.5}.nt-group:focus-within .group-focus-within\\:nt-opacity-100,.nt-group:hover .group-hover\\:nt-opacity-100{opacity:1}.nt-peer:checked~.peer-checked\\:nt-border-neutral-alpha-400{border-color:var(--nv-color-neutral-alpha-400)}.nt-peer:checked~.peer-checked\\:nt-bg-primary{background-color:var(--nv-color-primary)}.nt-peer:checked~.peer-checked\\:nt-shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-peer:checked~.peer-checked\\:after\\:nt-translate-x-full:after{content:var(--tw-content);--tw-translate-x:100%;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))}.nt-peer:checked~.peer-checked\\:after\\:nt-border-background:after{border-color:var(--nv-color-background);content:var(--tw-content)}.data-\\[open\\=true\\]\\:nt-rotate-180[data-open=true]{--tw-rotate:180deg}.data-\\[open\\=true\\]\\:nt-rotate-180[data-open=true],.data-\\[open\\=true\\]\\:nt-transform[data-open=true]{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))}.data-\\[disabled\\=true\\]\\:nt-text-foreground-alpha-400[data-disabled=true]{color:var(--nv-color-foreground-alpha-400)}.data-\\[disabled\\=true\\]\\:nt-text-foreground-alpha-600[data-disabled=true]{color:var(--nv-color-foreground-alpha-600)}.data-\\[state\\=active\\]\\:nt-text-foreground[data-state=active]{color:var(--nv-color-foreground)}.data-\\[state\\=active\\]\\:after\\:nt-border-b-2[data-state=active]:after{border-bottom-width:2px;content:var(--tw-content)}.data-\\[state\\=active\\]\\:after\\:nt-border-primary[data-state=active]:after{border-color:var(--nv-color-primary);content:var(--tw-content)}.data-\\[state\\=active\\]\\:after\\:nt-opacity-100[data-state=active]:after{content:var(--tw-content);opacity:1}.\\[\\&\\:not\\(\\:first-child\\)\\]\\:nt-border-t:not(:first-child){border-top-width:1px}.\\[\\&_svg\\]\\:nt-pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:nt-shrink-0 svg{flex-shrink:0}`;
20
+ // _0ama3ua28:/Users/pavlotymchuk/projects/js/novu-2/packages/js/src/ui/index.directcss
21
+ var ui_default = `.novu{scrollbar-color:var(--nv-color-secondary-foreground-alpha-300) #0000;:where(*),:where(*) :after,:where(*) :before,:where(*):after,:where(*):before{border:0 solid #e5e7eb;box-sizing:border-box}:where(html,:host){line-height:1.5;-webkit-text-size-adjust:100%;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;tab-size:4;-webkit-tap-highlight-color:transparent}:where(body){line-height:inherit;margin:0}:where(hr){border-top-width:1px;color:inherit;height:0}:where(abbr:where([title])){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}:where(h1,h2,h3,h4,h5,h6){font-size:inherit;font-weight:inherit}:where(a){color:inherit;text-decoration:inherit}:where(b,strong){font-weight:bolder}:where(code,kbd,samp,pre){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}:where(small){font-size:80%}:where(sub,sup){font-size:75%;line-height:0;position:relative;vertical-align:initial}:where(sub){bottom:-.25em}:where(sup){top:-.5em}:where(table){border-collapse:collapse;border-color:inherit;text-indent:0}:where(button,input,optgroup,select,textarea){color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}:where(button,select){text-transform:none}:where(button,input:where([type=button]),input:where([type=reset]),input:where([type=submit])){-webkit-appearance:button;background-color:initial;background-image:none}:where(:-moz-focusring){outline:auto}:where(:-moz-ui-invalid){box-shadow:none}:where(progress){vertical-align:initial}:where(*)::-webkit-inner-spin-button,:where(*)::-webkit-outer-spin-button{height:auto}:where([type=search]){-webkit-appearance:textfield;outline-offset:-2px}:where(*)::-webkit-search-decoration{-webkit-appearance:none}:where(*)::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}:where(summary){display:list-item}:where(blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre){margin:0}:where(fieldset){margin:0;padding:0}:where(legend){padding:0}:where(ol,ul,menu){list-style:none;margin:0;padding:0}:where(dialog){padding:0}:where(textarea){resize:vertical}:where(input)::placeholder,:where(textarea)::placeholder{color:#9ca3af;opacity:1}:where(button,[role=button]){cursor:pointer}:where(:disabled){cursor:default}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block;vertical-align:middle}:where(img,video){height:auto;max-width:100%}:where([hidden]){display:none}:where(*),:where(*) :after,:where(*) :before,:where(*):after,:where(*):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:#3b82f680;--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: }:where(*) ::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:#3b82f680;--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: }::-webkit-scrollbar{height:.5rem;width:.5rem}::-webkit-scrollbar-thumb{background-clip:"padding-box";background-color:var(--nv-color-secondary-foreground-alpha-300);border-radius:.25rem}::-webkit-scrollbar-corner,::-webkit-scrollbar-track{background-color:initial}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}}.nt-sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.\\!nt-pointer-events-auto{pointer-events:auto!important}.nt-invisible{visibility:hidden}.nt-absolute{position:absolute}.nt-relative{position:relative}.nt-inset-0{inset:0}.nt-inset-2{inset:.5rem}.nt-left-0\\.5{left:.125rem}.nt-right-0{right:0}.nt-right-3{right:.75rem}.nt-top-0{top:0}.nt-top-0\\.5{top:.125rem}.nt-top-3{top:.75rem}.nt-z-10{z-index:10}.nt-z-\\[-1\\]{z-index:-1}.nt-mx-auto{margin-left:auto;margin-right:auto}.nt-mb-2{margin-bottom:.5rem}.nt-mb-4{margin-bottom:1rem}.nt-mb-\\[0\\.625rem\\]{margin-bottom:.625rem}.nt-ml-2{margin-left:.5rem}.nt-ml-auto{margin-left:auto}.nt-mr-2{margin-right:.5rem}.nt-mr-auto{margin-right:auto}.nt-mt-1{margin-top:.25rem}.nt-mt-auto{margin-top:auto}.nt-block{display:block}.nt-flex{display:flex}.nt-inline-flex{display:inline-flex}.nt-grid{display:grid}.nt-hidden{display:none}.nt-aspect-square{aspect-ratio:1/1}.nt-size-1\\.5{height:.375rem;width:.375rem}.nt-size-2{height:.5rem;width:.5rem}.nt-size-2\\.5{height:.625rem;width:.625rem}.nt-size-3{height:.75rem;width:.75rem}.nt-size-3\\.5{height:.875rem;width:.875rem}.nt-size-4{height:1rem;width:1rem}.nt-size-5{height:1.25rem;width:1.25rem}.nt-size-8{height:2rem;width:2rem}.nt-size-fit{height:fit-content;width:fit-content}.nt-size-full{height:100%;width:100%}.nt-h-2{height:.5rem}.nt-h-3{height:.75rem}.nt-h-4{height:1rem}.nt-h-5{height:1.25rem}.nt-h-7{height:1.75rem}.nt-h-8{height:2rem}.nt-h-9{height:2.25rem}.nt-h-\\[600px\\]{height:600px}.nt-h-fit{height:fit-content}.nt-h-full{height:100%}.nt-min-h-0{min-height:0}.nt-w-1\\/3{width:33.333333%}.nt-w-2\\/3{width:66.666667%}.nt-w-5{width:1.25rem}.nt-w-7{width:1.75rem}.nt-w-8{width:2rem}.nt-w-\\[260px\\]{width:260px}.nt-w-\\[400px\\]{width:400px}.nt-w-\\[60px\\]{width:60px}.nt-w-\\[calc\\(2ch\\+2rem\\)\\]{width:calc(2ch + 2rem)}.nt-w-fit{width:fit-content}.nt-w-full{width:100%}.nt-w-max{width:max-content}.nt-min-w-52{min-width:13rem}.nt-flex-1{flex:1 1 0%}.nt-shrink-0{flex-shrink:0}.nt-translate-x-1\\/2{--tw-translate-x:50%}.nt-transform,.nt-translate-x-1\\/2{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))}.nt-cursor-default{cursor:default}.nt-cursor-not-allowed{cursor:not-allowed}.nt-cursor-pointer{cursor:pointer}.nt-grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.nt-flex-row{flex-direction:row}.nt-flex-col{flex-direction:column}.nt-flex-wrap{flex-wrap:wrap}.nt-flex-nowrap{flex-wrap:nowrap}.nt-items-start{align-items:flex-start}.nt-items-center{align-items:center}.nt-justify-end{justify-content:flex-end}.nt-justify-center{justify-content:center}.nt-justify-between{justify-content:space-between}.nt-gap-0\\.5{gap:.125rem}.nt-gap-1{gap:.25rem}.nt-gap-1\\.5{gap:.375rem}.nt-gap-2{gap:.5rem}.nt-gap-3{gap:.75rem}.nt-gap-4{gap:1rem}.nt-gap-6{gap:1.5rem}.nt-gap-8{gap:2rem}.nt-self-stretch{align-self:stretch}.nt-overflow-auto{overflow:auto}.nt-overflow-hidden{overflow:hidden}.nt-overflow-y-auto{overflow-y:auto}.nt-truncate{overflow:hidden;text-overflow:ellipsis}.nt-truncate,.nt-whitespace-nowrap{white-space:nowrap}.nt-whitespace-pre-wrap{white-space:pre-wrap}.nt-rounded{border-radius:var(--nv-radius-base)}.nt-rounded-full{border-radius:var(--nv-radius-full)}.nt-rounded-lg{border-radius:var(--nv-radius-lg)}.nt-rounded-md{border-radius:var(--nv-radius-md)}.nt-rounded-sm{border-radius:var(--nv-radius-sm)}.nt-rounded-xl{border-radius:var(--nv-radius-xl)}.nt-border{border-width:1px}.nt-border-b{border-bottom-width:1px}.nt-border-t{border-top-width:1px}.nt-border-background{border-color:var(--nv-color-background)}.nt-border-border{border-color:var(--nv-color-neutral-alpha-100)}.nt-border-neutral-200{--tw-border-opacity:1;border-color:rgb(229 229 229/var(--tw-border-opacity,1))}.nt-border-neutral-alpha-100{border-color:var(--nv-color-neutral-alpha-100)}.nt-border-neutral-alpha-200{border-color:var(--nv-color-neutral-alpha-200)}.nt-border-neutral-alpha-400{border-color:var(--nv-color-neutral-alpha-400)}.nt-border-neutral-alpha-50{border-color:var(--nv-color-neutral-alpha-50)}.nt-border-t-neutral-alpha-200{border-top-color:var(--nv-color-neutral-alpha-200)}.nt-bg-\\[oklch\\(from_var\\(--nv-color-stripes\\)_l_c_h_\\/_0\\.1\\)\\]{background-color:oklch(from var(--nv-color-stripes) l c h/.1)}.nt-bg-background{background-color:var(--nv-color-background)}.nt-bg-counter{background-color:var(--nv-color-counter)}.nt-bg-foreground{background-color:var(--nv-color-foreground)}.nt-bg-neutral-alpha-100{background-color:var(--nv-color-neutral-alpha-100)}.nt-bg-neutral-alpha-25{background-color:var(--nv-color-neutral-alpha-25)}.nt-bg-neutral-alpha-300{background-color:var(--nv-color-neutral-alpha-300)}.nt-bg-neutral-alpha-50{background-color:var(--nv-color-neutral-alpha-50)}.nt-bg-primary{background-color:var(--nv-color-primary)}.nt-bg-primary-alpha-300{background-color:var(--nv-color-primary-alpha-300)}.nt-bg-primary-alpha-400{background-color:var(--nv-color-primary-alpha-400)}.nt-bg-secondary{background-color:var(--nv-color-secondary)}.nt-bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.nt-bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.nt-from-foreground-alpha-50{--tw-gradient-from:var(--nv-color-foreground-alpha-50) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.nt-from-primary-foreground-alpha-200{--tw-gradient-from:var(--nv-color-primary-foreground-alpha-200) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.nt-from-transparent{--tw-gradient-from:#0000 var(--tw-gradient-from-position);--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.nt-from-20\\%{--tw-gradient-from-position:20%}.nt-to-background{--tw-gradient-to:var(--nv-color-background) var(--tw-gradient-to-position)}.nt-to-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position)}.nt-object-cover{object-fit:cover}.nt-p-0{padding:0}.nt-p-0\\.5{padding:.125rem}.nt-p-1{padding:.25rem}.nt-p-2{padding:.5rem}.nt-p-2\\.5{padding:.625rem}.nt-p-3{padding:.75rem}.nt-p-4{padding:1rem}.nt-px-1{padding-left:.25rem;padding-right:.25rem}.nt-px-2{padding-left:.5rem;padding-right:.5rem}.nt-px-3{padding-left:.75rem;padding-right:.75rem}.nt-px-4{padding-left:1rem;padding-right:1rem}.nt-px-8{padding-left:2rem;padding-right:2rem}.nt-px-\\[6px\\]{padding-left:6px;padding-right:6px}.nt-py-1{padding-bottom:.25rem;padding-top:.25rem}.nt-py-2{padding-bottom:.5rem;padding-top:.5rem}.nt-py-3{padding-bottom:.75rem;padding-top:.75rem}.nt-py-3\\.5{padding-bottom:.875rem;padding-top:.875rem}.nt-py-4{padding-bottom:1rem;padding-top:1rem}.nt-py-px{padding-bottom:1px;padding-top:1px}.nt-pb-2{padding-bottom:.5rem}.nt-pb-\\[0\\.625rem\\]{padding-bottom:.625rem}.nt-pr-0{padding-right:0}.nt-pt-2\\.5{padding-top:.625rem}.nt-text-center{text-align:center}.nt-text-start{text-align:start}.nt-font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.nt-text-\\[0\\.8rem\\]{font-size:.8rem}.nt-text-base{font-size:var(--nv-font-size-base);line-height:var(--nv-line-height-base)}.nt-text-sm{font-size:var(--nv-font-size-sm);line-height:var(--nv-line-height-sm)}.nt-text-xl{font-size:var(--nv-font-size-xl);line-height:var(--nv-line-height-xl)}.nt-text-xs{font-size:var(--nv-font-size-xs);line-height:var(--nv-line-height-xs)}.nt-font-medium{font-weight:500}.nt-font-normal{font-weight:400}.nt-font-semibold{font-weight:600}.nt-leading-none{line-height:1}.nt-text-background{color:var(--nv-color-background)}.nt-text-counter-foreground{color:var(--nv-color-counter-foreground)}.nt-text-foreground{color:var(--nv-color-foreground)}.nt-text-foreground-alpha-300{color:var(--nv-color-foreground-alpha-300)}.nt-text-foreground-alpha-400{color:var(--nv-color-foreground-alpha-400)}.nt-text-foreground-alpha-600{color:var(--nv-color-foreground-alpha-600)}.nt-text-foreground-alpha-700{color:var(--nv-color-foreground-alpha-700)}.nt-text-primary-foreground{color:var(--nv-color-primary-foreground)}.nt-text-secondary-foreground{color:var(--nv-color-secondary-foreground)}.nt-text-stripes{color:var(--nv-color-stripes)}.nt-opacity-0{opacity:0}.nt-opacity-20{opacity:.2}.nt-opacity-50{opacity:.5}.nt-shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-\\[0_0_0_0\\.5px_var\\(--nv-color-primary-600\\)\\]{--tw-shadow:0 0 0 0.5px var(--nv-color-primary-600);--tw-shadow-colored:0 0 0 0.5px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-\\[0_0_0_0\\.5px_var\\(--nv-color-secondary-600\\)\\]{--tw-shadow:0 0 0 0.5px var(--nv-color-secondary-600);--tw-shadow-colored:0 0 0 0.5px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-\\[0px_1px_2px_0px_rgba\\(10\\,13\\,20\\,0\\.03\\)\\]{--tw-shadow:0px 1px 2px 0px #0a0d1408;--tw-shadow-colored:0px 1px 2px 0px var(--tw-shadow-color)}.nt-shadow-\\[0px_1px_2px_0px_rgba\\(10\\,13\\,20\\,0\\.03\\)\\],.nt-shadow-dropdown{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-dropdown{--tw-shadow:0px 12px 16px -4px oklch(from var(--nv-color-shadow) l c h/0.08),0px 4px 6px -2px oklch(from var(--nv-color-shadow) l c h/0.03);--tw-shadow-colored:0px 12px 16px -4px var(--tw-shadow-color),0px 4px 6px -2px var(--tw-shadow-color)}.nt-shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.nt-shadow-lg,.nt-shadow-none{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.nt-shadow-popover{--tw-shadow:0px 8px 26px 0px oklch(from var(--nv-color-shadow) l c h/0.08),0px 2px 6px 0px oklch(from var(--nv-color-shadow) l c h/0.12);--tw-shadow-colored:0px 8px 26px 0px var(--tw-shadow-color),0px 2px 6px 0px var(--tw-shadow-color)}.nt-shadow-popover,.nt-shadow-tooltip{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-tooltip{--tw-shadow:0 5px 20px 0 oklch(from var(--nv-color-shadow) l c h/0.08);--tw-shadow-colored:0 5px 20px 0 var(--tw-shadow-color)}.nt-outline-none{outline:2px solid #0000;outline-offset:2px}.nt-backdrop-blur-lg{--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.nt-transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nt-transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nt-transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nt-duration-100{transition-duration:.1s}.nt-duration-200{transition-duration:.2s}.nt-ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.nt-animate-in{animation-duration:.15s;animation-name:enter;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.nt-fade-in{--tw-enter-opacity:0}.nt-slide-in-from-top-2{--tw-enter-translate-y:-0.5rem}.nt-duration-100{animation-duration:.1s}.nt-duration-200{animation-duration:.2s}.nt-ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\\[interpolate-size\\:allow-keywords\\]{interpolate-size:allow-keywords}.\\[scrollbar-gutter\\:stable\\]{scrollbar-gutter:stable}.\\[word-break\\:break-word\\]{word-break:break-word}.before\\:nt-absolute:before{content:var(--tw-content);position:absolute}.before\\:nt-inset-0:before{content:var(--tw-content);inset:0}.before\\:-nt-right-\\[calc\\(0\\+var\\(--stripes-size\\)\\)\\]:before{content:var(--tw-content);right:calc(var(--stripes-size)*-1)}@keyframes nt-stripes{0%{content:var(--tw-content);transform:translateX(0)}to{content:var(--tw-content);transform:translateX(calc(var(--stripes-size)*-1))}}.before\\:nt-animate-stripes:before{animation:nt-stripes 1s linear infinite paused;content:var(--tw-content)}.before\\:nt-rounded-lg:before{border-radius:var(--nv-radius-lg);content:var(--tw-content)}.before\\:nt-rounded-md:before{border-radius:var(--nv-radius-md);content:var(--tw-content)}.before\\:nt-rounded-xl:before{border-radius:var(--nv-radius-xl);content:var(--tw-content)}.before\\:nt-border:before{border-width:1px;content:var(--tw-content)}.before\\:nt-border-primary-foreground-alpha-100:before{border-color:var(--nv-color-primary-foreground-alpha-100);content:var(--tw-content)}.before\\:nt-border-secondary-foreground-alpha-100:before{border-color:var(--nv-color-secondary-foreground-alpha-100);content:var(--tw-content)}.before\\:nt-bg-dev-stripes-gradient:before{background-image:repeating-linear-gradient(135deg,oklch(from var(--nv-color-stripes) l c h/.1) 25%,oklch(from var(--nv-color-stripes) l c h/.1) 50%,oklch(from var(--nv-color-stripes) l c h/.2) 50%,oklch(from var(--nv-color-stripes) l c h/.2) 75%);content:var(--tw-content)}.before\\:nt-bg-\\[length\\:var\\(--stripes-size\\)_var\\(--stripes-size\\)\\]:before{background-size:var(--stripes-size) var(--stripes-size);content:var(--tw-content)}.before\\:nt-content-\\[\\"\\"\\]:before{--tw-content:"";content:var(--tw-content)}.before\\:\\[mask-image\\:linear-gradient\\(transparent_0\\%\\2c black\\)\\]:before{content:var(--tw-content);-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.after\\:nt-absolute:after{content:var(--tw-content);position:absolute}.after\\:nt-inset-0:after{content:var(--tw-content);inset:0}.after\\:-nt-top-12:after{content:var(--tw-content);top:-3rem}.after\\:nt-bottom-0:after{bottom:0;content:var(--tw-content)}.after\\:nt-left-0:after{content:var(--tw-content);left:0}.after\\:nt-left-0\\.5:after{content:var(--tw-content);left:.125rem}.after\\:nt-top-0\\.5:after{content:var(--tw-content);top:.125rem}.after\\:nt-size-3:after{content:var(--tw-content);height:.75rem;width:.75rem}.after\\:nt-h-\\[2px\\]:after{content:var(--tw-content);height:2px}.after\\:nt-w-full:after{content:var(--tw-content);width:100%}.after\\:nt-translate-x-1\\/2:after{--tw-translate-x:50%}.after\\:nt-translate-x-1\\/2:after,.after\\:nt-translate-x-full:after{content:var(--tw-content);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))}.after\\:nt-translate-x-full:after{--tw-translate-x:100%}.after\\:nt-rounded-full:after{border-radius:var(--nv-radius-full);content:var(--tw-content)}.after\\:nt-rounded-lg:after{border-radius:var(--nv-radius-lg);content:var(--tw-content)}.after\\:nt-rounded-md:after{border-radius:var(--nv-radius-md);content:var(--tw-content)}.after\\:nt-rounded-xl:after{border-radius:var(--nv-radius-xl);content:var(--tw-content)}.after\\:nt-border-b-2:after{border-bottom-width:2px;content:var(--tw-content)}.after\\:nt-border-background:after{border-color:var(--nv-color-background);content:var(--tw-content)}.after\\:nt-border-b-primary:after{border-bottom-color:var(--nv-color-primary);content:var(--tw-content)}.after\\:nt-border-b-transparent:after{border-bottom-color:#0000;content:var(--tw-content)}.after\\:nt-bg-background:after{background-color:var(--nv-color-background);content:var(--tw-content)}.after\\:nt-bg-\\[linear-gradient\\(180deg\\2c transparent\\2c oklch\\(from_var\\(--nv-color-background\\)_l_c_h_\\/_0\\.9\\)_55\\%\\2c transparent\\)\\]:after{background-image:linear-gradient(180deg,#0000,oklch(from var(--nv-color-background) l c h/.9) 55%,#0000);content:var(--tw-content)}.after\\:nt-bg-\\[linear-gradient\\(180deg\\2c transparent\\2c oklch\\(from_var\\(--nv-color-stripes\\)_l_c_h_\\/_0\\.07\\)_55\\%\\2c transparent\\)\\2c linear-gradient\\(180deg\\2c transparent\\2c oklch\\(from_var\\(--nv-color-background\\)_l_c_h_\\/_0\\.9\\)_55\\%\\2c transparent\\)\\]:after{background-image:linear-gradient(180deg,#0000,oklch(from var(--nv-color-stripes) l c h/.07) 55%,#0000),linear-gradient(180deg,#0000,oklch(from var(--nv-color-background) l c h/.9) 55%,#0000);content:var(--tw-content)}.after\\:nt-bg-gradient-to-b:after{background-image:linear-gradient(to bottom,var(--tw-gradient-stops));content:var(--tw-content)}.after\\:nt-from-primary-foreground-alpha-50:after{content:var(--tw-content);--tw-gradient-from:var(--nv-color-primary-foreground-alpha-50) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.after\\:nt-from-secondary-foreground-alpha-50:after{content:var(--tw-content);--tw-gradient-from:var(--nv-color-secondary-foreground-alpha-50) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.after\\:nt-to-transparent:after{content:var(--tw-content);--tw-gradient-to:#0000 var(--tw-gradient-to-position)}.after\\:nt-opacity-0:after{content:var(--tw-content);opacity:0}.after\\:nt-transition-all:after{content:var(--tw-content);transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\\:nt-transition-opacity:after{content:var(--tw-content);transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\\:nt-duration-200:after{transition-duration:.2s}.after\\:nt-content-\\[\\"\\"\\]:after,.after\\:nt-content-\\[\\'\\'\\]:after{--tw-content:"";content:var(--tw-content)}.after\\:nt-duration-200:after{animation-duration:.2s;content:var(--tw-content)}.hover\\:nt-bg-neutral-alpha-100:hover{background-color:var(--nv-color-neutral-alpha-100)}.hover\\:nt-bg-neutral-alpha-50:hover{background-color:var(--nv-color-neutral-alpha-50)}.hover\\:nt-bg-primary-600:hover{background-color:var(--nv-color-primary-600)}.hover\\:nt-bg-primary-alpha-25:hover{background-color:var(--nv-color-primary-alpha-25)}.hover\\:nt-bg-primary-alpha-400:hover{background-color:var(--nv-color-primary-alpha-400)}.hover\\:nt-text-foreground-alpha-800:hover{color:var(--nv-color-foreground-alpha-800)}.before\\:hover\\:\\[animation-play-state\\:running\\]:hover:before{animation-play-state:running;content:var(--tw-content)}.hover\\:after\\:nt-opacity-100:hover:after{content:var(--tw-content);opacity:1}.focus\\:nt-outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus-visible\\:nt-rounded-lg:focus-visible{border-radius:var(--nv-radius-lg)}.focus-visible\\:nt-rounded-md:focus-visible{border-radius:var(--nv-radius-md)}.focus-visible\\:nt-rounded-xl:focus-visible{border-radius:var(--nv-radius-xl)}.focus-visible\\:nt-bg-neutral-alpha-50:focus-visible{background-color:var(--nv-color-neutral-alpha-50)}.focus-visible\\:nt-outline-none:focus-visible{outline:2px solid #0000;outline-offset:2px}.focus-visible\\:nt-ring-2:focus-visible{--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);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\\:nt-ring-primary:focus-visible{--tw-ring-color:var(--nv-color-primary)}.focus-visible\\:nt-ring-ring:focus-visible{--tw-ring-color:var(--nv-color-ring)}.focus-visible\\:nt-ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\\:nt-pointer-events-none:disabled{pointer-events:none}.disabled\\:nt-opacity-20:disabled{opacity:.2}.disabled\\:nt-opacity-50:disabled{opacity:.5}.nt-group:focus-within .group-focus-within\\:nt-opacity-100,.nt-group:hover .group-hover\\:nt-opacity-100{opacity:1}.data-\\[open\\=true\\]\\:nt-rotate-180[data-open=true]{--tw-rotate:180deg}.data-\\[open\\=true\\]\\:nt-rotate-180[data-open=true],.data-\\[open\\=true\\]\\:nt-transform[data-open=true]{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))}.data-\\[disabled\\=true\\]\\:nt-text-foreground-alpha-400[data-disabled=true]{color:var(--nv-color-foreground-alpha-400)}.data-\\[disabled\\=true\\]\\:nt-text-foreground-alpha-600[data-disabled=true]{color:var(--nv-color-foreground-alpha-600)}.data-\\[state\\=active\\]\\:nt-text-foreground[data-state=active]{color:var(--nv-color-foreground)}.data-\\[state\\=active\\]\\:after\\:nt-border-b-2[data-state=active]:after{border-bottom-width:2px;content:var(--tw-content)}.data-\\[state\\=active\\]\\:after\\:nt-border-primary[data-state=active]:after{border-color:var(--nv-color-primary);content:var(--tw-content)}.data-\\[state\\=active\\]\\:after\\:nt-opacity-100[data-state=active]:after{content:var(--tw-content);opacity:1}.\\[\\&\\:not\\(\\:first-child\\)\\]\\:nt-border-t:not(:first-child){border-top-width:1px}.\\[\\&_\\.nv-notificationList\\]\\:nt-pb-4 .nv-notificationList{padding-bottom:1rem}.\\[\\&_\\.nv-notificationList\\]\\:nt-pb-8 .nv-notificationList{padding-bottom:2rem}.\\[\\&_\\.nv-preferencesContainer\\]\\:nt-pb-4 .nv-preferencesContainer{padding-bottom:1rem}.\\[\\&_\\.nv-preferencesContainer\\]\\:nt-pb-8 .nv-preferencesContainer{padding-bottom:2rem}.\\[\\&_svg\\]\\:nt-pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:nt-shrink-0 svg{flex-shrink:0}`;
22
22
 
23
23
  // src/ui/config/appearanceKeys.ts
24
24
  var appearanceKeys = [
@@ -172,12 +172,27 @@ var appearanceKeys = [
172
172
  "workflowContainer",
173
173
  "workflowLabel",
174
174
  "workflowLabelHeader",
175
+ "workflowLabelHeaderContainer",
176
+ "workflowLabelIcon",
175
177
  "workflowLabelContainer",
176
178
  "workflowContainerDisabledNotice",
177
179
  "workflowLabelDisabled__icon",
178
180
  "workflowContainerRight__icon",
179
181
  "workflowArrow__icon",
180
182
  "workflowDescription",
183
+ // preference groups
184
+ "preferencesGroupContainer",
185
+ "preferencesGroupHeader",
186
+ "preferencesGroupLabelContainer",
187
+ "preferencesGroupLabelIcon",
188
+ "preferencesGroupLabel",
189
+ "preferencesGroupActionsContainer",
190
+ "preferencesGroupActionsContainerRight__icon",
191
+ "preferencesGroupBody",
192
+ "preferencesGroupChannels",
193
+ "preferencesGroupInfo",
194
+ "preferencesGroupInfoIcon",
195
+ "preferencesGroupWorkflows",
181
196
  // channel
182
197
  "channelContainer",
183
198
  "channelIconContainer",
@@ -245,6 +260,7 @@ var defaultLocalization = {
245
260
  "preferences.global": "Global Preferences",
246
261
  "preferences.workflow.disabled.notice": "Contact admin to enable subscription management for this critical notification.",
247
262
  "preferences.workflow.disabled.tooltip": "Contact admin to edit",
263
+ "preferences.group.info": "Applies to all notifications under this group.",
248
264
  "snooze.datePicker.timePickerLabel": "Time",
249
265
  "snooze.datePicker.apply": "Apply",
250
266
  "snooze.datePicker.cancel": "Cancel",
@@ -627,6 +643,7 @@ var getTagsFromTab = (tab) => {
627
643
  var _a;
628
644
  return ((_a = tab == null ? void 0 : tab.filter) == null ? void 0 : _a.tags) || (tab == null ? void 0 : tab.value) || [];
629
645
  };
646
+ var NOVU_DEFAULT_CSS_ID = "novu-default-css";
630
647
 
631
648
  // src/ui/helpers/useStyle.ts
632
649
  var useStyle = () => {
@@ -635,46 +652,51 @@ var useStyle = () => {
635
652
  solidJs.onMount(() => {
636
653
  setIsServer(false);
637
654
  });
638
- const styleFuncMemo = solidJs.createMemo(() => (appearanceKey, className) => {
639
- const appearanceKeyParts = appearanceKey.split("__");
640
- let finalAppearanceKeys = [];
641
- for (let i = 0; i < appearanceKeyParts.length; i += 1) {
642
- const accumulated = appearanceKeyParts.slice(i).join("__");
643
- if (appearanceKeys.includes(accumulated)) {
644
- finalAppearanceKeys.push(accumulated);
655
+ const styleFuncMemo = solidJs.createMemo(
656
+ () => (appearanceKey, className, {
657
+ iconKey
658
+ } = {}) => {
659
+ const appearanceKeyParts = appearanceKey.split("__");
660
+ let finalAppearanceKeys = [];
661
+ for (let i = 0; i < appearanceKeyParts.length; i += 1) {
662
+ const accumulated = appearanceKeyParts.slice(i).join("__");
663
+ if (appearanceKeys.includes(accumulated)) {
664
+ finalAppearanceKeys.push(accumulated);
665
+ }
645
666
  }
646
- }
647
- const classes = (className == null ? void 0 : className.split(/\s+/).map((className2) => className2.replace(/^nv-/, ""))) || [];
648
- const appearanceKeysInClasses = classes.filter(
649
- (className2) => appearanceKeys.includes(className2)
650
- );
651
- finalAppearanceKeys = Array.from(
652
- /* @__PURE__ */ new Set([...finalAppearanceKeys, ...appearanceKeysInClasses])
653
- );
654
- finalAppearanceKeys.sort((a, b) => {
655
- const countA = (a.match(/__/g) || []).length;
656
- const countB = (b.match(/__/g) || []).length;
657
- return countB - countA;
658
- });
659
- const finalClassName = classes.filter((className2) => !finalAppearanceKeys.includes(className2)).join(" ");
660
- let appearanceClassnames = [];
661
- const reversedFinalAppearanceKeys = finalAppearanceKeys.reverse();
662
- for (let i = 0; i < reversedFinalAppearanceKeys.length; i += 1) {
663
- if (typeof appearance.elements()[reversedFinalAppearanceKeys[i]] === "string") {
664
- appearanceClassnames.push(appearance.elements()[reversedFinalAppearanceKeys[i]]);
667
+ const classes = (className == null ? void 0 : className.split(/\s+/).map((className2) => className2.replace(/^nv-/, ""))) || [];
668
+ const appearanceKeysInClasses = classes.filter(
669
+ (className2) => appearanceKeys.includes(className2)
670
+ );
671
+ finalAppearanceKeys = Array.from(
672
+ /* @__PURE__ */ new Set([...finalAppearanceKeys, ...appearanceKeysInClasses])
673
+ );
674
+ finalAppearanceKeys.sort((a, b) => {
675
+ const countA = (a.match(/__/g) || []).length;
676
+ const countB = (b.match(/__/g) || []).length;
677
+ return countB - countA;
678
+ });
679
+ const finalClassName = classes.filter((className2) => !finalAppearanceKeys.includes(className2)).join(" ");
680
+ let appearanceClassnames = [];
681
+ const reversedFinalAppearanceKeys = finalAppearanceKeys.reverse();
682
+ for (let i = 0; i < reversedFinalAppearanceKeys.length; i += 1) {
683
+ if (typeof appearance.elements()[reversedFinalAppearanceKeys[i]] === "string") {
684
+ appearanceClassnames.push(appearance.elements()[reversedFinalAppearanceKeys[i]]);
685
+ }
665
686
  }
687
+ appearanceClassnames = [publicFacingTwMerge(appearanceClassnames)];
688
+ const cssInJsClasses = !!finalAppearanceKeys.length && !isServer() ? finalAppearanceKeys.map((appKey) => appearance.appearanceKeyToCssInJsClass[appKey]) : [];
689
+ return cn(
690
+ ...finalAppearanceKeys.map((key) => `nv-${key}`),
691
+ "\u{1F514}",
692
+ iconKey ? `nv-${iconKey} \u{1F5BC}\uFE0F` : "",
693
+ finalClassName,
694
+ // default styles
695
+ appearanceClassnames,
696
+ ...cssInJsClasses
697
+ );
666
698
  }
667
- appearanceClassnames = [publicFacingTwMerge(appearanceClassnames)];
668
- const cssInJsClasses = !!finalAppearanceKeys.length && !isServer() ? finalAppearanceKeys.map((appKey) => appearance.appearanceKeyToCssInJsClass[appKey]) : [];
669
- return cn(
670
- ...finalAppearanceKeys.map((key) => `nv-${key}`),
671
- "\u{1F514}",
672
- finalClassName,
673
- // default styles
674
- appearanceClassnames,
675
- ...cssInJsClasses
676
- );
677
- });
699
+ );
678
700
  return styleFuncMemo();
679
701
  };
680
702
  function useUncontrolledState(props) {
@@ -708,26 +730,36 @@ var AppearanceProvider = (props) => {
708
730
  var _a, _b;
709
731
  return (_b = (_a = props.appearance) == null ? void 0 : _a.animations) != null ? _b : true;
710
732
  };
733
+ const icons = () => {
734
+ var _a;
735
+ return ((_a = props.appearance) == null ? void 0 : _a.icons) || {};
736
+ };
711
737
  const allElements = solidJs.createMemo(() => {
712
738
  var _a;
713
739
  const baseElements = themes().reduce((acc, obj) => chunk7B52C2XE_js.__spreadValues(chunk7B52C2XE_js.__spreadValues({}, acc), obj.elements || {}), {});
714
740
  return chunk7B52C2XE_js.__spreadValues(chunk7B52C2XE_js.__spreadValues({}, baseElements), ((_a = props.appearance) == null ? void 0 : _a.elements) || {});
715
741
  });
742
+ const container = () => props.container;
716
743
  solidJs.onMount(() => {
717
- const el = document.getElementById(props.id);
744
+ var _a;
745
+ const root = props.container instanceof ShadowRoot ? props.container : document;
746
+ const el = root.getElementById(props.id);
718
747
  if (el) {
719
748
  setStyleElement(el);
720
749
  return;
721
750
  }
751
+ const stylesContainer = (_a = props.container) != null ? _a : document.head;
722
752
  const styleEl = document.createElement("style");
723
753
  styleEl.id = props.id;
724
- document.head.appendChild(styleEl);
754
+ const defaultCssStyles = root.getElementById(NOVU_DEFAULT_CSS_ID);
755
+ if (defaultCssStyles) {
756
+ stylesContainer.insertBefore(styleEl, defaultCssStyles.nextSibling);
757
+ } else {
758
+ stylesContainer.appendChild(styleEl);
759
+ }
725
760
  setStyleElement(styleEl);
726
761
  solidJs.onCleanup(() => {
727
- const element = document.getElementById(props.id);
728
- if (element) {
729
- element.remove();
730
- }
762
+ styleEl.remove();
731
763
  });
732
764
  });
733
765
  solidJs.createEffect(() => {
@@ -763,10 +795,12 @@ var AppearanceProvider = (props) => {
763
795
  return {
764
796
  elements: allElements,
765
797
  variables,
798
+ animations,
799
+ icons,
766
800
  appearanceKeyToCssInJsClass: store$1.appearanceKeyToCssInJsClass,
767
801
  // stores are reactive
768
- animations,
769
- id
802
+ id,
803
+ container
770
804
  };
771
805
  },
772
806
  get children() {
@@ -938,6 +972,7 @@ var InboxProvider = (props) => {
938
972
  const [maxSnoozeDurationHours, setMaxSnoozeDurationHours] = solidJs.createSignal(0);
939
973
  const isSnoozeEnabled = solidJs.createMemo(() => maxSnoozeDurationHours() > 0);
940
974
  const [preferencesFilter, setPreferencesFilter] = solidJs.createSignal(props.preferencesFilter);
975
+ const [preferenceGroups, setPreferenceGroups] = solidJs.createSignal(props.preferenceGroups);
941
976
  const setNewStatus = (newStatus) => {
942
977
  setStatus(newStatus);
943
978
  setFilter((old) => chunk7B52C2XE_js.__spreadProps(chunk7B52C2XE_js.__spreadValues({}, STATUS_TO_FILTER[newStatus]), {
@@ -982,6 +1017,7 @@ var InboxProvider = (props) => {
982
1017
  tags
983
1018
  }));
984
1019
  setPreferencesFilter(props.preferencesFilter);
1020
+ setPreferenceGroups(props.preferenceGroups);
985
1021
  });
986
1022
  useNovuEvent({
987
1023
  event: "session.initialize.resolved",
@@ -1011,6 +1047,7 @@ var InboxProvider = (props) => {
1011
1047
  navigate,
1012
1048
  hideBranding,
1013
1049
  preferencesFilter,
1050
+ preferenceGroups,
1014
1051
  isDevelopmentMode,
1015
1052
  maxSnoozeDurationHours,
1016
1053
  isSnoozeEnabled
@@ -1029,7 +1066,7 @@ var useInboxContext = () => {
1029
1066
  };
1030
1067
  var NovuContext = solidJs.createContext(void 0);
1031
1068
  function NovuProvider(props) {
1032
- const novu = solidJs.createMemo(() => props.novu || new chunkKIOGWIKT_js.Novu(props.options));
1069
+ const novu = solidJs.createMemo(() => props.novu || new chunkWZT5QCVB_js.Novu(props.options));
1033
1070
  return web.createComponent(NovuContext.Provider, {
1034
1071
  get value() {
1035
1072
  return novu();
@@ -1243,6 +1280,7 @@ var useUnreadCounts = (props) => {
1243
1280
  return counts;
1244
1281
  };
1245
1282
  function createFocusTrap({ element, enabled }) {
1283
+ const { container } = useAppearance();
1246
1284
  solidJs.createEffect(() => {
1247
1285
  const trapElement = element();
1248
1286
  if (!trapElement || !enabled()) return;
@@ -1257,13 +1295,15 @@ function createFocusTrap({ element, enabled }) {
1257
1295
  const focusableElements2 = getFocusableElements();
1258
1296
  const firstFocusableElement = focusableElements2[0];
1259
1297
  const lastFocusableElement = focusableElements2[focusableElements2.length - 1];
1298
+ const containerElement = container();
1299
+ const root = containerElement instanceof ShadowRoot ? containerElement : document;
1260
1300
  if (event.shiftKey) {
1261
- if (document.activeElement === firstFocusableElement) {
1301
+ if (root.activeElement === firstFocusableElement) {
1262
1302
  lastFocusableElement.focus();
1263
1303
  event.preventDefault();
1264
1304
  }
1265
1305
  } else {
1266
- if (document.activeElement === lastFocusableElement) {
1306
+ if (root.activeElement === lastFocusableElement) {
1267
1307
  firstFocusableElement.focus();
1268
1308
  event.preventDefault();
1269
1309
  }
@@ -1350,144 +1390,203 @@ var ArrowLeft = (props) => {
1350
1390
  return _el$;
1351
1391
  })();
1352
1392
  };
1353
- var _tmpl$4 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 12"fill=none xmlns=http://www.w3.org/2000/svg><path d="M5 12C5.6875 12 6.25 11.4462 6.25 10.7692H3.75C3.75 11.4462 4.3125 12 5 12ZM8.75 8.30769V5.23077C8.75 3.34154 7.73125 1.76 5.9375 1.34154V0.923077C5.9375 0.412308 5.51875 0 5 0C4.48125 0 4.0625 0.412308 4.0625 0.923077V1.34154C2.275 1.76 1.25 3.33538 1.25 5.23077V8.30769L0 9.53846V10.1538H10V9.53846L8.75 8.30769ZM7.5 8.92308H2.5V5.23077C2.5 3.70462 3.44375 2.46154 5 2.46154C6.55625 2.46154 7.5 3.70462 7.5 5.23077V8.92308Z"fill=currentColor>`);
1354
- function Bell(props) {
1393
+ var _tmpl$4 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 20 20"fill=none xmlns=http://www.w3.org/2000/svg><path d="M10.7957 10.0009L7.08325 6.2884L8.14375 5.2279L12.9168 10.0009L8.14375 14.7739L7.08325 13.7134L10.7957 10.0009Z"fill=currentColor>`);
1394
+ var ArrowRight = (props) => {
1355
1395
  return (() => {
1356
1396
  var _el$ = _tmpl$4();
1357
1397
  web.spread(_el$, props, true, true);
1358
1398
  return _el$;
1359
1399
  })();
1360
- }
1361
- var _tmpl$5 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M0.625 9.375L2.93989 8.86059C3.5538 9.18889 4.25516 9.375 5 9.375C7.41622 9.375 9.375 7.41622 9.375 5C9.375 2.58375 7.41622 0.625 5 0.625C2.58375 0.625 0.625 2.58375 0.625 5C0.625 5.74484 0.81113 6.4462 1.13942 7.0601L0.625 9.375ZM6.50881 2.8125L6.43224 3.68761H7.1875V4.56259H6.35568L6.27912 5.43759H7.1875V6.31259H6.2026L6.12604 7.1875H5.24771L5.32423 6.31259H4.44591L4.36934 7.1875H3.49101L3.56755 6.31259H2.8125V5.43759H3.64411L3.72066 4.56259H2.8125V3.68761H3.79721L3.87377 2.8125H4.75211L4.67555 3.68761H5.55392L5.63048 2.8125H6.50881ZM4.59899 4.56259L4.52247 5.43759H5.40079L5.47736 4.56259H4.59899Z"fill=currentColor>`);
1362
- var Chat = (props) => {
1400
+ };
1401
+ var _tmpl$5 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 20 20"fill=none xmlns=http://www.w3.org/2000/svg><path d="M10.0001 10.879L13.7126 7.1665L14.7731 8.227L10.0001 13L5.22705 8.227L6.28755 7.1665L10.0001 10.879Z"fill=currentColor>`);
1402
+ var ArrowDown = (props) => {
1363
1403
  return (() => {
1364
1404
  var _el$ = _tmpl$5();
1365
1405
  web.spread(_el$, props, true, true);
1366
1406
  return _el$;
1367
1407
  })();
1368
1408
  };
1369
- var _tmpl$6 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 8 6"fill=none xmlns=http://www.w3.org/2000/svg><path d="M2.99994 4.58847L7.33298 0L8 0.705765L2.99994 6L0 2.82356L0.666549 2.11779L2.99994 4.58847Z"fill=currentColor>`);
1370
- var Check = (props) => {
1409
+ var _tmpl$6 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 12"fill=none xmlns=http://www.w3.org/2000/svg><path d="M5 12C5.6875 12 6.25 11.4462 6.25 10.7692H3.75C3.75 11.4462 4.3125 12 5 12ZM8.75 8.30769V5.23077C8.75 3.34154 7.73125 1.76 5.9375 1.34154V0.923077C5.9375 0.412308 5.51875 0 5 0C4.48125 0 4.0625 0.412308 4.0625 0.923077V1.34154C2.275 1.76 1.25 3.33538 1.25 5.23077V8.30769L0 9.53846V10.1538H10V9.53846L8.75 8.30769ZM7.5 8.92308H2.5V5.23077C2.5 3.70462 3.44375 2.46154 5 2.46154C6.55625 2.46154 7.5 3.70462 7.5 5.23077V8.92308Z"fill=currentColor>`);
1410
+ function Bell(props) {
1371
1411
  return (() => {
1372
1412
  var _el$ = _tmpl$6();
1373
1413
  web.spread(_el$, props, true, true);
1374
1414
  return _el$;
1375
1415
  })();
1376
- };
1377
- var _tmpl$7 = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 20 20"><path fill=currentColor d="M5 8.333c-.917 0-1.667.75-1.667 1.667s.75 1.667 1.667 1.667c.916 0 1.666-.75 1.666-1.667S5.916 8.333 5 8.333zm10 0c-.917 0-1.667.75-1.667 1.667s.75 1.667 1.667 1.667c.916 0 1.666-.75 1.666-1.667S15.916 8.333 15 8.333zm-5 0c-.917 0-1.667.75-1.667 1.667s.75 1.667 1.667 1.667c.916 0 1.666-.75 1.666-1.667S10.916 8.333 10 8.333z">`);
1378
- var Dots = (props) => {
1416
+ }
1417
+ var _tmpl$7 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M0.625 9.375L2.93989 8.86059C3.5538 9.18889 4.25516 9.375 5 9.375C7.41622 9.375 9.375 7.41622 9.375 5C9.375 2.58375 7.41622 0.625 5 0.625C2.58375 0.625 0.625 2.58375 0.625 5C0.625 5.74484 0.81113 6.4462 1.13942 7.0601L0.625 9.375ZM6.50881 2.8125L6.43224 3.68761H7.1875V4.56259H6.35568L6.27912 5.43759H7.1875V6.31259H6.2026L6.12604 7.1875H5.24771L5.32423 6.31259H4.44591L4.36934 7.1875H3.49101L3.56755 6.31259H2.8125V5.43759H3.64411L3.72066 4.56259H2.8125V3.68761H3.79721L3.87377 2.8125H4.75211L4.67555 3.68761H5.55392L5.63048 2.8125H6.50881ZM4.59899 4.56259L4.52247 5.43759H5.40079L5.47736 4.56259H4.59899Z"fill=currentColor>`);
1418
+ var Chat = (props) => {
1379
1419
  return (() => {
1380
1420
  var _el$ = _tmpl$7();
1381
1421
  web.spread(_el$, props, true, true);
1382
1422
  return _el$;
1383
1423
  })();
1384
1424
  };
1385
- var _tmpl$8 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M4.20703 1.875H2.8125H2.10547H1.875V2.04688V2.8125V3.60156V5.33984L0.00390625 3.95508C0.0351562 3.60156 0.216797 3.27344 0.505859 3.06055L0.9375 2.74023V1.875C0.9375 1.35742 1.35742 0.9375 1.875 0.9375H3.37109L4.3457 0.216797C4.53516 0.0761719 4.76367 0 5 0C5.23633 0 5.46484 0.0761719 5.6543 0.214844L6.62891 0.9375H8.125C8.64258 0.9375 9.0625 1.35742 9.0625 1.875V2.74023L9.49414 3.06055C9.7832 3.27344 9.96484 3.60156 9.99609 3.95508L8.125 5.33984V3.60156V2.8125V2.04688V1.875H7.89453H7.1875H5.79297H4.20508H4.20703ZM0 8.75V4.72852L4.25 7.87695C4.4668 8.03711 4.73047 8.125 5 8.125C5.26953 8.125 5.5332 8.03906 5.75 7.87695L10 4.72852V8.75C10 9.43945 9.43945 10 8.75 10H1.25C0.560547 10 0 9.43945 0 8.75ZM3.4375 3.125H6.5625C6.73438 3.125 6.875 3.26562 6.875 3.4375C6.875 3.60938 6.73438 3.75 6.5625 3.75H3.4375C3.26562 3.75 3.125 3.60938 3.125 3.4375C3.125 3.26562 3.26562 3.125 3.4375 3.125ZM3.4375 4.375H6.5625C6.73438 4.375 6.875 4.51562 6.875 4.6875C6.875 4.85938 6.73438 5 6.5625 5H3.4375C3.26562 5 3.125 4.85938 3.125 4.6875C3.125 4.51562 3.26562 4.375 3.4375 4.375Z"fill=currentColor>`);
1386
- var Email = (props) => {
1425
+ var _tmpl$8 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 8 6"fill=none xmlns=http://www.w3.org/2000/svg><path d="M2.99994 4.58847L7.33298 0L8 0.705765L2.99994 6L0 2.82356L0.666549 2.11779L2.99994 4.58847Z"fill=currentColor>`);
1426
+ var Check = (props) => {
1387
1427
  return (() => {
1388
1428
  var _el$ = _tmpl$8();
1389
1429
  web.spread(_el$, props, true, true);
1390
1430
  return _el$;
1391
1431
  })();
1392
1432
  };
1393
- var _tmpl$9 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 12"fill=none xmlns=http://www.w3.org/2000/svg><path d="M4.99962 0.856934C4.64404 0.856934 4.35676 1.14421 4.35676 1.49979V1.88551C2.89024 2.18283 1.78533 3.48059 1.78533 5.03551V5.41318C1.78533 6.35738 1.43779 7.26943 0.810999 7.97658L0.662339 8.14332C0.493589 8.33216 0.45341 8.60336 0.555865 8.83439C0.658321 9.06542 0.889348 9.21408 1.14247 9.21408H8.85676C9.10988 9.21408 9.3389 9.06542 9.44337 8.83439C9.54783 8.60336 9.50564 8.33216 9.33689 8.14332L9.18823 7.97658C8.56145 7.26943 8.2139 6.35939 8.2139 5.41318V5.03551C8.2139 3.48059 7.10899 2.18283 5.64247 1.88551V1.49979C5.64247 1.14421 5.3552 0.856934 4.99962 0.856934ZM5.90966 10.767C6.15073 10.5259 6.28533 10.1985 6.28533 9.85693H4.99962H3.7139C3.7139 10.1985 3.8485 10.5259 4.08957 10.767C4.33064 11.008 4.6581 11.1426 4.99962 11.1426C5.34113 11.1426 5.66859 11.008 5.90966 10.767Z"fill=currentColor>`);
1394
- var InApp = (props) => {
1433
+ var _tmpl$9 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 12 12"fill=none xmlns=http://www.w3.org/2000/svg><g clip-path=url(#clip0_3188_15050)><path d="M6 3V6L8 7M11 6C11 8.76142 8.76142 11 6 11C3.23858 11 1 8.76142 1 6C1 3.23858 3.23858 1 6 1C8.76142 1 11 3.23858 11 6Z"stroke=currentColor stroke-linecap=round stroke-linejoin=round>`);
1434
+ var Clock = (props) => {
1395
1435
  return (() => {
1396
1436
  var _el$ = _tmpl$9();
1397
1437
  web.spread(_el$, props, true, true);
1398
1438
  return _el$;
1399
1439
  })();
1400
1440
  };
1401
- var _tmpl$10 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M2.29671 10C1.78742 10 1.39807 9.85716 1.12864 9.57149C0.862497 9.28581 0.729426 8.86623 0.729426 8.31274V2.64594H1.69543V8.29668C1.69543 8.52163 1.74964 8.69487 1.85806 8.81624C1.96978 8.93408 2.12914 8.99301 2.33614 8.99301H7.66389C7.86764 8.99301 8.02366 8.93408 8.13209 8.81624C8.24385 8.69487 8.29965 8.52163 8.29965 8.29668V2.64594H9.27059V8.31274C9.27059 8.8627 9.13591 9.28048 8.86648 9.56608C8.59705 9.85536 8.20931 10 7.70333 10H2.29671ZM3.41056 5.34543C3.29556 5.34543 3.20028 5.30438 3.1247 5.22226C3.04913 5.14015 3.01134 5.03304 3.01134 4.90089V4.72949C3.01134 4.59737 3.04749 4.49204 3.11977 4.41348C3.19535 4.33492 3.29227 4.29564 3.41056 4.29564H6.5944C6.71271 4.29564 6.80795 4.33492 6.88026 4.41348C6.95582 4.49204 6.9936 4.59737 6.9936 4.72949V4.90089C6.9936 5.03304 6.95582 5.14015 6.88026 5.22226C6.8047 5.30438 6.70939 5.34543 6.5944 5.34543H3.41056ZM1.05964 3.16014C0.724502 3.16014 0.463285 3.05301 0.276004 2.83877C0.0920037 2.62095 0 2.33172 0 1.97107V1.18907C0 0.824846 0.0952841 0.535614 0.28586 0.321373C0.476428 0.107124 0.734358 0 1.05964 0H8.94536C9.27715 0 9.53511 0.107124 9.71911 0.321373C9.90642 0.535614 10 0.824846 10 1.18907V1.97107C10 2.33172 9.90642 2.62095 9.71911 2.83877C9.53511 3.05301 9.27715 3.16014 8.94536 3.16014H1.05964ZM1.24693 2.19067H8.75805C8.87304 2.19067 8.95516 2.16211 9.00448 2.10497C9.05372 2.04427 9.07838 1.95322 9.07838 1.83181V1.32833C9.07838 1.20335 9.05372 1.1123 9.00448 1.05517C8.95516 0.99803 8.87304 0.969462 8.75805 0.969462H1.24693C1.13193 0.969462 1.04814 0.99803 0.995567 1.05517C0.946281 1.1123 0.921638 1.20335 0.921638 1.32833V1.83181C0.921638 1.95322 0.946281 2.04427 0.995567 2.10497C1.04814 2.16211 1.13193 2.19067 1.24693 2.19067Z"fill=currentColor>`);
1402
- var MarkAsArchived = (props) => {
1441
+ var _tmpl$10 = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 20 20"><path fill=currentColor d="M5 8.333c-.917 0-1.667.75-1.667 1.667s.75 1.667 1.667 1.667c.916 0 1.666-.75 1.666-1.667S5.916 8.333 5 8.333zm10 0c-.917 0-1.667.75-1.667 1.667s.75 1.667 1.667 1.667c.916 0 1.666-.75 1.666-1.667S15.916 8.333 15 8.333zm-5 0c-.917 0-1.667.75-1.667 1.667s.75 1.667 1.667 1.667c.916 0 1.666-.75 1.666-1.667S10.916 8.333 10 8.333z">`);
1442
+ var Dots = (props) => {
1403
1443
  return (() => {
1404
1444
  var _el$ = _tmpl$10();
1405
1445
  web.spread(_el$, props, true, true);
1406
1446
  return _el$;
1407
1447
  })();
1408
1448
  };
1409
- var _tmpl$11 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 11 11"fill=none xmlns=http://www.w3.org/2000/svg><path d="M2.17256 10.999C1.69081 10.999 1.3225 10.8562 1.06763 10.5705C0.815875 10.2848 0.689997 9.86525 0.689997 9.31177V3.64497H1.60378V9.2957C1.60378 9.52066 1.65506 9.6939 1.75763 9.81526C1.8633 9.93311 2.01405 9.99203 2.20986 9.99203H7.24963C7.44236 9.99203 7.58995 9.93311 7.69252 9.81526C7.79823 9.6939 7.85102 9.52066 7.85102 9.2957V3.64497H8.76947V9.31177C8.76947 9.86173 8.64208 10.2795 8.38721 10.5651C8.13235 10.8544 7.76556 10.999 7.28693 10.999H2.17256ZM1.00236 4.15916C0.68534 4.15916 0.438242 4.05204 0.261085 3.83779C0.0870305 3.61997 0 3.33074 0 2.97009V2.18809C0 1.82387 0.0901336 1.53464 0.270408 1.3204C0.450675 1.10615 0.694663 0.999023 1.00236 0.999023H8.46182C8.77568 0.999023 9.0197 1.10615 9.19375 1.3204C9.37094 1.53464 9.45946 1.82387 9.45946 2.18809V2.97009C9.45946 3.33074 9.37094 3.61997 9.19375 3.83779C9.0197 4.05204 8.77568 4.15916 8.46182 4.15916H1.00236ZM1.17953 3.1897H8.28464C8.39342 3.1897 8.4711 3.16113 8.51775 3.10399C8.56433 3.04329 8.58765 2.95224 8.58765 2.83083V2.32735C8.58765 2.20238 8.56433 2.11132 8.51775 2.05419C8.4711 1.99705 7.51461 1.96849 7.40583 1.96849H1.17953C1.07074 1.96849 0.991485 1.99705 0.941753 2.05419C0.895131 2.11132 0.87182 2.20238 0.87182 2.32735V2.83083C0.87182 2.95224 0.895131 3.04329 0.941753 3.10399C0.991485 3.16113 1.07074 3.1897 1.17953 3.1897Z"fill=currentColor></path><path d="M9.67298 0.553711C9.84703 0.556646 10.0146 0.614475 10.1535 0.716797L10.2208 0.771484L10.2814 0.833008C10.3958 0.960612 10.4679 1.11928 10.4913 1.28711L10.4992 1.37109L10.4982 1.45605C10.4872 1.64689 10.4124 1.8301 10.2833 1.97559L10.2843 1.97656L7.55482 5.15039L7.55384 5.14941C7.40234 5.3265 7.18382 5.43557 6.94642 5.44336L6.93861 5.44434H6.92005V5.44336C6.69203 5.44397 6.47619 5.35201 6.31947 5.19141L6.31849 5.18945L5.29505 4.13184C5.08531 3.91498 5.00658 3.60427 5.08118 3.31641L5.11634 3.21094C5.2129 2.97124 5.41476 2.78187 5.67396 2.70996L5.78626 2.68652C6.01138 2.65637 6.23763 2.72008 6.41419 2.85938L6.49818 2.93555L6.8849 3.33496L9.0138 0.859375V0.860352C9.15512 0.688807 9.35911 0.576792 9.58509 0.556641L9.67298 0.553711Z"fill=currentColor stroke=white>`);
1410
- var MarkAsArchivedRead = (props) => {
1449
+ var _tmpl$11 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M4.20703 1.875H2.8125H2.10547H1.875V2.04688V2.8125V3.60156V5.33984L0.00390625 3.95508C0.0351562 3.60156 0.216797 3.27344 0.505859 3.06055L0.9375 2.74023V1.875C0.9375 1.35742 1.35742 0.9375 1.875 0.9375H3.37109L4.3457 0.216797C4.53516 0.0761719 4.76367 0 5 0C5.23633 0 5.46484 0.0761719 5.6543 0.214844L6.62891 0.9375H8.125C8.64258 0.9375 9.0625 1.35742 9.0625 1.875V2.74023L9.49414 3.06055C9.7832 3.27344 9.96484 3.60156 9.99609 3.95508L8.125 5.33984V3.60156V2.8125V2.04688V1.875H7.89453H7.1875H5.79297H4.20508H4.20703ZM0 8.75V4.72852L4.25 7.87695C4.4668 8.03711 4.73047 8.125 5 8.125C5.26953 8.125 5.5332 8.03906 5.75 7.87695L10 4.72852V8.75C10 9.43945 9.43945 10 8.75 10H1.25C0.560547 10 0 9.43945 0 8.75ZM3.4375 3.125H6.5625C6.73438 3.125 6.875 3.26562 6.875 3.4375C6.875 3.60938 6.73438 3.75 6.5625 3.75H3.4375C3.26562 3.75 3.125 3.60938 3.125 3.4375C3.125 3.26562 3.26562 3.125 3.4375 3.125ZM3.4375 4.375H6.5625C6.73438 4.375 6.875 4.51562 6.875 4.6875C6.875 4.85938 6.73438 5 6.5625 5H3.4375C3.26562 5 3.125 4.85938 3.125 4.6875C3.125 4.51562 3.26562 4.375 3.4375 4.375Z"fill=currentColor>`);
1450
+ var Email = (props) => {
1411
1451
  return (() => {
1412
1452
  var _el$ = _tmpl$11();
1413
1453
  web.spread(_el$, props, true, true);
1414
1454
  return _el$;
1415
1455
  })();
1416
1456
  };
1417
- var _tmpl$12 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><g clip-path=url(#clip0_3445_1172)><path d="M9 9.99902H1C0.867383 9.99902 0.7402 9.94635 0.64645 9.85257C0.552667 9.75882 0.5 9.63164 0.5 9.49902V0.499023C0.5 0.366407 0.552669 0.239223 0.64645 0.145473C0.7402 0.0516901 0.867383 -0.000976562 1 -0.000976562H6.25C6.42865 -0.000976562 6.59368 0.0943401 6.68301 0.249023C6.77233 0.403707 6.77233 0.59434 6.68301 0.749023C6.59368 0.903707 6.42865 0.999023 6.25 0.999023H1.5V8.99902H8.5V4.49902C8.5 4.32037 8.59532 4.15534 8.75 4.06602C8.90468 3.97669 9.09532 3.97669 9.25 4.06602C9.40468 4.15534 9.5 4.32037 9.5 4.49902V9.49902C9.5 9.63164 9.44733 9.75882 9.35355 9.85257C9.2598 9.94636 9.13262 9.99902 9 9.99902Z"fill=currentColor></path><path d="M7.5 8.24902H2.5C2.32135 8.24902 2.15632 8.15371 2.06699 7.99902C1.97767 7.84434 1.97767 7.65371 2.06699 7.49902C2.15632 7.34434 2.32135 7.24902 2.5 7.24902H7.5C7.67865 7.24902 7.84368 7.34434 7.93301 7.49902C8.02233 7.65371 8.02233 7.84434 7.93301 7.99902C7.84368 8.15371 7.67865 8.24902 7.5 8.24902Z"fill=currentColor></path><path d="M4.75 6.49901C4.61709 6.49979 4.48936 6.44761 4.39498 6.35403L2.89498 4.85403C2.76816 4.72717 2.71865 4.54235 2.76507 4.36907C2.81149 4.19583 2.94681 4.06051 3.12005 4.01409C3.29332 3.96767 3.47816 4.01718 3.60501 4.14401L4.73001 5.269L8.37501 1.16901C8.46056 1.06279 8.58578 0.996155 8.72169 0.984497C8.8576 0.972843 8.99233 1.01718 9.09474 1.10728C9.19712 1.19738 9.25825 1.32541 9.26398 1.46167C9.26968 1.59796 9.21948 1.73065 9.12502 1.82902L5.12502 6.32902C5.03371 6.43306 4.90337 6.49461 4.76502 6.49901L4.75 6.49901Z"fill=currentColor></path></g><defs><clipPath id=clip0_3445_1172><rect width=10 height=10 fill=white transform="translate(0 -0.000976562)">`);
1418
- var MarkAsRead = (props) => {
1457
+ var _tmpl$12 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 12"fill=none xmlns=http://www.w3.org/2000/svg><path d="M4.99962 0.856934C4.64404 0.856934 4.35676 1.14421 4.35676 1.49979V1.88551C2.89024 2.18283 1.78533 3.48059 1.78533 5.03551V5.41318C1.78533 6.35738 1.43779 7.26943 0.810999 7.97658L0.662339 8.14332C0.493589 8.33216 0.45341 8.60336 0.555865 8.83439C0.658321 9.06542 0.889348 9.21408 1.14247 9.21408H8.85676C9.10988 9.21408 9.3389 9.06542 9.44337 8.83439C9.54783 8.60336 9.50564 8.33216 9.33689 8.14332L9.18823 7.97658C8.56145 7.26943 8.2139 6.35939 8.2139 5.41318V5.03551C8.2139 3.48059 7.10899 2.18283 5.64247 1.88551V1.49979C5.64247 1.14421 5.3552 0.856934 4.99962 0.856934ZM5.90966 10.767C6.15073 10.5259 6.28533 10.1985 6.28533 9.85693H4.99962H3.7139C3.7139 10.1985 3.8485 10.5259 4.08957 10.767C4.33064 11.008 4.6581 11.1426 4.99962 11.1426C5.34113 11.1426 5.66859 11.008 5.90966 10.767Z"fill=currentColor>`);
1458
+ var InApp = (props) => {
1419
1459
  return (() => {
1420
1460
  var _el$ = _tmpl$12();
1421
1461
  web.spread(_el$, props, true, true);
1422
1462
  return _el$;
1423
1463
  })();
1424
1464
  };
1425
- var _tmpl$13 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M3.15789 2.99902V4.99902L0 2.49902L3.15789 -0.000976562V1.99902H5.78947C6.90618 1.99902 7.97714 2.42045 8.76677 3.1706C9.55639 3.92074 10 4.93816 10 5.99902C10 7.05989 9.55639 8.0773 8.76677 8.82745C7.97714 9.5776 6.90618 9.99902 5.78947 9.99902H1.05263V8.99902H5.78947C6.627 8.99902 7.43022 8.68295 8.02244 8.12034C8.61466 7.55773 8.94737 6.79467 8.94737 5.99902C8.94737 5.20337 8.61466 4.44031 8.02244 3.8777C7.43022 3.31509 6.627 2.99902 5.78947 2.99902H3.15789Z"fill=currentColor>`);
1426
- var MarkAsUnarchived = (props) => {
1465
+ var _tmpl$13 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M2.29671 10C1.78742 10 1.39807 9.85716 1.12864 9.57149C0.862497 9.28581 0.729426 8.86623 0.729426 8.31274V2.64594H1.69543V8.29668C1.69543 8.52163 1.74964 8.69487 1.85806 8.81624C1.96978 8.93408 2.12914 8.99301 2.33614 8.99301H7.66389C7.86764 8.99301 8.02366 8.93408 8.13209 8.81624C8.24385 8.69487 8.29965 8.52163 8.29965 8.29668V2.64594H9.27059V8.31274C9.27059 8.8627 9.13591 9.28048 8.86648 9.56608C8.59705 9.85536 8.20931 10 7.70333 10H2.29671ZM3.41056 5.34543C3.29556 5.34543 3.20028 5.30438 3.1247 5.22226C3.04913 5.14015 3.01134 5.03304 3.01134 4.90089V4.72949C3.01134 4.59737 3.04749 4.49204 3.11977 4.41348C3.19535 4.33492 3.29227 4.29564 3.41056 4.29564H6.5944C6.71271 4.29564 6.80795 4.33492 6.88026 4.41348C6.95582 4.49204 6.9936 4.59737 6.9936 4.72949V4.90089C6.9936 5.03304 6.95582 5.14015 6.88026 5.22226C6.8047 5.30438 6.70939 5.34543 6.5944 5.34543H3.41056ZM1.05964 3.16014C0.724502 3.16014 0.463285 3.05301 0.276004 2.83877C0.0920037 2.62095 0 2.33172 0 1.97107V1.18907C0 0.824846 0.0952841 0.535614 0.28586 0.321373C0.476428 0.107124 0.734358 0 1.05964 0H8.94536C9.27715 0 9.53511 0.107124 9.71911 0.321373C9.90642 0.535614 10 0.824846 10 1.18907V1.97107C10 2.33172 9.90642 2.62095 9.71911 2.83877C9.53511 3.05301 9.27715 3.16014 8.94536 3.16014H1.05964ZM1.24693 2.19067H8.75805C8.87304 2.19067 8.95516 2.16211 9.00448 2.10497C9.05372 2.04427 9.07838 1.95322 9.07838 1.83181V1.32833C9.07838 1.20335 9.05372 1.1123 9.00448 1.05517C8.95516 0.99803 8.87304 0.969462 8.75805 0.969462H1.24693C1.13193 0.969462 1.04814 0.99803 0.995567 1.05517C0.946281 1.1123 0.921638 1.20335 0.921638 1.32833V1.83181C0.921638 1.95322 0.946281 2.04427 0.995567 2.10497C1.04814 2.16211 1.13193 2.19067 1.24693 2.19067Z"fill=currentColor>`);
1466
+ var MarkAsArchived = (props) => {
1427
1467
  return (() => {
1428
1468
  var _el$ = _tmpl$13();
1429
1469
  web.spread(_el$, props, true, true);
1430
1470
  return _el$;
1431
1471
  })();
1432
1472
  };
1433
- var _tmpl$14 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 11 11"fill=none xmlns=http://www.w3.org/2000/svg><path d="M6.8 1.49902H1.5C0.947715 1.49902 0.5 1.94674 0.5 2.49902V9.49902C0.5 10.0513 0.947715 10.499 1.5 10.499H8.5C9.05228 10.499 9.5 10.0513 9.5 9.49902V4.19902"stroke=currentColor stroke-miterlimit=1 stroke-linecap=round></path><circle cx=9.25 cy=1.74902 r=1.25 fill=currentColor>`);
1434
- var MarkAsUnread = (props) => {
1473
+ var _tmpl$14 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 11 11"fill=none xmlns=http://www.w3.org/2000/svg><path d="M2.17256 10.999C1.69081 10.999 1.3225 10.8562 1.06763 10.5705C0.815875 10.2848 0.689997 9.86525 0.689997 9.31177V3.64497H1.60378V9.2957C1.60378 9.52066 1.65506 9.6939 1.75763 9.81526C1.8633 9.93311 2.01405 9.99203 2.20986 9.99203H7.24963C7.44236 9.99203 7.58995 9.93311 7.69252 9.81526C7.79823 9.6939 7.85102 9.52066 7.85102 9.2957V3.64497H8.76947V9.31177C8.76947 9.86173 8.64208 10.2795 8.38721 10.5651C8.13235 10.8544 7.76556 10.999 7.28693 10.999H2.17256ZM1.00236 4.15916C0.68534 4.15916 0.438242 4.05204 0.261085 3.83779C0.0870305 3.61997 0 3.33074 0 2.97009V2.18809C0 1.82387 0.0901336 1.53464 0.270408 1.3204C0.450675 1.10615 0.694663 0.999023 1.00236 0.999023H8.46182C8.77568 0.999023 9.0197 1.10615 9.19375 1.3204C9.37094 1.53464 9.45946 1.82387 9.45946 2.18809V2.97009C9.45946 3.33074 9.37094 3.61997 9.19375 3.83779C9.0197 4.05204 8.77568 4.15916 8.46182 4.15916H1.00236ZM1.17953 3.1897H8.28464C8.39342 3.1897 8.4711 3.16113 8.51775 3.10399C8.56433 3.04329 8.58765 2.95224 8.58765 2.83083V2.32735C8.58765 2.20238 8.56433 2.11132 8.51775 2.05419C8.4711 1.99705 7.51461 1.96849 7.40583 1.96849H1.17953C1.07074 1.96849 0.991485 1.99705 0.941753 2.05419C0.895131 2.11132 0.87182 2.20238 0.87182 2.32735V2.83083C0.87182 2.95224 0.895131 3.04329 0.941753 3.10399C0.991485 3.16113 1.07074 3.1897 1.17953 3.1897Z"fill=currentColor></path><path d="M9.67298 0.553711C9.84703 0.556646 10.0146 0.614475 10.1535 0.716797L10.2208 0.771484L10.2814 0.833008C10.3958 0.960612 10.4679 1.11928 10.4913 1.28711L10.4992 1.37109L10.4982 1.45605C10.4872 1.64689 10.4124 1.8301 10.2833 1.97559L10.2843 1.97656L7.55482 5.15039L7.55384 5.14941C7.40234 5.3265 7.18382 5.43557 6.94642 5.44336L6.93861 5.44434H6.92005V5.44336C6.69203 5.44397 6.47619 5.35201 6.31947 5.19141L6.31849 5.18945L5.29505 4.13184C5.08531 3.91498 5.00658 3.60427 5.08118 3.31641L5.11634 3.21094C5.2129 2.97124 5.41476 2.78187 5.67396 2.70996L5.78626 2.68652C6.01138 2.65637 6.23763 2.72008 6.41419 2.85938L6.49818 2.93555L6.8849 3.33496L9.0138 0.859375V0.860352C9.15512 0.688807 9.35911 0.576792 9.58509 0.556641L9.67298 0.553711Z"fill=currentColor stroke=white>`);
1474
+ var MarkAsArchivedRead = (props) => {
1435
1475
  return (() => {
1436
1476
  var _el$ = _tmpl$14();
1437
1477
  web.spread(_el$, props, true, true);
1438
1478
  return _el$;
1439
1479
  })();
1440
1480
  };
1441
- var _tmpl$15 = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 13 12"><path fill=currentColor d="M9.787.98A5.972 5.972 0 006.5 0c-.668 0-1.31.11-1.911.31L9.187 4.94c.221.222.6.065.6-.248V.98z"></path><path fill=currentColor d="M2.879 1.216A5.99 5.99 0 00.5 6c0 1.134.315 2.195.862 3.1V7.309c0-1.966 2.379-2.946 3.764-1.552l4.995 5.027A5.99 5.99 0 0012.5 6a5.972 5.972 0 00-.862-3.1v1.791c0 1.966-2.379 2.946-3.764 1.552L2.879 1.216z"></path><path fill=currentColor d="M8.411 11.69L3.813 7.06a.351.351 0 00-.6.248v3.711c.944.62 2.073.98 3.287.98.668 0 1.31-.11 1.911-.31z">`);
1442
- var Novu2 = (props) => {
1481
+ var _tmpl$15 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><g clip-path=url(#clip0_3445_1172)><path d="M9 9.99902H1C0.867383 9.99902 0.7402 9.94635 0.64645 9.85257C0.552667 9.75882 0.5 9.63164 0.5 9.49902V0.499023C0.5 0.366407 0.552669 0.239223 0.64645 0.145473C0.7402 0.0516901 0.867383 -0.000976562 1 -0.000976562H6.25C6.42865 -0.000976562 6.59368 0.0943401 6.68301 0.249023C6.77233 0.403707 6.77233 0.59434 6.68301 0.749023C6.59368 0.903707 6.42865 0.999023 6.25 0.999023H1.5V8.99902H8.5V4.49902C8.5 4.32037 8.59532 4.15534 8.75 4.06602C8.90468 3.97669 9.09532 3.97669 9.25 4.06602C9.40468 4.15534 9.5 4.32037 9.5 4.49902V9.49902C9.5 9.63164 9.44733 9.75882 9.35355 9.85257C9.2598 9.94636 9.13262 9.99902 9 9.99902Z"fill=currentColor></path><path d="M7.5 8.24902H2.5C2.32135 8.24902 2.15632 8.15371 2.06699 7.99902C1.97767 7.84434 1.97767 7.65371 2.06699 7.49902C2.15632 7.34434 2.32135 7.24902 2.5 7.24902H7.5C7.67865 7.24902 7.84368 7.34434 7.93301 7.49902C8.02233 7.65371 8.02233 7.84434 7.93301 7.99902C7.84368 8.15371 7.67865 8.24902 7.5 8.24902Z"fill=currentColor></path><path d="M4.75 6.49901C4.61709 6.49979 4.48936 6.44761 4.39498 6.35403L2.89498 4.85403C2.76816 4.72717 2.71865 4.54235 2.76507 4.36907C2.81149 4.19583 2.94681 4.06051 3.12005 4.01409C3.29332 3.96767 3.47816 4.01718 3.60501 4.14401L4.73001 5.269L8.37501 1.16901C8.46056 1.06279 8.58578 0.996155 8.72169 0.984497C8.8576 0.972843 8.99233 1.01718 9.09474 1.10728C9.19712 1.19738 9.25825 1.32541 9.26398 1.46167C9.26968 1.59796 9.21948 1.73065 9.12502 1.82902L5.12502 6.32902C5.03371 6.43306 4.90337 6.49461 4.76502 6.49901L4.75 6.49901Z"fill=currentColor></path></g><defs><clipPath id=clip0_3445_1172><rect width=10 height=10 fill=white transform="translate(0 -0.000976562)">`);
1482
+ var MarkAsRead = (props) => {
1443
1483
  return (() => {
1444
1484
  var _el$ = _tmpl$15();
1445
1485
  web.spread(_el$, props, true, true);
1446
1486
  return _el$;
1447
1487
  })();
1448
1488
  };
1449
- var _tmpl$16 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 16"fill=none xmlns=http://www.w3.org/2000/svg><path d="M4.12531 1.8999C3.94958 1.8999 3.80713 2.04235 3.80713 2.21808C3.80713 2.39382 3.94958 2.53627 4.12531 2.53627H6.0344C6.21013 2.53627 6.35258 2.39382 6.35258 2.21808C6.35258 2.04235 6.21013 1.8999 6.0344 1.8999H4.12531Z"fill=currentColor></path><path d="M4.12531 1.8999C3.94958 1.8999 3.80713 2.04235 3.80713 2.21808C3.80713 2.39382 3.94958 2.53627 4.12531 2.53627H6.0344C6.21013 2.53627 6.35258 2.39382 6.35258 2.21808C6.35258 2.04235 6.21013 1.8999 6.0344 1.8999H4.12531Z"stroke=currentColor></path><path d="M2.69329 1.46818H7.30693C7.75127 1.46818 8.11147 1.82839 8.11147 2.27273V13.7273C8.11147 14.1716 7.75127 14.5318 7.30693 14.5318H2.69329C2.24896 14.5318 1.88875 14.1716 1.88875 13.7273V2.27273C1.88875 1.82839 2.24896 1.46818 2.69329 1.46818ZM2.69329 0.85C1.90754 0.85 1.27057 1.48698 1.27057 2.27273V2.95695C1.17568 3.00972 1.11147 3.111 1.11147 3.22727V3.54545C1.11147 3.64155 1.15532 3.7274 1.22411 3.78409C1.15532 3.84078 1.11147 3.92663 1.11147 4.02273V4.65909C1.11147 4.75519 1.15532 4.84104 1.22411 4.89773C1.15532 4.95442 1.11147 5.04027 1.11147 5.13636V6.09091C1.11147 6.20718 1.17568 6.30846 1.27057 6.36123V13.7273C1.27057 14.513 1.90754 15.15 2.69329 15.15H7.30693C8.09268 15.15 8.72966 14.513 8.72966 13.7273V6.36123C8.82454 6.30846 8.88875 6.20718 8.88875 6.09091V4.81818C8.88875 4.70191 8.82454 4.60063 8.72966 4.54786V2.27273C8.72966 1.48698 8.09268 0.85 7.30693 0.85H2.69329Z"fill=currentColor stroke=currentColor stroke-width=0.3>`);
1450
- var Push = (props) => {
1489
+ var _tmpl$16 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M3.15789 2.99902V4.99902L0 2.49902L3.15789 -0.000976562V1.99902H5.78947C6.90618 1.99902 7.97714 2.42045 8.76677 3.1706C9.55639 3.92074 10 4.93816 10 5.99902C10 7.05989 9.55639 8.0773 8.76677 8.82745C7.97714 9.5776 6.90618 9.99902 5.78947 9.99902H1.05263V8.99902H5.78947C6.627 8.99902 7.43022 8.68295 8.02244 8.12034C8.61466 7.55773 8.94737 6.79467 8.94737 5.99902C8.94737 5.20337 8.61466 4.44031 8.02244 3.8777C7.43022 3.31509 6.627 2.99902 5.78947 2.99902H3.15789Z"fill=currentColor>`);
1490
+ var MarkAsUnarchived = (props) => {
1451
1491
  return (() => {
1452
1492
  var _el$ = _tmpl$16();
1453
1493
  web.spread(_el$, props, true, true);
1454
1494
  return _el$;
1455
1495
  })();
1456
1496
  };
1457
- var _tmpl$17 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 20 20"fill=none xmlns=http://www.w3.org/2000/svg><path d="M10 1.75L17.125 5.875V14.125L10 18.25L2.875 14.125V5.875L10 1.75ZM10 3.48325L4.375 6.73975V13.2603L10 16.5167L15.625 13.2603V6.73975L10 3.48325ZM10 13C9.20435 13 8.44129 12.6839 7.87868 12.1213C7.31607 11.5587 7 10.7956 7 10C7 9.20435 7.31607 8.44129 7.87868 7.87868C8.44129 7.31607 9.20435 7 10 7C10.7956 7 11.5587 7.31607 12.1213 7.87868C12.6839 8.44129 13 9.20435 13 10C13 10.7956 12.6839 11.5587 12.1213 12.1213C11.5587 12.6839 10.7956 13 10 13ZM10 11.5C10.3978 11.5 10.7794 11.342 11.0607 11.0607C11.342 10.7794 11.5 10.3978 11.5 10C11.5 9.60218 11.342 9.22064 11.0607 8.93934C10.7794 8.65804 10.3978 8.5 10 8.5C9.60218 8.5 9.22064 8.65804 8.93934 8.93934C8.65804 9.22064 8.5 9.60218 8.5 10C8.5 10.3978 8.65804 10.7794 8.93934 11.0607C9.22064 11.342 9.60218 11.5 10 11.5Z"fill=currentColor>`);
1458
- var Settings = (props) => {
1497
+ var _tmpl$17 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 11 11"fill=none xmlns=http://www.w3.org/2000/svg><path d="M6.8 1.49902H1.5C0.947715 1.49902 0.5 1.94674 0.5 2.49902V9.49902C0.5 10.0513 0.947715 10.499 1.5 10.499H8.5C9.05228 10.499 9.5 10.0513 9.5 9.49902V4.19902"stroke=currentColor stroke-miterlimit=1 stroke-linecap=round></path><circle cx=9.25 cy=1.74902 r=1.25 fill=currentColor>`);
1498
+ var MarkAsUnread = (props) => {
1459
1499
  return (() => {
1460
1500
  var _el$ = _tmpl$17();
1461
1501
  web.spread(_el$, props, true, true);
1462
1502
  return _el$;
1463
1503
  })();
1464
1504
  };
1465
- var _tmpl$18 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M5.00051 9.28364C7.76195 9.28364 10 7.20598 10 4.64182C10 2.07766 7.76195 0 5.00051 0C2.23907 0 0.00101462 2.07766 0.00101462 4.64182C0.00101462 5.64829 0.346683 6.57889 0.932561 7.33988C0.895455 7.88663 0.709927 8.37313 0.514634 8.74358C0.407223 8.94889 0.297859 9.11404 0.21779 9.22562C0.176778 9.28141 0.145531 9.32381 0.122096 9.35282C0.110379 9.36621 0.102567 9.37737 0.096708 9.38407L0.0908493 9.39076C0.00101462 9.49342 -0.0243734 9.64517 0.0244497 9.77907C0.0732729 9.91297 0.186543 10 0.313483 10C0.873973 10 1.43837 9.80138 1.90707 9.56929C2.35429 9.34613 2.73511 9.08056 2.96751 8.88641C3.58854 9.14305 4.27597 9.28587 5.00051 9.28587V9.28364ZM1.87582 4.03481C1.87582 3.58179 2.19806 3.21357 2.5945 3.21357H2.96946C3.14132 3.21357 3.28193 3.37425 3.28193 3.57063C3.28193 3.76702 3.14132 3.92769 2.96946 3.92769H2.5945C2.54177 3.92769 2.50076 3.97679 2.50076 4.03481C2.50076 4.07052 2.51638 4.10399 2.54373 4.12408L3.11789 4.56148C3.31904 4.71323 3.43817 4.96987 3.43817 5.2466C3.43817 5.69962 3.11593 6.06784 2.71949 6.06784L2.18829 6.07007C2.01644 6.07007 1.87582 5.9094 1.87582 5.71301C1.87582 5.51663 2.01644 5.35595 2.18829 5.35595H2.71949C2.77222 5.35595 2.81323 5.30685 2.81323 5.24883C2.81323 5.21312 2.79761 5.17965 2.77026 5.15956L2.1961 4.72216C1.99691 4.56818 1.87582 4.31154 1.87582 4.03481ZM7.28153 3.21357H7.65649C7.82834 3.21357 7.96896 3.37425 7.96896 3.57063C7.96896 3.76702 7.82834 3.92769 7.65649 3.92769H7.28153C7.2288 3.92769 7.18779 3.97679 7.18779 4.03481C7.18779 4.07052 7.20341 4.10399 7.23075 4.12408L7.80491 4.56148C8.00411 4.71323 8.12519 4.96987 8.12519 5.2466C8.12519 5.69962 7.80296 6.06784 7.40651 6.06784L6.87532 6.07007C6.70346 6.07007 6.56285 5.9094 6.56285 5.71301C6.56285 5.51663 6.70346 5.35595 6.87532 5.35595H7.40651C7.45924 5.35595 7.50025 5.30685 7.50025 5.24883C7.50025 5.21312 7.48463 5.17965 7.45729 5.15956L6.88313 4.72216C6.68393 4.57041 6.56285 4.31377 6.56285 4.03705C6.56285 3.58402 6.88508 3.2158 7.28153 3.2158V3.21357ZM4.31308 3.35639L5.00051 4.40304L5.68794 3.35639C5.76801 3.23365 5.90862 3.18233 6.03751 3.23142C6.1664 3.28052 6.25038 3.41665 6.25038 3.57063V5.71301C6.25038 5.9094 6.10977 6.07007 5.93791 6.07007C5.76605 6.07007 5.62544 5.9094 5.62544 5.71301V4.64182L5.25048 5.21312C5.19189 5.30239 5.09815 5.35595 5.00051 5.35595C4.90286 5.35595 4.80912 5.30239 4.75053 5.21312L4.37557 4.64182V5.71301C4.37557 5.9094 4.23496 6.07007 4.0631 6.07007C3.89124 6.07007 3.75063 5.9094 3.75063 5.71301V3.57063C3.75063 3.41665 3.83656 3.28052 3.9635 3.23142C4.09044 3.18233 4.23105 3.23365 4.31308 3.35639Z"fill=currentColor>`);
1466
- var Sms = (props) => {
1505
+ var _tmpl$18 = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 13 12"><path fill=currentColor d="M9.787.98A5.972 5.972 0 006.5 0c-.668 0-1.31.11-1.911.31L9.187 4.94c.221.222.6.065.6-.248V.98z"></path><path fill=currentColor d="M2.879 1.216A5.99 5.99 0 00.5 6c0 1.134.315 2.195.862 3.1V7.309c0-1.966 2.379-2.946 3.764-1.552l4.995 5.027A5.99 5.99 0 0012.5 6a5.972 5.972 0 00-.862-3.1v1.791c0 1.966-2.379 2.946-3.764 1.552L2.879 1.216z"></path><path fill=currentColor d="M8.411 11.69L3.813 7.06a.351.351 0 00-.6.248v3.711c.944.62 2.073.98 3.287.98.668 0 1.31-.11 1.911-.31z">`);
1506
+ var Novu2 = (props) => {
1467
1507
  return (() => {
1468
1508
  var _el$ = _tmpl$18();
1469
1509
  web.spread(_el$, props, true, true);
1470
1510
  return _el$;
1471
1511
  })();
1472
1512
  };
1473
- var _tmpl$19 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 8"fill=none xmlns=http://www.w3.org/2000/svg><path d="M1.0119 0.347055C1.06274 0.143703 1.26565 -0.000976562 1.5 -0.000976562H8.5C8.73435 -0.000976562 8.93725 0.143703 8.9881 0.347055L9.9881 4.34707C9.996 4.37871 10 4.41102 10 4.44347V7.55458C10 7.80005 9.77615 7.99902 9.5 7.99902H0.5C0.22386 7.99902 0 7.80005 0 7.55458V4.44347C0 4.41102 0.00399495 4.37871 0.011905 4.34707L1.0119 0.347055ZM1.90108 0.887912L1.12331 3.99902H3.5C3.5 4.73542 4.17155 5.33236 5 5.33236C5.82845 5.33236 6.5 4.73542 6.5 3.99902H8.8767L8.0989 0.887912H1.90108ZM7.292 4.88791C6.9062 5.67276 6.02515 6.22125 5 6.22125C3.97484 6.22125 3.0938 5.67276 2.70802 4.88791H1V7.11013H9V4.88791H7.292Z"fill=currentColor>`);
1474
- var UnreadRead = (props) => {
1513
+ var _tmpl$19 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 16"fill=none xmlns=http://www.w3.org/2000/svg><path d="M4.12531 1.8999C3.94958 1.8999 3.80713 2.04235 3.80713 2.21808C3.80713 2.39382 3.94958 2.53627 4.12531 2.53627H6.0344C6.21013 2.53627 6.35258 2.39382 6.35258 2.21808C6.35258 2.04235 6.21013 1.8999 6.0344 1.8999H4.12531Z"fill=currentColor></path><path d="M4.12531 1.8999C3.94958 1.8999 3.80713 2.04235 3.80713 2.21808C3.80713 2.39382 3.94958 2.53627 4.12531 2.53627H6.0344C6.21013 2.53627 6.35258 2.39382 6.35258 2.21808C6.35258 2.04235 6.21013 1.8999 6.0344 1.8999H4.12531Z"stroke=currentColor></path><path d="M2.69329 1.46818H7.30693C7.75127 1.46818 8.11147 1.82839 8.11147 2.27273V13.7273C8.11147 14.1716 7.75127 14.5318 7.30693 14.5318H2.69329C2.24896 14.5318 1.88875 14.1716 1.88875 13.7273V2.27273C1.88875 1.82839 2.24896 1.46818 2.69329 1.46818ZM2.69329 0.85C1.90754 0.85 1.27057 1.48698 1.27057 2.27273V2.95695C1.17568 3.00972 1.11147 3.111 1.11147 3.22727V3.54545C1.11147 3.64155 1.15532 3.7274 1.22411 3.78409C1.15532 3.84078 1.11147 3.92663 1.11147 4.02273V4.65909C1.11147 4.75519 1.15532 4.84104 1.22411 4.89773C1.15532 4.95442 1.11147 5.04027 1.11147 5.13636V6.09091C1.11147 6.20718 1.17568 6.30846 1.27057 6.36123V13.7273C1.27057 14.513 1.90754 15.15 2.69329 15.15H7.30693C8.09268 15.15 8.72966 14.513 8.72966 13.7273V6.36123C8.82454 6.30846 8.88875 6.20718 8.88875 6.09091V4.81818C8.88875 4.70191 8.82454 4.60063 8.72966 4.54786V2.27273C8.72966 1.48698 8.09268 0.85 7.30693 0.85H2.69329Z"fill=currentColor stroke=currentColor stroke-width=0.3>`);
1514
+ var Push = (props) => {
1475
1515
  return (() => {
1476
1516
  var _el$ = _tmpl$19();
1477
1517
  web.spread(_el$, props, true, true);
1478
1518
  return _el$;
1479
1519
  })();
1480
1520
  };
1521
+ var _tmpl$20 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 20 20"fill=none xmlns=http://www.w3.org/2000/svg><path d="M10 1.75L17.125 5.875V14.125L10 18.25L2.875 14.125V5.875L10 1.75ZM10 3.48325L4.375 6.73975V13.2603L10 16.5167L15.625 13.2603V6.73975L10 3.48325ZM10 13C9.20435 13 8.44129 12.6839 7.87868 12.1213C7.31607 11.5587 7 10.7956 7 10C7 9.20435 7.31607 8.44129 7.87868 7.87868C8.44129 7.31607 9.20435 7 10 7C10.7956 7 11.5587 7.31607 12.1213 7.87868C12.6839 8.44129 13 9.20435 13 10C13 10.7956 12.6839 11.5587 12.1213 12.1213C11.5587 12.6839 10.7956 13 10 13ZM10 11.5C10.3978 11.5 10.7794 11.342 11.0607 11.0607C11.342 10.7794 11.5 10.3978 11.5 10C11.5 9.60218 11.342 9.22064 11.0607 8.93934C10.7794 8.65804 10.3978 8.5 10 8.5C9.60218 8.5 9.22064 8.65804 8.93934 8.93934C8.65804 9.22064 8.5 9.60218 8.5 10C8.5 10.3978 8.65804 10.7794 8.93934 11.0607C9.22064 11.342 9.60218 11.5 10 11.5Z"fill=currentColor>`);
1522
+ var Cogs = (props) => {
1523
+ return (() => {
1524
+ var _el$ = _tmpl$20();
1525
+ web.spread(_el$, props, true, true);
1526
+ return _el$;
1527
+ })();
1528
+ };
1529
+ var _tmpl$21 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M5.00051 9.28364C7.76195 9.28364 10 7.20598 10 4.64182C10 2.07766 7.76195 0 5.00051 0C2.23907 0 0.00101462 2.07766 0.00101462 4.64182C0.00101462 5.64829 0.346683 6.57889 0.932561 7.33988C0.895455 7.88663 0.709927 8.37313 0.514634 8.74358C0.407223 8.94889 0.297859 9.11404 0.21779 9.22562C0.176778 9.28141 0.145531 9.32381 0.122096 9.35282C0.110379 9.36621 0.102567 9.37737 0.096708 9.38407L0.0908493 9.39076C0.00101462 9.49342 -0.0243734 9.64517 0.0244497 9.77907C0.0732729 9.91297 0.186543 10 0.313483 10C0.873973 10 1.43837 9.80138 1.90707 9.56929C2.35429 9.34613 2.73511 9.08056 2.96751 8.88641C3.58854 9.14305 4.27597 9.28587 5.00051 9.28587V9.28364ZM1.87582 4.03481C1.87582 3.58179 2.19806 3.21357 2.5945 3.21357H2.96946C3.14132 3.21357 3.28193 3.37425 3.28193 3.57063C3.28193 3.76702 3.14132 3.92769 2.96946 3.92769H2.5945C2.54177 3.92769 2.50076 3.97679 2.50076 4.03481C2.50076 4.07052 2.51638 4.10399 2.54373 4.12408L3.11789 4.56148C3.31904 4.71323 3.43817 4.96987 3.43817 5.2466C3.43817 5.69962 3.11593 6.06784 2.71949 6.06784L2.18829 6.07007C2.01644 6.07007 1.87582 5.9094 1.87582 5.71301C1.87582 5.51663 2.01644 5.35595 2.18829 5.35595H2.71949C2.77222 5.35595 2.81323 5.30685 2.81323 5.24883C2.81323 5.21312 2.79761 5.17965 2.77026 5.15956L2.1961 4.72216C1.99691 4.56818 1.87582 4.31154 1.87582 4.03481ZM7.28153 3.21357H7.65649C7.82834 3.21357 7.96896 3.37425 7.96896 3.57063C7.96896 3.76702 7.82834 3.92769 7.65649 3.92769H7.28153C7.2288 3.92769 7.18779 3.97679 7.18779 4.03481C7.18779 4.07052 7.20341 4.10399 7.23075 4.12408L7.80491 4.56148C8.00411 4.71323 8.12519 4.96987 8.12519 5.2466C8.12519 5.69962 7.80296 6.06784 7.40651 6.06784L6.87532 6.07007C6.70346 6.07007 6.56285 5.9094 6.56285 5.71301C6.56285 5.51663 6.70346 5.35595 6.87532 5.35595H7.40651C7.45924 5.35595 7.50025 5.30685 7.50025 5.24883C7.50025 5.21312 7.48463 5.17965 7.45729 5.15956L6.88313 4.72216C6.68393 4.57041 6.56285 4.31377 6.56285 4.03705C6.56285 3.58402 6.88508 3.2158 7.28153 3.2158V3.21357ZM4.31308 3.35639L5.00051 4.40304L5.68794 3.35639C5.76801 3.23365 5.90862 3.18233 6.03751 3.23142C6.1664 3.28052 6.25038 3.41665 6.25038 3.57063V5.71301C6.25038 5.9094 6.10977 6.07007 5.93791 6.07007C5.76605 6.07007 5.62544 5.9094 5.62544 5.71301V4.64182L5.25048 5.21312C5.19189 5.30239 5.09815 5.35595 5.00051 5.35595C4.90286 5.35595 4.80912 5.30239 4.75053 5.21312L4.37557 4.64182V5.71301C4.37557 5.9094 4.23496 6.07007 4.0631 6.07007C3.89124 6.07007 3.75063 5.9094 3.75063 5.71301V3.57063C3.75063 3.41665 3.83656 3.28052 3.9635 3.23142C4.09044 3.18233 4.23105 3.23365 4.31308 3.35639Z"fill=currentColor>`);
1530
+ var Sms = (props) => {
1531
+ return (() => {
1532
+ var _el$ = _tmpl$21();
1533
+ web.spread(_el$, props, true, true);
1534
+ return _el$;
1535
+ })();
1536
+ };
1537
+ var _tmpl$22 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 8"fill=none xmlns=http://www.w3.org/2000/svg><path d="M1.0119 0.347055C1.06274 0.143703 1.26565 -0.000976562 1.5 -0.000976562H8.5C8.73435 -0.000976562 8.93725 0.143703 8.9881 0.347055L9.9881 4.34707C9.996 4.37871 10 4.41102 10 4.44347V7.55458C10 7.80005 9.77615 7.99902 9.5 7.99902H0.5C0.22386 7.99902 0 7.80005 0 7.55458V4.44347C0 4.41102 0.00399495 4.37871 0.011905 4.34707L1.0119 0.347055ZM1.90108 0.887912L1.12331 3.99902H3.5C3.5 4.73542 4.17155 5.33236 5 5.33236C5.82845 5.33236 6.5 4.73542 6.5 3.99902H8.8767L8.0989 0.887912H1.90108ZM7.292 4.88791C6.9062 5.67276 6.02515 6.22125 5 6.22125C3.97484 6.22125 3.0938 5.67276 2.70802 4.88791H1V7.11013H9V4.88791H7.292Z"fill=currentColor>`);
1538
+ var Unread = (props) => {
1539
+ return (() => {
1540
+ var _el$ = _tmpl$22();
1541
+ web.spread(_el$, props, true, true);
1542
+ return _el$;
1543
+ })();
1544
+ };
1545
+ var _tmpl$23 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M4.99992 2.91634V4.99967M4.79992 5.39616L3.27392 6.46553M1.66659 1.66634L8.33325 8.33301M9.16658 4.99967C9.16658 7.30086 7.30111 9.16634 4.99992 9.16634C2.69873 9.16634 0.833252 7.30086 0.833252 4.99967C0.833252 2.69849 2.69873 0.833008 4.99992 0.833008C7.30111 0.833008 9.16658 2.69849 9.16658 4.99967Z"stroke=currentColor stroke-linecap=round stroke-linejoin=round>`);
1546
+ var Unsnooze = (props) => {
1547
+ return (() => {
1548
+ var _el$ = _tmpl$23();
1549
+ web.spread(_el$, props, true, true);
1550
+ return _el$;
1551
+ })();
1552
+ };
1553
+ var IconRendererWrapper = (props) => {
1554
+ const appearance = useAppearance();
1555
+ const customRenderer = () => {
1556
+ var _a;
1557
+ return (_a = appearance.icons()) == null ? void 0 : _a[props.iconKey];
1558
+ };
1559
+ return web.createComponent(solidJs.Show, {
1560
+ get when() {
1561
+ return customRenderer();
1562
+ },
1563
+ get fallback() {
1564
+ return props.fallback;
1565
+ },
1566
+ get children() {
1567
+ return web.createComponent(ExternalElementRenderer, {
1568
+ render: (el) => customRenderer()(el, {
1569
+ class: props.class
1570
+ })
1571
+ });
1572
+ }
1573
+ });
1574
+ };
1481
1575
 
1482
1576
  // src/ui/components/elements/Bell/DefaultBellContainer.tsx
1483
- var _tmpl$20 = /* @__PURE__ */ web.template(`<span>`);
1577
+ var _tmpl$24 = /* @__PURE__ */ web.template(`<span>`);
1484
1578
  var BellContainer = (props) => {
1485
1579
  const style = useStyle();
1580
+ const bellIconStyle = style("bellIcon", "nt-size-4");
1486
1581
  return (() => {
1487
- var _el$ = _tmpl$20();
1488
- web.insert(_el$, web.createComponent(Bell, {
1489
- get ["class"]() {
1490
- return style("bellIcon", "nt-size-4");
1582
+ var _el$ = _tmpl$24();
1583
+ web.insert(_el$, web.createComponent(IconRendererWrapper, {
1584
+ iconKey: "bell",
1585
+ "class": bellIconStyle,
1586
+ get fallback() {
1587
+ return web.createComponent(Bell, {
1588
+ "class": bellIconStyle
1589
+ });
1491
1590
  }
1492
1591
  }), null);
1493
1592
  web.insert(_el$, web.createComponent(solidJs.Show, {
@@ -1495,7 +1594,7 @@ var BellContainer = (props) => {
1495
1594
  return props.unreadCount > 0;
1496
1595
  },
1497
1596
  get children() {
1498
- var _el$2 = _tmpl$20();
1597
+ var _el$2 = _tmpl$24();
1499
1598
  web.effect(() => web.className(_el$2, style("bellDot", "nt-absolute nt-top-0 nt-right-0 nt-block nt-size-2 nt-transform nt-bg-counter nt-rounded-full nt-border nt-border-background")));
1500
1599
  return _el$2;
1501
1600
  }
@@ -1535,8 +1634,8 @@ function isBrowser() {
1535
1634
  }
1536
1635
 
1537
1636
  // src/ui/components/elements/Footer.tsx
1538
- var _tmpl$21 = /* @__PURE__ */ web.template(`<span class="nt-z-10 nt-text-xs nt-text-stripes">Development mode`);
1539
- var _tmpl$22 = /* @__PURE__ */ web.template(`<span class="nt-z-10 nt-text-xs">\u2022`);
1637
+ var _tmpl$25 = /* @__PURE__ */ web.template(`<span class="nt-z-10 nt-text-xs nt-text-stripes">Development mode`);
1638
+ var _tmpl$26 = /* @__PURE__ */ web.template(`<span class="nt-z-10 nt-text-xs">\u2022`);
1540
1639
  var _tmpl$32 = /* @__PURE__ */ web.template(`<a target=_blank class="nt-z-10 nt-flex nt-items-center nt-gap-1 nt-justify-center"><span class=nt-text-xs>Inbox by</span><span class=nt-text-xs>Novu`);
1541
1640
  var _tmpl$42 = /* @__PURE__ */ web.template(`<div>`);
1542
1641
  var stripes = `before:nt-content-[""] before:nt-absolute before:nt-inset-0 before:-nt-right-[calc(0+var(--stripes-size))] before:[mask-image:linear-gradient(transparent_0%,black)] before:nt-bg-dev-stripes-gradient before:nt-bg-[length:var(--stripes-size)_var(--stripes-size)] before:nt-animate-stripes before:hover:[animation-play-state:running]`;
@@ -1560,7 +1659,7 @@ var Footer = () => {
1560
1659
  return isDevelopmentMode();
1561
1660
  },
1562
1661
  get children() {
1563
- return _tmpl$21();
1662
+ return _tmpl$25();
1564
1663
  }
1565
1664
  }), null);
1566
1665
  web.insert(_el$, web.createComponent(solidJs.Show, {
@@ -1568,7 +1667,7 @@ var Footer = () => {
1568
1667
  return web.memo(() => !!isDevelopmentMode())() && !hideBranding();
1569
1668
  },
1570
1669
  get children() {
1571
- return _tmpl$22();
1670
+ return _tmpl$26();
1572
1671
  }
1573
1672
  }), null);
1574
1673
  web.insert(_el$, web.createComponent(solidJs.Show, {
@@ -1600,7 +1699,7 @@ function getCurrentDomain() {
1600
1699
  }
1601
1700
  return "";
1602
1701
  }
1603
- var _tmpl$23 = /* @__PURE__ */ web.template(`<button>`);
1702
+ var _tmpl$27 = /* @__PURE__ */ web.template(`<button>`);
1604
1703
  var buttonVariants = classVarianceAuthority.cva(cn('nt-inline-flex nt-gap-4 nt-items-center nt-justify-center nt-whitespace-nowrap nt-text-sm nt-font-medium nt-transition-colors disabled:nt-pointer-events-none disabled:nt-opacity-50 after:nt-absolute after:nt-content-[""] before:nt-content-[""] before:nt-absolute [&_svg]:nt-pointer-events-none [&_svg]:nt-shrink-0', `focus-visible:nt-outline-none focus-visible:nt-ring-2 focus-visible:nt-rounded-md focus-visible:nt-ring-ring focus-visible:nt-ring-offset-2`), {
1605
1704
  variants: {
1606
1705
  variant: {
@@ -1627,7 +1726,7 @@ var Button = (props) => {
1627
1726
  const [local, rest] = solidJs.splitProps(props, ["class", "appearanceKey"]);
1628
1727
  const style = useStyle();
1629
1728
  return (() => {
1630
- var _el$ = _tmpl$23();
1729
+ var _el$ = _tmpl$27();
1631
1730
  web.spread(_el$, web.mergeProps({
1632
1731
  get ["data-variant"]() {
1633
1732
  return props.variant;
@@ -1645,7 +1744,7 @@ var Button = (props) => {
1645
1744
  return _el$;
1646
1745
  })();
1647
1746
  };
1648
- var _tmpl$24 = /* @__PURE__ */ web.template(`<button>`);
1747
+ var _tmpl$28 = /* @__PURE__ */ web.template(`<button>`);
1649
1748
  var PopoverClose = (props) => {
1650
1749
  const {
1651
1750
  onClose
@@ -1667,7 +1766,7 @@ var PopoverClose = (props) => {
1667
1766
  }, rest));
1668
1767
  }
1669
1768
  return (() => {
1670
- var _el$ = _tmpl$24();
1769
+ var _el$ = _tmpl$28();
1671
1770
  _el$.$$click = handleClick;
1672
1771
  web.spread(_el$, web.mergeProps({
1673
1772
  get ["class"]() {
@@ -1678,12 +1777,12 @@ var PopoverClose = (props) => {
1678
1777
  })();
1679
1778
  };
1680
1779
  web.delegateEvents(["click"]);
1681
- var _tmpl$25 = /* @__PURE__ */ web.template(`<div>`);
1780
+ var _tmpl$29 = /* @__PURE__ */ web.template(`<div>`);
1682
1781
  var Portal = (props) => {
1683
1782
  const appearance = useAppearance();
1684
1783
  let currentElement;
1685
1784
  return [(() => {
1686
- var _el$ = _tmpl$25();
1785
+ var _el$ = _tmpl$29();
1687
1786
  web.use((el) => {
1688
1787
  currentElement = el;
1689
1788
  }, _el$);
@@ -1766,7 +1865,7 @@ function usePopover() {
1766
1865
  }
1767
1866
 
1768
1867
  // src/ui/components/primitives/Popover/PopoverContent.tsx
1769
- var _tmpl$26 = /* @__PURE__ */ web.template(`<div>`);
1868
+ var _tmpl$30 = /* @__PURE__ */ web.template(`<div>`);
1770
1869
  var popoverContentVariants = () => cn("nt-w-[400px] nt-h-[600px] nt-rounded-xl nt-bg-background", "nt-shadow-popover nt-animate-in nt-slide-in-from-top-2 nt-fade-in nt-cursor-default nt-flex nt-flex-col nt-overflow-hidden nt-border nt-border-border nt-z-10");
1771
1870
  var PopoverContentBody = (props) => {
1772
1871
  const {
@@ -1789,7 +1888,7 @@ var PopoverContentBody = (props) => {
1789
1888
  });
1790
1889
  });
1791
1890
  return (() => {
1792
- var _el$ = _tmpl$26();
1891
+ var _el$ = _tmpl$30();
1793
1892
  web.use(setFloating, _el$);
1794
1893
  web.spread(_el$, web.mergeProps({
1795
1894
  get ["class"]() {
@@ -1815,12 +1914,16 @@ var PopoverContent = (props) => {
1815
1914
  const {
1816
1915
  active
1817
1916
  } = useFocusManager();
1917
+ const {
1918
+ container
1919
+ } = useAppearance();
1818
1920
  const handleClickOutside = (e) => {
1819
1921
  var _a, _b;
1820
1922
  if ((_a = reference()) == null ? void 0 : _a.contains(e.target)) {
1821
1923
  return;
1822
1924
  }
1823
- if (active() !== floating() || ((_b = floating()) == null ? void 0 : _b.contains(e.target))) {
1925
+ const containerElement = container();
1926
+ if (active() !== floating() || ((_b = floating()) == null ? void 0 : _b.contains(e.target)) || containerElement && e.target.shadowRoot === containerElement) {
1824
1927
  return;
1825
1928
  }
1826
1929
  onClose();
@@ -1829,16 +1932,20 @@ var PopoverContent = (props) => {
1829
1932
  if (active() !== floating()) {
1830
1933
  return;
1831
1934
  }
1832
- if (e.key === "Escape") {
1935
+ if (e instanceof KeyboardEvent && e.key === "Escape") {
1833
1936
  onClose();
1834
1937
  }
1835
1938
  };
1836
1939
  solidJs.onMount(() => {
1940
+ var _a;
1837
1941
  document.body.addEventListener("click", handleClickOutside);
1942
+ (_a = container()) == null ? void 0 : _a.addEventListener("click", handleClickOutside);
1838
1943
  document.body.addEventListener("keydown", handleEscapeKey);
1839
1944
  });
1840
1945
  solidJs.onCleanup(() => {
1946
+ var _a;
1841
1947
  document.body.removeEventListener("click", handleClickOutside);
1948
+ (_a = container()) == null ? void 0 : _a.removeEventListener("click", handleClickOutside);
1842
1949
  document.body.removeEventListener("keydown", handleEscapeKey);
1843
1950
  });
1844
1951
  return web.createComponent(solidJs.Show, {
@@ -1866,7 +1973,7 @@ function mergeRefs(...refs) {
1866
1973
  }
1867
1974
 
1868
1975
  // src/ui/components/primitives/Popover/PopoverTrigger.tsx
1869
- var _tmpl$27 = /* @__PURE__ */ web.template(`<button>`);
1976
+ var _tmpl$31 = /* @__PURE__ */ web.template(`<button>`);
1870
1977
  var PopoverTrigger = (props) => {
1871
1978
  const {
1872
1979
  setReference,
@@ -1894,7 +2001,7 @@ var PopoverTrigger = (props) => {
1894
2001
  }, rest));
1895
2002
  }
1896
2003
  return (() => {
1897
- var _el$ = _tmpl$27();
2004
+ var _el$ = _tmpl$31();
1898
2005
  _el$.$$click = handleClick;
1899
2006
  var _ref$2 = ref();
1900
2007
  typeof _ref$2 === "function" && web.use(_ref$2, _el$);
@@ -2033,26 +2140,33 @@ var useKeyboardNavigation = ({
2033
2140
  setActiveTab,
2034
2141
  tabsContainer
2035
2142
  }) => {
2143
+ const { container } = useAppearance();
2036
2144
  const [keyboardNavigation, setKeyboardNavigation] = solidJs.createSignal(false);
2145
+ const getRoot = () => {
2146
+ const containerElement = container();
2147
+ return containerElement instanceof ShadowRoot ? containerElement : document;
2148
+ };
2037
2149
  solidJs.createEffect(() => {
2150
+ const root = getRoot();
2038
2151
  const handleTabKey = (event) => {
2039
2152
  var _a;
2040
- if (event.key !== "Tab") {
2153
+ if (!(event instanceof KeyboardEvent) || event.key !== "Tab") {
2041
2154
  return;
2042
2155
  }
2043
2156
  const tabs = (_a = tabsContainer()) == null ? void 0 : _a.querySelectorAll('[role="tab"]');
2044
- if (!tabs || !document.activeElement) {
2157
+ if (!tabs || !root.activeElement) {
2045
2158
  return;
2046
2159
  }
2047
- setKeyboardNavigation(Array.from(tabs).includes(document.activeElement));
2160
+ setKeyboardNavigation(Array.from(tabs).includes(root.activeElement));
2048
2161
  };
2049
- document.addEventListener("keyup", handleTabKey);
2050
- return solidJs.onCleanup(() => document.removeEventListener("keyup", handleTabKey));
2162
+ root.addEventListener("keyup", handleTabKey);
2163
+ return solidJs.onCleanup(() => root.removeEventListener("keyup", handleTabKey));
2051
2164
  });
2052
2165
  solidJs.createEffect(() => {
2166
+ const root = getRoot();
2053
2167
  const handleArrowKeys = (event) => {
2054
2168
  var _a, _b;
2055
- if (!keyboardNavigation() || event.key !== "ArrowLeft" && event.key !== "ArrowRight") {
2169
+ if (!keyboardNavigation() || !(event instanceof KeyboardEvent) || event.key !== "ArrowLeft" && event.key !== "ArrowRight") {
2056
2170
  return;
2057
2171
  }
2058
2172
  const tabElements = Array.from((_b = (_a = tabsContainer()) == null ? void 0 : _a.querySelectorAll('[role="tab"]')) != null ? _b : []);
@@ -2071,13 +2185,13 @@ var useKeyboardNavigation = ({
2071
2185
  tabElements[activeIndex].focus();
2072
2186
  setActiveTab(newTab);
2073
2187
  };
2074
- document.addEventListener("keydown", handleArrowKeys);
2075
- return solidJs.onCleanup(() => document.removeEventListener("keydown", handleArrowKeys));
2188
+ root.addEventListener("keydown", handleArrowKeys);
2189
+ return solidJs.onCleanup(() => root.removeEventListener("keydown", handleArrowKeys));
2076
2190
  });
2077
2191
  };
2078
2192
 
2079
2193
  // src/ui/components/primitives/Tabs/TabsRoot.tsx
2080
- var _tmpl$28 = /* @__PURE__ */ web.template(`<div>`);
2194
+ var _tmpl$33 = /* @__PURE__ */ web.template(`<div>`);
2081
2195
  var TabsContext = solidJs.createContext(void 0);
2082
2196
  var useTabsContext = () => {
2083
2197
  const context = solidJs.useContext(TabsContext);
@@ -2116,7 +2230,7 @@ var TabsRoot = (props) => {
2116
2230
  setVisibleTabs
2117
2231
  },
2118
2232
  get children() {
2119
- var _el$ = _tmpl$28();
2233
+ var _el$ = _tmpl$33();
2120
2234
  web.use(setTabsContainer, _el$);
2121
2235
  web.spread(_el$, web.mergeProps({
2122
2236
  get ["class"]() {
@@ -2130,7 +2244,7 @@ var TabsRoot = (props) => {
2130
2244
  };
2131
2245
 
2132
2246
  // src/ui/components/primitives/Tabs/TabsContent.tsx
2133
- var _tmpl$29 = /* @__PURE__ */ web.template(`<div role=tabpanel>`);
2247
+ var _tmpl$34 = /* @__PURE__ */ web.template(`<div role=tabpanel>`);
2134
2248
  var TabsContent = (props) => {
2135
2249
  const [local, rest] = solidJs.splitProps(props, ["value", "class", "appearanceKey", "children"]);
2136
2250
  const style = useStyle();
@@ -2142,7 +2256,7 @@ var TabsContent = (props) => {
2142
2256
  return activeTab() === local.value;
2143
2257
  },
2144
2258
  get children() {
2145
- var _el$ = _tmpl$29();
2259
+ var _el$ = _tmpl$34();
2146
2260
  web.spread(_el$, web.mergeProps({
2147
2261
  get ["class"]() {
2148
2262
  return web.memo(() => !!local.class)() ? local.class : style(local.appearanceKey || "tabsContent", activeTab() === local.value ? "nt-block" : "nt-hidden");
@@ -2162,14 +2276,14 @@ var TabsContent = (props) => {
2162
2276
  }
2163
2277
  });
2164
2278
  };
2165
- var _tmpl$30 = /* @__PURE__ */ web.template(`<div role=tablist>`);
2279
+ var _tmpl$35 = /* @__PURE__ */ web.template(`<div role=tablist>`);
2166
2280
  var _tmpl$210 = /* @__PURE__ */ web.template(`<div class="nt-relative nt-z-[-1]">`);
2167
2281
  var tabsListVariants = () => "nt-flex nt-gap-6";
2168
2282
  var TabsList = (props) => {
2169
2283
  const [local, rest] = solidJs.splitProps(props, ["class", "appearanceKey", "ref", "children"]);
2170
2284
  const style = useStyle();
2171
2285
  return [(() => {
2172
- var _el$ = _tmpl$30();
2286
+ var _el$ = _tmpl$35();
2173
2287
  var _ref$ = local.ref;
2174
2288
  typeof _ref$ === "function" ? web.use(_ref$, _el$) : local.ref = _el$;
2175
2289
  web.spread(_el$, web.mergeProps({
@@ -2250,28 +2364,23 @@ var inboxFilterLocalizationKeys = {
2250
2364
  archived: "inbox.filters.labels.archived",
2251
2365
  snoozed: "inbox.filters.labels.snoozed"
2252
2366
  };
2253
- var _tmpl$31 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 12 12"fill=none xmlns=http://www.w3.org/2000/svg><path d="M6 2.99902V5.99902H8.25M11 5.99902C11 8.76045 8.76142 10.999 6 10.999C3.23858 10.999 1 8.76045 1 5.99902C1 3.2376 3.23858 0.999023 6 0.999023C8.76142 0.999023 11 3.2376 11 5.99902Z"stroke=currentColor stroke-linecap=round stroke-linejoin=round>`);
2254
- var Snooze = (props) => {
2255
- return (() => {
2256
- var _el$ = _tmpl$31();
2257
- web.spread(_el$, props, true, true);
2258
- return _el$;
2259
- })();
2260
- };
2261
-
2262
- // src/ui/components/elements/InboxStatus/InboxStatusOptions.tsx
2263
- var _tmpl$33 = /* @__PURE__ */ web.template(`<span><span></span><span>`);
2367
+ var _tmpl$36 = /* @__PURE__ */ web.template(`<span><span>`);
2368
+ var _tmpl$211 = /* @__PURE__ */ web.template(`<span>`);
2264
2369
  var cases = [{
2265
2370
  status: "unreadRead" /* UNREAD_READ */,
2266
- icon: UnreadRead
2371
+ iconKey: "unread",
2372
+ icon: Unread
2267
2373
  }, {
2268
2374
  status: "unread" /* UNREAD */,
2375
+ iconKey: "unread",
2269
2376
  icon: MarkAsUnread
2270
2377
  }, {
2271
2378
  status: "snoozed" /* SNOOZED */,
2272
- icon: Snooze
2379
+ iconKey: "clock",
2380
+ icon: Clock
2273
2381
  }, {
2274
2382
  status: "archived" /* ARCHIVED */,
2383
+ iconKey: "markAsArchived",
2275
2384
  icon: MarkAsArchived
2276
2385
  }];
2277
2386
  var StatusOptions = (props) => {
@@ -2297,6 +2406,9 @@ var StatusOptions = (props) => {
2297
2406
  },
2298
2407
  get icon() {
2299
2408
  return c.icon;
2409
+ },
2410
+ get iconKey() {
2411
+ return c.iconKey;
2300
2412
  }
2301
2413
  })
2302
2414
  });
@@ -2306,6 +2418,12 @@ var StatusItem = (props) => {
2306
2418
  const {
2307
2419
  t
2308
2420
  } = useLocalization();
2421
+ const itemIconClass = style("inboxStatus__dropdownItemLeft__icon", "nt-size-3", {
2422
+ iconKey: props.iconKey
2423
+ });
2424
+ const checkIconClass = style("inboxStatus__dropdownItemCheck__icon", "nt-size-3", {
2425
+ iconKey: "check"
2426
+ });
2309
2427
  return web.createComponent(Dropdown.Item, {
2310
2428
  get ["class"]() {
2311
2429
  return style("inboxStatus__dropdownItem", cn(dropdownItemVariants(), "nt-flex nt-gap-8 nt-justify-between"));
@@ -2315,21 +2433,32 @@ var StatusItem = (props) => {
2315
2433
  },
2316
2434
  get children() {
2317
2435
  return [(() => {
2318
- var _el$ = _tmpl$33(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
2319
- web.insert(_el$2, () => props.icon());
2320
- web.insert(_el$3, () => t(props.localizationKey));
2436
+ var _el$ = _tmpl$36(), _el$2 = _el$.firstChild;
2437
+ web.insert(_el$, web.createComponent(IconRendererWrapper, {
2438
+ get iconKey() {
2439
+ return props.iconKey;
2440
+ },
2441
+ "class": itemIconClass,
2442
+ get fallback() {
2443
+ return (() => {
2444
+ var _el$3 = _tmpl$211();
2445
+ web.className(_el$3, itemIconClass);
2446
+ web.insert(_el$3, () => props.icon());
2447
+ return _el$3;
2448
+ })();
2449
+ }
2450
+ }), _el$2);
2451
+ web.insert(_el$2, () => t(props.localizationKey));
2321
2452
  web.effect((_p$) => {
2322
- var _v$ = style("inboxStatus__dropdownItemLabelContainer", "nt-flex nt-gap-2 nt-items-center"), _v$2 = style("inboxStatus__dropdownItemLeft__icon", "nt-size-3"), _v$3 = props.localizationKey, _v$4 = style("inboxStatus__dropdownItemLabel", "nt-leading-none");
2453
+ var _v$ = style("inboxStatus__dropdownItemLabelContainer", "nt-flex nt-gap-2 nt-items-center"), _v$2 = props.localizationKey, _v$3 = style("inboxStatus__dropdownItemLabel", "nt-leading-none");
2323
2454
  _v$ !== _p$.e && web.className(_el$, _p$.e = _v$);
2324
- _v$2 !== _p$.t && web.className(_el$2, _p$.t = _v$2);
2325
- _v$3 !== _p$.a && web.setAttribute(_el$3, "data-localization", _p$.a = _v$3);
2326
- _v$4 !== _p$.o && web.className(_el$3, _p$.o = _v$4);
2455
+ _v$2 !== _p$.t && web.setAttribute(_el$2, "data-localization", _p$.t = _v$2);
2456
+ _v$3 !== _p$.a && web.className(_el$2, _p$.a = _v$3);
2327
2457
  return _p$;
2328
2458
  }, {
2329
2459
  e: void 0,
2330
2460
  t: void 0,
2331
- a: void 0,
2332
- o: void 0
2461
+ a: void 0
2333
2462
  });
2334
2463
  return _el$;
2335
2464
  })(), web.createComponent(solidJs.Show, {
@@ -2337,9 +2466,13 @@ var StatusItem = (props) => {
2337
2466
  return props.isSelected;
2338
2467
  },
2339
2468
  get children() {
2340
- return web.createComponent(Check, {
2341
- get ["class"]() {
2342
- return style("inboxStatus__dropdownItemCheck__icon", "nt-size-3");
2469
+ return web.createComponent(IconRendererWrapper, {
2470
+ iconKey: "check",
2471
+ "class": checkIconClass,
2472
+ get fallback() {
2473
+ return web.createComponent(Check, {
2474
+ "class": checkIconClass
2475
+ });
2343
2476
  }
2344
2477
  });
2345
2478
  }
@@ -2349,7 +2482,7 @@ var StatusItem = (props) => {
2349
2482
  };
2350
2483
 
2351
2484
  // src/ui/components/elements/InboxStatus/InboxStatusDropdown.tsx
2352
- var _tmpl$34 = /* @__PURE__ */ web.template(`<span>`);
2485
+ var _tmpl$37 = /* @__PURE__ */ web.template(`<span>`);
2353
2486
  var StatusDropdown = () => {
2354
2487
  const style = useStyle();
2355
2488
  const {
@@ -2359,6 +2492,9 @@ var StatusDropdown = () => {
2359
2492
  const {
2360
2493
  t
2361
2494
  } = useLocalization();
2495
+ const arrowDropDownIconClass = style("inboxStatus__dropdownItemRight__icon", "nt-text-foreground-alpha-600 nt-size-4", {
2496
+ iconKey: "arrowDropDown"
2497
+ });
2362
2498
  return web.createComponent(Dropdown.Root, {
2363
2499
  get children() {
2364
2500
  return [web.createComponent(Dropdown.Trigger, {
@@ -2374,7 +2510,7 @@ var StatusDropdown = () => {
2374
2510
  }, triggerProps, {
2375
2511
  get children() {
2376
2512
  return [(() => {
2377
- var _el$ = _tmpl$34();
2513
+ var _el$ = _tmpl$37();
2378
2514
  web.insert(_el$, () => t(inboxFilterLocalizationKeys[status()]));
2379
2515
  web.effect((_p$) => {
2380
2516
  var _v$ = inboxFilterLocalizationKeys[status()], _v$2 = style("inboxStatus__title", "nt-text-base");
@@ -2386,9 +2522,13 @@ var StatusDropdown = () => {
2386
2522
  t: void 0
2387
2523
  });
2388
2524
  return _el$;
2389
- })(), web.createComponent(ArrowDropDown, {
2390
- get ["class"]() {
2391
- return style("inboxStatus__dropdownItemRight__icon", "nt-text-foreground-alpha-600 nt-size-4");
2525
+ })(), web.createComponent(IconRendererWrapper, {
2526
+ iconKey: "arrowDropDown",
2527
+ "class": arrowDropDownIconClass,
2528
+ get fallback() {
2529
+ return web.createComponent(ArrowDropDown, {
2530
+ "class": arrowDropDownIconClass
2531
+ });
2392
2532
  }
2393
2533
  })];
2394
2534
  }
@@ -2452,7 +2592,7 @@ var useNotificationsInfiniteScroll = (props) => {
2452
2592
  );
2453
2593
  solidJs.onMount(() => {
2454
2594
  const listener = ({ data: data2 }) => {
2455
- if (!data2 || !chunkKIOGWIKT_js.isSameFilter(filter, data2.filter)) {
2595
+ if (!data2 || !chunkWZT5QCVB_js.isSameFilter(filter, data2.filter)) {
2456
2596
  return;
2457
2597
  }
2458
2598
  mutate({ data: data2.notifications, hasMore: data2.hasMore });
@@ -2462,7 +2602,7 @@ var useNotificationsInfiniteScroll = (props) => {
2462
2602
  });
2463
2603
  solidJs.createEffect(() => chunk7B52C2XE_js.__async(void 0, null, function* () {
2464
2604
  const newFilter = chunk7B52C2XE_js.__spreadValues({}, props.options());
2465
- if (chunkKIOGWIKT_js.isSameFilter(filter, newFilter)) {
2605
+ if (chunkWZT5QCVB_js.isSameFilter(filter, newFilter)) {
2466
2606
  return;
2467
2607
  }
2468
2608
  novu.notifications.clearCache();
@@ -2519,7 +2659,12 @@ var useReadAll = (props) => {
2519
2659
  };
2520
2660
 
2521
2661
  // src/ui/components/elements/Header/MoreActionsOptions.tsx
2522
- var _tmpl$35 = /* @__PURE__ */ web.template(`<span>`);
2662
+ var _tmpl$38 = /* @__PURE__ */ web.template(`<span>`);
2663
+ var iconKeyToComponentMap = {
2664
+ markAsRead: MarkAsRead,
2665
+ markAsArchived: MarkAsArchived,
2666
+ markAsArchivedRead: MarkAsArchivedRead
2667
+ };
2523
2668
  var MoreActionsOptions = () => {
2524
2669
  const {
2525
2670
  filter
@@ -2538,19 +2683,19 @@ var MoreActionsOptions = () => {
2538
2683
  onClick: () => readAll({
2539
2684
  tags: filter().tags
2540
2685
  }),
2541
- icon: MarkAsRead
2686
+ iconKey: "markAsRead"
2542
2687
  }), web.createComponent(ActionsItem, {
2543
2688
  localizationKey: "notifications.actions.archiveAll",
2544
2689
  onClick: () => archiveAll({
2545
2690
  tags: filter().tags
2546
2691
  }),
2547
- icon: MarkAsArchived
2692
+ iconKey: "markAsArchived"
2548
2693
  }), web.createComponent(ActionsItem, {
2549
2694
  localizationKey: "notifications.actions.archiveRead",
2550
2695
  onClick: () => archiveAllRead({
2551
2696
  tags: filter().tags
2552
2697
  }),
2553
- icon: MarkAsArchivedRead
2698
+ iconKey: "markAsArchivedRead"
2554
2699
  })];
2555
2700
  };
2556
2701
  var ActionsItem = (props) => {
@@ -2558,6 +2703,10 @@ var ActionsItem = (props) => {
2558
2703
  const {
2559
2704
  t
2560
2705
  } = useLocalization();
2706
+ const DefaultIconComponent = iconKeyToComponentMap[props.iconKey];
2707
+ const moreActionsIconClass = style("moreActions__dropdownItemLeft__icon", "nt-size-3", {
2708
+ iconKey: props.iconKey
2709
+ });
2561
2710
  return web.createComponent(Dropdown.Item, {
2562
2711
  get ["class"]() {
2563
2712
  return style("moreActions__dropdownItem", cn(dropdownItemVariants(), "nt-flex nt-gap-2"));
@@ -2566,24 +2715,29 @@ var ActionsItem = (props) => {
2566
2715
  return props.onClick;
2567
2716
  },
2568
2717
  get children() {
2569
- return [(() => {
2570
- var _el$ = _tmpl$35();
2571
- web.insert(_el$, () => props.icon());
2572
- web.effect(() => web.className(_el$, style("moreActions__dropdownItemLeft__icon", "nt-size-3")));
2573
- return _el$;
2574
- })(), (() => {
2575
- var _el$2 = _tmpl$35();
2576
- web.insert(_el$2, () => t(props.localizationKey));
2718
+ return [web.createComponent(IconRendererWrapper, {
2719
+ get iconKey() {
2720
+ return props.iconKey;
2721
+ },
2722
+ "class": moreActionsIconClass,
2723
+ get fallback() {
2724
+ return DefaultIconComponent && DefaultIconComponent({
2725
+ class: moreActionsIconClass
2726
+ });
2727
+ }
2728
+ }), (() => {
2729
+ var _el$ = _tmpl$38();
2730
+ web.insert(_el$, () => t(props.localizationKey));
2577
2731
  web.effect((_p$) => {
2578
2732
  var _v$ = props.localizationKey, _v$2 = style("moreActions__dropdownItemLabel", "nt-leading-none");
2579
- _v$ !== _p$.e && web.setAttribute(_el$2, "data-localization", _p$.e = _v$);
2580
- _v$2 !== _p$.t && web.className(_el$2, _p$.t = _v$2);
2733
+ _v$ !== _p$.e && web.setAttribute(_el$, "data-localization", _p$.e = _v$);
2734
+ _v$2 !== _p$.t && web.className(_el$, _p$.t = _v$2);
2581
2735
  return _p$;
2582
2736
  }, {
2583
2737
  e: void 0,
2584
2738
  t: void 0
2585
2739
  });
2586
- return _el$2;
2740
+ return _el$;
2587
2741
  })()];
2588
2742
  }
2589
2743
  });
@@ -2595,6 +2749,9 @@ var MoreActionsDropdown = () => {
2595
2749
  const {
2596
2750
  status
2597
2751
  } = useInboxContext();
2752
+ const dotsIconClass = style("moreActions__dots", "nt-size-5", {
2753
+ iconKey: "dots"
2754
+ });
2598
2755
  return web.createComponent(solidJs.Show, {
2599
2756
  get when() {
2600
2757
  return web.memo(() => status() !== "archived" /* ARCHIVED */)() && status() !== "snoozed" /* SNOOZED */;
@@ -2611,9 +2768,13 @@ var MoreActionsDropdown = () => {
2611
2768
  size: "iconSm"
2612
2769
  }, triggerProps, {
2613
2770
  get children() {
2614
- return web.createComponent(Dots, {
2615
- get ["class"]() {
2616
- return style("moreActions__dots", "nt-size-5");
2771
+ return web.createComponent(IconRendererWrapper, {
2772
+ iconKey: "dots",
2773
+ "class": dotsIconClass,
2774
+ get fallback() {
2775
+ return web.createComponent(Dots, {
2776
+ "class": dotsIconClass
2777
+ });
2617
2778
  }
2618
2779
  });
2619
2780
  }
@@ -2631,11 +2792,14 @@ var MoreActionsDropdown = () => {
2631
2792
  };
2632
2793
 
2633
2794
  // src/ui/components/elements/Header/ActionsContainer.tsx
2634
- var _tmpl$36 = /* @__PURE__ */ web.template(`<div>`);
2795
+ var _tmpl$39 = /* @__PURE__ */ web.template(`<div>`);
2635
2796
  var ActionsContainer = (props) => {
2636
2797
  const style = useStyle();
2798
+ const cogsIconClass = style("icon", "nt-size-5", {
2799
+ iconKey: "cogs"
2800
+ });
2637
2801
  return (() => {
2638
- var _el$ = _tmpl$36();
2802
+ var _el$ = _tmpl$39();
2639
2803
  web.insert(_el$, web.createComponent(MoreActionsDropdown, {}), null);
2640
2804
  web.insert(_el$, web.createComponent(solidJs.Show, {
2641
2805
  get when() {
@@ -2649,9 +2813,13 @@ var ActionsContainer = (props) => {
2649
2813
  return showPreferences();
2650
2814
  },
2651
2815
  get children() {
2652
- return web.createComponent(Settings, {
2653
- get ["class"]() {
2654
- return style("preferences__icon", "nt-size-5");
2816
+ return web.createComponent(IconRendererWrapper, {
2817
+ iconKey: "cogs",
2818
+ "class": cogsIconClass,
2819
+ get fallback() {
2820
+ return web.createComponent(Cogs, {
2821
+ "class": cogsIconClass
2822
+ });
2655
2823
  }
2656
2824
  });
2657
2825
  }
@@ -2663,11 +2831,11 @@ var ActionsContainer = (props) => {
2663
2831
  };
2664
2832
 
2665
2833
  // src/ui/components/elements/Header/Header.tsx
2666
- var _tmpl$37 = /* @__PURE__ */ web.template(`<div>`);
2834
+ var _tmpl$40 = /* @__PURE__ */ web.template(`<div>`);
2667
2835
  var Header = (props) => {
2668
2836
  const style = useStyle();
2669
2837
  return (() => {
2670
- var _el$ = _tmpl$37();
2838
+ var _el$ = _tmpl$40();
2671
2839
  web.insert(_el$, web.createComponent(StatusDropdown, {}), null);
2672
2840
  web.insert(_el$, web.createComponent(ActionsContainer, {
2673
2841
  get showPreferences() {
@@ -2678,7 +2846,7 @@ var Header = (props) => {
2678
2846
  return _el$;
2679
2847
  })();
2680
2848
  };
2681
- var _tmpl$38 = /* @__PURE__ */ web.template(`<div>`);
2849
+ var _tmpl$41 = /* @__PURE__ */ web.template(`<div>`);
2682
2850
  var Root = (props) => {
2683
2851
  const [_, rest] = solidJs.splitProps(props, ["class"]);
2684
2852
  const {
@@ -2694,30 +2862,60 @@ var Root = (props) => {
2694
2862
  },
2695
2863
  children: new Comment(" Powered by Novu - https://novu.co ")
2696
2864
  }), (() => {
2697
- var _el$ = _tmpl$38();
2865
+ var _el$ = _tmpl$41();
2698
2866
  web.spread(_el$, web.mergeProps({
2699
2867
  get id() {
2700
2868
  return `novu-root-${id()}`;
2701
2869
  },
2702
2870
  get ["class"]() {
2703
- return style("root"), cn("novu", id(), "nt-text-foreground nt-h-full");
2871
+ return style("root"), cn("novu", id(), "nt-text-foreground nt-h-full [interpolate-size:allow-keywords]");
2704
2872
  }
2705
2873
  }, rest), false, false);
2706
2874
  return _el$;
2707
2875
  })()];
2708
2876
  };
2709
- var _tmpl$39 = /* @__PURE__ */ web.template(`<div>`);
2877
+ var _tmpl$43 = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 14 14"><path fill=currentColor d="M2.8 8.575V5.162a2.362 2.362 0 1 1 4.725 0v3.675a1.313 1.313 0 1 0 2.625 0V5.335a1.575 1.575 0 1 1 1.05 0v3.502a2.362 2.362 0 1 1-4.725 0V5.162a1.312 1.312 0 1 0-2.625 0v3.413h1.575l-2.1 2.625-2.1-2.625H2.8Z"></path><path fill=url(#a) d="M2.8 8.575V5.162a2.362 2.362 0 1 1 4.725 0v3.675a1.313 1.313 0 1 0 2.625 0V5.335a1.575 1.575 0 1 1 1.05 0v3.502a2.362 2.362 0 1 1-4.725 0V5.162a1.312 1.312 0 1 0-2.625 0v3.413h1.575l-2.1 2.625-2.1-2.625H2.8Z"></path><defs><linearGradient id=a x1=1.225 x2=12.251 y1=6.722 y2=6.779 gradientUnits=userSpaceOnUse><stop stop-color=currentColor></stop><stop offset=1 stop-color=currentColor>`);
2878
+ var RouteFill = (props) => {
2879
+ return (() => {
2880
+ var _el$ = _tmpl$43();
2881
+ web.spread(_el$, props, true, true);
2882
+ return _el$;
2883
+ })();
2884
+ };
2885
+ var _tmpl$44 = /* @__PURE__ */ web.template(`<div><div>`);
2886
+ var isInterpolateSizeSupported = () => {
2887
+ return CSS.supports("interpolate-size", "allow-keywords");
2888
+ };
2710
2889
  var Collapsible = (props) => {
2890
+ const supportsInterpolateSize = isInterpolateSizeSupported();
2711
2891
  const style = useStyle();
2712
2892
  let contentRef;
2713
2893
  const [enableTransition, setEnableTransition] = solidJs.createSignal(false);
2894
+ const [scrollHeight, setScrollHeight] = solidJs.createSignal(0);
2895
+ const updateScrollHeight = () => {
2896
+ setScrollHeight((contentRef == null ? void 0 : contentRef.scrollHeight) || 0);
2897
+ };
2714
2898
  solidJs.createEffect(() => {
2715
2899
  requestAnimationFrame(() => setEnableTransition(true));
2900
+ const resizeObserver = new ResizeObserver(() => {
2901
+ updateScrollHeight();
2902
+ });
2903
+ if (contentRef && !supportsInterpolateSize) {
2904
+ resizeObserver.observe(contentRef);
2905
+ }
2906
+ updateScrollHeight();
2907
+ solidJs.onCleanup(() => {
2908
+ resizeObserver.disconnect();
2909
+ });
2716
2910
  });
2911
+ const height = () => {
2912
+ if (supportsInterpolateSize) {
2913
+ return props.open ? "max-content" : "0px";
2914
+ }
2915
+ return props.open ? `${scrollHeight()}px` : "0px";
2916
+ };
2717
2917
  return (() => {
2718
- var _el$ = _tmpl$39();
2719
- var _ref$ = contentRef;
2720
- typeof _ref$ === "function" ? web.use(_ref$, _el$) : contentRef = _el$;
2918
+ var _el$ = _tmpl$44(), _el$2 = _el$.firstChild;
2721
2919
  web.spread(_el$, web.mergeProps({
2722
2920
  get ["class"]() {
2723
2921
  return style("collapsible", props.class);
@@ -2727,66 +2925,96 @@ var Collapsible = (props) => {
2727
2925
  overflow: "hidden",
2728
2926
  opacity: props.open ? 1 : 0,
2729
2927
  transition: enableTransition() ? "height 250ms ease-in-out, opacity 250ms ease-in-out" : "none",
2730
- height: props.open ? `${contentRef == null ? void 0 : contentRef.scrollHeight}px` : "0px"
2928
+ height: height()
2731
2929
  };
2732
2930
  }
2733
- }, props), false, false);
2931
+ }, props), false, true);
2932
+ var _ref$ = contentRef;
2933
+ typeof _ref$ === "function" ? web.use(_ref$, _el$2) : contentRef = _el$2;
2934
+ web.insert(_el$2, () => props.children);
2734
2935
  return _el$;
2735
2936
  })();
2736
2937
  };
2737
- var _tmpl$40 = /* @__PURE__ */ web.template(`<label><input type=checkbox class="nt-peer nt-sr-only"><div>`);
2938
+ var _tmpl$45 = /* @__PURE__ */ web.template(`<label><input type=checkbox class=nt-sr-only><div>`);
2738
2939
  var Switch = (props) => {
2739
2940
  const style = useStyle();
2941
+ const handleChange = () => {
2942
+ var _a;
2943
+ if (props.disabled) return;
2944
+ const nextState = getNextState((_a = props.state) != null ? _a : "disabled");
2945
+ props.onChange(nextState);
2946
+ };
2947
+ const getNextState = (currentState) => {
2948
+ switch (currentState) {
2949
+ case "enabled":
2950
+ return "disabled";
2951
+ case "disabled":
2952
+ return "enabled";
2953
+ case "indeterminate":
2954
+ return "enabled";
2955
+ default:
2956
+ return "disabled";
2957
+ }
2958
+ };
2959
+ const isChecked = () => props.state === "enabled";
2960
+ const isIndeterminate = () => props.state === "indeterminate";
2961
+ const state = () => props.state;
2962
+ const disabled = () => props.disabled;
2740
2963
  return (() => {
2741
- var _el$ = _tmpl$40(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
2742
- _el$2.addEventListener("change", (e) => {
2743
- props.onChange(e.target.checked);
2744
- });
2964
+ var _el$ = _tmpl$45(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
2965
+ _el$2.addEventListener("change", handleChange);
2745
2966
  web.effect((_p$) => {
2746
- var _v$ = style("channelSwitch", `nt-relative nt-inline-flex nt-cursor-pointer nt-items-center`), _v$2 = style("channelSwitchThumb", `nt-peer nt-h-4 nt-w-7 nt-rounded-full peer-checked:nt-shadow-none peer-checked:nt-border-neutral-alpha-400 nt-bg-neutral-alpha-300 after:nt-absolute after:nt-top-0.5 after:nt-size-3 after:nt-left-0.5 after:nt-rounded-full after:nt-bg-background after:nt-transition-all after:nt-content-[''] peer-checked:nt-bg-primary peer-checked:after:nt-translate-x-full peer-checked:after:nt-border-background nt-transition-all nt-duration-200 after:nt-duration-200 shadow-sm`), _v$3 = props.checked;
2967
+ var _v$ = style("channelSwitch", cn("nt-relative nt-inline-flex nt-cursor-pointer nt-items-center", {
2968
+ "nt-opacity-50 nt-cursor-not-allowed": disabled()
2969
+ })), _v$2 = disabled(), _v$3 = style("channelSwitchThumb", cn(`nt-h-4 nt-w-7 nt-rounded-full nt-bg-neutral-alpha-300 after:nt-absolute after:nt-top-0.5 after:nt-size-3 after:nt-left-0.5 after:nt-rounded-full after:nt-bg-background after:nt-transition-all after:nt-content-[''] nt-transition-all nt-duration-200 after:nt-duration-200 shadow-sm`, {
2970
+ "nt-bg-primary nt-shadow-none nt-border-neutral-alpha-400 after:nt-translate-x-full after:nt-border-background": isChecked(),
2971
+ "after:nt-translate-x-1/2": isIndeterminate()
2972
+ })), _v$4 = state();
2747
2973
  _v$ !== _p$.e && web.className(_el$, _p$.e = _v$);
2748
- _v$2 !== _p$.t && web.className(_el$3, _p$.t = _v$2);
2749
- _v$3 !== _p$.a && web.setAttribute(_el$3, "data-checked", _p$.a = _v$3);
2974
+ _v$2 !== _p$.t && (_el$2.disabled = _p$.t = _v$2);
2975
+ _v$3 !== _p$.a && web.className(_el$3, _p$.a = _v$3);
2976
+ _v$4 !== _p$.o && web.setAttribute(_el$3, "data-state", _p$.o = _v$4);
2750
2977
  return _p$;
2751
2978
  }, {
2752
2979
  e: void 0,
2753
2980
  t: void 0,
2754
- a: void 0
2981
+ a: void 0,
2982
+ o: void 0
2755
2983
  });
2756
- web.effect(() => _el$2.checked = props.checked);
2984
+ web.effect(() => _el$2.checked = isChecked());
2757
2985
  return _el$;
2758
2986
  })();
2759
2987
  };
2760
2988
 
2761
2989
  // src/ui/components/elements/Preferences/ChannelRow.tsx
2762
- var _tmpl$41 = /* @__PURE__ */ web.template(`<div><div><div></div><span></span></div><div>`);
2990
+ var _tmpl$46 = /* @__PURE__ */ web.template(`<div><div><div></div><span></span></div><div>`);
2763
2991
  var ChannelRow = (props) => {
2764
2992
  const style = useStyle();
2765
2993
  const updatePreference = (enabled) => chunk7B52C2XE_js.__async(void 0, null, function* () {
2766
2994
  props.onChange({
2767
- channel: props.channel,
2768
- enabled,
2769
- workflowId: props.workflowId
2995
+ [props.channel.channel]: enabled
2770
2996
  });
2771
2997
  });
2772
2998
  const onChange = (checked) => chunk7B52C2XE_js.__async(void 0, null, function* () {
2773
2999
  yield updatePreference(checked);
2774
3000
  });
3001
+ const state = () => props.channel.state;
3002
+ const channel = () => props.channel.channel;
2775
3003
  return (() => {
2776
- var _el$ = _tmpl$41(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling, _el$5 = _el$2.nextSibling;
3004
+ var _el$ = _tmpl$46(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling, _el$5 = _el$2.nextSibling;
2777
3005
  web.insert(_el$3, web.createComponent(ChannelIcon, {
2778
3006
  appearanceKey: "channel__icon",
2779
3007
  get channel() {
2780
- return props.channel;
3008
+ return channel();
2781
3009
  },
2782
3010
  "class": "nt-size-3"
2783
3011
  }));
2784
- web.insert(_el$4, () => getLabel(props.channel));
3012
+ web.insert(_el$4, () => getLabel(channel()));
2785
3013
  web.insert(_el$5, web.createComponent(Switch, {
2786
- get checked() {
2787
- return props.enabled;
3014
+ get state() {
3015
+ return state();
2788
3016
  },
2789
- onChange: (checked) => onChange(checked)
3017
+ onChange: (newState) => onChange(newState === "enabled")
2790
3018
  }));
2791
3019
  web.effect((_p$) => {
2792
3020
  var _v$ = style("channelContainer", "nt-flex nt-justify-between nt-items-center nt-gap-2 data-[disabled=true]:nt-text-foreground-alpha-600"), _v$2 = style("channelLabelContainer", "nt-flex nt-items-center nt-gap-2 nt-text-foreground"), _v$3 = style("channelIconContainer", "nt-p-1 nt-rounded-md nt-bg-neutral-alpha-25 nt-text-foreground-alpha-300"), _v$4 = style("channelLabel", "nt-text-sm nt-font-semibold"), _v$5 = style("channelSwitchContainer", "nt-flex nt-items-center");
@@ -2808,40 +3036,75 @@ var ChannelRow = (props) => {
2808
3036
  };
2809
3037
  var ChannelIcon = (props) => {
2810
3038
  const style = useStyle();
2811
- switch (props.channel) {
2812
- case "in_app" /* IN_APP */:
2813
- return web.createComponent(InApp, {
3039
+ const iconMap = {
3040
+ ["in_app" /* IN_APP */]: {
3041
+ key: "inApp",
3042
+ component: web.createComponent(InApp, {
2814
3043
  get ["class"]() {
2815
- return style(props.appearanceKey, props.class);
3044
+ return style(props.appearanceKey, props.class, {
3045
+ iconKey: "inApp"
3046
+ });
2816
3047
  }
2817
- });
2818
- case "email" /* EMAIL */:
2819
- return web.createComponent(Email, {
3048
+ })
3049
+ },
3050
+ ["email" /* EMAIL */]: {
3051
+ key: "email",
3052
+ component: web.createComponent(Email, {
2820
3053
  get ["class"]() {
2821
- return style(props.appearanceKey, props.class);
3054
+ return style(props.appearanceKey, props.class, {
3055
+ iconKey: "email"
3056
+ });
2822
3057
  }
2823
- });
2824
- case "push" /* PUSH */:
2825
- return web.createComponent(Push, {
3058
+ })
3059
+ },
3060
+ ["push" /* PUSH */]: {
3061
+ key: "push",
3062
+ component: web.createComponent(Push, {
2826
3063
  get ["class"]() {
2827
- return style(props.appearanceKey, props.class);
3064
+ return style(props.appearanceKey, props.class, {
3065
+ iconKey: "push"
3066
+ });
2828
3067
  }
2829
- });
2830
- case "sms" /* SMS */:
2831
- return web.createComponent(Sms, {
3068
+ })
3069
+ },
3070
+ ["sms" /* SMS */]: {
3071
+ key: "sms",
3072
+ component: web.createComponent(Sms, {
2832
3073
  get ["class"]() {
2833
- return style(props.appearanceKey, props.class);
3074
+ return style(props.appearanceKey, props.class, {
3075
+ iconKey: "sms"
3076
+ });
2834
3077
  }
2835
- });
2836
- case "chat" /* CHAT */:
2837
- return web.createComponent(Chat, {
3078
+ })
3079
+ },
3080
+ ["chat" /* CHAT */]: {
3081
+ key: "chat",
3082
+ component: web.createComponent(Chat, {
2838
3083
  get ["class"]() {
2839
- return style(props.appearanceKey, props.class);
3084
+ return style(props.appearanceKey, props.class, {
3085
+ iconKey: "chat"
3086
+ });
2840
3087
  }
2841
- });
2842
- default:
2843
- return null;
3088
+ })
3089
+ }
3090
+ };
3091
+ const iconData = iconMap[props.channel];
3092
+ if (!iconData) {
3093
+ return null;
2844
3094
  }
3095
+ return web.createComponent(IconRendererWrapper, {
3096
+ get iconKey() {
3097
+ return iconData.key;
3098
+ },
3099
+ get fallback() {
3100
+ return iconData.component;
3101
+ },
3102
+ get ["class"]() {
3103
+ return style(props.appearanceKey, props.class, {
3104
+ iconKey: iconData.key
3105
+ });
3106
+ }
3107
+ });
2845
3108
  };
2846
3109
  var getLabel = (channel) => {
2847
3110
  switch (channel) {
@@ -2859,12 +3122,177 @@ var getLabel = (channel) => {
2859
3122
  return "";
2860
3123
  }
2861
3124
  };
2862
- var _tmpl$43 = /* @__PURE__ */ web.template(`<div>`);
2863
- var _tmpl$211 = /* @__PURE__ */ web.template(`<div><div></div><div>`);
3125
+
3126
+ // src/ui/components/elements/Preferences/PreferencesRow.tsx
3127
+ var _tmpl$47 = /* @__PURE__ */ web.template(`<div>`);
3128
+ var _tmpl$212 = /* @__PURE__ */ web.template(`<div><div><div><div><span></span></div></div><span>`);
3129
+ var _tmpl$310 = /* @__PURE__ */ web.template(`<span>`);
3130
+ var iconKeyToComponentMap2 = {
3131
+ cogs: Cogs,
3132
+ routeFill: RouteFill
3133
+ };
3134
+ var PreferencesRow = (props) => {
3135
+ const style = useStyle();
3136
+ const [isOpenChannels, setIsOpenChannels] = solidJs.createSignal(false);
3137
+ const {
3138
+ t
3139
+ } = useLocalization();
3140
+ const channels = solidJs.createMemo(() => {
3141
+ var _a, _b;
3142
+ return Object.keys((_b = (_a = props.preference) == null ? void 0 : _a.channels) != null ? _b : {}).map((channel) => {
3143
+ var _a2;
3144
+ return {
3145
+ channel,
3146
+ state: ((_a2 = props.preference) == null ? void 0 : _a2.channels[channel]) ? "enabled" : "disabled"
3147
+ };
3148
+ });
3149
+ });
3150
+ const iconClass = style("workflowLabelIcon", "nt-text-foreground-alpha-600 nt-size-3.5", {
3151
+ iconKey: "cogs"
3152
+ });
3153
+ const arrowDropDownIconClass = style("workflowArrow__icon", "nt-text-foreground-alpha-600 nt-size-4", {
3154
+ iconKey: "arrowDropDown"
3155
+ });
3156
+ const DefaultIconComponent = iconKeyToComponentMap2[props.iconKey];
3157
+ return web.createComponent(solidJs.Show, {
3158
+ get when() {
3159
+ return channels().length > 0;
3160
+ },
3161
+ get children() {
3162
+ var _el$ = _tmpl$212(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.firstChild, _el$5 = _el$4.firstChild, _el$6 = _el$3.nextSibling;
3163
+ _el$2.$$click = () => {
3164
+ setIsOpenChannels((prev) => !prev);
3165
+ };
3166
+ web.insert(_el$4, web.createComponent(IconRendererWrapper, {
3167
+ get iconKey() {
3168
+ return props.iconKey;
3169
+ },
3170
+ "class": iconClass,
3171
+ get fallback() {
3172
+ return DefaultIconComponent && DefaultIconComponent({
3173
+ class: iconClass
3174
+ });
3175
+ }
3176
+ }), _el$5);
3177
+ web.insert(_el$5, () => {
3178
+ var _a, _b, _c;
3179
+ return t((_c = (_b = (_a = props.preference) == null ? void 0 : _a.workflow) == null ? void 0 : _b.identifier) != null ? _c : "preferences.global");
3180
+ });
3181
+ web.insert(_el$3, web.createComponent(Collapsible, {
3182
+ get open() {
3183
+ return !isOpenChannels();
3184
+ },
3185
+ get children() {
3186
+ return web.createComponent(WorkflowDescription, {
3187
+ get channels() {
3188
+ var _a, _b;
3189
+ return (_b = (_a = props.preference) == null ? void 0 : _a.channels) != null ? _b : {};
3190
+ },
3191
+ appearanceKey: "workflowDescription",
3192
+ "class": "nt-overflow-hidden"
3193
+ });
3194
+ }
3195
+ }), null);
3196
+ web.insert(_el$6, web.createComponent(IconRendererWrapper, {
3197
+ iconKey: "arrowDropDown",
3198
+ "class": arrowDropDownIconClass,
3199
+ get fallback() {
3200
+ return web.createComponent(ArrowDropDown, {
3201
+ "class": arrowDropDownIconClass
3202
+ });
3203
+ }
3204
+ }));
3205
+ web.insert(_el$, web.createComponent(Collapsible, {
3206
+ get open() {
3207
+ return isOpenChannels();
3208
+ },
3209
+ get children() {
3210
+ var _el$7 = _tmpl$47();
3211
+ web.insert(_el$7, web.createComponent(solidJs.Index, {
3212
+ get each() {
3213
+ return channels();
3214
+ },
3215
+ children: (channel) => web.createComponent(ChannelRow, {
3216
+ get channel() {
3217
+ return channel();
3218
+ },
3219
+ get workflowId() {
3220
+ var _a, _b;
3221
+ return (_b = (_a = props.preference) == null ? void 0 : _a.workflow) == null ? void 0 : _b.id;
3222
+ },
3223
+ get onChange() {
3224
+ var _a, _b;
3225
+ return props.onChange((_b = (_a = props.preference) == null ? void 0 : _a.workflow) == null ? void 0 : _b.identifier);
3226
+ }
3227
+ })
3228
+ }));
3229
+ web.effect(() => web.className(_el$7, style("channelsContainer", "nt-flex nt-bg-background nt-border nt-border-neutral-alpha-200 nt-rounded-lg nt-p-2 nt-flex-col nt-gap-1 nt-overflow-hidden")));
3230
+ return _el$7;
3231
+ }
3232
+ }), null);
3233
+ web.effect((_p$) => {
3234
+ var _a, _b, _c;
3235
+ var _v$ = style("workflowContainer", `nt-p-1 nt-bg-neutral-alpha-25 nt-rounded-lg nt-border nt-border-neutral-alpha-50`), _v$2 = isOpenChannels(), _v$3 = style("workflowLabelContainer", "nt-flex nt-justify-between nt-p-1 nt-flex-nowrap nt-self-stretch nt-cursor-pointer nt-items-center nt-overflow-hidden"), _v$4 = style("workflowLabelHeader", "nt-overflow-hidden"), _v$5 = style("workflowLabelHeaderContainer", "nt-flex nt-items-center nt-gap-1"), _v$6 = style("workflowLabel", "nt-text-sm nt-font-semibold nt-truncate nt-text-start"), _v$7 = (_c = (_b = (_a = props.preference) == null ? void 0 : _a.workflow) == null ? void 0 : _b.identifier) != null ? _c : "preferences.global", _v$8 = isOpenChannels(), _v$9 = style("workflowContainerRight__icon", `nt-text-foreground-alpha-600 nt-transition-all nt-duration-200 data-[open=true]:nt-transform data-[open=true]:nt-rotate-180`), _v$10 = isOpenChannels();
3236
+ _v$ !== _p$.e && web.className(_el$, _p$.e = _v$);
3237
+ _v$2 !== _p$.t && web.setAttribute(_el$, "data-open", _p$.t = _v$2);
3238
+ _v$3 !== _p$.a && web.className(_el$2, _p$.a = _v$3);
3239
+ _v$4 !== _p$.o && web.className(_el$3, _p$.o = _v$4);
3240
+ _v$5 !== _p$.i && web.className(_el$4, _p$.i = _v$5);
3241
+ _v$6 !== _p$.n && web.className(_el$5, _p$.n = _v$6);
3242
+ _v$7 !== _p$.s && web.setAttribute(_el$5, "data-localization", _p$.s = _v$7);
3243
+ _v$8 !== _p$.h && web.setAttribute(_el$5, "data-open", _p$.h = _v$8);
3244
+ _v$9 !== _p$.r && web.className(_el$6, _p$.r = _v$9);
3245
+ _v$10 !== _p$.d && web.setAttribute(_el$6, "data-open", _p$.d = _v$10);
3246
+ return _p$;
3247
+ }, {
3248
+ e: void 0,
3249
+ t: void 0,
3250
+ a: void 0,
3251
+ o: void 0,
3252
+ i: void 0,
3253
+ n: void 0,
3254
+ s: void 0,
3255
+ h: void 0,
3256
+ r: void 0,
3257
+ d: void 0
3258
+ });
3259
+ return _el$;
3260
+ }
3261
+ });
3262
+ };
3263
+ var WorkflowDescription = (props) => {
3264
+ const style = useStyle();
3265
+ const channelNames = () => {
3266
+ const channels = [];
3267
+ for (const key in props.channels) {
3268
+ if (props.channels[key] !== void 0) {
3269
+ const isDisabled = !props.channels[key];
3270
+ const element = (() => {
3271
+ var _el$8 = _tmpl$310();
3272
+ web.setAttribute(_el$8, "data-disabled", isDisabled);
3273
+ web.insert(_el$8, () => getLabel(key));
3274
+ web.effect(() => web.className(_el$8, style("channelName", "data-[disabled=true]:nt-text-foreground-alpha-400")));
3275
+ return _el$8;
3276
+ })();
3277
+ channels.push(element);
3278
+ }
3279
+ }
3280
+ return channels.map((c, index) => [c, web.memo(() => index < channels.length - 1 && ", ")]);
3281
+ };
3282
+ return (() => {
3283
+ var _el$9 = _tmpl$47();
3284
+ web.insert(_el$9, channelNames);
3285
+ web.effect(() => web.className(_el$9, style(props.appearanceKey, cn("nt-text-sm nt-text-foreground-alpha-600 nt-text-start", props.class))));
3286
+ return _el$9;
3287
+ })();
3288
+ };
3289
+ web.delegateEvents(["click"]);
3290
+ var _tmpl$48 = /* @__PURE__ */ web.template(`<div>`);
3291
+ var _tmpl$213 = /* @__PURE__ */ web.template(`<div><div></div><div>`);
2864
3292
  var SkeletonText = (props) => {
2865
3293
  const style = useStyle();
2866
3294
  return (() => {
2867
- var _el$ = _tmpl$43();
3295
+ var _el$ = _tmpl$48();
2868
3296
  web.effect(() => web.className(_el$, style(props.appearanceKey, cn("nt-w-full nt-h-3 nt-rounded nt-bg-gradient-to-r nt-from-foreground-alpha-50 nt-to-transparent", props.class))));
2869
3297
  return _el$;
2870
3298
  })();
@@ -2872,7 +3300,7 @@ var SkeletonText = (props) => {
2872
3300
  var SkeletonAvatar = (props) => {
2873
3301
  const style = useStyle();
2874
3302
  return (() => {
2875
- var _el$2 = _tmpl$43();
3303
+ var _el$2 = _tmpl$48();
2876
3304
  web.effect(() => web.className(_el$2, style(props.appearanceKey, cn("nt-size-8 nt-rounded-lg nt-bg-gradient-to-r nt-from-foreground-alpha-50 nt-to-transparent", props.class))));
2877
3305
  return _el$2;
2878
3306
  })();
@@ -2880,7 +3308,7 @@ var SkeletonAvatar = (props) => {
2880
3308
  var SkeletonSwitch = (props) => {
2881
3309
  const style = useStyle();
2882
3310
  return (() => {
2883
- var _el$3 = _tmpl$211(), _el$4 = _el$3.firstChild, _el$5 = _el$4.nextSibling;
3311
+ var _el$3 = _tmpl$213(), _el$4 = _el$3.firstChild, _el$5 = _el$4.nextSibling;
2884
3312
  web.effect((_p$) => {
2885
3313
  var _v$ = style(props.appearanceKey, cn("nt-relative nt-inline-flex nt-items-center", props.class)), _v$2 = style(props.appearanceKey, "nt-h-4 nt-w-7 nt-rounded-full nt-bg-gradient-to-r nt-from-foreground-alpha-50 nt-to-transparent"), _v$3 = style(props.thumbAppearanceKey, "nt-absolute nt-top-0.5 nt-left-0.5 nt-size-3 nt-rounded-full nt-bg-background nt-shadow");
2886
3314
  _v$ !== _p$.e && web.className(_el$3, _p$.e = _v$);
@@ -2897,7 +3325,7 @@ var SkeletonSwitch = (props) => {
2897
3325
  };
2898
3326
 
2899
3327
  // src/ui/components/elements/Preferences/PreferencesListSkeleton.tsx
2900
- var _tmpl$44 = /* @__PURE__ */ web.template(`<div>`);
3328
+ var _tmpl$49 = /* @__PURE__ */ web.template(`<div>`);
2901
3329
  var channelIcons = [InApp, Email, Sms, Push, Chat];
2902
3330
  var PreferencesListSkeleton = (props) => {
2903
3331
  const style = useStyle();
@@ -2905,7 +3333,7 @@ var PreferencesListSkeleton = (props) => {
2905
3333
  t
2906
3334
  } = useLocalization();
2907
3335
  return (() => {
2908
- var _el$ = _tmpl$44();
3336
+ var _el$ = _tmpl$49();
2909
3337
  web.insert(_el$, web.createComponent(Motion.div, {
2910
3338
  get animate() {
2911
3339
  return {
@@ -2947,7 +3375,7 @@ var PreferencesListSkeleton = (props) => {
2947
3375
  return style("preferencesList__skeletonIcon", "nt-size-8 nt-p-2 nt-rounded-lg nt-bg-neutral-alpha-100");
2948
3376
  }
2949
3377
  }), (() => {
2950
- var _el$3 = _tmpl$44();
3378
+ var _el$3 = _tmpl$49();
2951
3379
  web.insert(_el$3, web.createComponent(SkeletonText, {
2952
3380
  appearanceKey: "notificationList__skeletonText",
2953
3381
  "class": "nt-h-2 nt-w-1/3 nt-bg-neutral-alpha-50 nt-rounded"
@@ -2965,7 +3393,7 @@ var PreferencesListSkeleton = (props) => {
2965
3393
  }
2966
3394
  });
2967
3395
  })), (() => {
2968
- var _el$2 = _tmpl$44();
3396
+ var _el$2 = _tmpl$49();
2969
3397
  web.effect(() => web.className(_el$2, style("notificationListEmptyNoticeOverlay", "nt-absolute nt-size-full nt-z-10 nt-inset-0 nt-bg-gradient-to-b nt-from-transparent nt-to-background")));
2970
3398
  return _el$2;
2971
3399
  })()];
@@ -3009,15 +3437,298 @@ var PreferencesListSkeleton = (props) => {
3009
3437
  })();
3010
3438
  };
3011
3439
 
3440
+ // src/ui/components/elements/Preferences/DefaultPreferences.tsx
3441
+ var DefaultPreferences = (props) => {
3442
+ const workflowPreferences = solidJs.createMemo(() => props.workflowPreferences);
3443
+ const updatePreference = (workflowIdentifier) => (channels) => {
3444
+ var _a;
3445
+ const preference = (_a = workflowPreferences()) == null ? void 0 : _a.find((pref) => {
3446
+ var _a2;
3447
+ return ((_a2 = pref.workflow) == null ? void 0 : _a2.identifier) === workflowIdentifier;
3448
+ });
3449
+ if (!preference) return;
3450
+ props.updatePreference(preference)(channels);
3451
+ };
3452
+ return web.createComponent(solidJs.Show, {
3453
+ get when() {
3454
+ var _a;
3455
+ return (_a = workflowPreferences()) == null ? void 0 : _a.length;
3456
+ },
3457
+ get fallback() {
3458
+ return web.createComponent(PreferencesListSkeleton, {
3459
+ get loading() {
3460
+ return props.loading;
3461
+ }
3462
+ });
3463
+ },
3464
+ get children() {
3465
+ return web.createComponent(solidJs.Index, {
3466
+ get each() {
3467
+ return workflowPreferences();
3468
+ },
3469
+ children: (preference) => {
3470
+ return web.createComponent(PreferencesRow, {
3471
+ iconKey: "routeFill",
3472
+ get preference() {
3473
+ return preference();
3474
+ },
3475
+ onChange: updatePreference
3476
+ });
3477
+ }
3478
+ });
3479
+ }
3480
+ });
3481
+ };
3482
+ var _tmpl$50 = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 14 14"><path fill=currentColor d="M5.95 1.75c.29 0 .525.235.525.525v2.1c0 .29-.235.525-.525.525H4.9v1.05h2.625v-.525c0-.29.235-.525.525-.525h3.15c.29 0 .525.235.525.525v2.1c0 .29-.235.525-.525.525H8.05a.525.525 0 0 1-.525-.525V7H4.9v3.15h2.625v-.525c0-.29.235-.525.525-.525h3.15c.29 0 .525.235.525.525v2.1c0 .29-.235.525-.525.525H8.05a.525.525 0 0 1-.525-.525V11.2h-3.15a.525.525 0 0 1-.525-.525V4.9H2.8a.525.525 0 0 1-.525-.525v-2.1c0-.29.235-.525.525-.525h3.15Zm4.725 8.4h-2.1v1.05h2.1v-1.05Zm0-4.2h-2.1V7h2.1V5.95ZM5.425 2.8h-2.1v1.05h2.1V2.8Z"></path><path fill=url(#a) d="M5.95 1.75c.29 0 .525.235.525.525v2.1c0 .29-.235.525-.525.525H4.9v1.05h2.625v-.525c0-.29.235-.525.525-.525h3.15c.29 0 .525.235.525.525v2.1c0 .29-.235.525-.525.525H8.05a.525.525 0 0 1-.525-.525V7H4.9v3.15h2.625v-.525c0-.29.235-.525.525-.525h3.15c.29 0 .525.235.525.525v2.1c0 .29-.235.525-.525.525H8.05a.525.525 0 0 1-.525-.525V11.2h-3.15a.525.525 0 0 1-.525-.525V4.9H2.8a.525.525 0 0 1-.525-.525v-2.1c0-.29.235-.525.525-.525h3.15Zm4.725 8.4h-2.1v1.05h2.1v-1.05Zm0-4.2h-2.1V7h2.1V5.95ZM5.425 2.8h-2.1v1.05h2.1V2.8Z"></path><defs><linearGradient id=a x1=2.275 x2=11.725 y1=6.982 y2=7.018 gradientUnits=userSpaceOnUse><stop stop-color=currentColor></stop><stop offset=1 stop-color=currentColor>`);
3483
+ var NodeTree = (props) => {
3484
+ return (() => {
3485
+ var _el$ = _tmpl$50();
3486
+ web.spread(_el$, props, true, true);
3487
+ return _el$;
3488
+ })();
3489
+ };
3490
+ var _tmpl$51 = /* @__PURE__ */ web.template(`<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 16 16"><path fill=currentColor d="M8 13A5 5 0 1 1 8 3a5 5 0 0 1 0 10Zm0-1a4 4 0 1 0 0-8 4 4 0 0 0 0 8Zm.5-4.75V9.5H9v1H7v-1h.5V8.25H7v-1h1.5ZM8.75 6a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Z">`);
3491
+ var Info = (props) => {
3492
+ return (() => {
3493
+ var _el$ = _tmpl$51();
3494
+ web.spread(_el$, props, true, true);
3495
+ return _el$;
3496
+ })();
3497
+ };
3498
+
3499
+ // src/ui/components/elements/Preferences/GroupedPreferencesRow.tsx
3500
+ var _tmpl$52 = /* @__PURE__ */ web.template(`<div><div><span data-localization=preferences.group.info></span></div><div>`);
3501
+ var _tmpl$214 = /* @__PURE__ */ web.template(`<div><div><div><span></span></div><div><span>`);
3502
+ var GroupedPreferencesRow = (props) => {
3503
+ const style = useStyle();
3504
+ const {
3505
+ t
3506
+ } = useLocalization();
3507
+ const [isOpened, setIsOpened] = solidJs.createSignal(false);
3508
+ const uniqueChannels = solidJs.createMemo(() => {
3509
+ return props.group.preferences.reduce((acc, preference) => {
3510
+ Object.keys(preference.channels).forEach((el) => {
3511
+ const channel = el;
3512
+ const currentState = acc[channel];
3513
+ const preferenceState = preference.channels[channel] ? "enabled" : "disabled";
3514
+ if (!currentState) {
3515
+ acc[channel] = preferenceState;
3516
+ } else {
3517
+ acc[channel] = currentState !== preferenceState ? "indeterminate" : preferenceState;
3518
+ }
3519
+ });
3520
+ return acc;
3521
+ }, {});
3522
+ });
3523
+ const groupState = solidJs.createMemo(() => {
3524
+ const someIndeterminate = Object.values(uniqueChannels()).some((state) => state === "indeterminate");
3525
+ if (someIndeterminate) {
3526
+ return "indeterminate";
3527
+ }
3528
+ const allEnabled = Object.values(uniqueChannels()).every((state) => state === "enabled");
3529
+ const allDisabled = Object.values(uniqueChannels()).every((state) => state === "disabled");
3530
+ if (allEnabled) {
3531
+ return "enabled";
3532
+ }
3533
+ if (allDisabled) {
3534
+ return "disabled";
3535
+ }
3536
+ return "indeterminate";
3537
+ });
3538
+ const updateGroupPreferences = (newState) => {
3539
+ const channels = Object.keys(uniqueChannels()).reduce((acc, channel) => {
3540
+ acc[channel] = newState === "enabled";
3541
+ return acc;
3542
+ }, {});
3543
+ props.bulkUpdatePreferences(props.group.preferences)(channels);
3544
+ };
3545
+ const updatePreference = (workflowIdentifier) => (channels) => {
3546
+ const preference = props.group.preferences.find((pref) => {
3547
+ var _a;
3548
+ return ((_a = pref.workflow) == null ? void 0 : _a.identifier) === workflowIdentifier;
3549
+ });
3550
+ if (!preference) return;
3551
+ props.updatePreference(preference)(channels);
3552
+ };
3553
+ const updatePreferencesForChannel = (channel) => (channels) => {
3554
+ const filteredPreferences = props.group.preferences.filter((preference) => Object.keys(preference.channels).some((key) => key === channel));
3555
+ props.bulkUpdatePreferences(filteredPreferences)(channels);
3556
+ };
3557
+ const preferences = solidJs.createMemo(() => props.group.preferences);
3558
+ const nodeTreeIconClass = style("preferencesGroupLabelIcon", "nt-text-foreground-alpha-600 nt-size-3.5");
3559
+ const infoIconClass = style("preferencesGroupInfoIcon", "nt-size-4");
3560
+ const dropdownIconClass = style("moreTabs__icon", "nt-size-4");
3561
+ return web.createComponent(solidJs.Show, {
3562
+ get when() {
3563
+ return Object.keys(uniqueChannels()).length > 0;
3564
+ },
3565
+ get children() {
3566
+ var _el$ = _tmpl$214(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.firstChild, _el$5 = _el$3.nextSibling, _el$6 = _el$5.firstChild;
3567
+ _el$2.$$click = () => {
3568
+ setIsOpened((prev) => !prev);
3569
+ };
3570
+ web.insert(_el$3, web.createComponent(IconRendererWrapper, {
3571
+ iconKey: "nodeTree",
3572
+ "class": nodeTreeIconClass,
3573
+ get fallback() {
3574
+ return web.createComponent(NodeTree, {
3575
+ "class": nodeTreeIconClass
3576
+ });
3577
+ }
3578
+ }), _el$4);
3579
+ web.insert(_el$4, () => props.group.name);
3580
+ web.insert(_el$5, web.createComponent(Switch, {
3581
+ get state() {
3582
+ return groupState();
3583
+ },
3584
+ onChange: updateGroupPreferences
3585
+ }), _el$6);
3586
+ web.insert(_el$6, web.createComponent(IconRendererWrapper, {
3587
+ iconKey: "arrowDropDown",
3588
+ "class": dropdownIconClass,
3589
+ get fallback() {
3590
+ return web.createComponent(ArrowDropDown, {
3591
+ "class": dropdownIconClass
3592
+ });
3593
+ }
3594
+ }));
3595
+ web.insert(_el$, web.createComponent(Collapsible, {
3596
+ get open() {
3597
+ return isOpened();
3598
+ },
3599
+ get children() {
3600
+ var _el$7 = _tmpl$52(), _el$8 = _el$7.firstChild, _el$9 = _el$8.firstChild, _el$10 = _el$8.nextSibling;
3601
+ web.insert(_el$8, web.createComponent(solidJs.Index, {
3602
+ get each() {
3603
+ return Object.keys(uniqueChannels());
3604
+ },
3605
+ children: (channel) => {
3606
+ return web.createComponent(ChannelRow, {
3607
+ get channel() {
3608
+ return {
3609
+ channel: channel(),
3610
+ state: uniqueChannels()[channel()]
3611
+ };
3612
+ },
3613
+ get onChange() {
3614
+ return updatePreferencesForChannel(channel());
3615
+ }
3616
+ });
3617
+ }
3618
+ }), _el$9);
3619
+ web.insert(_el$9, web.createComponent(IconRendererWrapper, {
3620
+ iconKey: "info",
3621
+ "class": infoIconClass,
3622
+ get fallback() {
3623
+ return web.createComponent(Info, {
3624
+ "class": infoIconClass
3625
+ });
3626
+ }
3627
+ }), null);
3628
+ web.insert(_el$9, () => t("preferences.group.info"), null);
3629
+ web.insert(_el$10, web.createComponent(solidJs.Index, {
3630
+ get each() {
3631
+ return preferences();
3632
+ },
3633
+ children: (preference) => web.createComponent(PreferencesRow, {
3634
+ iconKey: "routeFill",
3635
+ get preference() {
3636
+ return preference();
3637
+ },
3638
+ onChange: updatePreference
3639
+ })
3640
+ }));
3641
+ web.effect((_p$) => {
3642
+ var _v$ = style("preferencesGroupBody", "nt-flex nt-flex-col nt-gap-1 nt-overflow-hidden"), _v$2 = style("preferencesGroupChannels", "nt-flex nt-bg-background nt-border-t nt-border-b nt-border-neutral-alpha-50 nt-p-2 nt-flex-col nt-gap-1 nt-overflow-hidden"), _v$3 = style("preferencesGroupInfo", "nt-text-sm nt-text-start nt-text-foreground-alpha-400 nt-mt-1 nt-flex nt-items-center nt-gap-1"), _v$4 = style("preferencesGroupWorkflows", "nt-flex nt-p-2 nt-flex-col nt-gap-1 nt-overflow-hidden");
3643
+ _v$ !== _p$.e && web.className(_el$7, _p$.e = _v$);
3644
+ _v$2 !== _p$.t && web.className(_el$8, _p$.t = _v$2);
3645
+ _v$3 !== _p$.a && web.className(_el$9, _p$.a = _v$3);
3646
+ _v$4 !== _p$.o && web.className(_el$10, _p$.o = _v$4);
3647
+ return _p$;
3648
+ }, {
3649
+ e: void 0,
3650
+ t: void 0,
3651
+ a: void 0,
3652
+ o: void 0
3653
+ });
3654
+ return _el$7;
3655
+ }
3656
+ }), null);
3657
+ web.effect((_p$) => {
3658
+ var _v$5 = style("preferencesGroupContainer", `nt-bg-neutral-alpha-25 nt-rounded-lg nt-border nt-border-neutral-alpha-50`), _v$6 = isOpened(), _v$7 = style("preferencesGroupHeader", "nt-flex nt-justify-between nt-p-2 nt-flex-nowrap nt-self-stretch nt-cursor-pointer nt-items-center nt-overflow-hidden"), _v$8 = style("preferencesGroupLabelContainer", "nt-overflow-hidden nt-flex nt-items-center nt-gap-1"), _v$9 = style("preferencesGroupLabel", "nt-text-sm nt-font-semibold nt-truncate nt-text-start"), _v$10 = isOpened(), _v$11 = style("preferencesGroupActionsContainer", "nt-flex nt-items-center nt-gap-1"), _v$12 = style("preferencesGroupActionsContainerRight__icon", `nt-text-foreground-alpha-600 nt-transition-all nt-duration-200 data-[open=true]:nt-transform data-[open=true]:nt-rotate-180`), _v$13 = isOpened();
3659
+ _v$5 !== _p$.e && web.className(_el$, _p$.e = _v$5);
3660
+ _v$6 !== _p$.t && web.setAttribute(_el$, "data-open", _p$.t = _v$6);
3661
+ _v$7 !== _p$.a && web.className(_el$2, _p$.a = _v$7);
3662
+ _v$8 !== _p$.o && web.className(_el$3, _p$.o = _v$8);
3663
+ _v$9 !== _p$.i && web.className(_el$4, _p$.i = _v$9);
3664
+ _v$10 !== _p$.n && web.setAttribute(_el$4, "data-open", _p$.n = _v$10);
3665
+ _v$11 !== _p$.s && web.className(_el$5, _p$.s = _v$11);
3666
+ _v$12 !== _p$.h && web.className(_el$6, _p$.h = _v$12);
3667
+ _v$13 !== _p$.r && web.setAttribute(_el$6, "data-open", _p$.r = _v$13);
3668
+ return _p$;
3669
+ }, {
3670
+ e: void 0,
3671
+ t: void 0,
3672
+ a: void 0,
3673
+ o: void 0,
3674
+ i: void 0,
3675
+ n: void 0,
3676
+ s: void 0,
3677
+ h: void 0,
3678
+ r: void 0
3679
+ });
3680
+ return _el$;
3681
+ }
3682
+ });
3683
+ };
3684
+ web.delegateEvents(["click"]);
3685
+
3686
+ // src/ui/components/elements/Preferences/GroupedPreferences.tsx
3687
+ var GroupedPreferences = (props) => {
3688
+ const groups = () => props.groups;
3689
+ return web.createComponent(solidJs.Show, {
3690
+ get when() {
3691
+ return props.groups.length && !props.loading;
3692
+ },
3693
+ get fallback() {
3694
+ return web.createComponent(PreferencesListSkeleton, {
3695
+ get loading() {
3696
+ return props.loading;
3697
+ }
3698
+ });
3699
+ },
3700
+ get children() {
3701
+ return web.createComponent(solidJs.Index, {
3702
+ get each() {
3703
+ return groups();
3704
+ },
3705
+ children: (group) => {
3706
+ return web.createComponent(GroupedPreferencesRow, {
3707
+ get group() {
3708
+ return group();
3709
+ },
3710
+ get bulkUpdatePreferences() {
3711
+ return props.bulkUpdatePreferences;
3712
+ },
3713
+ get updatePreference() {
3714
+ return props.updatePreference;
3715
+ }
3716
+ });
3717
+ }
3718
+ });
3719
+ }
3720
+ });
3721
+ };
3722
+
3012
3723
  // src/ui/components/elements/Preferences/Preferences.tsx
3013
- var _tmpl$45 = /* @__PURE__ */ web.template(`<div>`);
3014
- var _tmpl$212 = /* @__PURE__ */ web.template(`<span>`);
3015
- var _tmpl$310 = /* @__PURE__ */ web.template(`<div><div><div><div></div></div><span>`);
3724
+ var _tmpl$53 = /* @__PURE__ */ web.template(`<div>`);
3016
3725
  var Preferences = () => {
3017
3726
  var _a;
3727
+ const novu = useNovu();
3018
3728
  const style = useStyle();
3019
3729
  const {
3020
- preferencesFilter
3730
+ preferencesFilter,
3731
+ preferenceGroups
3021
3732
  } = useInboxContext();
3022
3733
  const {
3023
3734
  preferences,
@@ -3029,14 +3740,9 @@ var Preferences = () => {
3029
3740
  var _a2, _b;
3030
3741
  const globalPreference = (_a2 = preferences()) == null ? void 0 : _a2.find((preference) => preference.level === "global" /* GLOBAL */);
3031
3742
  const workflowPreferences = (_b = preferences()) == null ? void 0 : _b.filter((preference) => preference.level === "template" /* TEMPLATE */);
3032
- const workflowPreferencesIds = workflowPreferences == null ? void 0 : workflowPreferences.map((preference) => {
3033
- var _a3;
3034
- return (_a3 = preference.workflow) == null ? void 0 : _a3.id;
3035
- });
3036
3743
  return {
3037
3744
  globalPreference,
3038
- workflowPreferences,
3039
- workflowPreferencesIds
3745
+ workflowPreferences
3040
3746
  };
3041
3747
  });
3042
3748
  solidJs.createEffect(() => {
@@ -3048,203 +3754,126 @@ var Preferences = () => {
3048
3754
  }, {}));
3049
3755
  });
3050
3756
  });
3051
- const optimisticUpdate = (preference) => (_0) => chunk7B52C2XE_js.__async(void 0, [_0], function* ({
3052
- channel,
3053
- enabled
3054
- }) {
3757
+ const updatePreference = (preference) => (channels) => chunk7B52C2XE_js.__async(void 0, null, function* () {
3055
3758
  yield preference == null ? void 0 : preference.update({
3056
- channels: {
3057
- [channel]: enabled
3058
- }
3759
+ channels
3059
3760
  });
3060
3761
  });
3762
+ const bulkUpdatePreferences = (preferences2) => (channels) => chunk7B52C2XE_js.__async(void 0, null, function* () {
3763
+ yield novu.preferences.bulkUpdate(preferences2.map((el) => {
3764
+ const oldChannels = Object.keys(el.channels);
3765
+ const channelsToUpdate = Object.keys(channels).filter((channel) => oldChannels.includes(channel)).reduce((acc, channel) => {
3766
+ acc[channel] = channels[channel];
3767
+ return acc;
3768
+ }, {});
3769
+ return {
3770
+ preference: el,
3771
+ channels: channelsToUpdate
3772
+ };
3773
+ }));
3774
+ });
3775
+ const groupedPreferences = solidJs.createMemo(() => {
3776
+ var _a2, _b, _c;
3777
+ const workflowPreferences = (_a2 = allPreferences().workflowPreferences) != null ? _a2 : [];
3778
+ return (_c = (_b = preferenceGroups()) == null ? void 0 : _b.map((group) => {
3779
+ const {
3780
+ filter
3781
+ } = group;
3782
+ if (typeof filter === "function") {
3783
+ const preferences2 = filter({
3784
+ preferences: workflowPreferences
3785
+ });
3786
+ return {
3787
+ name: group.name,
3788
+ preferences: preferences2
3789
+ };
3790
+ }
3791
+ if (typeof filter === "object") {
3792
+ return {
3793
+ name: group.name,
3794
+ preferences: workflowPreferences.filter((preference) => {
3795
+ var _a3, _b2, _c2, _d;
3796
+ const workflowId = ((_a3 = preference.workflow) == null ? void 0 : _a3.id) || ((_b2 = preference.workflow) == null ? void 0 : _b2.identifier);
3797
+ return ((_c2 = filter.workflowIds) == null ? void 0 : _c2.includes(workflowId != null ? workflowId : "")) || ((_d = filter.tags) == null ? void 0 : _d.some((tag) => {
3798
+ var _a4, _b3;
3799
+ return (_b3 = (_a4 = preference.workflow) == null ? void 0 : _a4.tags) == null ? void 0 : _b3.includes(tag);
3800
+ }));
3801
+ })
3802
+ };
3803
+ }
3804
+ return {
3805
+ name: group.name,
3806
+ preferences: []
3807
+ };
3808
+ })) != null ? _c : [];
3809
+ });
3061
3810
  return (() => {
3062
- var _el$ = _tmpl$45();
3811
+ var _el$ = _tmpl$53();
3063
3812
  web.insert(_el$, web.createComponent(PreferencesRow, {
3064
- localizationKey: "preferences.global",
3065
- get channels() {
3066
- var _a2;
3067
- return ((_a2 = allPreferences().globalPreference) == null ? void 0 : _a2.channels) || {};
3813
+ iconKey: "cogs",
3814
+ get preference() {
3815
+ return allPreferences().globalPreference;
3068
3816
  },
3069
- get onChange() {
3070
- return optimisticUpdate(allPreferences().globalPreference);
3071
- }
3817
+ onChange: () => updatePreference(allPreferences().globalPreference)
3072
3818
  }), null);
3073
3819
  web.insert(_el$, web.createComponent(solidJs.Show, {
3074
3820
  get when() {
3075
- var _a2;
3076
- return (_a2 = allPreferences().workflowPreferences) == null ? void 0 : _a2.length;
3821
+ return groupedPreferences().length > 0;
3077
3822
  },
3078
3823
  get fallback() {
3079
- return web.createComponent(PreferencesListSkeleton, {
3080
- get loading() {
3081
- return loading();
3082
- }
3083
- });
3084
- },
3085
- get children() {
3086
- return web.createComponent(solidJs.For, {
3087
- get each() {
3088
- return allPreferences().workflowPreferencesIds;
3824
+ return web.createComponent(solidJs.Show, {
3825
+ get when() {
3826
+ var _a2;
3827
+ return (_a2 = allPreferences().workflowPreferences) == null ? void 0 : _a2.length;
3089
3828
  },
3090
- children: (_, index) => {
3091
- const preference = () => {
3092
- var _a2;
3093
- return (_a2 = allPreferences().workflowPreferences) == null ? void 0 : _a2[index()];
3094
- };
3095
- if (!preference()) {
3096
- return null;
3097
- }
3098
- return web.createComponent(PreferencesRow, {
3099
- get localizationKey() {
3100
- return preference().workflow.identifier;
3101
- },
3102
- get channels() {
3103
- return preference().channels;
3829
+ get fallback() {
3830
+ return web.createComponent(PreferencesListSkeleton, {
3831
+ get loading() {
3832
+ return loading();
3833
+ }
3834
+ });
3835
+ },
3836
+ get children() {
3837
+ return web.createComponent(DefaultPreferences, {
3838
+ get workflowPreferences() {
3839
+ return allPreferences().workflowPreferences;
3104
3840
  },
3105
- get workflowId() {
3106
- var _a2;
3107
- return (_a2 = preference().workflow) == null ? void 0 : _a2.id;
3841
+ get loading() {
3842
+ return loading();
3108
3843
  },
3109
- get onChange() {
3110
- return optimisticUpdate(preference());
3111
- }
3844
+ updatePreference
3112
3845
  });
3113
3846
  }
3114
3847
  });
3848
+ },
3849
+ get children() {
3850
+ return web.createComponent(GroupedPreferences, {
3851
+ get groups() {
3852
+ return groupedPreferences();
3853
+ },
3854
+ get loading() {
3855
+ return loading();
3856
+ },
3857
+ updatePreference,
3858
+ bulkUpdatePreferences
3859
+ });
3115
3860
  }
3116
3861
  }), null);
3117
- web.effect(() => web.className(_el$, style("preferencesContainer", "nt-px-3 nt-py-4 nt-flex nt-flex-col nt-gap-1 nt-overflow-y-auto nt-h-full")));
3862
+ web.effect(() => web.className(_el$, style("preferencesContainer", "nt-px-3 nt-py-4 nt-flex nt-flex-col nt-gap-1 nt-overflow-y-auto nt-h-full nt-pr-0 [scrollbar-gutter:stable]")));
3118
3863
  return _el$;
3119
3864
  })();
3120
3865
  };
3121
- var WorkflowDescription = (props) => {
3122
- const style = useStyle();
3123
- const channelNames = () => {
3124
- const channels = [];
3125
- for (const key in props.channels) {
3126
- if (props.channels[key] !== void 0) {
3127
- const isDisabled = !props.channels[key];
3128
- const element = (() => {
3129
- var _el$2 = _tmpl$212();
3130
- web.setAttribute(_el$2, "data-disabled", isDisabled);
3131
- web.insert(_el$2, () => getLabel(key));
3132
- web.effect(() => web.className(_el$2, style("channelName", "data-[disabled=true]:nt-text-foreground-alpha-400")));
3133
- return _el$2;
3134
- })();
3135
- channels.push(element);
3136
- }
3137
- }
3138
- return channels.map((c, index) => [c, web.memo(() => index < channels.length - 1 && ", ")]);
3139
- };
3140
- return (() => {
3141
- var _el$3 = _tmpl$45();
3142
- web.insert(_el$3, channelNames);
3143
- web.effect(() => web.className(_el$3, style(props.appearanceKey, cn("nt-text-sm nt-text-foreground-alpha-600 nt-text-start", props.class))));
3144
- return _el$3;
3145
- })();
3146
- };
3147
- var PreferencesRow = (props) => {
3148
- const style = useStyle();
3149
- const [isOpenDescription, setIsOpenDescription] = solidJs.createSignal(true);
3150
- const [isOpenChannels, setIsOpenChannels] = solidJs.createSignal(false);
3151
- const {
3152
- t
3153
- } = useLocalization();
3154
- const channels = solidJs.createMemo(() => Object.keys(props.channels));
3155
- return web.createComponent(solidJs.Show, {
3156
- get when() {
3157
- return channels().length > 0;
3158
- },
3159
- get children() {
3160
- var _el$4 = _tmpl$310(), _el$5 = _el$4.firstChild, _el$6 = _el$5.firstChild, _el$7 = _el$6.firstChild, _el$8 = _el$6.nextSibling;
3161
- _el$5.$$click = () => {
3162
- setIsOpenChannels((prev) => !prev);
3163
- setIsOpenDescription((prev) => !prev);
3164
- };
3165
- web.insert(_el$7, () => t(props.localizationKey));
3166
- web.insert(_el$6, web.createComponent(Collapsible, {
3167
- get open() {
3168
- return isOpenDescription();
3169
- },
3170
- get children() {
3171
- return web.createComponent(WorkflowDescription, {
3172
- get channels() {
3173
- return props.channels;
3174
- },
3175
- appearanceKey: "workflowDescription",
3176
- "class": "nt-overflow-hidden"
3177
- });
3178
- }
3179
- }), null);
3180
- web.insert(_el$8, web.createComponent(ArrowDropDown, {
3181
- get ["class"]() {
3182
- return style("workflowArrow__icon", "nt-text-foreground-alpha-600 nt-size-4");
3183
- }
3184
- }));
3185
- web.insert(_el$4, web.createComponent(Collapsible, {
3186
- get open() {
3187
- return isOpenChannels();
3188
- },
3189
- get children() {
3190
- var _el$9 = _tmpl$45();
3191
- web.insert(_el$9, web.createComponent(solidJs.For, {
3192
- get each() {
3193
- return channels();
3194
- },
3195
- children: (channel) => web.createComponent(ChannelRow, {
3196
- channel,
3197
- get enabled() {
3198
- return !!props.channels[channel];
3199
- },
3200
- get workflowId() {
3201
- return props.workflowId;
3202
- },
3203
- get onChange() {
3204
- return props.onChange;
3205
- }
3206
- })
3207
- }));
3208
- web.effect(() => web.className(_el$9, style("channelsContainer", "nt-flex nt-bg-background nt-border nt-border-neutral-alpha-50 nt-rounded-lg nt-p-2 nt-flex-col nt-gap-1 nt-overflow-hidden")));
3209
- return _el$9;
3210
- }
3211
- }), null);
3212
- web.effect((_p$) => {
3213
- var _v$ = style("workflowContainer", `nt-p-1 nt-bg-neutral-alpha-25 nt-rounded-lg`), _v$2 = isOpenChannels(), _v$3 = style("workflowLabelContainer", "nt-flex nt-justify-between nt-p-1 nt-flex-nowrap nt-self-stretch nt-cursor-pointer nt-items-center nt-overflow-hidden"), _v$4 = style("workflowLabelHeader", "nt-overflow-hidden"), _v$5 = style("workflowLabel", "nt-text-sm nt-font-semibold nt-truncate"), _v$6 = props.localizationKey, _v$7 = isOpenChannels(), _v$8 = style("workflowContainerRight__icon", `nt-text-foreground-alpha-600 nt-transition-all nt-duration-200 data-[open=true]:nt-transform data-[open=true]:nt-rotate-180`), _v$9 = isOpenChannels();
3214
- _v$ !== _p$.e && web.className(_el$4, _p$.e = _v$);
3215
- _v$2 !== _p$.t && web.setAttribute(_el$4, "data-open", _p$.t = _v$2);
3216
- _v$3 !== _p$.a && web.className(_el$5, _p$.a = _v$3);
3217
- _v$4 !== _p$.o && web.className(_el$6, _p$.o = _v$4);
3218
- _v$5 !== _p$.i && web.className(_el$7, _p$.i = _v$5);
3219
- _v$6 !== _p$.n && web.setAttribute(_el$7, "data-localization", _p$.n = _v$6);
3220
- _v$7 !== _p$.s && web.setAttribute(_el$7, "data-open", _p$.s = _v$7);
3221
- _v$8 !== _p$.h && web.className(_el$8, _p$.h = _v$8);
3222
- _v$9 !== _p$.r && web.setAttribute(_el$8, "data-open", _p$.r = _v$9);
3223
- return _p$;
3224
- }, {
3225
- e: void 0,
3226
- t: void 0,
3227
- a: void 0,
3228
- o: void 0,
3229
- i: void 0,
3230
- n: void 0,
3231
- s: void 0,
3232
- h: void 0,
3233
- r: void 0
3234
- });
3235
- return _el$4;
3236
- }
3237
- });
3238
- };
3239
- web.delegateEvents(["click"]);
3240
- var _tmpl$46 = /* @__PURE__ */ web.template(`<div><div data-localization=preferences.title>`);
3866
+ var _tmpl$54 = /* @__PURE__ */ web.template(`<div><div data-localization=preferences.title>`);
3241
3867
  var PreferencesHeader = (props) => {
3242
3868
  const style = useStyle();
3243
3869
  const {
3244
3870
  t
3245
3871
  } = useLocalization();
3872
+ const arrowLeftIconClass = style("preferencesHeader__back__button__icon", "nt-size-4", {
3873
+ iconKey: "arrowLeft"
3874
+ });
3246
3875
  return (() => {
3247
- var _el$ = _tmpl$46(), _el$2 = _el$.firstChild;
3876
+ var _el$ = _tmpl$54(), _el$2 = _el$.firstChild;
3248
3877
  web.insert(_el$, web.createComponent(solidJs.Show, {
3249
3878
  get when() {
3250
3879
  return props.navigateToNotifications;
@@ -3258,9 +3887,13 @@ var PreferencesHeader = (props) => {
3258
3887
  return navigateToNotifications();
3259
3888
  },
3260
3889
  get children() {
3261
- return web.createComponent(ArrowLeft, {
3262
- get ["class"]() {
3263
- return style("preferencesHeader__back__button__icon", "nt-size-4");
3890
+ return web.createComponent(IconRendererWrapper, {
3891
+ iconKey: "arrowLeft",
3892
+ "class": arrowLeftIconClass,
3893
+ get fallback() {
3894
+ return web.createComponent(ArrowLeft, {
3895
+ "class": arrowLeftIconClass
3896
+ });
3264
3897
  }
3265
3898
  });
3266
3899
  }
@@ -3308,28 +3941,12 @@ var useTabsDropdown = ({ tabs }) => {
3308
3941
  });
3309
3942
  return { dropdownTabs, setTabsList, visibleTabs };
3310
3943
  };
3311
- var _tmpl$47 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 20 20"fill=none xmlns=http://www.w3.org/2000/svg><path d="M10.0001 10.879L13.7126 7.1665L14.7731 8.227L10.0001 13L5.22705 8.227L6.28755 7.1665L10.0001 10.879Z"fill=currentColor>`);
3312
- var ArrowDown = (props) => {
3313
- return (() => {
3314
- var _el$ = _tmpl$47();
3315
- web.spread(_el$, props, true, true);
3316
- return _el$;
3317
- })();
3318
- };
3319
- var _tmpl$48 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 12 12"fill=none xmlns=http://www.w3.org/2000/svg><g clip-path=url(#clip0_3188_15050)><path d="M6 3V6L8 7M11 6C11 8.76142 8.76142 11 6 11C3.23858 11 1 8.76142 1 6C1 3.23858 3.23858 1 6 1C8.76142 1 11 3.23858 11 6Z"stroke=currentColor stroke-linecap=round stroke-linejoin=round>`);
3320
- var Clock = (props) => {
3321
- return (() => {
3322
- var _el$ = _tmpl$48();
3323
- web.spread(_el$, props, true, true);
3324
- return _el$;
3325
- })();
3326
- };
3327
- var _tmpl$49 = /* @__PURE__ */ web.template(`<strong>`);
3328
- var _tmpl$213 = /* @__PURE__ */ web.template(`<p>`);
3944
+ var _tmpl$55 = /* @__PURE__ */ web.template(`<strong>`);
3945
+ var _tmpl$215 = /* @__PURE__ */ web.template(`<p>`);
3329
3946
  var Bold = (props) => {
3330
3947
  const style = useStyle();
3331
3948
  return (() => {
3332
- var _el$ = _tmpl$49();
3949
+ var _el$ = _tmpl$55();
3333
3950
  web.insert(_el$, () => props.children);
3334
3951
  web.effect(() => web.className(_el$, style(props.appearanceKey || "strong", "nt-font-semibold")));
3335
3952
  return _el$;
@@ -3341,7 +3958,7 @@ var Markdown = (props) => {
3341
3958
  const style = useStyle();
3342
3959
  const tokens = solidJs.createMemo(() => chunkERC62PGI_js.parseMarkdownIntoTokens(local.children));
3343
3960
  return (() => {
3344
- var _el$2 = _tmpl$213();
3961
+ var _el$2 = _tmpl$215();
3345
3962
  web.spread(_el$2, web.mergeProps({
3346
3963
  get ["class"]() {
3347
3964
  return style(local.appearanceKey, cn(local.class));
@@ -3374,7 +3991,7 @@ var Markdown = (props) => {
3374
3991
  })();
3375
3992
  };
3376
3993
  var Markdown_default = Markdown;
3377
- var _tmpl$50 = /* @__PURE__ */ web.template(`<span>`);
3994
+ var _tmpl$56 = /* @__PURE__ */ web.template(`<span>`);
3378
3995
  var badgeVariants = classVarianceAuthority.cva(cn("nt-inline-flex nt-flex-row nt-gap-1 nt-items-center"), {
3379
3996
  variants: {
3380
3997
  variant: {
@@ -3393,7 +4010,7 @@ var Badge = (props) => {
3393
4010
  const [local, rest] = solidJs.splitProps(props, ["class", "appearanceKey"]);
3394
4011
  const style = useStyle();
3395
4012
  return (() => {
3396
- var _el$ = _tmpl$50();
4013
+ var _el$ = _tmpl$56();
3397
4014
  web.spread(_el$, web.mergeProps({
3398
4015
  get ["data-variant"]() {
3399
4016
  return props.variant;
@@ -3411,21 +4028,13 @@ var Badge = (props) => {
3411
4028
  return _el$;
3412
4029
  })();
3413
4030
  };
3414
- var _tmpl$51 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 10 10"fill=none xmlns=http://www.w3.org/2000/svg><path d="M4.99992 2.91634V4.99967M4.79992 5.39616L3.27392 6.46553M1.66659 1.66634L8.33325 8.33301M9.16658 4.99967C9.16658 7.30086 7.30111 9.16634 4.99992 9.16634C2.69873 9.16634 0.833252 7.30086 0.833252 4.99967C0.833252 2.69849 2.69873 0.833008 4.99992 0.833008C7.30111 0.833008 9.16658 2.69849 9.16658 4.99967Z"stroke=currentColor stroke-linecap=round stroke-linejoin=round>`);
3415
- var Unsnooze = (props) => {
3416
- return (() => {
3417
- var _el$ = _tmpl$51();
3418
- web.spread(_el$, props, true, true);
3419
- return _el$;
3420
- })();
3421
- };
3422
4031
  var TooltipContext = solidJs.createContext(void 0);
3423
4032
  function TooltipRoot(props) {
3424
4033
  const [reference, setReference] = solidJs.createSignal(null);
3425
4034
  const [floating, setFloating] = solidJs.createSignal(null);
3426
4035
  const position = solidFloatingUi.useFloating(reference, floating, {
3427
4036
  placement: props.placement || "top",
3428
- strategy: "absolute",
4037
+ strategy: "fixed",
3429
4038
  whileElementsMounted: dom.autoUpdate,
3430
4039
  middleware: [dom.offset(10), dom.flip({
3431
4040
  fallbackPlacements: props.fallbackPlacements || ["bottom"]
@@ -3466,7 +4075,7 @@ function useTooltip() {
3466
4075
  }
3467
4076
 
3468
4077
  // src/ui/components/primitives/Tooltip/TooltipContent.tsx
3469
- var _tmpl$52 = /* @__PURE__ */ web.template(`<div>`);
4078
+ var _tmpl$57 = /* @__PURE__ */ web.template(`<div>`);
3470
4079
  var tooltipContentVariants = () => "nt-bg-foreground nt-p-2 nt-shadow-tooltip nt-rounded-lg nt-text-background nt-text-xs";
3471
4080
  var TooltipContentBody = (props) => {
3472
4081
  const {
@@ -3489,7 +4098,7 @@ var TooltipContentBody = (props) => {
3489
4098
  });
3490
4099
  });
3491
4100
  return (() => {
3492
- var _el$ = _tmpl$52();
4101
+ var _el$ = _tmpl$57();
3493
4102
  web.use(setFloating, _el$);
3494
4103
  web.spread(_el$, web.mergeProps({
3495
4104
  get ["class"]() {
@@ -3511,12 +4120,22 @@ var TooltipContent = (props) => {
3511
4120
  const {
3512
4121
  open
3513
4122
  } = useTooltip();
4123
+ const {
4124
+ container
4125
+ } = useAppearance();
4126
+ const portalContainer = () => {
4127
+ var _a;
4128
+ return (_a = container()) != null ? _a : document.body;
4129
+ };
3514
4130
  return web.createComponent(solidJs.Show, {
3515
4131
  get when() {
3516
4132
  return open();
3517
4133
  },
3518
4134
  get children() {
3519
4135
  return web.createComponent(web.Portal, {
4136
+ get mount() {
4137
+ return portalContainer();
4138
+ },
3520
4139
  get children() {
3521
4140
  return web.createComponent(Root, {
3522
4141
  get children() {
@@ -3528,7 +4147,7 @@ var TooltipContent = (props) => {
3528
4147
  }
3529
4148
  });
3530
4149
  };
3531
- var _tmpl$53 = /* @__PURE__ */ web.template(`<button>`);
4150
+ var _tmpl$58 = /* @__PURE__ */ web.template(`<button>`);
3532
4151
  var TooltipTrigger = (props) => {
3533
4152
  const {
3534
4153
  setReference,
@@ -3563,7 +4182,7 @@ var TooltipTrigger = (props) => {
3563
4182
  }, rest));
3564
4183
  }
3565
4184
  return (() => {
3566
- var _el$ = _tmpl$53();
4185
+ var _el$ = _tmpl$58();
3567
4186
  _el$.addEventListener("mouseleave", () => {
3568
4187
  setOpen(false);
3569
4188
  });
@@ -3594,18 +4213,8 @@ var Tooltip = {
3594
4213
  */
3595
4214
  Content: TooltipContent
3596
4215
  };
3597
- var _tmpl$54 = /* @__PURE__ */ web.template(`<svg viewBox="0 0 20 20"fill=none xmlns=http://www.w3.org/2000/svg><path d="M10.7957 10.0009L7.08325 6.2884L8.14375 5.2279L12.9168 10.0009L8.14375 14.7739L7.08325 13.7134L10.7957 10.0009Z"fill=currentColor>`);
3598
- var ArrowRight = (props) => {
3599
- return (() => {
3600
- var _el$ = _tmpl$54();
3601
- web.spread(_el$, props, true, true);
3602
- return _el$;
3603
- })();
3604
- };
3605
-
3606
- // src/ui/components/primitives/DatePicker.tsx
3607
- var _tmpl$55 = /* @__PURE__ */ web.template(`<div>`);
3608
- var _tmpl$214 = /* @__PURE__ */ web.template(`<div><span>`);
4216
+ var _tmpl$59 = /* @__PURE__ */ web.template(`<div>`);
4217
+ var _tmpl$216 = /* @__PURE__ */ web.template(`<div><span>`);
3609
4218
  var DatePickerContext = solidJs.createContext({
3610
4219
  currentDate: () => /* @__PURE__ */ new Date(),
3611
4220
  setCurrentDate: () => {
@@ -3644,7 +4253,7 @@ var DatePicker = (props) => {
3644
4253
  maxDays: () => props.maxDays
3645
4254
  },
3646
4255
  get children() {
3647
- var _el$ = _tmpl$55();
4256
+ var _el$ = _tmpl$59();
3648
4257
  web.spread(_el$, web.mergeProps({
3649
4258
  get ["class"]() {
3650
4259
  return style("datePicker", cn("nt-p-2", local.class));
@@ -3664,6 +4273,13 @@ var DatePickerHeader = (props) => {
3664
4273
  currentDate,
3665
4274
  maxDays
3666
4275
  } = useDatePicker();
4276
+ useAppearance();
4277
+ const prevIconClass = style("datePickerControlPrevTrigger__icon", "nt-size-4 nt-text-foreground-alpha-700", {
4278
+ iconKey: "arrowLeft"
4279
+ });
4280
+ const nextIconClass = style("datePickerControlNextTrigger__icon", "nt-size-4 nt-text-foreground-alpha-700", {
4281
+ iconKey: "arrowRight"
4282
+ });
3667
4283
  const handlePrevMonth = () => {
3668
4284
  const date = new Date(viewMonth());
3669
4285
  date.setMonth(date.getMonth() - 1);
@@ -3700,10 +4316,10 @@ var DatePickerHeader = (props) => {
3700
4316
  return view.getFullYear() === maxDate.getFullYear() && view.getMonth() === maxDate.getMonth();
3701
4317
  };
3702
4318
  return (() => {
3703
- var _el$2 = _tmpl$214(), _el$3 = _el$2.firstChild;
4319
+ var _el$2 = _tmpl$216(), _el$3 = _el$2.firstChild;
3704
4320
  web.spread(_el$2, web.mergeProps({
3705
4321
  get ["class"]() {
3706
- return style(local.appearanceKey || "datePickerControl", cn("nt-flex nt-items-center nt-justify-between nt-gap-1.5 nt-h-7 nt-p-1 nt-mb-2 nt-rounded-lg nt-bg-neutral-50", local.class));
4322
+ return style(local.appearanceKey || "datePickerControl", cn("nt-flex nt-items-center nt-justify-between nt-gap-1.5 nt-h-7 nt-p-1 nt-mb-2 nt-rounded-lg nt-bg-background", local.class));
3707
4323
  }
3708
4324
  }, rest), false, true);
3709
4325
  web.insert(_el$2, web.createComponent(Button, {
@@ -3716,11 +4332,15 @@ var DatePickerHeader = (props) => {
3716
4332
  get disabled() {
3717
4333
  return isPrevDisabled();
3718
4334
  },
3719
- "class": "nt-flex nt-justify-center nt-items-center nt-gap-0.5 nt-w-5 nt-h-5 nt-p-0 nt-rounded-md nt-bg-white nt-shadow-[0px_1px_2px_0px_rgba(10,13,20,0.03)]",
4335
+ "class": "nt-flex nt-justify-center nt-items-center nt-gap-0.5 nt-w-5 nt-h-5 nt-p-0 nt-rounded-md nt-bg-background nt-shadow-[0px_1px_2px_0px_rgba(10,13,20,0.03)]",
3720
4336
  get children() {
3721
- return web.createComponent(ArrowLeft, {
3722
- get ["class"]() {
3723
- return style("datePickerControlPrevTrigger__icon", "nt-size-4 nt-text-foreground-alpha-700");
4337
+ return web.createComponent(IconRendererWrapper, {
4338
+ iconKey: "arrowLeft",
4339
+ "class": prevIconClass,
4340
+ get fallback() {
4341
+ return web.createComponent(ArrowLeft, {
4342
+ "class": prevIconClass
4343
+ });
3724
4344
  }
3725
4345
  });
3726
4346
  }
@@ -3739,11 +4359,15 @@ var DatePickerHeader = (props) => {
3739
4359
  get disabled() {
3740
4360
  return isNextDisabled();
3741
4361
  },
3742
- "class": "nt-flex nt-justify-center nt-items-center nt-gap-0.5 nt-w-5 nt-h-5 nt-p-0 nt-rounded-md nt-bg-white nt-shadow-[0px_1px_2px_0px_rgba(10,13,20,0.03)]",
4362
+ "class": "nt-flex nt-justify-center nt-items-center nt-gap-0.5 nt-w-5 nt-h-5 nt-p-0 nt-rounded-md nt-bg-background nt-shadow-[0px_1px_2px_0px_rgba(10,13,20,0.03)]",
3743
4363
  get children() {
3744
- return web.createComponent(ArrowRight, {
3745
- get ["class"]() {
3746
- return style("datePickerControlNextTrigger__icon", "nt-size-4 nt-text-foreground-alpha-700");
4364
+ return web.createComponent(IconRendererWrapper, {
4365
+ iconKey: "arrowRight",
4366
+ "class": nextIconClass,
4367
+ get fallback() {
4368
+ return web.createComponent(ArrowRight, {
4369
+ "class": nextIconClass
4370
+ });
3747
4371
  }
3748
4372
  });
3749
4373
  }
@@ -3848,7 +4472,7 @@ var DatePickerCalendar = (props) => {
3848
4472
  return days;
3849
4473
  };
3850
4474
  return (() => {
3851
- var _el$8 = _tmpl$55();
4475
+ var _el$8 = _tmpl$59();
3852
4476
  _el$8.$$click = (e) => e.stopPropagation();
3853
4477
  web.spread(_el$8, web.mergeProps({
3854
4478
  get ["class"]() {
@@ -3864,7 +4488,7 @@ var DatePickerCalendar = (props) => {
3864
4488
  })();
3865
4489
  };
3866
4490
  web.delegateEvents(["click"]);
3867
- var _tmpl$56 = /* @__PURE__ */ web.template(`<input>`);
4491
+ var _tmpl$60 = /* @__PURE__ */ web.template(`<input>`);
3868
4492
  var inputVariants = classVarianceAuthority.cva(cn(`focus-visible:nt-outline-none focus-visible:nt-ring-2 focus-visible:nt-rounded-md focus-visible:nt-ring-ring focus-visible:nt-ring-offset-2`), {
3869
4493
  variants: {
3870
4494
  variant: {
@@ -3884,7 +4508,7 @@ var Input = (props) => {
3884
4508
  const [local, rest] = solidJs.splitProps(props, ["class", "appearanceKey"]);
3885
4509
  const style = useStyle();
3886
4510
  return (() => {
3887
- var _el$ = _tmpl$56();
4511
+ var _el$ = _tmpl$60();
3888
4512
  web.spread(_el$, web.mergeProps({
3889
4513
  get ["data-variant"]() {
3890
4514
  return props.variant;
@@ -3904,7 +4528,7 @@ var Input = (props) => {
3904
4528
  };
3905
4529
 
3906
4530
  // src/ui/components/primitives/TimePicker.tsx
3907
- var _tmpl$57 = /* @__PURE__ */ web.template(`<div><span>:</span><select><option value=AM>AM</option><option value=PM>PM`);
4531
+ var _tmpl$61 = /* @__PURE__ */ web.template(`<div><span>:</span><select><option value=AM>AM</option><option value=PM>PM`);
3908
4532
  var TimePicker = (props) => {
3909
4533
  const [local, rest] = solidJs.splitProps(props, ["value", "onChange", "class", "appearanceKey"]);
3910
4534
  const style = useStyle();
@@ -3944,7 +4568,7 @@ var TimePicker = (props) => {
3944
4568
  }
3945
4569
  };
3946
4570
  return (() => {
3947
- var _el$ = _tmpl$57(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
4571
+ var _el$ = _tmpl$61(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
3948
4572
  _el$.$$click = (e) => e.stopPropagation();
3949
4573
  web.spread(_el$, web.mergeProps({
3950
4574
  get ["class"]() {
@@ -4032,7 +4656,7 @@ var enforceMinMax = (el) => {
4032
4656
  web.delegateEvents(["click"]);
4033
4657
 
4034
4658
  // src/ui/components/Notification/SnoozeDateTimePicker.tsx
4035
- var _tmpl$58 = /* @__PURE__ */ web.template(`<div><div><p></p></div><div>`);
4659
+ var _tmpl$62 = /* @__PURE__ */ web.template(`<div><div><p></p></div><div>`);
4036
4660
  var fiveMinutesFromNow = () => {
4037
4661
  const futureTime = new Date(Date.now() + 5 * 60 * 1e3);
4038
4662
  const hours = futureTime.getHours();
@@ -4129,7 +4753,7 @@ var SnoozeDateTimePicker = (props) => {
4129
4753
  return t("snooze.datePicker.noDateSelectedTooltip");
4130
4754
  });
4131
4755
  return (() => {
4132
- var _el$ = _tmpl$58(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$2.nextSibling;
4756
+ var _el$ = _tmpl$62(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$2.nextSibling;
4133
4757
  _el$.$$click = (e) => e.stopPropagation();
4134
4758
  web.insert(_el$, web.createComponent(DatePicker, {
4135
4759
  onDateChange: (date) => setSelectedDate(date),
@@ -4196,7 +4820,7 @@ var SnoozeDateTimePicker = (props) => {
4196
4820
  }
4197
4821
  }), null);
4198
4822
  web.effect((_p$) => {
4199
- var _v$ = style("snoozeDatePicker", "nt-bg-white nt-rounded-md nt-shadow-lg nt-w-[260px]"), _v$2 = style("snoozeDatePicker__timePickerContainer", "nt-flex nt-flex-row nt-justify-between nt-p-2 nt-items-center nt-border-t nt-border-neutral-200 nt-border-b"), _v$3 = style("snoozeDatePicker__timePickerLabel", "nt-text-sm nt-font-medium nt-text-foreground-alpha-700 nt-p-2"), _v$4 = style("snoozeDatePicker__actions", "nt-flex nt-flex-row nt-justify-end nt-gap-2 nt-p-2");
4823
+ var _v$ = style("snoozeDatePicker", "nt-bg-background nt-rounded-md nt-shadow-lg nt-w-[260px]"), _v$2 = style("snoozeDatePicker__timePickerContainer", "nt-flex nt-flex-row nt-justify-between nt-p-2 nt-items-center nt-border-t nt-border-neutral-200 nt-border-b"), _v$3 = style("snoozeDatePicker__timePickerLabel", "nt-text-sm nt-font-medium nt-text-foreground-alpha-700 nt-p-2"), _v$4 = style("snoozeDatePicker__actions", "nt-flex nt-flex-row nt-justify-end nt-gap-2 nt-p-2");
4200
4824
  _v$ !== _p$.e && web.className(_el$, _p$.e = _v$);
4201
4825
  _v$2 !== _p$.t && web.className(_el$2, _p$.t = _v$2);
4202
4826
  _v$3 !== _p$.a && web.className(_el$3, _p$.a = _v$3);
@@ -4214,8 +4838,8 @@ var SnoozeDateTimePicker = (props) => {
4214
4838
  web.delegateEvents(["click"]);
4215
4839
 
4216
4840
  // src/ui/components/Notification/NotificationActions.tsx
4217
- var _tmpl$59 = /* @__PURE__ */ web.template(`<div><span>`);
4218
- var _tmpl$215 = /* @__PURE__ */ web.template(`<span>`);
4841
+ var _tmpl$63 = /* @__PURE__ */ web.template(`<div><span>`);
4842
+ var _tmpl$217 = /* @__PURE__ */ web.template(`<span>`);
4219
4843
  var SNOOZE_PRESETS = [{
4220
4844
  key: "snooze.options.anHourFromNow",
4221
4845
  hours: 1,
@@ -4257,11 +4881,18 @@ var formatSnoozeOption = (preset, t, locale) => {
4257
4881
  };
4258
4882
  var SnoozeDropdownItem = (props) => {
4259
4883
  const style = useStyle();
4884
+ const snoozeItemIconClass = style("notificationSnooze__dropdownItem__icon", "nt-size-3 nt-text-foreground-alpha-400 nt-mr-2", {
4885
+ iconKey: "clock"
4886
+ });
4260
4887
  const content = [(() => {
4261
- var _el$ = _tmpl$59(), _el$2 = _el$.firstChild;
4262
- web.insert(_el$, web.createComponent(Clock, {
4263
- get ["class"]() {
4264
- return style("notificationSnooze__dropdownItem__icon", "nt-size-3 nt-text-foreground-alpha-400 nt-mr-2");
4888
+ var _el$ = _tmpl$63(), _el$2 = _el$.firstChild;
4889
+ web.insert(_el$, web.createComponent(IconRendererWrapper, {
4890
+ iconKey: "clock",
4891
+ "class": snoozeItemIconClass,
4892
+ get fallback() {
4893
+ return web.createComponent(Clock, {
4894
+ "class": snoozeItemIconClass
4895
+ });
4265
4896
  }
4266
4897
  }), _el$2);
4267
4898
  web.insert(_el$2, () => props.label);
@@ -4276,7 +4907,7 @@ var SnoozeDropdownItem = (props) => {
4276
4907
  });
4277
4908
  return _el$;
4278
4909
  })(), (() => {
4279
- var _el$3 = _tmpl$215();
4910
+ var _el$3 = _tmpl$217();
4280
4911
  web.insert(_el$3, () => props.time);
4281
4912
  web.effect(() => web.className(_el$3, style("dropdownItemRight__icon", "nt-text-foreground-alpha-300 nt-ml-2 nt-text-xs")));
4282
4913
  return _el$3;
@@ -4304,6 +4935,9 @@ var ReadButton = (props) => {
4304
4935
  const {
4305
4936
  t
4306
4937
  } = useLocalization();
4938
+ const readIconClass = style("notificationRead__icon", "nt-size-3", {
4939
+ iconKey: "markAsRead"
4940
+ });
4307
4941
  return web.createComponent(Tooltip.Root, {
4308
4942
  get children() {
4309
4943
  return [web.createComponent(Tooltip.Trigger, {
@@ -4317,9 +4951,13 @@ var ReadButton = (props) => {
4317
4951
  yield props.notification.read();
4318
4952
  }),
4319
4953
  get children() {
4320
- return web.createComponent(MarkAsRead, {
4321
- get ["class"]() {
4322
- return style("notificationRead__icon", "nt-size-3");
4954
+ return web.createComponent(IconRendererWrapper, {
4955
+ iconKey: "markAsRead",
4956
+ "class": readIconClass,
4957
+ get fallback() {
4958
+ return web.createComponent(MarkAsRead, {
4959
+ "class": readIconClass
4960
+ });
4323
4961
  }
4324
4962
  });
4325
4963
  }
@@ -4338,6 +4976,9 @@ var UnreadButton = (props) => {
4338
4976
  const {
4339
4977
  t
4340
4978
  } = useLocalization();
4979
+ const unreadIconClass = style("notificationUnread__icon", "nt-size-3", {
4980
+ iconKey: "markAsUnread"
4981
+ });
4341
4982
  return web.createComponent(Tooltip.Root, {
4342
4983
  get children() {
4343
4984
  return [web.createComponent(Tooltip.Trigger, {
@@ -4351,9 +4992,13 @@ var UnreadButton = (props) => {
4351
4992
  yield props.notification.unread();
4352
4993
  }),
4353
4994
  get children() {
4354
- return web.createComponent(MarkAsUnread, {
4355
- get ["class"]() {
4356
- return style("notificationUnread__icon", "nt-size-3");
4995
+ return web.createComponent(IconRendererWrapper, {
4996
+ iconKey: "markAsUnread",
4997
+ "class": unreadIconClass,
4998
+ get fallback() {
4999
+ return web.createComponent(MarkAsUnread, {
5000
+ "class": unreadIconClass
5001
+ });
4357
5002
  }
4358
5003
  });
4359
5004
  }
@@ -4372,6 +5017,9 @@ var ArchiveButton = (props) => {
4372
5017
  const {
4373
5018
  t
4374
5019
  } = useLocalization();
5020
+ const archiveIconClass = style("notificationArchive__icon", "nt-size-3", {
5021
+ iconKey: "markAsArchived"
5022
+ });
4375
5023
  return web.createComponent(Tooltip.Root, {
4376
5024
  get children() {
4377
5025
  return [web.createComponent(Tooltip.Trigger, {
@@ -4385,9 +5033,13 @@ var ArchiveButton = (props) => {
4385
5033
  yield props.notification.archive();
4386
5034
  }),
4387
5035
  get children() {
4388
- return web.createComponent(MarkAsArchived, {
4389
- get ["class"]() {
4390
- return style("notificationArchive__icon", "nt-size-3");
5036
+ return web.createComponent(IconRendererWrapper, {
5037
+ iconKey: "markAsArchived",
5038
+ "class": archiveIconClass,
5039
+ get fallback() {
5040
+ return web.createComponent(MarkAsArchived, {
5041
+ "class": archiveIconClass
5042
+ });
4391
5043
  }
4392
5044
  });
4393
5045
  }
@@ -4406,6 +5058,9 @@ var UnarchiveButton = (props) => {
4406
5058
  const {
4407
5059
  t
4408
5060
  } = useLocalization();
5061
+ const unarchiveIconClass = style("notificationArchive__icon", "nt-size-3", {
5062
+ iconKey: "markAsUnarchived"
5063
+ });
4409
5064
  return web.createComponent(Tooltip.Root, {
4410
5065
  get children() {
4411
5066
  return [web.createComponent(Tooltip.Trigger, {
@@ -4419,9 +5074,13 @@ var UnarchiveButton = (props) => {
4419
5074
  yield props.notification.unarchive();
4420
5075
  }),
4421
5076
  get children() {
4422
- return web.createComponent(MarkAsUnarchived, {
4423
- get ["class"]() {
4424
- return style("notificationArchive__icon", "nt-size-3");
5077
+ return web.createComponent(IconRendererWrapper, {
5078
+ iconKey: "markAsUnarchived",
5079
+ "class": unarchiveIconClass,
5080
+ get fallback() {
5081
+ return web.createComponent(MarkAsUnarchived, {
5082
+ "class": unarchiveIconClass
5083
+ });
4425
5084
  }
4426
5085
  });
4427
5086
  }
@@ -4440,6 +5099,9 @@ var UnsnoozeButton = (props) => {
4440
5099
  const {
4441
5100
  t
4442
5101
  } = useLocalization();
5102
+ const unsnoozeIconClass = style("notificationUnsnooze__icon", "nt-size-3", {
5103
+ iconKey: "unsnooze"
5104
+ });
4443
5105
  return web.createComponent(Tooltip.Root, {
4444
5106
  get children() {
4445
5107
  return [web.createComponent(Tooltip.Trigger, {
@@ -4453,9 +5115,13 @@ var UnsnoozeButton = (props) => {
4453
5115
  yield props.notification.unsnooze();
4454
5116
  }),
4455
5117
  get children() {
4456
- return web.createComponent(Unsnooze, {
4457
- get ["class"]() {
4458
- return style("notificationUnsnooze__icon", "nt-size-3");
5118
+ return web.createComponent(IconRendererWrapper, {
5119
+ iconKey: "unsnooze",
5120
+ "class": unsnoozeIconClass,
5121
+ get fallback() {
5122
+ return web.createComponent(Unsnooze, {
5123
+ "class": unsnoozeIconClass
5124
+ });
4459
5125
  }
4460
5126
  });
4461
5127
  }
@@ -4479,6 +5145,9 @@ var SnoozeButton = (props) => {
4479
5145
  maxSnoozeDurationHours
4480
5146
  } = useInboxContext();
4481
5147
  const [isSnoozeDateTimePickerOpen, setIsSnoozeDateTimePickerOpen] = solidJs.createSignal(false);
5148
+ const snoozeButtonIconClass = style("notificationSnooze__icon", "nt-size-3", {
5149
+ iconKey: "clock"
5150
+ });
4482
5151
  const availableSnoozePresets = solidJs.createMemo(() => {
4483
5152
  if (!maxSnoozeDurationHours()) return SNOOZE_PRESETS;
4484
5153
  return SNOOZE_PRESETS.filter((preset) => preset.hours <= maxSnoozeDurationHours());
@@ -4500,9 +5169,13 @@ var SnoozeButton = (props) => {
4500
5169
  (_a = popoverProps.onClick) == null ? void 0 : _a.call(popoverProps, e);
4501
5170
  },
4502
5171
  get children() {
4503
- return web.createComponent(Snooze, {
4504
- get ["class"]() {
4505
- return style("notificationSnooze__icon", "nt-size-3");
5172
+ return web.createComponent(IconRendererWrapper, {
5173
+ iconKey: "clock",
5174
+ "class": snoozeButtonIconClass,
5175
+ get fallback() {
5176
+ return web.createComponent(Clock, {
5177
+ "class": snoozeButtonIconClass
5178
+ });
4506
5179
  }
4507
5180
  });
4508
5181
  }
@@ -4609,8 +5282,8 @@ var renderNotificationActions = (notification, status) => {
4609
5282
  };
4610
5283
 
4611
5284
  // src/ui/components/Notification/DefaultNotification.tsx
4612
- var _tmpl$60 = /* @__PURE__ */ web.template(`<img>`);
4613
- var _tmpl$216 = /* @__PURE__ */ web.template(`<div>`);
5285
+ var _tmpl$64 = /* @__PURE__ */ web.template(`<img>`);
5286
+ var _tmpl$218 = /* @__PURE__ */ web.template(`<div>`);
4614
5287
  var _tmpl$311 = /* @__PURE__ */ web.template(`<span>`);
4615
5288
  var _tmpl$410 = /* @__PURE__ */ web.template(`<a><div><div></div><div></div><div>`);
4616
5289
  var DefaultNotification = (props) => {
@@ -4624,6 +5297,12 @@ var DefaultNotification = (props) => {
4624
5297
  status
4625
5298
  } = useInboxContext();
4626
5299
  const [minutesPassed, setMinutesPassed] = solidJs.createSignal(0);
5300
+ const deliveredAtIconClass = style("notificationDeliveredAt__icon", "nt-size-3", {
5301
+ iconKey: "clock"
5302
+ });
5303
+ const snoozedUntilIconClass = style("notificationSnoozedUntil__icon", "nt-size-3", {
5304
+ iconKey: "clock"
5305
+ });
4627
5306
  const createdAt = solidJs.createMemo(() => {
4628
5307
  minutesPassed();
4629
5308
  return formatToRelativeTime({
@@ -4689,13 +5368,13 @@ var DefaultNotification = (props) => {
4689
5368
  },
4690
5369
  get fallback() {
4691
5370
  return (() => {
4692
- var _el$9 = _tmpl$216();
5371
+ var _el$9 = _tmpl$218();
4693
5372
  web.effect(() => web.className(_el$9, style("notificationImageLoadingFallback", "nt-size-8 nt-rounded-lg nt-shrink-0 nt-aspect-square")));
4694
5373
  return _el$9;
4695
5374
  })();
4696
5375
  },
4697
5376
  get children() {
4698
- var _el$2 = _tmpl$60();
5377
+ var _el$2 = _tmpl$64();
4699
5378
  web.effect((_p$) => {
4700
5379
  var _v$ = style("notificationImage", "nt-size-8 nt-rounded-lg nt-object-cover nt-aspect-square"), _v$2 = props.notification.avatar;
4701
5380
  _v$ !== _p$.e && web.className(_el$2, _p$.e = _v$);
@@ -4719,7 +5398,7 @@ var DefaultNotification = (props) => {
4719
5398
  },
4720
5399
  children: (subject) => web.createComponent(Markdown_default, {
4721
5400
  appearanceKey: "notificationSubject",
4722
- "class": "nt-text-start nt-font-medium",
5401
+ "class": "nt-text-start nt-font-medium nt-whitespace-pre-wrap [word-break:break-word]",
4723
5402
  strongAppearanceKey: "notificationSubject__strong",
4724
5403
  get children() {
4725
5404
  return subject();
@@ -4739,7 +5418,7 @@ var DefaultNotification = (props) => {
4739
5418
  return web.createComponent(Markdown_default, {
4740
5419
  appearanceKey: "notificationBody",
4741
5420
  strongAppearanceKey: "notificationBody__strong",
4742
- "class": "nt-text-start nt-whitespace-pre-wrap nt-text-foreground-alpha-600",
5421
+ "class": "nt-text-start nt-whitespace-pre-wrap nt-text-foreground-alpha-600 [word-break:break-word]",
4743
5422
  get children() {
4744
5423
  return props.notification.body;
4745
5424
  }
@@ -4755,7 +5434,7 @@ var DefaultNotification = (props) => {
4755
5434
  return props.notification.primaryAction || props.notification.secondaryAction;
4756
5435
  },
4757
5436
  get children() {
4758
- var _el$6 = _tmpl$216();
5437
+ var _el$6 = _tmpl$218();
4759
5438
  web.insert(_el$6, web.createComponent(solidJs.Show, {
4760
5439
  get when() {
4761
5440
  return props.notification.primaryAction;
@@ -4824,9 +5503,13 @@ var DefaultNotification = (props) => {
4824
5503
  return web.createComponent(Badge, {
4825
5504
  appearanceKey: "notificationDeliveredAt__badge",
4826
5505
  get children() {
4827
- return [web.createComponent(Clock, {
4828
- get ["class"]() {
4829
- return style("notificationDeliveredAt__icon", "nt-size-3");
5506
+ return [web.createComponent(IconRendererWrapper, {
5507
+ iconKey: "clock",
5508
+ "class": deliveredAtIconClass,
5509
+ get fallback() {
5510
+ return web.createComponent(Clock, {
5511
+ "class": deliveredAtIconClass
5512
+ });
4830
5513
  }
4831
5514
  }), date];
4832
5515
  }
@@ -4838,9 +5521,13 @@ var DefaultNotification = (props) => {
4838
5521
  })
4839
5522
  });
4840
5523
  },
4841
- children: (snoozedUntil2) => [web.createComponent(Clock, {
4842
- get ["class"]() {
4843
- return style("notificationSnoozedUntil__icon", "nt-size-3");
5524
+ children: (snoozedUntil2) => [web.createComponent(IconRendererWrapper, {
5525
+ iconKey: "clock",
5526
+ "class": snoozedUntilIconClass,
5527
+ get fallback() {
5528
+ return web.createComponent(Clock, {
5529
+ "class": snoozedUntilIconClass
5530
+ });
4844
5531
  }
4845
5532
  }), web.memo(() => t("notification.snoozedUntil")), " \xB7 ", web.memo(snoozedUntil2)]
4846
5533
  }));
@@ -4938,14 +5625,14 @@ var NewMessagesCta = (props) => {
4938
5625
  }
4939
5626
  });
4940
5627
  };
4941
- var _tmpl$61 = /* @__PURE__ */ web.template(`<div>`);
5628
+ var _tmpl$65 = /* @__PURE__ */ web.template(`<div>`);
4942
5629
  var NotificationListSkeleton = (props) => {
4943
5630
  const style = useStyle();
4944
5631
  const {
4945
5632
  t
4946
5633
  } = useLocalization();
4947
5634
  return (() => {
4948
- var _el$ = _tmpl$61();
5635
+ var _el$ = _tmpl$65();
4949
5636
  web.insert(_el$, web.createComponent(Motion.div, {
4950
5637
  get animate() {
4951
5638
  return {
@@ -4984,7 +5671,7 @@ var NotificationListSkeleton = (props) => {
4984
5671
  appearanceKey: "notificationList__skeletonAvatar",
4985
5672
  "class": "nt-w-8 nt-h-8 nt-rounded-full nt-bg-neutral-alpha-100"
4986
5673
  }), (() => {
4987
- var _el$3 = _tmpl$61();
5674
+ var _el$3 = _tmpl$65();
4988
5675
  web.insert(_el$3, web.createComponent(SkeletonText, {
4989
5676
  appearanceKey: "notificationList__skeletonText",
4990
5677
  "class": "nt-h-2 nt-w-1/3 nt-bg-neutral-alpha-50 nt-rounded"
@@ -4998,7 +5685,7 @@ var NotificationListSkeleton = (props) => {
4998
5685
  })()];
4999
5686
  }
5000
5687
  }))), (() => {
5001
- var _el$2 = _tmpl$61();
5688
+ var _el$2 = _tmpl$65();
5002
5689
  web.effect(() => web.className(_el$2, style("notificationListEmptyNoticeOverlay", "nt-absolute nt-size-full nt-z-10 nt-inset-0 nt-bg-gradient-to-b nt-from-transparent nt-to-background")));
5003
5690
  return _el$2;
5004
5691
  })()];
@@ -5043,8 +5730,8 @@ var NotificationListSkeleton = (props) => {
5043
5730
  };
5044
5731
 
5045
5732
  // src/ui/components/Notification/NotificationList.tsx
5046
- var _tmpl$62 = /* @__PURE__ */ web.template(`<div>`);
5047
- var _tmpl$217 = /* @__PURE__ */ web.template(`<div><div>`);
5733
+ var _tmpl$66 = /* @__PURE__ */ web.template(`<div>`);
5734
+ var _tmpl$219 = /* @__PURE__ */ web.template(`<div><div>`);
5048
5735
  var NotificationList = (props) => {
5049
5736
  var _a, _b;
5050
5737
  const options = solidJs.createMemo(() => chunk7B52C2XE_js.__spreadProps(chunk7B52C2XE_js.__spreadValues({}, props.filter), {
@@ -5087,7 +5774,7 @@ var NotificationList = (props) => {
5087
5774
  });
5088
5775
  });
5089
5776
  return (() => {
5090
- var _el$ = _tmpl$217(), _el$2 = _el$.firstChild;
5777
+ var _el$ = _tmpl$219(), _el$2 = _el$.firstChild;
5091
5778
  web.insert(_el$, web.createComponent(NewMessagesCta, {
5092
5779
  get count() {
5093
5780
  return count();
@@ -5144,7 +5831,7 @@ var NotificationList = (props) => {
5144
5831
  return !end();
5145
5832
  },
5146
5833
  get children() {
5147
- var _el$3 = _tmpl$62();
5834
+ var _el$3 = _tmpl$66();
5148
5835
  web.use(setEl, _el$3);
5149
5836
  web.insert(_el$3, web.createComponent(NotificationListSkeleton, {
5150
5837
  loading: true
@@ -5166,13 +5853,13 @@ var NotificationList = (props) => {
5166
5853
  return _el$;
5167
5854
  })();
5168
5855
  };
5169
- var _tmpl$63 = /* @__PURE__ */ web.template(`<span>`);
5856
+ var _tmpl$67 = /* @__PURE__ */ web.template(`<span>`);
5170
5857
  var getDisplayCount = (count) => count >= 100 ? "99+" : count;
5171
5858
  var InboxTabUnreadNotificationsCount = (props) => {
5172
5859
  const style = useStyle();
5173
5860
  const displayCount = solidJs.createMemo(() => getDisplayCount(props.count));
5174
5861
  return (() => {
5175
- var _el$ = _tmpl$63();
5862
+ var _el$ = _tmpl$67();
5176
5863
  web.insert(_el$, displayCount);
5177
5864
  web.effect(() => web.className(_el$, style("notificationsTabsTriggerCount", "nt-rounded-full nt-bg-counter nt-px-[6px] nt-text-counter-foreground nt-text-sm")));
5178
5865
  return _el$;
@@ -5197,7 +5884,7 @@ var InboxTab = (props) => {
5197
5884
  },
5198
5885
  get children() {
5199
5886
  return [(() => {
5200
- var _el$2 = _tmpl$63();
5887
+ var _el$2 = _tmpl$67();
5201
5888
  web.insert(_el$2, () => props.label);
5202
5889
  web.effect(() => web.className(_el$2, style("notificationsTabsTriggerLabel", "nt-text-sm nt-font-medium")));
5203
5890
  return _el$2;
@@ -5235,7 +5922,7 @@ var InboxDropdownTab = (props) => {
5235
5922
  },
5236
5923
  get children() {
5237
5924
  return [(() => {
5238
- var _el$3 = _tmpl$63();
5925
+ var _el$3 = _tmpl$67();
5239
5926
  web.insert(_el$3, () => props.label);
5240
5927
  web.effect(() => web.className(_el$3, style("moreTabs__dropdownItemLabel", "nt-mr-auto")));
5241
5928
  return _el$3;
@@ -5277,15 +5964,25 @@ var InboxTabs = (props) => {
5277
5964
  tags: getTagsFromTab(tab)
5278
5965
  }))
5279
5966
  });
5967
+ const checkIconClass = style("moreTabs__dropdownItemRight__icon", "nt-size-3", {
5968
+ iconKey: "check"
5969
+ });
5280
5970
  const options = solidJs.createMemo(() => dropdownTabs().map((tab) => chunk7B52C2XE_js.__spreadProps(chunk7B52C2XE_js.__spreadValues({}, tab), {
5281
- rightIcon: tab.label === activeTab() ? web.createComponent(Check, {
5282
- get ["class"]() {
5283
- return style("moreTabs__dropdownItemRight__icon", "nt-size-3");
5971
+ rightIcon: tab.label === activeTab() ? web.createComponent(IconRendererWrapper, {
5972
+ iconKey: "check",
5973
+ "class": checkIconClass,
5974
+ get fallback() {
5975
+ return web.createComponent(Check, {
5976
+ "class": checkIconClass
5977
+ });
5284
5978
  }
5285
5979
  }) : void 0
5286
5980
  })));
5287
5981
  const dropdownTabsUnreadSum = solidJs.createMemo(() => dropdownTabsUnreadCounts().reduce((accumulator, currentValue) => accumulator + currentValue, 0));
5288
5982
  const isTabsDropdownActive = solidJs.createMemo(() => dropdownTabs().map((tab) => tab.label).includes(activeTab()));
5983
+ const moreTabsIconClass = style("moreTabs__icon", "nt-size-5", {
5984
+ iconKey: "arrowDown"
5985
+ });
5289
5986
  return web.createComponent(Tabs.Root, {
5290
5987
  appearanceKey: "notificationsTabs__tabsRoot",
5291
5988
  "class": "nt-flex nt-flex-col nt-flex-1 nt-min-h-0",
@@ -5338,9 +6035,13 @@ var InboxTabs = (props) => {
5338
6035
  return cn(tabsDropdownTriggerVariants(), "nt-ml-auto", isTabsDropdownActive() ? "after:nt-border-b-primary" : "after:nt-border-b-transparent nt-text-foreground-alpha-700");
5339
6036
  },
5340
6037
  get children() {
5341
- return [web.createComponent(ArrowDown, {
5342
- get ["class"]() {
5343
- return style("moreTabs__icon", "nt-size-5");
6038
+ return [web.createComponent(IconRendererWrapper, {
6039
+ iconKey: "arrowDown",
6040
+ "class": moreTabsIconClass,
6041
+ get fallback() {
6042
+ return web.createComponent(ArrowDown, {
6043
+ "class": moreTabsIconClass
6044
+ });
5344
6045
  }
5345
6046
  }), web.createComponent(solidJs.Show, {
5346
6047
  get when() {
@@ -5416,13 +6117,16 @@ var InboxTabs = (props) => {
5416
6117
  };
5417
6118
 
5418
6119
  // src/ui/components/Inbox.tsx
5419
- var _tmpl$64 = /* @__PURE__ */ web.template(`<div>`);
6120
+ var _tmpl$68 = /* @__PURE__ */ web.template(`<div>`);
5420
6121
  var InboxPage = /* @__PURE__ */ function(InboxPage2) {
5421
6122
  InboxPage2["Notifications"] = "notifications";
5422
6123
  InboxPage2["Preferences"] = "preferences";
5423
6124
  return InboxPage2;
5424
6125
  }({});
5425
6126
  var InboxContent = (props) => {
6127
+ const {
6128
+ isDevelopmentMode
6129
+ } = useInboxContext();
5426
6130
  const [currentPage, setCurrentPage] = solidJs.createSignal(props.initialPage || InboxPage.Notifications);
5427
6131
  const {
5428
6132
  tabs,
@@ -5438,7 +6142,7 @@ var InboxContent = (props) => {
5438
6142
  };
5439
6143
  });
5440
6144
  return (() => {
5441
- var _el$ = _tmpl$64();
6145
+ var _el$ = _tmpl$68();
5442
6146
  web.insert(_el$, web.createComponent(solidJs.Switch, {
5443
6147
  get children() {
5444
6148
  return [web.createComponent(solidJs.Match, {
@@ -5522,7 +6226,10 @@ var InboxContent = (props) => {
5522
6226
  }
5523
6227
  }), null);
5524
6228
  web.insert(_el$, web.createComponent(Footer, {}), null);
5525
- web.effect(() => web.className(_el$, style("inboxContent", "nt-h-full nt-flex nt-flex-col")));
6229
+ web.effect(() => web.className(_el$, style("inboxContent", cn("nt-h-full nt-flex nt-flex-col [&_.nv-preferencesContainer]:nt-pb-8 [&_.nv-notificationList]:nt-pb-8", {
6230
+ "[&_.nv-preferencesContainer]:nt-pb-8 [&_.nv-notificationList]:nt-pb-8": isDevelopmentMode(),
6231
+ "[&_.nv-preferencesContainer]:nt-pb-4 [&_.nv-notificationList]:nt-pb-4": !isDevelopmentMode()
6232
+ }))));
5526
6233
  return _el$;
5527
6234
  })();
5528
6235
  };
@@ -5669,18 +6376,20 @@ var novuComponents = {
5669
6376
  var Renderer = (props) => {
5670
6377
  const nodes = () => [...props.nodes.keys()];
5671
6378
  solidJs.onMount(() => {
5672
- const id = "novu-default-css";
5673
- const el = document.getElementById(id);
6379
+ var _a;
6380
+ const id = NOVU_DEFAULT_CSS_ID;
6381
+ const root = props.container instanceof ShadowRoot ? props.container : document;
6382
+ const el = root.getElementById(id);
5674
6383
  if (el) {
5675
6384
  return;
5676
6385
  }
5677
6386
  const styleEl = document.createElement("style");
5678
6387
  styleEl.id = id;
5679
- document.head.insertBefore(styleEl, document.head.firstChild);
5680
6388
  styleEl.innerHTML = ui_default;
6389
+ const stylesContainer = (_a = props.container) != null ? _a : document.head;
6390
+ stylesContainer.insertBefore(styleEl, stylesContainer.firstChild);
5681
6391
  solidJs.onCleanup(() => {
5682
- const element = document.getElementById(id);
5683
- element == null ? void 0 : element.remove();
6392
+ styleEl.remove();
5684
6393
  });
5685
6394
  });
5686
6395
  return web.createComponent(NovuProvider, {
@@ -5703,6 +6412,9 @@ var Renderer = (props) => {
5703
6412
  get appearance() {
5704
6413
  return props.appearance;
5705
6414
  },
6415
+ get container() {
6416
+ return props.container;
6417
+ },
5706
6418
  get children() {
5707
6419
  return web.createComponent(FocusManagerProvider, {
5708
6420
  get children() {
@@ -5713,6 +6425,9 @@ var Renderer = (props) => {
5713
6425
  get preferencesFilter() {
5714
6426
  return props.preferencesFilter;
5715
6427
  },
6428
+ get preferenceGroups() {
6429
+ return props.preferenceGroups;
6430
+ },
5716
6431
  get routerPush() {
5717
6432
  return props.routerPush;
5718
6433
  },
@@ -5766,11 +6481,13 @@ var Renderer = (props) => {
5766
6481
  };
5767
6482
 
5768
6483
  // src/ui/novuUI.tsx
5769
- var _dispose, _rootElement, _mountedElements, _setMountedElements, _appearance, _setAppearance, _localization, _setLocalization, _options, _setOptions, _tabs, _setTabs, _routerPush, _setRouterPush, _preferencesFilter, _setPreferencesFilter, _predefinedNovu, _NovuUI_instances, mountComponentRenderer_fn, updateComponentProps_fn;
6484
+ var _dispose, _container, _setContainer, _rootElement, _mountedElements, _setMountedElements, _appearance, _setAppearance, _localization, _setLocalization, _options, _setOptions, _tabs, _setTabs, _routerPush, _setRouterPush, _preferencesFilter, _setPreferencesFilter, _preferenceGroups, _setPreferenceGroups, _predefinedNovu, _NovuUI_instances, getContainerElement_fn, mountComponentRenderer_fn, updateComponentProps_fn;
5770
6485
  var NovuUI = class {
5771
6486
  constructor(props) {
5772
6487
  chunk7B52C2XE_js.__privateAdd(this, _NovuUI_instances);
5773
6488
  chunk7B52C2XE_js.__privateAdd(this, _dispose, null);
6489
+ chunk7B52C2XE_js.__privateAdd(this, _container);
6490
+ chunk7B52C2XE_js.__privateAdd(this, _setContainer);
5774
6491
  chunk7B52C2XE_js.__privateAdd(this, _rootElement);
5775
6492
  chunk7B52C2XE_js.__privateAdd(this, _mountedElements);
5776
6493
  chunk7B52C2XE_js.__privateAdd(this, _setMountedElements);
@@ -5786,6 +6503,8 @@ var NovuUI = class {
5786
6503
  chunk7B52C2XE_js.__privateAdd(this, _setRouterPush);
5787
6504
  chunk7B52C2XE_js.__privateAdd(this, _preferencesFilter);
5788
6505
  chunk7B52C2XE_js.__privateAdd(this, _setPreferencesFilter);
6506
+ chunk7B52C2XE_js.__privateAdd(this, _preferenceGroups);
6507
+ chunk7B52C2XE_js.__privateAdd(this, _setPreferenceGroups);
5789
6508
  chunk7B52C2XE_js.__privateAdd(this, _predefinedNovu);
5790
6509
  var _a;
5791
6510
  this.id = generateRandomString(16);
@@ -5795,7 +6514,9 @@ var NovuUI = class {
5795
6514
  const [mountedElements, setMountedElements] = solidJs.createSignal(/* @__PURE__ */ new Map());
5796
6515
  const [tabs, setTabs] = solidJs.createSignal((_a = props.tabs) != null ? _a : []);
5797
6516
  const [preferencesFilter, setPreferencesFilter] = solidJs.createSignal(props.preferencesFilter);
6517
+ const [preferenceGroups, setPreferenceGroups] = solidJs.createSignal(props.preferenceGroups);
5798
6518
  const [routerPush, setRouterPush] = solidJs.createSignal(props.routerPush);
6519
+ const [container, setContainer] = solidJs.createSignal(chunk7B52C2XE_js.__privateMethod(this, _NovuUI_instances, getContainerElement_fn).call(this, props.container));
5799
6520
  chunk7B52C2XE_js.__privateSet(this, _mountedElements, mountedElements);
5800
6521
  chunk7B52C2XE_js.__privateSet(this, _setMountedElements, setMountedElements);
5801
6522
  chunk7B52C2XE_js.__privateSet(this, _appearance, appearance);
@@ -5811,6 +6532,10 @@ var NovuUI = class {
5811
6532
  chunk7B52C2XE_js.__privateSet(this, _predefinedNovu, props.novu);
5812
6533
  chunk7B52C2XE_js.__privateSet(this, _preferencesFilter, preferencesFilter);
5813
6534
  chunk7B52C2XE_js.__privateSet(this, _setPreferencesFilter, setPreferencesFilter);
6535
+ chunk7B52C2XE_js.__privateSet(this, _preferenceGroups, preferenceGroups);
6536
+ chunk7B52C2XE_js.__privateSet(this, _setPreferenceGroups, setPreferenceGroups);
6537
+ chunk7B52C2XE_js.__privateSet(this, _container, container);
6538
+ chunk7B52C2XE_js.__privateSet(this, _setContainer, setContainer);
5814
6539
  chunk7B52C2XE_js.__privateMethod(this, _NovuUI_instances, mountComponentRenderer_fn).call(this);
5815
6540
  }
5816
6541
  mountComponent({
@@ -5852,9 +6577,15 @@ var NovuUI = class {
5852
6577
  updatePreferencesFilter(preferencesFilter) {
5853
6578
  chunk7B52C2XE_js.__privateGet(this, _setPreferencesFilter).call(this, preferencesFilter);
5854
6579
  }
6580
+ updatePreferenceGroups(preferenceGroups) {
6581
+ chunk7B52C2XE_js.__privateGet(this, _setPreferenceGroups).call(this, preferenceGroups);
6582
+ }
5855
6583
  updateRouterPush(routerPush) {
5856
6584
  chunk7B52C2XE_js.__privateGet(this, _setRouterPush).call(this, () => routerPush);
5857
6585
  }
6586
+ updateContainer(container) {
6587
+ chunk7B52C2XE_js.__privateGet(this, _setContainer).call(this, chunk7B52C2XE_js.__privateMethod(this, _NovuUI_instances, getContainerElement_fn).call(this, container));
6588
+ }
5858
6589
  unmount() {
5859
6590
  var _a, _b;
5860
6591
  (_a = chunk7B52C2XE_js.__privateGet(this, _dispose)) == null ? void 0 : _a.call(this);
@@ -5863,6 +6594,8 @@ var NovuUI = class {
5863
6594
  }
5864
6595
  };
5865
6596
  _dispose = new WeakMap();
6597
+ _container = new WeakMap();
6598
+ _setContainer = new WeakMap();
5866
6599
  _rootElement = new WeakMap();
5867
6600
  _mountedElements = new WeakMap();
5868
6601
  _setMountedElements = new WeakMap();
@@ -5878,15 +6611,28 @@ _routerPush = new WeakMap();
5878
6611
  _setRouterPush = new WeakMap();
5879
6612
  _preferencesFilter = new WeakMap();
5880
6613
  _setPreferencesFilter = new WeakMap();
6614
+ _preferenceGroups = new WeakMap();
6615
+ _setPreferenceGroups = new WeakMap();
5881
6616
  _predefinedNovu = new WeakMap();
5882
6617
  _NovuUI_instances = new WeakSet();
6618
+ getContainerElement_fn = function(container) {
6619
+ var _a;
6620
+ if (container === null || container === void 0) {
6621
+ return container;
6622
+ }
6623
+ if (typeof container === "string") {
6624
+ return (_a = document.querySelector(container)) != null ? _a : document.getElementById(container);
6625
+ }
6626
+ return container;
6627
+ };
5883
6628
  mountComponentRenderer_fn = function() {
5884
6629
  if (chunk7B52C2XE_js.__privateGet(this, _dispose) !== null) {
5885
6630
  return;
5886
6631
  }
5887
6632
  chunk7B52C2XE_js.__privateSet(this, _rootElement, document.createElement("div"));
5888
6633
  chunk7B52C2XE_js.__privateGet(this, _rootElement).setAttribute("id", `novu-ui-${this.id}`);
5889
- document.body.appendChild(chunk7B52C2XE_js.__privateGet(this, _rootElement));
6634
+ const container = chunk7B52C2XE_js.__privateGet(this, _container).call(this);
6635
+ (container != null ? container : document.body).appendChild(chunk7B52C2XE_js.__privateGet(this, _rootElement));
5890
6636
  const dispose = web.render(() => {
5891
6637
  const _self$ = this;
5892
6638
  return web.createComponent(Renderer, {
@@ -5915,12 +6661,20 @@ mountComponentRenderer_fn = function() {
5915
6661
  var _a;
5916
6662
  return chunk7B52C2XE_js.__privateGet(_a = _self$, _preferencesFilter).call(_a);
5917
6663
  },
6664
+ get preferenceGroups() {
6665
+ var _a;
6666
+ return chunk7B52C2XE_js.__privateGet(_a = _self$, _preferenceGroups).call(_a);
6667
+ },
5918
6668
  get routerPush() {
5919
6669
  var _a;
5920
6670
  return chunk7B52C2XE_js.__privateGet(_a = _self$, _routerPush).call(_a);
5921
6671
  },
5922
6672
  get novu() {
5923
6673
  return chunk7B52C2XE_js.__privateGet(_self$, _predefinedNovu);
6674
+ },
6675
+ get container() {
6676
+ var _a;
6677
+ return chunk7B52C2XE_js.__privateGet(_a = _self$, _container).call(_a);
5924
6678
  }
5925
6679
  });
5926
6680
  }, chunk7B52C2XE_js.__privateGet(this, _rootElement));