@novu/js 3.0.3 → 3.2.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.
- package/README.md +1 -1
- package/dist/cjs/{chunk-47NZ3DJQ.js → chunk-4KMXR5HJ.js} +36 -59
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +8 -32
- package/dist/{esm/novu-BXVPjTIj.d.mts → cjs/novu-jtIKy6p0.d.ts} +36 -62
- package/dist/cjs/themes/index.d.ts +2 -2
- package/dist/cjs/{types-BOvaROWQ.d.ts → types-qgZnJ8j8.d.ts} +2 -2
- package/dist/cjs/ui/index.d.ts +5 -5
- package/dist/cjs/ui/index.js +84 -84
- package/dist/esm/{chunk-GCPLP2EW.mjs → chunk-3SPOLIN3.mjs} +37 -54
- package/dist/esm/index.d.mts +2 -2
- package/dist/esm/index.mjs +1 -1
- package/dist/{cjs/novu-BXVPjTIj.d.ts → esm/novu-jtIKy6p0.d.mts} +36 -62
- package/dist/esm/themes/index.d.mts +2 -2
- package/dist/esm/{types-Du_GH8TU.d.mts → types-Bi1DqOQ-.d.mts} +2 -2
- package/dist/esm/ui/index.d.mts +5 -5
- package/dist/esm/ui/index.mjs +81 -81
- package/dist/novu.min.js +10 -10
- package/dist/novu.min.js.gz +0 -0
- package/package.json +3 -2
package/dist/cjs/ui/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk4KMXR5HJ_js = require('../chunk-4KMXR5HJ.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,75 +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
|
-
|
|
21
|
-
locale: "en-US",
|
|
22
|
-
"inbox.filters.dropdownOptions.unread": "Unread only",
|
|
23
|
-
"inbox.filters.dropdownOptions.default": "Unread & read",
|
|
24
|
-
"inbox.filters.dropdownOptions.archived": "Archived",
|
|
25
|
-
"inbox.filters.labels.unread": "Unread",
|
|
26
|
-
"inbox.filters.labels.default": "Inbox",
|
|
27
|
-
"inbox.filters.labels.archived": "Archived",
|
|
28
|
-
"notifications.emptyNotice": "Quiet for now. Check back later.",
|
|
29
|
-
"notifications.actions.readAll": "Mark all as read",
|
|
30
|
-
"notifications.actions.archiveAll": "Archive all",
|
|
31
|
-
"notifications.actions.archiveRead": "Archive read",
|
|
32
|
-
"notifications.newNotifications": ({ notificationCount }) => `${notificationCount > 99 ? "99+" : notificationCount} new ${notificationCount === 1 ? "notification" : "notifications"}`,
|
|
33
|
-
"notification.actions.read.tooltip": "Mark as read",
|
|
34
|
-
"notification.actions.unread.tooltip": "Mark as unread",
|
|
35
|
-
"notification.actions.archive.tooltip": "Archive",
|
|
36
|
-
"notification.actions.unarchive.tooltip": "Unarchive",
|
|
37
|
-
"preferences.title": "Preferences",
|
|
38
|
-
"preferences.emptyNotice": "No notification specific preferences yet.",
|
|
39
|
-
"preferences.global": "Global Preferences",
|
|
40
|
-
"preferences.workflow.disabled.notice": "Contact admin to enable subscription management for this critical notification.",
|
|
41
|
-
"preferences.workflow.disabled.tooltip": "Contact admin to edit"
|
|
42
|
-
};
|
|
43
|
-
var [dynamicLocalization, setDynamicLocalization] = solidJs.createSignal({});
|
|
44
|
-
|
|
45
|
-
// src/ui/context/LocalizationContext.tsx
|
|
46
|
-
var LocalizationContext = solidJs.createContext(void 0);
|
|
47
|
-
var LocalizationProvider = (props) => {
|
|
48
|
-
const localization = solidJs.createMemo(() => {
|
|
49
|
-
const _a = props.localization || {}, {
|
|
50
|
-
dynamic
|
|
51
|
-
} = _a, localizationObject = chunk7B52C2XE_js.__objRest(_a, [
|
|
52
|
-
"dynamic"
|
|
53
|
-
]);
|
|
54
|
-
return chunk7B52C2XE_js.__spreadValues(chunk7B52C2XE_js.__spreadValues(chunk7B52C2XE_js.__spreadValues(chunk7B52C2XE_js.__spreadValues({}, defaultLocalization), dynamicLocalization()), dynamic || {}), localizationObject);
|
|
55
|
-
});
|
|
56
|
-
const t = (key, ...args) => {
|
|
57
|
-
const value = localization()[key];
|
|
58
|
-
if (typeof value === "function") {
|
|
59
|
-
return value(args[0]);
|
|
60
|
-
}
|
|
61
|
-
return value;
|
|
62
|
-
};
|
|
63
|
-
const locale = solidJs.createMemo(() => localization().locale);
|
|
64
|
-
return web.createComponent(LocalizationContext.Provider, {
|
|
65
|
-
value: {
|
|
66
|
-
t,
|
|
67
|
-
locale
|
|
68
|
-
},
|
|
69
|
-
get children() {
|
|
70
|
-
return props.children;
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
};
|
|
74
|
-
function useLocalization() {
|
|
75
|
-
const context = solidJs.useContext(LocalizationContext);
|
|
76
|
-
if (!context) {
|
|
77
|
-
throw new Error("useLocalization must be used within an LocalizationProvider");
|
|
78
|
-
}
|
|
79
|
-
return context;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
// src/ui/types.ts
|
|
83
|
-
var NotificationStatus = /* @__PURE__ */ ((NotificationStatus2) => {
|
|
84
|
-
NotificationStatus2["UNREAD_READ"] = "unreadRead";
|
|
85
|
-
NotificationStatus2["UNREAD"] = "unread";
|
|
86
|
-
NotificationStatus2["ARCHIVED"] = "archived";
|
|
87
|
-
return NotificationStatus2;
|
|
88
|
-
})(NotificationStatus || {});
|
|
20
|
+
// _tt392r98u:/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}}.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-invisible{visibility:hidden}.nt-absolute{position:absolute}.nt-relative{position:relative}.nt-inset-0{inset:0}.nt-inset-2{inset:.5rem}.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-mx-auto{margin-left:auto;margin-right:auto}.nt-mb-4{margin-bottom:1rem}.nt-mb-\\[0\\.625rem\\]{margin-bottom:.625rem}.nt-ml-auto{margin-left:auto}.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-hidden{display:none}.nt-aspect-square{aspect-ratio:1/1}.nt-size-1{height:.25rem;width:.25rem}.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-full{height:100%;width:100%}.nt-h-2{height:.5rem}.nt-h-3{height:.75rem}.nt-h-4{height:1rem}.nt-h-8{height:2rem}.nt-h-\\[600px\\]{height:600px}.nt-h-fit{height:-moz-fit-content;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-7{width:1.75rem}.nt-w-8{width:2rem}.nt-w-\\[400px\\]{width:400px}.nt-w-fit{width:-moz-fit-content;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-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-center{justify-content:center}.nt-justify-between{justify-content:space-between}.nt-gap-0{gap:0}.nt-gap-0\\.5{gap:.125rem}.nt-gap-1{gap:.25rem}.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-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,.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-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-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-pt-2{padding-top:.5rem}.nt-pt-2\\.5{padding-top:.625rem}.nt-text-center{text-align:center}.nt-text-start{text-align:start}.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-xs{font-size:var(--nv-font-size-xs);line-height:var(--nv-line-height-xs)}.nt-font-medium{font-weight:500}.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-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)}.nt-shadow-\\[0_0_0_0\\.5px_var\\(--nv-color-secondary-600\\)\\],.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-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)}.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:after{content:var(--tw-content);top:0}.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-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-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}`;
|
|
89
22
|
|
|
90
23
|
// src/ui/config/appearanceKeys.ts
|
|
91
24
|
var appearanceKeys = [
|
|
@@ -241,6 +174,30 @@ var appearanceKeys = [
|
|
|
241
174
|
// Text formatting
|
|
242
175
|
"strong"
|
|
243
176
|
];
|
|
177
|
+
var defaultLocalization = {
|
|
178
|
+
locale: "en-US",
|
|
179
|
+
"inbox.filters.dropdownOptions.unread": "Unread only",
|
|
180
|
+
"inbox.filters.dropdownOptions.default": "Unread & read",
|
|
181
|
+
"inbox.filters.dropdownOptions.archived": "Archived",
|
|
182
|
+
"inbox.filters.labels.unread": "Unread",
|
|
183
|
+
"inbox.filters.labels.default": "Inbox",
|
|
184
|
+
"inbox.filters.labels.archived": "Archived",
|
|
185
|
+
"notifications.emptyNotice": "Quiet for now. Check back later.",
|
|
186
|
+
"notifications.actions.readAll": "Mark all as read",
|
|
187
|
+
"notifications.actions.archiveAll": "Archive all",
|
|
188
|
+
"notifications.actions.archiveRead": "Archive read",
|
|
189
|
+
"notifications.newNotifications": ({ notificationCount }) => `${notificationCount > 99 ? "99+" : notificationCount} new ${notificationCount === 1 ? "notification" : "notifications"}`,
|
|
190
|
+
"notification.actions.read.tooltip": "Mark as read",
|
|
191
|
+
"notification.actions.unread.tooltip": "Mark as unread",
|
|
192
|
+
"notification.actions.archive.tooltip": "Archive",
|
|
193
|
+
"notification.actions.unarchive.tooltip": "Unarchive",
|
|
194
|
+
"preferences.title": "Preferences",
|
|
195
|
+
"preferences.emptyNotice": "No notification specific preferences yet.",
|
|
196
|
+
"preferences.global": "Global Preferences",
|
|
197
|
+
"preferences.workflow.disabled.notice": "Contact admin to enable subscription management for this critical notification.",
|
|
198
|
+
"preferences.workflow.disabled.tooltip": "Contact admin to edit"
|
|
199
|
+
};
|
|
200
|
+
var [dynamicLocalization, setDynamicLocalization] = solidJs.createSignal({});
|
|
244
201
|
|
|
245
202
|
// src/ui/config/defaultVariables.ts
|
|
246
203
|
var defaultVariables = {
|
|
@@ -780,9 +737,9 @@ var useBrowserTabsChannel = ({
|
|
|
780
737
|
onMessage
|
|
781
738
|
}) => {
|
|
782
739
|
const [tabsChannel] = solidJs.createSignal(new BroadcastChannel(channelName));
|
|
783
|
-
const postMessage = (
|
|
740
|
+
const postMessage = (args) => {
|
|
784
741
|
const channel = tabsChannel();
|
|
785
|
-
channel.postMessage(
|
|
742
|
+
channel.postMessage(args);
|
|
786
743
|
};
|
|
787
744
|
solidJs.onMount(() => {
|
|
788
745
|
const listener = (event) => {
|
|
@@ -803,7 +760,7 @@ var useWebSocketEvent = ({
|
|
|
803
760
|
eventHandler: onMessage
|
|
804
761
|
}) => {
|
|
805
762
|
const novu = useNovu();
|
|
806
|
-
const channelName = `nv_ws_connection:a=${novu.applicationIdentifier}:s=${novu.subscriberId}`;
|
|
763
|
+
const channelName = `nv_ws_connection:a=${novu.applicationIdentifier}:s=${novu.subscriberId}:e=${webSocketEvent}`;
|
|
807
764
|
const { postMessage } = useBrowserTabsChannel({ channelName, onMessage });
|
|
808
765
|
const updateReadCount = (data) => {
|
|
809
766
|
onMessage(data);
|
|
@@ -822,6 +779,51 @@ var useWebSocketEvent = ({
|
|
|
822
779
|
});
|
|
823
780
|
});
|
|
824
781
|
};
|
|
782
|
+
var LocalizationContext = solidJs.createContext(void 0);
|
|
783
|
+
var LocalizationProvider = (props) => {
|
|
784
|
+
const localization = solidJs.createMemo(() => {
|
|
785
|
+
const _a = props.localization || {}, {
|
|
786
|
+
dynamic
|
|
787
|
+
} = _a, localizationObject = chunk7B52C2XE_js.__objRest(_a, [
|
|
788
|
+
"dynamic"
|
|
789
|
+
]);
|
|
790
|
+
return chunk7B52C2XE_js.__spreadValues(chunk7B52C2XE_js.__spreadValues(chunk7B52C2XE_js.__spreadValues(chunk7B52C2XE_js.__spreadValues({}, defaultLocalization), dynamicLocalization()), dynamic || {}), localizationObject);
|
|
791
|
+
});
|
|
792
|
+
const t = (key, ...args) => {
|
|
793
|
+
const value = localization()[key];
|
|
794
|
+
if (typeof value === "function") {
|
|
795
|
+
return value(args[0]);
|
|
796
|
+
}
|
|
797
|
+
return value;
|
|
798
|
+
};
|
|
799
|
+
const locale = solidJs.createMemo(() => localization().locale);
|
|
800
|
+
return web.createComponent(LocalizationContext.Provider, {
|
|
801
|
+
value: {
|
|
802
|
+
t,
|
|
803
|
+
locale
|
|
804
|
+
},
|
|
805
|
+
get children() {
|
|
806
|
+
return props.children;
|
|
807
|
+
}
|
|
808
|
+
});
|
|
809
|
+
};
|
|
810
|
+
function useLocalization() {
|
|
811
|
+
const context = solidJs.useContext(LocalizationContext);
|
|
812
|
+
if (!context) {
|
|
813
|
+
throw new Error("useLocalization must be used within an LocalizationProvider");
|
|
814
|
+
}
|
|
815
|
+
return context;
|
|
816
|
+
}
|
|
817
|
+
|
|
818
|
+
// src/ui/types.ts
|
|
819
|
+
var NotificationStatus = /* @__PURE__ */ ((NotificationStatus2) => {
|
|
820
|
+
NotificationStatus2["UNREAD_READ"] = "unreadRead";
|
|
821
|
+
NotificationStatus2["UNREAD"] = "unread";
|
|
822
|
+
NotificationStatus2["ARCHIVED"] = "archived";
|
|
823
|
+
return NotificationStatus2;
|
|
824
|
+
})(NotificationStatus || {});
|
|
825
|
+
|
|
826
|
+
// src/ui/context/InboxContext.tsx
|
|
825
827
|
var InboxContext = solidJs.createContext(void 0);
|
|
826
828
|
var STATUS_TO_FILTER = {
|
|
827
829
|
["unreadRead" /* UNREAD_READ */]: {
|
|
@@ -936,7 +938,7 @@ var useInboxContext = () => {
|
|
|
936
938
|
};
|
|
937
939
|
var NovuContext = solidJs.createContext(void 0);
|
|
938
940
|
function NovuProvider(props) {
|
|
939
|
-
const novu = solidJs.createMemo(() => props.novu || new
|
|
941
|
+
const novu = solidJs.createMemo(() => props.novu || new chunk4KMXR5HJ_js.Novu(props.options));
|
|
940
942
|
return web.createComponent(NovuContext.Provider, {
|
|
941
943
|
get value() {
|
|
942
944
|
return novu();
|
|
@@ -2311,7 +2313,7 @@ var useNotificationsInfiniteScroll = (props) => {
|
|
|
2311
2313
|
);
|
|
2312
2314
|
solidJs.onMount(() => {
|
|
2313
2315
|
const listener = ({ data: data2 }) => {
|
|
2314
|
-
if (!data2 || !
|
|
2316
|
+
if (!data2 || !chunk4KMXR5HJ_js.isSameFilter(filter, data2.filter)) {
|
|
2315
2317
|
return;
|
|
2316
2318
|
}
|
|
2317
2319
|
mutate({ data: data2.notifications, hasMore: data2.hasMore });
|
|
@@ -2321,7 +2323,7 @@ var useNotificationsInfiniteScroll = (props) => {
|
|
|
2321
2323
|
});
|
|
2322
2324
|
solidJs.createEffect(() => chunk7B52C2XE_js.__async(void 0, null, function* () {
|
|
2323
2325
|
const newFilter = chunk7B52C2XE_js.__spreadValues({}, props.options());
|
|
2324
|
-
if (
|
|
2326
|
+
if (chunk4KMXR5HJ_js.isSameFilter(filter, newFilter)) {
|
|
2325
2327
|
return;
|
|
2326
2328
|
}
|
|
2327
2329
|
novu.notifications.clearCache();
|
|
@@ -4486,11 +4488,10 @@ var Renderer = (props) => {
|
|
|
4486
4488
|
if (el) {
|
|
4487
4489
|
return;
|
|
4488
4490
|
}
|
|
4489
|
-
const
|
|
4490
|
-
|
|
4491
|
-
|
|
4492
|
-
|
|
4493
|
-
document.head.insertBefore(link, document.head.firstChild);
|
|
4491
|
+
const styleEl = document.createElement("style");
|
|
4492
|
+
styleEl.id = id;
|
|
4493
|
+
document.head.insertBefore(styleEl, document.head.firstChild);
|
|
4494
|
+
styleEl.innerHTML = ui_default;
|
|
4494
4495
|
solidJs.onCleanup(() => {
|
|
4495
4496
|
const element = document.getElementById(id);
|
|
4496
4497
|
element == null ? void 0 : element.remove();
|
|
@@ -4577,8 +4578,8 @@ var Renderer = (props) => {
|
|
|
4577
4578
|
}
|
|
4578
4579
|
});
|
|
4579
4580
|
};
|
|
4580
|
-
|
|
4581
|
-
|
|
4581
|
+
|
|
4582
|
+
// src/ui/novuUI.tsx
|
|
4582
4583
|
var _dispose, _rootElement, _mountedElements, _setMountedElements, _appearance, _setAppearance, _localization, _setLocalization, _options, _setOptions, _tabs, _setTabs, _routerPush, _setRouterPush, _preferencesFilter, _setPreferencesFilter, _predefinedNovu, _NovuUI_instances, mountComponentRenderer_fn, updateComponentProps_fn;
|
|
4583
4584
|
var NovuUI = class {
|
|
4584
4585
|
constructor(props) {
|
|
@@ -4703,7 +4704,6 @@ mountComponentRenderer_fn = function() {
|
|
|
4703
4704
|
const dispose = web.render(() => {
|
|
4704
4705
|
const _self$ = this;
|
|
4705
4706
|
return web.createComponent(Renderer, {
|
|
4706
|
-
cssHref,
|
|
4707
4707
|
novuUI: _self$,
|
|
4708
4708
|
get nodes() {
|
|
4709
4709
|
var _a;
|
|
@@ -10,20 +10,6 @@ var NotificationStatus = /* @__PURE__ */ ((NotificationStatus2) => {
|
|
|
10
10
|
NotificationStatus2["UNSEEN"] = "unseen";
|
|
11
11
|
return NotificationStatus2;
|
|
12
12
|
})(NotificationStatus || {});
|
|
13
|
-
var NotificationButton = /* @__PURE__ */ ((NotificationButton2) => {
|
|
14
|
-
NotificationButton2["PRIMARY"] = "primary";
|
|
15
|
-
NotificationButton2["SECONDARY"] = "secondary";
|
|
16
|
-
return NotificationButton2;
|
|
17
|
-
})(NotificationButton || {});
|
|
18
|
-
var NotificationActionStatus = /* @__PURE__ */ ((NotificationActionStatus2) => {
|
|
19
|
-
NotificationActionStatus2["PENDING"] = "pending";
|
|
20
|
-
NotificationActionStatus2["DONE"] = "done";
|
|
21
|
-
return NotificationActionStatus2;
|
|
22
|
-
})(NotificationActionStatus || {});
|
|
23
|
-
var CtaType = /* @__PURE__ */ ((CtaType2) => {
|
|
24
|
-
CtaType2["REDIRECT"] = "redirect";
|
|
25
|
-
return CtaType2;
|
|
26
|
-
})(CtaType || {});
|
|
27
13
|
var PreferenceLevel = /* @__PURE__ */ ((PreferenceLevel2) => {
|
|
28
14
|
PreferenceLevel2["GLOBAL"] = "global";
|
|
29
15
|
PreferenceLevel2["TEMPLATE"] = "template";
|
|
@@ -37,29 +23,12 @@ var ChannelType = /* @__PURE__ */ ((ChannelType2) => {
|
|
|
37
23
|
ChannelType2["PUSH"] = "push";
|
|
38
24
|
return ChannelType2;
|
|
39
25
|
})(ChannelType || {});
|
|
40
|
-
var PreferenceOverrideSource = /* @__PURE__ */ ((PreferenceOverrideSource2) => {
|
|
41
|
-
PreferenceOverrideSource2["SUBSCRIBER"] = "subscriber";
|
|
42
|
-
PreferenceOverrideSource2["TEMPLATE"] = "template";
|
|
43
|
-
PreferenceOverrideSource2["WORKFLOW_OVERRIDE"] = "workflowOverride";
|
|
44
|
-
return PreferenceOverrideSource2;
|
|
45
|
-
})(PreferenceOverrideSource || {});
|
|
46
26
|
var WebSocketEvent = /* @__PURE__ */ ((WebSocketEvent2) => {
|
|
47
27
|
WebSocketEvent2["RECEIVED"] = "notification_received";
|
|
48
28
|
WebSocketEvent2["UNREAD"] = "unread_count_changed";
|
|
49
29
|
WebSocketEvent2["UNSEEN"] = "unseen_count_changed";
|
|
50
30
|
return WebSocketEvent2;
|
|
51
31
|
})(WebSocketEvent || {});
|
|
52
|
-
var ActionTypeEnum = /* @__PURE__ */ ((ActionTypeEnum2) => {
|
|
53
|
-
ActionTypeEnum2["PRIMARY"] = "primary";
|
|
54
|
-
ActionTypeEnum2["SECONDARY"] = "secondary";
|
|
55
|
-
return ActionTypeEnum2;
|
|
56
|
-
})(ActionTypeEnum || {});
|
|
57
|
-
var PreferenceOverrideSourceEnum = /* @__PURE__ */ ((PreferenceOverrideSourceEnum2) => {
|
|
58
|
-
PreferenceOverrideSourceEnum2["SUBSCRIBER"] = "subscriber";
|
|
59
|
-
PreferenceOverrideSourceEnum2["TEMPLATE"] = "template";
|
|
60
|
-
PreferenceOverrideSourceEnum2["WORKFLOW_OVERRIDE"] = "workflowOverride";
|
|
61
|
-
return PreferenceOverrideSourceEnum2;
|
|
62
|
-
})(PreferenceOverrideSourceEnum || {});
|
|
63
32
|
|
|
64
33
|
// src/utils/arrays.ts
|
|
65
34
|
var arrayValuesEqual = (arr1, arr2) => {
|
|
@@ -84,7 +53,7 @@ var isSameFilter = (filter1, filter2) => {
|
|
|
84
53
|
// src/api/http-client.ts
|
|
85
54
|
var DEFAULT_API_VERSION = "v1";
|
|
86
55
|
var DEFAULT_BACKEND_URL = "https://api.novu.co";
|
|
87
|
-
var DEFAULT_USER_AGENT = `${"@novu/js"}@${"3.0
|
|
56
|
+
var DEFAULT_USER_AGENT = `${"@novu/js"}@${"3.2.0"}`;
|
|
88
57
|
var HttpClient = class {
|
|
89
58
|
constructor(options = {}) {
|
|
90
59
|
const {
|
|
@@ -199,13 +168,13 @@ var InboxService = class {
|
|
|
199
168
|
initializeSession(_0) {
|
|
200
169
|
return __async(this, arguments, function* ({
|
|
201
170
|
applicationIdentifier,
|
|
202
|
-
|
|
203
|
-
|
|
171
|
+
subscriberHash,
|
|
172
|
+
subscriber
|
|
204
173
|
}) {
|
|
205
174
|
const response = yield __privateGet(this, _httpClient).post(`${INBOX_ROUTE}/session`, {
|
|
206
175
|
applicationIdentifier,
|
|
207
|
-
|
|
208
|
-
|
|
176
|
+
subscriberHash,
|
|
177
|
+
subscriber
|
|
209
178
|
});
|
|
210
179
|
__privateGet(this, _httpClient).setAuthorizationToken(response.token);
|
|
211
180
|
this.isSessionInitialized = true;
|
|
@@ -407,7 +376,7 @@ var Notification = class {
|
|
|
407
376
|
this.tags = notification.tags;
|
|
408
377
|
this.redirect = notification.redirect;
|
|
409
378
|
this.data = notification.data;
|
|
410
|
-
this.
|
|
379
|
+
this.workflow = notification.workflow;
|
|
411
380
|
}
|
|
412
381
|
read() {
|
|
413
382
|
return read({
|
|
@@ -1520,17 +1489,17 @@ var Session = class {
|
|
|
1520
1489
|
return __privateGet(this, _options).applicationIdentifier;
|
|
1521
1490
|
}
|
|
1522
1491
|
get subscriberId() {
|
|
1523
|
-
return __privateGet(this, _options).subscriberId;
|
|
1492
|
+
return __privateGet(this, _options).subscriber.subscriberId;
|
|
1524
1493
|
}
|
|
1525
1494
|
initialize() {
|
|
1526
1495
|
return __async(this, null, function* () {
|
|
1527
1496
|
try {
|
|
1528
|
-
const { applicationIdentifier,
|
|
1497
|
+
const { applicationIdentifier, subscriberHash, subscriber } = __privateGet(this, _options);
|
|
1529
1498
|
__privateGet(this, _emitter5).emit("session.initialize.pending", { args: __privateGet(this, _options) });
|
|
1530
1499
|
const response = yield __privateGet(this, _inboxService2).initializeSession({
|
|
1531
1500
|
applicationIdentifier,
|
|
1532
|
-
|
|
1533
|
-
|
|
1501
|
+
subscriberHash,
|
|
1502
|
+
subscriber
|
|
1534
1503
|
});
|
|
1535
1504
|
__privateGet(this, _emitter5).emit("session.initialize.resolved", { args: __privateGet(this, _options), data: response });
|
|
1536
1505
|
} catch (error) {
|
|
@@ -1561,20 +1530,25 @@ var mapToNotification = ({
|
|
|
1561
1530
|
cta,
|
|
1562
1531
|
tags,
|
|
1563
1532
|
data,
|
|
1564
|
-
|
|
1533
|
+
workflow
|
|
1565
1534
|
}) => {
|
|
1566
|
-
var _a, _b, _c, _d, _e, _f, _g, _h
|
|
1535
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
1567
1536
|
const to = {
|
|
1568
|
-
id:
|
|
1537
|
+
id: subscriber == null ? void 0 : subscriber._id,
|
|
1538
|
+
subscriberId: subscriber == null ? void 0 : subscriber.subscriberId,
|
|
1569
1539
|
firstName: subscriber == null ? void 0 : subscriber.firstName,
|
|
1570
1540
|
lastName: subscriber == null ? void 0 : subscriber.lastName,
|
|
1571
1541
|
avatar: subscriber == null ? void 0 : subscriber.avatar,
|
|
1572
|
-
|
|
1542
|
+
locale: subscriber == null ? void 0 : subscriber.locale,
|
|
1543
|
+
data: subscriber == null ? void 0 : subscriber.data,
|
|
1544
|
+
timezone: subscriber == null ? void 0 : subscriber.timezone,
|
|
1545
|
+
email: subscriber == null ? void 0 : subscriber.email,
|
|
1546
|
+
phone: subscriber == null ? void 0 : subscriber.phone
|
|
1573
1547
|
};
|
|
1574
|
-
const primaryCta = (
|
|
1575
|
-
const secondaryCta = (
|
|
1576
|
-
const actionType = (
|
|
1577
|
-
const actionStatus = (
|
|
1548
|
+
const primaryCta = (_b = (_a = cta.action) == null ? void 0 : _a.buttons) == null ? void 0 : _b.find((button) => button.type === "primary" /* PRIMARY */);
|
|
1549
|
+
const secondaryCta = (_d = (_c = cta.action) == null ? void 0 : _c.buttons) == null ? void 0 : _d.find((button) => button.type === "secondary" /* SECONDARY */);
|
|
1550
|
+
const actionType = (_f = (_e = cta.action) == null ? void 0 : _e.result) == null ? void 0 : _f.type;
|
|
1551
|
+
const actionStatus = (_g = cta.action) == null ? void 0 : _g.status;
|
|
1578
1552
|
return {
|
|
1579
1553
|
id: _id,
|
|
1580
1554
|
subject,
|
|
@@ -1604,12 +1578,12 @@ var mapToNotification = ({
|
|
|
1604
1578
|
},
|
|
1605
1579
|
channelType: channel,
|
|
1606
1580
|
tags,
|
|
1607
|
-
redirect: ((
|
|
1581
|
+
redirect: ((_h = cta.data) == null ? void 0 : _h.url) ? {
|
|
1608
1582
|
url: cta.data.url,
|
|
1609
1583
|
target: cta.data.target
|
|
1610
1584
|
} : void 0,
|
|
1611
1585
|
data,
|
|
1612
|
-
|
|
1586
|
+
workflow
|
|
1613
1587
|
};
|
|
1614
1588
|
};
|
|
1615
1589
|
var _token, _emitter6, _socketIo, _socketUrl, _notificationReceived, _unseenCountChanged, _unreadCountChanged, _Socket_instances, initializeSocket_fn, handleConnectSocket_fn, handleDisconnectSocket_fn;
|
|
@@ -1742,8 +1716,8 @@ var Novu = class {
|
|
|
1742
1716
|
__privateSet(this, _session, new Session(
|
|
1743
1717
|
{
|
|
1744
1718
|
applicationIdentifier: options.applicationIdentifier,
|
|
1745
|
-
|
|
1746
|
-
|
|
1719
|
+
subscriberHash: options.subscriberHash,
|
|
1720
|
+
subscriber: buildSubscriber(options)
|
|
1747
1721
|
},
|
|
1748
1722
|
__privateGet(this, _inboxService3),
|
|
1749
1723
|
__privateGet(this, _emitter7)
|
|
@@ -1787,5 +1761,14 @@ var Novu = class {
|
|
|
1787
1761
|
_emitter7 = new WeakMap();
|
|
1788
1762
|
_session = new WeakMap();
|
|
1789
1763
|
_inboxService3 = new WeakMap();
|
|
1764
|
+
function buildSubscriber(options) {
|
|
1765
|
+
let subscriberObj;
|
|
1766
|
+
if (options.subscriber) {
|
|
1767
|
+
subscriberObj = typeof options.subscriber === "string" ? { subscriberId: options.subscriber } : options.subscriber;
|
|
1768
|
+
} else {
|
|
1769
|
+
subscriberObj = { subscriberId: options.subscriberId };
|
|
1770
|
+
}
|
|
1771
|
+
return subscriberObj;
|
|
1772
|
+
}
|
|
1790
1773
|
|
|
1791
|
-
export {
|
|
1774
|
+
export { ChannelType, NotificationStatus, Novu, PreferenceLevel, WebSocketEvent, areTagsEqual, isSameFilter };
|
package/dist/esm/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { N as NotificationFilter } from './novu-
|
|
2
|
-
export {
|
|
1
|
+
import { N as NotificationFilter } from './novu-jtIKy6p0.mjs';
|
|
2
|
+
export { C as ChannelPreference, c as ChannelType, E as EventHandler, a as Events, F as FiltersCountResponse, I as InboxNotification, L as ListNotificationsResponse, d as Notification, e as NotificationStatus, b as Novu, f as NovuError, g as NovuOptions, P as Preference, h as PreferenceLevel, i as PreferencesResponse, S as SocketEventNames, j as Subscriber, W as WebSocketEvent } from './novu-jtIKy6p0.mjs';
|
|
3
3
|
|
|
4
4
|
declare const areTagsEqual: (tags1?: string[], tags2?: string[]) => boolean;
|
|
5
5
|
declare const isSameFilter: (filter1: NotificationFilter, filter2: NotificationFilter) => boolean;
|
package/dist/esm/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { ChannelType, NotificationStatus, Novu, PreferenceLevel, WebSocketEvent, areTagsEqual, isSameFilter } from './chunk-3SPOLIN3.mjs';
|
|
2
2
|
import './chunk-STZMOEWR.mjs';
|