@novu/js 3.10.1 → 3.11.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,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkU6OU7N23_js = require('../chunk-U6OU7N23.js');
4
- var chunkZB7IPCHY_js = require('../chunk-ZB7IPCHY.js');
3
+ var chunkQQNKEWGC_js = require('../chunk-QQNKEWGC.js');
4
+ var chunkVWSQDNZX_js = require('../chunk-VWSQDNZX.js');
5
5
  var chunk7B52C2XE_js = require('../chunk-7B52C2XE.js');
6
6
  var web = require('solid-js/web');
7
7
  var solidJs = require('solid-js');
@@ -37,7 +37,7 @@ function _interopNamespace(e) {
37
37
  var clsx__default = /*#__PURE__*/_interopDefault(clsx);
38
38
  var CheckboxPrimitive__namespace = /*#__PURE__*/_interopNamespace(CheckboxPrimitive);
39
39
 
40
- // _oinvmpp0t:/home/runner/work/novu/novu/packages/js/src/ui/index.directcss
40
+ // _v71190j6q:/home/runner/_work/novu/novu/packages/js/src/ui/index.directcss
41
41
  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-bottom-0{bottom:0}.nt-left-0{left:0}.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-m-1{margin:-.25rem}.nt-mx-auto{margin-left:auto;margin-right:auto}.-nt-mt-2{margin-top:-.5rem}.-nt-mt-\\[2px\\]{margin-top:-2px}.nt--mt-\\[50px\\]{margin-top:-50px}.nt-mb-1{margin-bottom:.25rem}.nt-mb-2{margin-bottom:.5rem}.nt-mb-3{margin-bottom:.75rem}.nt-mb-4{margin-bottom:1rem}.nt-mb-\\[0\\.625rem\\]{margin-bottom:.625rem}.nt-ml-1{margin-left:.25rem}.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-1\\.5{margin-top:.375rem}.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-3\\.5{height:.875rem}.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-max-h-\\[160px\\]{max-height:160px}.nt-min-h-0{min-height:0}.nt-w-1\\.5{width:.375rem}.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-\\[3px\\]{width:3px}.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-min-w-\\[120px\\]{min-width:120px}.nt-min-w-\\[220px\\]{min-width:220px}.nt-min-w-\\[74px\\]{min-width:74px}.nt-max-w-56{max-width:14rem}.nt-max-w-\\[120px\\]{max-width:120px}.nt-max-w-\\[220px\\]{max-width:220px}.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-primary{border-color:var(--nv-color-primary)}.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-900{--tw-bg-opacity:1;background-color:rgb(23 23 23/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-severity-high{background-color:var(--nv-color-severity-high)}.nt-bg-severity-high-alpha-100{background-color:var(--nv-color-severity-high-alpha-100)}.nt-bg-severity-high-alpha-200{background-color:var(--nv-color-severity-high-alpha-200)}.nt-bg-severity-high-alpha-300{background-color:var(--nv-color-severity-high-alpha-300)}.nt-bg-severity-high-alpha-50{background-color:var(--nv-color-severity-high-alpha-50)}.nt-bg-severity-low{background-color:var(--nv-color-severity-low)}.nt-bg-severity-low-alpha-100{background-color:var(--nv-color-severity-low-alpha-100)}.nt-bg-severity-low-alpha-200{background-color:var(--nv-color-severity-low-alpha-200)}.nt-bg-severity-low-alpha-300{background-color:var(--nv-color-severity-low-alpha-300)}.nt-bg-severity-low-alpha-50{background-color:var(--nv-color-severity-low-alpha-50)}.nt-bg-severity-medium{background-color:var(--nv-color-severity-medium)}.nt-bg-severity-medium-alpha-100{background-color:var(--nv-color-severity-medium-alpha-100)}.nt-bg-severity-medium-alpha-200{background-color:var(--nv-color-severity-medium-alpha-200)}.nt-bg-severity-medium-alpha-300{background-color:var(--nv-color-severity-medium-alpha-300)}.nt-bg-severity-medium-alpha-50{background-color:var(--nv-color-severity-medium-alpha-50)}.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-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.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{padding-top:.5rem}.nt-pt-2\\.5{padding-top:.625rem}.nt-text-left{text-align:left}.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-\\[12px\\]{font-size:12px}.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-\\[\\#000000\\]{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,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-neutral-600{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity,1))}.nt-text-neutral-alpha-500{color:var(--nv-color-neutral-alpha-500)}.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-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.nt-underline{text-decoration-line:underline}.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-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nt-shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 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-ring-offset-background{--tw-ring-offset-color:var(--nv-color-background)}.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-transition-opacity{transition-duration:.15s;transition-property:opacity;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)}.\\[--bell-gradient-end\\:oklch\\(from_var\\(--nv-color-foreground\\)_80\\%_c_h\\)\\]{--bell-gradient-end:oklch(from var(--nv-color-foreground) 80% c h)}.\\[--bell-gradient-end\\:oklch\\(from_var\\(--nv-color-severity-high\\)_45\\%_c_h\\)\\]{--bell-gradient-end:oklch(from var(--nv-color-severity-high) 45% c h)}.\\[--bell-gradient-end\\:oklch\\(from_var\\(--nv-color-severity-high\\)_80\\%_c_h\\)\\]{--bell-gradient-end:oklch(from var(--nv-color-severity-high) 80% c h)}.\\[--bell-gradient-end\\:oklch\\(from_var\\(--nv-color-severity-low\\)_45\\%_c_h\\)\\]{--bell-gradient-end:oklch(from var(--nv-color-severity-low) 45% c h)}.\\[--bell-gradient-end\\:oklch\\(from_var\\(--nv-color-severity-low\\)_80\\%_c_h\\)\\]{--bell-gradient-end:oklch(from var(--nv-color-severity-low) 80% c h)}.\\[--bell-gradient-end\\:oklch\\(from_var\\(--nv-color-severity-medium\\)_45\\%_c_h\\)\\]{--bell-gradient-end:oklch(from var(--nv-color-severity-medium) 45% c h)}.\\[--bell-gradient-end\\:oklch\\(from_var\\(--nv-color-severity-medium\\)_80\\%_c_h\\)\\]{--bell-gradient-end:oklch(from var(--nv-color-severity-medium) 80% c h)}.\\[--bell-gradient-start\\:var\\(--nv-color-foreground\\)\\]{--bell-gradient-start:var(--nv-color-foreground)}.\\[--bell-gradient-start\\:var\\(--nv-color-severity-high\\)\\]{--bell-gradient-start:var(--nv-color-severity-high)}.\\[--bell-gradient-start\\:var\\(--nv-color-severity-low\\)\\]{--bell-gradient-start:var(--nv-color-severity-low)}.\\[--bell-gradient-start\\:var\\(--nv-color-severity-medium\\)\\]{--bell-gradient-start:var(--nv-color-severity-medium)}.\\[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)}.before\\:nt-m-1:before{content:var(--tw-content);margin:.25rem}@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-full:before{border-radius:var(--nv-radius-full);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-severity-high-alpha-200:before{background-color:var(--nv-color-severity-high-alpha-200);content:var(--tw-content)}.before\\:nt-bg-severity-high-alpha-300:before{background-color:var(--nv-color-severity-high-alpha-300);content:var(--tw-content)}.before\\:nt-bg-severity-low-alpha-200:before{background-color:var(--nv-color-severity-low-alpha-200);content:var(--tw-content)}.before\\:nt-bg-severity-low-alpha-300:before{background-color:var(--nv-color-severity-low-alpha-300);content:var(--tw-content)}.before\\:nt-bg-severity-medium-alpha-200:before{background-color:var(--nv-color-severity-medium-alpha-200);content:var(--tw-content)}.before\\:nt-bg-severity-medium-alpha-300:before{background-color:var(--nv-color-severity-medium-alpha-300);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-bg-severity-high-alpha-50:hover{background-color:var(--nv-color-severity-high-alpha-50)}.hover\\:nt-bg-severity-low-alpha-50:hover{background-color:var(--nv-color-severity-low-alpha-50)}.hover\\:nt-bg-severity-medium-alpha-50:hover{background-color:var(--nv-color-severity-medium-alpha-50)}.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{opacity:1}.nt-group:hover .group-hover\\:nt-bg-severity-high-alpha-500{background-color:var(--nv-color-severity-high-alpha-500)}.nt-group:hover .group-hover\\:nt-bg-severity-low-alpha-500{background-color:var(--nv-color-severity-low-alpha-500)}.nt-group:hover .group-hover\\:nt-bg-severity-medium-alpha-500{background-color:var(--nv-color-severity-medium-alpha-500)}.nt-group:hover .group-hover\\:nt-opacity-0{opacity:0}.nt-group:hover .group-hover\\:nt-opacity-100{opacity:1}.nt-peer:focus-visible~.peer-focus-visible\\:nt-outline-none{outline:2px solid #0000;outline-offset:2px}.nt-peer:focus-visible~.peer-focus-visible\\:nt-ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.nt-peer:focus-visible~.peer-focus-visible\\:nt-ring-offset-2{--tw-ring-offset-width:2px}.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\\]\\:nt-cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-\\[checked\\]\\:nt-border-none[data-checked],.data-\\[indeterminate\\]\\:nt-border-none[data-indeterminate]{border-style:none}.data-\\[checked\\]\\:nt-bg-primary[data-checked],.data-\\[indeterminate\\]\\:nt-bg-primary[data-indeterminate]{background-color:var(--nv-color-primary)}.data-\\[checked\\]\\:nt-text-primary-foreground[data-checked]{color:var(--nv-color-primary-foreground)}.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-\\[indeterminate\\]\\:nt-text-primary-foreground[data-indeterminate]{color:var(--nv-color-primary-foreground)}.data-\\[state\\=active\\]\\:nt-text-foreground[data-state=active]{color:var(--nv-color-foreground)}.data-\\[disabled\\]\\:nt-opacity-50[data-disabled]{opacity:.5}.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-12 .nv-notificationList{padding-bottom:3rem}.\\[\\&_\\.nv-notificationList\\]\\:nt-pb-8 .nv-notificationList{padding-bottom:2rem}.\\[\\&_\\.nv-preferencesContainer\\]\\:nt-pb-12 .nv-preferencesContainer{padding-bottom:3rem}.\\[\\&_\\.nv-preferencesContainer\\]\\:nt-pb-8 .nv-preferencesContainer{padding-bottom:2rem}.\\[\\&_stop\\]\\:nt-transition-\\[stop-color\\] stop{transition-duration:.15s;transition-property:stop-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\[\\&_svg\\]\\:nt-pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:nt-shrink-0 svg{flex-shrink:0}`;
42
42
 
43
43
  // src/ui/config/appearanceKeys.ts
@@ -1112,7 +1112,7 @@ var useWebSocketEvent = ({
1112
1112
  eventHandler: onMessage
1113
1113
  }) => {
1114
1114
  const novu = useNovu();
1115
- const channelName = `nv_ws_connection:a=${novu.applicationIdentifier}:s=${novu.subscriberId}:e=${webSocketEvent}`;
1115
+ const channelName = `nv_ws_connection:a=${novu.applicationIdentifier}:s=${novu.subscriberId}:c=${novu.contextKey}:e=${webSocketEvent}`;
1116
1116
  const { postMessage } = useBrowserTabsChannel({ channelName, onMessage });
1117
1117
  const updateReadCount = (data) => {
1118
1118
  onMessage(data);
@@ -1334,6 +1334,7 @@ var InboxProvider = (props) => {
1334
1334
  const [preferencesFilter, setPreferencesFilter] = solidJs.createSignal(props.preferencesFilter);
1335
1335
  const [isKeyless, setIsKeyless] = solidJs.createSignal(false);
1336
1336
  const [applicationIdentifier, setApplicationIdentifier] = solidJs.createSignal(null);
1337
+ const [contextKeys, setContextKeys] = solidJs.createSignal(void 0);
1337
1338
  const [preferenceGroups, setPreferenceGroups] = solidJs.createSignal(props.preferenceGroups);
1338
1339
  const [preferencesSort, setPreferencesSort] = solidJs.createSignal(props.preferencesSort);
1339
1340
  const setNewStatus = (newStatus) => {
@@ -1407,6 +1408,7 @@ var InboxProvider = (props) => {
1407
1408
  setHideBranding(data.removeNovuBranding);
1408
1409
  setIsDevelopmentMode(data.isDevelopmentMode);
1409
1410
  setMaxSnoozeDurationHours(data.maxSnoozeDurationHours);
1411
+ setContextKeys(data.contextKeys);
1410
1412
  if (data.isDevelopmentMode && !props.applicationIdentifier) {
1411
1413
  setIsKeyless(!data.applicationIdentifier || !!(identifier == null ? void 0 : identifier.startsWith("pk_keyless_")));
1412
1414
  setApplicationIdentifier((_a2 = data.applicationIdentifier) != null ? _a2 : null);
@@ -1436,7 +1438,8 @@ var InboxProvider = (props) => {
1436
1438
  maxSnoozeDurationHours,
1437
1439
  isSnoozeEnabled,
1438
1440
  isKeyless,
1439
- applicationIdentifier
1441
+ applicationIdentifier,
1442
+ contextKeys
1440
1443
  },
1441
1444
  get children() {
1442
1445
  return props.children;
@@ -1452,7 +1455,7 @@ var useInboxContext = () => {
1452
1455
  };
1453
1456
  var NovuContext = solidJs.createContext(void 0);
1454
1457
  function NovuProvider(props) {
1455
- const novu = solidJs.createMemo(() => props.novu || new chunkU6OU7N23_js.Novu(props.options));
1458
+ const novu = solidJs.createMemo(() => props.novu || new chunkQQNKEWGC_js.Novu(props.options));
1456
1459
  return web.createComponent(NovuContext.Provider, {
1457
1460
  get value() {
1458
1461
  return novu();
@@ -1604,8 +1607,8 @@ var CountProvider = (props) => {
1604
1607
  const tabTags = getTagsFromTab(tab);
1605
1608
  const tabDataFilterCriteria = (_a = tab.filter) == null ? void 0 : _a.data;
1606
1609
  const tabSeverityFilterCriteria = (_b = tab.filter) == null ? void 0 : _b.severity;
1607
- const matchesTagFilter = chunkU6OU7N23_js.checkNotificationTagFilter(notification.tags, tabTags);
1608
- const matchesDataFilterCriteria = chunkU6OU7N23_js.checkNotificationDataFilter(notification.data, tabDataFilterCriteria);
1610
+ const matchesTagFilter = chunkQQNKEWGC_js.checkNotificationTagFilter(notification.tags, tabTags);
1611
+ const matchesDataFilterCriteria = chunkQQNKEWGC_js.checkNotificationDataFilter(notification.data, tabDataFilterCriteria);
1609
1612
  const matchesSeverityFilterCriteria = !tabSeverityFilterCriteria || Array.isArray(tabSeverityFilterCriteria) && tabSeverityFilterCriteria.length === 0 || Array.isArray(tabSeverityFilterCriteria) && tabSeverityFilterCriteria.includes(notification.severity) || !Array.isArray(tabSeverityFilterCriteria) && tabSeverityFilterCriteria === notification.severity;
1610
1613
  if (matchesTagFilter && matchesDataFilterCriteria && matchesSeverityFilterCriteria) {
1611
1614
  const filterKey = createKey({
@@ -2619,7 +2622,7 @@ var Footer = () => {
2619
2622
  });
2620
2623
  };
2621
2624
  function getCurrentDomain() {
2622
- if (chunkU6OU7N23_js.isBrowser()) {
2625
+ if (chunkQQNKEWGC_js.isBrowser()) {
2623
2626
  return window.location.hostname;
2624
2627
  }
2625
2628
  return "";
@@ -2631,7 +2634,7 @@ function getCurlCommand() {
2631
2634
  return "";
2632
2635
  }
2633
2636
  const DEFAULT_BACKEND_URL = typeof window !== "undefined" && window.NOVU_LOCAL_BACKEND_URL || "https://api.novu.co";
2634
- return `curl -X POST ${DEFAULT_BACKEND_URL}/${chunkU6OU7N23_js.DEFAULT_API_VERSION}/events/trigger -H 'Authorization: Keyless ${identifier}' -H 'Content-Type: application/json' -d '{
2637
+ return `curl -X POST ${DEFAULT_BACKEND_URL}/${chunkQQNKEWGC_js.DEFAULT_API_VERSION}/events/trigger -H 'Authorization: Keyless ${identifier}' -H 'Content-Type: application/json' -d '{
2635
2638
  "name": "hello-world",
2636
2639
  "to": {
2637
2640
  "subscriberId": "keyless-subscriber-id"
@@ -4077,7 +4080,7 @@ var useNotificationsInfiniteScroll = (props) => {
4077
4080
  );
4078
4081
  solidJs.onMount(() => {
4079
4082
  const listener = ({ data: data2 }) => {
4080
- if (!data2 || !chunkU6OU7N23_js.isSameFilter(filter, data2.filter)) {
4083
+ if (!data2 || !chunkQQNKEWGC_js.isSameFilter(filter, data2.filter)) {
4081
4084
  return;
4082
4085
  }
4083
4086
  mutate({ data: data2.notifications, hasMore: data2.hasMore });
@@ -4087,7 +4090,7 @@ var useNotificationsInfiniteScroll = (props) => {
4087
4090
  });
4088
4091
  solidJs.createEffect(() => chunk7B52C2XE_js.__async(void 0, null, function* () {
4089
4092
  const newFilter = chunk7B52C2XE_js.__spreadValues({}, props.options());
4090
- if (chunkU6OU7N23_js.isSameFilter(filter, newFilter)) {
4093
+ if (chunkQQNKEWGC_js.isSameFilter(filter, newFilter)) {
4091
4094
  return;
4092
4095
  }
4093
4096
  novu.notifications.clearCache();
@@ -6614,7 +6617,7 @@ var Text = (props) => props.children;
6614
6617
  var Markdown = (props) => {
6615
6618
  const [local, rest] = solidJs.splitProps(props, ["class", "children", "appearanceKey", "strongAppearanceKey", "context"]);
6616
6619
  const style = useStyle();
6617
- const tokens = solidJs.createMemo(() => chunkZB7IPCHY_js.parseMarkdownIntoTokens(local.children));
6620
+ const tokens = solidJs.createMemo(() => chunkVWSQDNZX_js.parseMarkdownIntoTokens(local.children));
6618
6621
  return (() => {
6619
6622
  var _el$2 = _tmpl$222();
6620
6623
  web.spread(_el$2, web.mergeProps({
@@ -8423,7 +8426,7 @@ var NotificationList = (props) => {
8423
8426
  })();
8424
8427
  };
8425
8428
  var _tmpl$81 = /* @__PURE__ */ web.template(`<span>`);
8426
- var getDisplayCount = (count) => count >= 100 ? "99+" : count;
8429
+ var getDisplayCount = (count) => count > 99 ? "99+" : String(count);
8427
8430
  var InboxTabUnreadNotificationsCount = (props) => {
8428
8431
  const style = useStyle();
8429
8432
  const displayCount = solidJs.createMemo(() => getDisplayCount(props.count));
@@ -1,3 +1,18 @@
1
+ // src/ui/internal/buildContextKey.ts
2
+ function buildContextKey(context) {
3
+ if (!context) {
4
+ return "";
5
+ }
6
+ const keys = [];
7
+ for (const [type, value] of Object.entries(context)) {
8
+ if (value) {
9
+ const id = typeof value === "string" ? value : value.id;
10
+ keys.push(`${type}:${id}`);
11
+ }
12
+ }
13
+ return keys.sort().join(",");
14
+ }
15
+
1
16
  // src/ui/internal/buildSubscriber.ts
2
17
  function buildSubscriber({
3
18
  subscriberId,
@@ -44,4 +59,4 @@ var parseMarkdownIntoTokens = (text) => {
44
59
  return tokens;
45
60
  };
46
61
 
47
- export { buildSubscriber, parseMarkdownIntoTokens };
62
+ export { buildContextKey, buildSubscriber, parseMarkdownIntoTokens };
@@ -1,4 +1,4 @@
1
- import { buildSubscriber } from './chunk-QOD7NZ77.mjs';
1
+ import { buildSubscriber, buildContextKey } from './chunk-RZWQYM3H.mjs';
2
2
  import { __privateAdd, __privateSet, __privateGet, __async, __objRest, __spreadValues, __spreadProps, __privateMethod } from './chunk-STZMOEWR.mjs';
3
3
  import mitt from 'mitt';
4
4
  import 'event-target-polyfill';
@@ -141,7 +141,7 @@ function checkNotificationMatchesFilter(notification, filter) {
141
141
 
142
142
  // src/api/http-client.ts
143
143
  var DEFAULT_API_VERSION = "v1";
144
- var DEFAULT_USER_AGENT = `${"@novu/js"}@${"3.10.1"}`;
144
+ var DEFAULT_USER_AGENT = `${"@novu/js"}@${"3.11.0"}`;
145
145
  var HttpClient = class {
146
146
  constructor(options = {}) {
147
147
  // Environment variable for local development that overrides the default API endpoint without affecting the Inbox DX
@@ -269,14 +269,18 @@ var InboxService = class {
269
269
  return __async(this, arguments, function* ({
270
270
  applicationIdentifier,
271
271
  subscriberHash,
272
+ contextHash,
272
273
  subscriber,
273
- defaultSchedule
274
+ defaultSchedule,
275
+ context
274
276
  }) {
275
277
  const response = yield __privateGet(this, _httpClient).post(`${INBOX_ROUTE}/session`, {
276
278
  applicationIdentifier,
277
279
  subscriberHash,
280
+ contextHash,
278
281
  subscriber,
279
- defaultSchedule
282
+ defaultSchedule,
283
+ context
280
284
  });
281
285
  __privateGet(this, _httpClient).setAuthorizationToken(response.token);
282
286
  __privateGet(this, _httpClient).setKeylessHeader(response.applicationIdentifier);
@@ -2491,6 +2495,18 @@ var Session = class {
2491
2495
  var _a;
2492
2496
  return (_a = __privateGet(this, _options).subscriber) == null ? void 0 : _a.subscriberId;
2493
2497
  }
2498
+ get context() {
2499
+ return __privateGet(this, _options).context;
2500
+ }
2501
+ get subscriberHash() {
2502
+ return __privateGet(this, _options).subscriberHash;
2503
+ }
2504
+ get contextHash() {
2505
+ return __privateGet(this, _options).contextHash;
2506
+ }
2507
+ get subscriber() {
2508
+ return __privateGet(this, _options).subscriber;
2509
+ }
2494
2510
  handleApplicationIdentifier(method, identifier) {
2495
2511
  if (typeof window === "undefined" || !window.localStorage) {
2496
2512
  return null;
@@ -2517,14 +2533,16 @@ var Session = class {
2517
2533
  initialize(options) {
2518
2534
  return __async(this, null, function* () {
2519
2535
  var _a, _b, _c, _d, _e, _f;
2520
- if (((_a = __privateGet(this, _options).subscriber) == null ? void 0 : _a.subscriberId) === ((_b = options == null ? void 0 : options.subscriber) == null ? void 0 : _b.subscriberId)) {
2536
+ const subscriberUnchanged = ((_a = __privateGet(this, _options).subscriber) == null ? void 0 : _a.subscriberId) === ((_b = options == null ? void 0 : options.subscriber) == null ? void 0 : _b.subscriberId);
2537
+ const contextUnchanged = JSON.stringify(__privateGet(this, _options).context) === JSON.stringify(options == null ? void 0 : options.context);
2538
+ if (subscriberUnchanged && contextUnchanged) {
2521
2539
  return;
2522
2540
  }
2523
2541
  try {
2524
2542
  if (options) {
2525
2543
  __privateSet(this, _options, options);
2526
2544
  }
2527
- const { subscriber, subscriberHash, applicationIdentifier, defaultSchedule } = __privateGet(this, _options);
2545
+ const { subscriber, subscriberHash, contextHash, applicationIdentifier, defaultSchedule, context } = __privateGet(this, _options);
2528
2546
  let currentTimezone;
2529
2547
  if (isBrowser()) {
2530
2548
  currentTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
@@ -2542,11 +2560,13 @@ var Session = class {
2542
2560
  const response = yield __privateGet(this, _inboxService2).initializeSession({
2543
2561
  applicationIdentifier: finalApplicationIdentifier,
2544
2562
  subscriberHash,
2563
+ contextHash,
2545
2564
  subscriber: __spreadProps(__spreadValues({}, subscriber), {
2546
2565
  subscriberId: (_c = subscriber == null ? void 0 : subscriber.subscriberId) != null ? _c : "",
2547
2566
  timezone: (_d = subscriber == null ? void 0 : subscriber.timezone) != null ? _d : currentTimezone
2548
2567
  }),
2549
- defaultSchedule
2568
+ defaultSchedule,
2569
+ context
2550
2570
  });
2551
2571
  if ((_e = response == null ? void 0 : response.applicationIdentifier) == null ? void 0 : _e.startsWith("pk_keyless_")) {
2552
2572
  this.handleApplicationIdentifier("store", response.applicationIdentifier);
@@ -3065,7 +3085,9 @@ var Novu = class {
3065
3085
  applicationIdentifier: options.applicationIdentifier || "",
3066
3086
  subscriberHash: options.subscriberHash,
3067
3087
  subscriber: buildSubscriber({ subscriberId: options.subscriberId, subscriber: options.subscriber }),
3068
- defaultSchedule: options.defaultSchedule
3088
+ defaultSchedule: options.defaultSchedule,
3089
+ context: options.context,
3090
+ contextHash: options.contextHash
3069
3091
  },
3070
3092
  __privateGet(this, _inboxService3),
3071
3093
  __privateGet(this, _emitter10)
@@ -3105,13 +3127,48 @@ var Novu = class {
3105
3127
  get subscriberId() {
3106
3128
  return __privateGet(this, _session).subscriberId;
3107
3129
  }
3130
+ get context() {
3131
+ return __privateGet(this, _session).context;
3132
+ }
3133
+ get contextKey() {
3134
+ return buildContextKey(__privateGet(this, _session).context);
3135
+ }
3108
3136
  changeSubscriber(options) {
3109
3137
  return __async(this, null, function* () {
3110
3138
  yield __privateGet(this, _session).initialize({
3111
3139
  applicationIdentifier: __privateGet(this, _session).applicationIdentifier || "",
3112
3140
  subscriberHash: options.subscriberHash,
3113
- subscriber: options.subscriber
3141
+ subscriber: options.subscriber,
3142
+ // Preserve existing context and contextHash
3143
+ context: __privateGet(this, _session).context,
3144
+ contextHash: __privateGet(this, _session).contextHash
3114
3145
  });
3146
+ this.notifications.cache.clearAll();
3147
+ const disconnectResult = yield this.socket.disconnect();
3148
+ if (!disconnectResult.error) {
3149
+ yield this.socket.connect();
3150
+ }
3151
+ });
3152
+ }
3153
+ changeContext(options) {
3154
+ return __async(this, null, function* () {
3155
+ const currentSubscriber = __privateGet(this, _session).subscriber;
3156
+ if (!currentSubscriber) {
3157
+ throw new Error("Cannot change context without an active subscriber");
3158
+ }
3159
+ yield __privateGet(this, _session).initialize({
3160
+ applicationIdentifier: __privateGet(this, _session).applicationIdentifier || "",
3161
+ // Preserve existing subscriber and subscriberHash
3162
+ subscriberHash: __privateGet(this, _session).subscriberHash,
3163
+ subscriber: currentSubscriber,
3164
+ context: options.context,
3165
+ contextHash: options.contextHash
3166
+ });
3167
+ this.notifications.cache.clearAll();
3168
+ const disconnectResult = yield this.socket.disconnect();
3169
+ if (!disconnectResult.error) {
3170
+ yield this.socket.connect();
3171
+ }
3115
3172
  });
3116
3173
  }
3117
3174
  };
@@ -1,7 +1,7 @@
1
- import { N as Notification } from './novu-C2DJGZ4P.mjs';
2
- export { E as EventHandler, a as Events, F as FiltersCountResponse, L as ListNotificationsResponse, b as Novu, P as Preference, c as Schedule, S as SocketEventNames } from './novu-C2DJGZ4P.mjs';
3
- import { S as SeverityLevelEnum, N as NotificationFilter } from './types-DKMAoSfo.mjs';
4
- export { C as ChannelPreference, a as ChannelType, D as DaySchedule, b as DefaultSchedule, I as InboxNotification, c as NotificationStatus, d as NovuError, e as NovuOptions, P as PreferenceLevel, f as PreferencesResponse, g as StandardNovuOptions, h as Subscriber, T as TimeRange, U as UnreadCount, W as WebSocketEvent, i as WeeklySchedule, j as WorkflowCriticalityEnum } from './types-DKMAoSfo.mjs';
1
+ import { N as Notification } from './novu-DY-mm8Og.mjs';
2
+ export { E as EventHandler, a as Events, F as FiltersCountResponse, L as ListNotificationsResponse, b as Novu, P as Preference, c as Schedule, S as SocketEventNames } from './novu-DY-mm8Og.mjs';
3
+ import { S as SeverityLevelEnum, N as NotificationFilter } from './types-BM_9Xx5Z.mjs';
4
+ export { C as ChannelPreference, a as ChannelType, b as Context, D as DaySchedule, c as DefaultSchedule, I as InboxNotification, d as NotificationStatus, e as NovuError, f as NovuOptions, P as PreferenceLevel, g as PreferencesResponse, h as StandardNovuOptions, i as Subscriber, T as TimeRange, U as UnreadCount, W as WebSocketEvent, j as WeeklySchedule, k as WorkflowCriticalityEnum } from './types-BM_9Xx5Z.mjs';
5
5
 
6
6
  declare const areTagsEqual: (tags1?: string[], tags2?: string[]) => boolean;
7
7
  declare const areSeveritiesEqual: (el1?: SeverityLevelEnum | SeverityLevelEnum[], el2?: SeverityLevelEnum | SeverityLevelEnum[]) => boolean;
@@ -1,3 +1,3 @@
1
- export { ChannelType, NotificationStatus, Novu, PreferenceLevel, SeverityLevelEnum, WebSocketEvent, WorkflowCriticalityEnum, areSeveritiesEqual, areTagsEqual, checkNotificationDataFilter, checkNotificationMatchesFilter, isSameFilter } from './chunk-JEKUVONQ.mjs';
2
- import './chunk-QOD7NZ77.mjs';
1
+ export { ChannelType, NotificationStatus, Novu, PreferenceLevel, SeverityLevelEnum, WebSocketEvent, WorkflowCriticalityEnum, areSeveritiesEqual, areTagsEqual, checkNotificationDataFilter, checkNotificationMatchesFilter, isSameFilter } from './chunk-UM35OVAD.mjs';
2
+ import './chunk-RZWQYM3H.mjs';
3
3
  import './chunk-STZMOEWR.mjs';
@@ -1,4 +1,18 @@
1
- import { h as Subscriber } from '../types-DKMAoSfo.mjs';
1
+ import { b as Context, i as Subscriber } from '../types-BM_9Xx5Z.mjs';
2
+
3
+ /**
4
+ * Builds a compact, stable string key from context objects by extracting only type:id pairs.
5
+ *
6
+ * This avoids including large `data` payloads in:
7
+ * - React dependency arrays (useMemo)
8
+ * - Web Locks API channel names (prevents duplicate subscriptions)
9
+ *
10
+ * @example
11
+ * buildContextKey({ tenant: { id: "inbox-1", data: {...} } }) // "tenant:inbox-1"
12
+ * buildContextKey({ tenant: "inbox-1" }) // "tenant:inbox-1"
13
+ * buildContextKey(undefined) // ""
14
+ */
15
+ declare function buildContextKey(context: Context | undefined): string;
2
16
 
3
17
  declare function buildSubscriber({ subscriberId, subscriber, }: {
4
18
  subscriberId: string | undefined;
@@ -11,4 +25,4 @@ interface Token {
11
25
  }
12
26
  declare const parseMarkdownIntoTokens: (text: string) => Token[];
13
27
 
14
- export { type Token, buildSubscriber, parseMarkdownIntoTokens };
28
+ export { type Token, buildContextKey, buildSubscriber, parseMarkdownIntoTokens };
@@ -1,2 +1,2 @@
1
- export { buildSubscriber, parseMarkdownIntoTokens } from '../chunk-QOD7NZ77.mjs';
1
+ export { buildContextKey, buildSubscriber, parseMarkdownIntoTokens } from '../chunk-RZWQYM3H.mjs';
2
2
  import '../chunk-STZMOEWR.mjs';
@@ -1,4 +1,4 @@
1
- import { i as WeeklySchedule, S as SeverityLevelEnum, j as WorkflowCriticalityEnum, C as ChannelPreference, k as Session, R as Result, P as PreferenceLevel, l as Workflow, m as Prettify, h as Subscriber, b as DefaultSchedule, I as InboxNotification, N as NotificationFilter, A as ActionTypeEnum, f as PreferencesResponse, W as WebSocketEvent, e as NovuOptions } from './types-DKMAoSfo.js';
1
+ import { j as WeeklySchedule, S as SeverityLevelEnum, k as WorkflowCriticalityEnum, C as ChannelPreference, l as Session, R as Result, P as PreferenceLevel, m as Workflow, n as Prettify, i as Subscriber, c as DefaultSchedule, b as Context, I as InboxNotification, N as NotificationFilter, A as ActionTypeEnum, g as PreferencesResponse, W as WebSocketEvent, o as ContextValue, f as NovuOptions } from './types-BM_9Xx5Z.mjs';
2
2
 
3
3
  type HttpClientOptions = {
4
4
  apiVersion?: string;
@@ -139,11 +139,13 @@ declare class InboxService {
139
139
  #private;
140
140
  isSessionInitialized: boolean;
141
141
  constructor(options?: InboxServiceOptions);
142
- initializeSession({ applicationIdentifier, subscriberHash, subscriber, defaultSchedule, }: {
142
+ initializeSession({ applicationIdentifier, subscriberHash, contextHash, subscriber, defaultSchedule, context, }: {
143
143
  applicationIdentifier?: string;
144
144
  subscriberHash?: string;
145
+ contextHash?: string;
145
146
  subscriber?: Subscriber;
146
147
  defaultSchedule?: DefaultSchedule;
148
+ context?: Context;
147
149
  }): Promise<Session>;
148
150
  fetchNotifications({ after, archived, limit, offset, read, tags, snoozed, seen, data, severity, }: {
149
151
  tags?: string[];
@@ -444,7 +446,9 @@ type InitializeSessionArgs = KeylessInitializeSessionArgs | {
444
446
  applicationIdentifier: string;
445
447
  subscriber: Subscriber;
446
448
  subscriberHash?: string;
449
+ contextHash?: string;
447
450
  defaultSchedule?: DefaultSchedule;
451
+ context?: Context;
448
452
  };
449
453
 
450
454
  type NovuPendingEvent<A, D = undefined> = {
@@ -468,7 +472,7 @@ type NotificationUnreadEvents = BaseEvents<'notification.unread', UnreadArgs, No
468
472
  type NotificationSeenEvents = BaseEvents<'notification.seen', SeenArgs, Notification>;
469
473
  type NotificationArchiveEvents = BaseEvents<'notification.archive', ArchivedArgs, Notification>;
470
474
  type NotificationUnarchiveEvents = BaseEvents<'notification.unarchive', UnarchivedArgs, Notification>;
471
- type NotificationDeleteEvents = BaseEvents<'notification.delete', DeletedArgs, void>;
475
+ type NotificationDeleteEvents = BaseEvents<'notification.delete', DeletedArgs, Notification>;
472
476
  type NotificationSnoozeEvents = BaseEvents<'notification.snooze', SnoozeArgs, Notification>;
473
477
  type NotificationUnsnoozeEvents = BaseEvents<'notification.unsnooze', UnsnoozeArgs, Notification>;
474
478
  type NotificationCompleteActionEvents = BaseEvents<'notification.complete_action', CompleteArgs, Notification>;
@@ -578,11 +582,17 @@ declare class Novu implements Pick<NovuEventEmitter, 'on'> {
578
582
  off: <Key extends EventNames>(eventName: Key, listener: EventHandler<Events[Key]>) => void;
579
583
  get applicationIdentifier(): string | undefined;
580
584
  get subscriberId(): string | undefined;
585
+ get context(): Partial<Record<string, ContextValue>> | undefined;
586
+ get contextKey(): string;
581
587
  constructor(options: NovuOptions);
582
588
  changeSubscriber(options: {
583
589
  subscriber: Subscriber;
584
590
  subscriberHash?: string;
585
591
  }): Promise<void>;
592
+ changeContext(options: {
593
+ context: Context;
594
+ contextHash?: string;
595
+ }): Promise<void>;
586
596
  }
587
597
 
588
598
  export { type EventHandler as E, type FiltersCountResponse as F, type ListNotificationsResponse as L, Notification as N, Preference as P, type SocketEventNames as S, type Events as a, Novu as b, Schedule as c };
@@ -1,6 +1,6 @@
1
- import { r as Theme } from '../types-Ba0J3oyA.mjs';
2
- import '../types-DKMAoSfo.mjs';
3
- import '../novu-C2DJGZ4P.mjs';
1
+ import { r as Theme } from '../types-C5eX1GmB.mjs';
2
+ import '../types-BM_9Xx5Z.mjs';
3
+ import '../novu-DY-mm8Og.mjs';
4
4
 
5
5
  declare const dark: Theme;
6
6
 
@@ -61,6 +61,7 @@ type Session = {
61
61
  isDevelopmentMode: boolean;
62
62
  maxSnoozeDurationHours: number;
63
63
  applicationIdentifier?: string;
64
+ contextKeys?: string[];
64
65
  };
65
66
  type Subscriber = {
66
67
  id?: string;
@@ -158,6 +159,11 @@ type DefaultSchedule = {
158
159
  isEnabled?: boolean;
159
160
  weeklySchedule?: WeeklySchedule;
160
161
  };
162
+ type ContextValue = string | {
163
+ id: string;
164
+ data?: Record<string, unknown>;
165
+ };
166
+ type Context = Partial<Record<string, ContextValue>>;
161
167
  type PreferencesResponse = {
162
168
  level: PreferenceLevel;
163
169
  enabled: boolean;
@@ -192,10 +198,12 @@ type StandardNovuOptions = {
192
198
  __userAgent?: string;
193
199
  applicationIdentifier: string;
194
200
  subscriberHash?: string;
201
+ contextHash?: string;
195
202
  apiUrl?: string;
196
203
  socketUrl?: string;
197
204
  useCache?: boolean;
198
205
  defaultSchedule?: DefaultSchedule;
206
+ context?: Context;
199
207
  } & ({
200
208
  /** @deprecated Use subscriber prop instead */
201
209
  subscriberId: string;
@@ -209,4 +217,4 @@ type Prettify<T> = {
209
217
  [K in keyof T]: T[K];
210
218
  } & {};
211
219
 
212
- export { ActionTypeEnum as A, type ChannelPreference as C, type DaySchedule as D, type InboxNotification as I, type NotificationFilter as N, PreferenceLevel as P, type Result as R, SeverityLevelEnum as S, type TimeRange as T, type UnreadCount as U, WebSocketEvent as W, ChannelType as a, type DefaultSchedule as b, NotificationStatus as c, NovuError as d, type NovuOptions as e, type PreferencesResponse as f, type StandardNovuOptions as g, type Subscriber as h, type WeeklySchedule as i, WorkflowCriticalityEnum as j, type Session as k, type Workflow as l, type Prettify as m };
220
+ export { ActionTypeEnum as A, type ChannelPreference as C, type DaySchedule as D, type InboxNotification as I, type NotificationFilter as N, PreferenceLevel as P, type Result as R, SeverityLevelEnum as S, type TimeRange as T, type UnreadCount as U, WebSocketEvent as W, ChannelType as a, type Context as b, type DefaultSchedule as c, NotificationStatus as d, NovuError as e, type NovuOptions as f, type PreferencesResponse as g, type StandardNovuOptions as h, type Subscriber as i, type WeeklySchedule as j, WorkflowCriticalityEnum as k, type Session as l, type Workflow as m, type Prettify as n, type ContextValue as o };
@@ -1,5 +1,5 @@
1
- import { U as UnreadCount, N as NotificationFilter, j as WorkflowCriticalityEnum, e as NovuOptions } from './types-DKMAoSfo.mjs';
2
- import { N as Notification, P as Preference, c as Schedule, b as Novu } from './novu-C2DJGZ4P.mjs';
1
+ import { U as UnreadCount, N as NotificationFilter, k as WorkflowCriticalityEnum, f as NovuOptions } from './types-BM_9Xx5Z.mjs';
2
+ import { N as Notification, P as Preference, c as Schedule, b as Novu } from './novu-DY-mm8Og.mjs';
3
3
 
4
4
  declare const appearanceKeys: readonly ["button", "input", "icon", "badge", "popoverContent", "popoverTrigger", "popoverClose", "dropdownContent", "dropdownTrigger", "dropdownItem", "dropdownItemLabel", "dropdownItemLabelContainer", "dropdownItemLeft__icon", "dropdownItemRight__icon", "dropdownItem__icon", "collapsible", "tooltipContent", "tooltipTrigger", "datePicker", "datePickerGrid", "datePickerGridRow", "datePickerGridCell", "datePickerGridCellTrigger", "datePickerTrigger", "datePickerGridHeader", "datePickerControl", "datePickerControlPrevTrigger", "datePickerControlNextTrigger", "datePickerControlPrevTrigger__icon", "datePickerControlNextTrigger__icon", "datePickerCalendar", "datePickerHeaderMonth", "datePickerCalendarDay__button", "timePicker", "timePicker__hourSelect", "timePicker__minuteSelect", "timePicker__periodSelect", "timePicker__separator", "timePickerHour__input", "timePickerMinute__input", "snoozeDatePicker", "snoozeDatePicker__actions", "snoozeDatePickerCancel__button", "snoozeDatePickerApply__button", "snoozeDatePicker__timePickerContainer", "snoozeDatePicker__timePickerLabel", "back__button", "skeletonText", "skeletonAvatar", "skeletonSwitch", "skeletonSwitchThumb", "tabsRoot", "tabsList", "tabsContent", "tabsTrigger", "dots", "root", "bellIcon", "lockIcon", "bellContainer", "severityHigh__bellContainer", "severityMedium__bellContainer", "severityLow__bellContainer", "bellSeverityGlow", "severityGlowHigh__bellSeverityGlow", "severityGlowMedium__bellSeverityGlow", "severityGlowLow__bellSeverityGlow", "bellDot", "preferences__button", "preferencesContainer", "inboxHeader", "loading", "inboxContent", "inbox__popoverTrigger", "inbox__popoverContent", "notificationListContainer", "notificationList", "notificationListEmptyNoticeContainer", "notificationListEmptyNoticeOverlay", "notificationListEmptyNoticeIcon", "notificationListEmptyNotice", "notificationList__skeleton", "notificationList__skeletonContent", "notificationList__skeletonItem", "notificationList__skeletonAvatar", "notificationList__skeletonText", "notificationListNewNotificationsNotice__button", "notification", "severityHigh__notification", "severityMedium__notification", "severityLow__notification", "notificationBar", "severityHigh__notificationBar", "severityMedium__notificationBar", "severityLow__notificationBar", "notificationContent", "notificationTextContainer", "notificationDot", "notificationSubject", "notificationSubject__strong", "notificationBody", "notificationBody__strong", "notificationBodyContainer", "notificationImage", "notificationImageLoadingFallback", "notificationDate", "notificationDateActionsContainer", "notificationDefaultActions", "notificationCustomActions", "notificationPrimaryAction__button", "notificationSecondaryAction__button", "notificationRead__button", "notificationUnread__button", "notificationArchive__button", "notificationUnarchive__button", "notificationSnooze__button", "notificationUnsnooze__button", "notificationRead__icon", "notificationUnread__icon", "notificationArchive__icon", "notificationUnarchive__icon", "notificationSnooze__icon", "notificationUnsnooze__icon", "notificationsTabs__tabsRoot", "notificationsTabs__tabsList", "notificationsTabs__tabsContent", "notificationsTabs__tabsTrigger", "notificationsTabsTriggerLabel", "notificationsTabsTriggerCount", "inboxStatus__title", "inboxStatus__dropdownTrigger", "inboxStatus__dropdownContent", "inboxStatus__dropdownItem", "inboxStatus__dropdownItemLabel", "inboxStatus__dropdownItemLabelContainer", "inboxStatus__dropdownItemLeft__icon", "inboxStatus__dropdownItemRight__icon", "inboxStatus__dropdownItem__icon", "inboxStatus__dropdownItemCheck__icon", "moreActionsContainer", "moreActions__dropdownTrigger", "moreActions__dropdownContent", "moreActions__dropdownItem", "moreActions__dropdownItemLabel", "moreActions__dropdownItemLeft__icon", "moreActions__dots", "moreTabs__button", "moreTabs__icon", "moreTabs__dropdownTrigger", "moreTabs__dropdownContent", "moreTabs__dropdownItem", "moreTabs__dropdownItemLabel", "moreTabs__dropdownItemRight__icon", "workflowContainer", "workflowLabel", "workflowLabelHeader", "workflowLabelHeaderContainer", "workflowLabelIcon", "workflowLabelContainer", "workflowContainerDisabledNotice", "workflowLabelDisabled__icon", "workflowContainerRight__icon", "workflowArrow__icon", "workflowDescription", "preferencesGroupContainer", "preferencesGroupHeader", "preferencesGroupLabelContainer", "preferencesGroupLabelIcon", "preferencesGroupLabel", "preferencesGroupActionsContainer", "preferencesGroupActionsContainerRight__icon", "preferencesGroupBody", "preferencesGroupChannels", "preferencesGroupInfo", "preferencesGroupInfoIcon", "preferencesGroupWorkflows", "channelContainer", "channelIconContainer", "channel__icon", "channelsContainerCollapsible", "channelsContainer", "channelLabel", "channelLabelContainer", "channelName", "channelSwitchContainer", "channelSwitch", "channelSwitchThumb", "preferencesHeader", "preferencesHeader__back__button", "preferencesHeader__back__button__icon", "preferencesHeader__title", "preferencesHeader__icon", "preferencesListEmptyNoticeContainer", "preferencesListEmptyNotice", "preferencesList__skeleton", "preferencesList__skeletonContent", "preferencesList__skeletonItem", "preferencesList__skeletonIcon", "preferencesList__skeletonSwitch", "preferencesList__skeletonSwitchThumb", "preferencesList__skeletonText", "scheduleContainer", "scheduleHeader", "scheduleLabelContainer", "scheduleLabelScheduleIcon", "scheduleLabelInfoIcon", "scheduleLabel", "scheduleActionsContainer", "scheduleActionsContainerRight", "scheduleBody", "scheduleDescription", "scheduleTable", "scheduleTableHeader", "scheduleHeaderColumn", "scheduleTableBody", "scheduleBodyRow", "scheduleBodyColumn", "scheduleInfoContainer", "scheduleInfoIcon", "scheduleInfo", "dayScheduleCopyTitle", "dayScheduleCopyIcon", "dayScheduleCopySelectAll", "dayScheduleCopyDay", "dayScheduleCopyFooterContainer", "dayScheduleCopy__dropdownTrigger", "dayScheduleCopy__dropdownContent", "timeSelect__dropdownTrigger", "timeSelect__time", "timeSelect__dropdownContent", "timeSelect__dropdownItem", "timeSelect__dropdownItemLabel", "timeSelect__dropdownItemLabelContainer", "timeSelect__dropdownItemCheck__icon", "notificationSnooze__dropdownContent", "notificationSnooze__dropdownItem", "notificationSnooze__dropdownItem__icon", "notificationSnoozeCustomTime_popoverContent", "notificationDeliveredAt__badge", "notificationDeliveredAt__icon", "notificationSnoozedUntil__icon", "strong"];
5
5
 
@@ -1,7 +1,7 @@
1
- export { N as Notification } from '../novu-C2DJGZ4P.mjs';
2
- import { e as NovuOptions } from '../types-DKMAoSfo.mjs';
3
- import { B as BellRenderer, N as NotificationClickHandler, a as NotificationActionClickHandler, b as NotificationRenderer, A as AvatarRenderer, S as SubjectRenderer, c as BodyRenderer, D as DefaultActionsRenderer, C as CustomActionsRenderer, d as NovuProviderProps, e as BaseNovuProviderProps, f as Appearance, L as Localization, T as Tab, P as PreferencesFilter, g as PreferenceGroups, h as PreferencesSort, R as RouterPush } from '../types-Ba0J3oyA.mjs';
4
- export { i as AppearanceCallback, j as AppearanceCallbackFunction, k as AppearanceCallbackKeys, l as AppearanceKey, E as ElementStyles, m as Elements, I as IconKey, n as IconOverrides, o as IconRenderer, p as LocalizationKey, q as NotificationStatus, r as Theme, V as Variables } from '../types-Ba0J3oyA.mjs';
1
+ export { N as Notification } from '../novu-DY-mm8Og.mjs';
2
+ import { f as NovuOptions } from '../types-BM_9Xx5Z.mjs';
3
+ import { B as BellRenderer, N as NotificationClickHandler, a as NotificationActionClickHandler, b as NotificationRenderer, A as AvatarRenderer, S as SubjectRenderer, c as BodyRenderer, D as DefaultActionsRenderer, C as CustomActionsRenderer, d as NovuProviderProps, e as BaseNovuProviderProps, f as Appearance, L as Localization, T as Tab, P as PreferencesFilter, g as PreferenceGroups, h as PreferencesSort, R as RouterPush } from '../types-C5eX1GmB.mjs';
4
+ export { i as AppearanceCallback, j as AppearanceCallbackFunction, k as AppearanceCallbackKeys, l as AppearanceKey, E as ElementStyles, m as Elements, I as IconKey, n as IconOverrides, o as IconRenderer, p as LocalizationKey, q as NotificationStatus, r as Theme, V as Variables } from '../types-C5eX1GmB.mjs';
5
5
  import { Placement, OffsetOptions } from '@floating-ui/dom';
6
6
  import * as solid_js from 'solid-js';
7
7
  import { ComponentProps } from 'solid-js';