@novu/js 3.0.0 → 3.0.3

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.
@@ -91,7 +91,7 @@ var isSameFilter = (filter1, filter2) => {
91
91
  // src/api/http-client.ts
92
92
  var DEFAULT_API_VERSION = "v1";
93
93
  var DEFAULT_BACKEND_URL = "https://api.novu.co";
94
- var DEFAULT_USER_AGENT = `${"@novu/js"}@${"3.0.0"}`;
94
+ var DEFAULT_USER_AGENT = `${"@novu/js"}@${"3.0.3"}`;
95
95
  var HttpClient = class {
96
96
  constructor(options = {}) {
97
97
  const {
@@ -414,6 +414,7 @@ var Notification = class {
414
414
  this.tags = notification.tags;
415
415
  this.redirect = notification.redirect;
416
416
  this.data = notification.data;
417
+ this.workflowId = notification.workflowId;
417
418
  }
418
419
  read() {
419
420
  return read({
@@ -1522,6 +1523,12 @@ var Session = class {
1522
1523
  chunk7B52C2XE_js.__privateSet(this, _inboxService2, inboxServiceInstance);
1523
1524
  chunk7B52C2XE_js.__privateSet(this, _options, options);
1524
1525
  }
1526
+ get applicationIdentifier() {
1527
+ return chunk7B52C2XE_js.__privateGet(this, _options).applicationIdentifier;
1528
+ }
1529
+ get subscriberId() {
1530
+ return chunk7B52C2XE_js.__privateGet(this, _options).subscriberId;
1531
+ }
1525
1532
  initialize() {
1526
1533
  return chunk7B52C2XE_js.__async(this, null, function* () {
1527
1534
  try {
@@ -1560,7 +1567,8 @@ var mapToNotification = ({
1560
1567
  avatar,
1561
1568
  cta,
1562
1569
  tags,
1563
- data
1570
+ data,
1571
+ workflowId
1564
1572
  }) => {
1565
1573
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
1566
1574
  const to = {
@@ -1607,7 +1615,8 @@ var mapToNotification = ({
1607
1615
  url: cta.data.url,
1608
1616
  target: cta.data.target
1609
1617
  } : void 0,
1610
- data
1618
+ data,
1619
+ workflowId
1611
1620
  };
1612
1621
  };
1613
1622
  var _token, _emitter6, _socketIo, _socketUrl, _notificationReceived, _unseenCountChanged, _unreadCountChanged, _Socket_instances, initializeSocket_fn, handleConnectSocket_fn, handleDisconnectSocket_fn;
@@ -1775,6 +1784,12 @@ var Novu = class {
1775
1784
  chunk7B52C2XE_js.__privateGet(this, _emitter7).off(eventName, listener);
1776
1785
  };
1777
1786
  }
1787
+ get applicationIdentifier() {
1788
+ return chunk7B52C2XE_js.__privateGet(this, _session).applicationIdentifier;
1789
+ }
1790
+ get subscriberId() {
1791
+ return chunk7B52C2XE_js.__privateGet(this, _session).subscriberId;
1792
+ }
1778
1793
  };
1779
1794
  _emitter7 = new WeakMap();
1780
1795
  _session = new WeakMap();
@@ -1,5 +1,5 @@
1
- import { N as NotificationFilter } from './novu-C2hAbM3b.js';
2
- export { k as Action, A as ActionTypeEnum, m as ChannelPreference, f as ChannelType, C as CtaType, E as EventHandler, a as Events, F as FiltersCountResponse, q as IPreferenceOverride, I as InboxNotification, L as ListNotificationsResponse, i as MessageAction, M as MessageButton, u as Notification, e as NotificationActionStatus, d as NotificationButton, c as NotificationStatus, b as Novu, w as NovuError, s as NovuOptions, n as PaginatedResponse, v as Preference, P as PreferenceLevel, g as PreferenceOverrideSource, p as PreferenceOverrideSourceEnum, o as PreferencesResponse, t as Prettify, R as Redirect, r as Result, h as Session, S as SocketEventNames, j as Subscriber, T as TODO, W as WebSocketEvent, l as Workflow } from './novu-C2hAbM3b.js';
1
+ import { N as NotificationFilter } from './novu-BXVPjTIj.js';
2
+ export { k as Action, A as ActionTypeEnum, m as ChannelPreference, f as ChannelType, C as CtaType, E as EventHandler, a as Events, F as FiltersCountResponse, q as IPreferenceOverride, I as InboxNotification, L as ListNotificationsResponse, i as MessageAction, M as MessageButton, u as Notification, e as NotificationActionStatus, d as NotificationButton, c as NotificationStatus, b as Novu, w as NovuError, s as NovuOptions, n as PaginatedResponse, v as Preference, P as PreferenceLevel, g as PreferenceOverrideSource, p as PreferenceOverrideSourceEnum, o as PreferencesResponse, t as Prettify, R as Redirect, r as Result, h as Session, S as SocketEventNames, j as Subscriber, T as TODO, W as WebSocketEvent, l as Workflow } from './novu-BXVPjTIj.js';
3
3
 
4
4
  declare const areTagsEqual: (tags1?: string[], tags2?: string[]) => boolean;
5
5
  declare const isSameFilter: (filter1: NotificationFilter, filter2: NotificationFilter) => boolean;
package/dist/cjs/index.js CHANGED
@@ -1,59 +1,59 @@
1
1
  'use strict';
2
2
 
3
- var chunkQO6T5EIP_js = require('./chunk-QO6T5EIP.js');
3
+ var chunk47NZ3DJQ_js = require('./chunk-47NZ3DJQ.js');
4
4
  require('./chunk-7B52C2XE.js');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "ActionTypeEnum", {
9
9
  enumerable: true,
10
- get: function () { return chunkQO6T5EIP_js.ActionTypeEnum; }
10
+ get: function () { return chunk47NZ3DJQ_js.ActionTypeEnum; }
11
11
  });
12
12
  Object.defineProperty(exports, "ChannelType", {
13
13
  enumerable: true,
14
- get: function () { return chunkQO6T5EIP_js.ChannelType; }
14
+ get: function () { return chunk47NZ3DJQ_js.ChannelType; }
15
15
  });
16
16
  Object.defineProperty(exports, "CtaType", {
17
17
  enumerable: true,
18
- get: function () { return chunkQO6T5EIP_js.CtaType; }
18
+ get: function () { return chunk47NZ3DJQ_js.CtaType; }
19
19
  });
20
20
  Object.defineProperty(exports, "NotificationActionStatus", {
21
21
  enumerable: true,
22
- get: function () { return chunkQO6T5EIP_js.NotificationActionStatus; }
22
+ get: function () { return chunk47NZ3DJQ_js.NotificationActionStatus; }
23
23
  });
24
24
  Object.defineProperty(exports, "NotificationButton", {
25
25
  enumerable: true,
26
- get: function () { return chunkQO6T5EIP_js.NotificationButton; }
26
+ get: function () { return chunk47NZ3DJQ_js.NotificationButton; }
27
27
  });
28
28
  Object.defineProperty(exports, "NotificationStatus", {
29
29
  enumerable: true,
30
- get: function () { return chunkQO6T5EIP_js.NotificationStatus; }
30
+ get: function () { return chunk47NZ3DJQ_js.NotificationStatus; }
31
31
  });
32
32
  Object.defineProperty(exports, "Novu", {
33
33
  enumerable: true,
34
- get: function () { return chunkQO6T5EIP_js.Novu; }
34
+ get: function () { return chunk47NZ3DJQ_js.Novu; }
35
35
  });
36
36
  Object.defineProperty(exports, "PreferenceLevel", {
37
37
  enumerable: true,
38
- get: function () { return chunkQO6T5EIP_js.PreferenceLevel; }
38
+ get: function () { return chunk47NZ3DJQ_js.PreferenceLevel; }
39
39
  });
40
40
  Object.defineProperty(exports, "PreferenceOverrideSource", {
41
41
  enumerable: true,
42
- get: function () { return chunkQO6T5EIP_js.PreferenceOverrideSource; }
42
+ get: function () { return chunk47NZ3DJQ_js.PreferenceOverrideSource; }
43
43
  });
44
44
  Object.defineProperty(exports, "PreferenceOverrideSourceEnum", {
45
45
  enumerable: true,
46
- get: function () { return chunkQO6T5EIP_js.PreferenceOverrideSourceEnum; }
46
+ get: function () { return chunk47NZ3DJQ_js.PreferenceOverrideSourceEnum; }
47
47
  });
48
48
  Object.defineProperty(exports, "WebSocketEvent", {
49
49
  enumerable: true,
50
- get: function () { return chunkQO6T5EIP_js.WebSocketEvent; }
50
+ get: function () { return chunk47NZ3DJQ_js.WebSocketEvent; }
51
51
  });
52
52
  Object.defineProperty(exports, "areTagsEqual", {
53
53
  enumerable: true,
54
- get: function () { return chunkQO6T5EIP_js.areTagsEqual; }
54
+ get: function () { return chunk47NZ3DJQ_js.areTagsEqual; }
55
55
  });
56
56
  Object.defineProperty(exports, "isSameFilter", {
57
57
  enumerable: true,
58
- get: function () { return chunkQO6T5EIP_js.isSameFilter; }
58
+ get: function () { return chunk47NZ3DJQ_js.isSameFilter; }
59
59
  });
@@ -50,6 +50,16 @@ declare class Preference {
50
50
  channelPreferences, }: Prettify<Pick<UpdatePreferencesArgs, 'channels' | 'channelPreferences'>>): Result<Preference>;
51
51
  }
52
52
 
53
+ declare global {
54
+ /**
55
+ * If you want to provide custom types for the notification.data object,
56
+ * simply redeclare this rule in the global namespace.
57
+ * Every notification object will use the provided type.
58
+ */
59
+ interface NotificationData {
60
+ [k: string]: unknown;
61
+ }
62
+ }
53
63
  declare enum NotificationStatus {
54
64
  READ = "read",
55
65
  SEEN = "seen",
@@ -96,6 +106,7 @@ type Session = {
96
106
  token: string;
97
107
  totalUnreadCount: number;
98
108
  removeNovuBranding: boolean;
109
+ isDevelopmentMode: boolean;
99
110
  };
100
111
  type MessageButton = {
101
112
  type: NotificationButton;
@@ -141,8 +152,9 @@ type InboxNotification = {
141
152
  secondaryAction?: Action;
142
153
  channelType: ChannelType;
143
154
  tags?: string[];
144
- data?: Record<string, unknown>;
155
+ data?: NotificationData;
145
156
  redirect?: Redirect;
157
+ workflowId: string;
146
158
  };
147
159
  type NotificationFilter = {
148
160
  tags?: string[];
@@ -307,6 +319,7 @@ declare class Notification implements Pick<NovuEventEmitter, 'on'>, InboxNotific
307
319
  readonly tags: InboxNotification['tags'];
308
320
  readonly redirect: InboxNotification['redirect'];
309
321
  readonly data?: InboxNotification['data'];
322
+ readonly workflowId: InboxNotification['workflowId'];
310
323
  constructor(notification: InboxNotification, emitter: NovuEventEmitter, inboxService: InboxService);
311
324
  read(): Result<Notification>;
312
325
  unread(): Result<Notification>;
@@ -564,6 +577,8 @@ declare class Novu implements Pick<NovuEventEmitter, 'on'> {
564
577
  * Use the cleanup function returned by the "on" method instead.
565
578
  */
566
579
  off: <Key extends EventNames>(eventName: Key, listener: EventHandler<Events[Key]>) => void;
580
+ get applicationIdentifier(): string;
581
+ get subscriberId(): string;
567
582
  constructor(options: NovuOptions);
568
583
  }
569
584
 
@@ -1,5 +1,5 @@
1
- import { h as Theme } from '../types-CKkldJh0.js';
2
- import '../novu-C2hAbM3b.js';
1
+ import { h as Theme } from '../types-BOvaROWQ.js';
2
+ import '../novu-BXVPjTIj.js';
3
3
 
4
4
  declare const dark: Theme;
5
5
 
@@ -11,7 +11,8 @@ var dark = {
11
11
  colorSecondary: "#383838",
12
12
  colorSecondaryForeground: "#EDEDEF",
13
13
  colorShadow: "black",
14
- colorRing: "#E1E4EA"
14
+ colorRing: "#E1E4EA",
15
+ colorStripes: "#FF8447"
15
16
  }
16
17
  };
17
18
 
@@ -1,4 +1,4 @@
1
- import { u as Notification, N as NotificationFilter, s as NovuOptions, b as Novu } from './novu-C2hAbM3b.mjs';
1
+ import { u as Notification, N as NotificationFilter, s as NovuOptions, b as Novu } from './novu-BXVPjTIj.js';
2
2
 
3
3
  declare const appearanceKeys: readonly ["button", "icon", "popoverContent", "popoverTrigger", "dropdownContent", "dropdownTrigger", "dropdownItem", "dropdownItemLabel", "dropdownItemLabelContainer", "dropdownItemLeft__icon", "dropdownItemRight__icon", "dropdownItem__icon", "collapsible", "tooltipContent", "tooltipTrigger", "back__button", "skeletonText", "skeletonAvatar", "skeletonSwitch", "skeletonSwitchThumb", "tabsRoot", "tabsList", "tabsContent", "tabsTrigger", "dots", "root", "bellIcon", "bellContainer", "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", "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", "notificationRead__icon", "notificationUnread__icon", "notificationArchive__icon", "notificationUnarchive__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", "workflowLabelContainer", "workflowContainerDisabledNotice", "workflowLabelDisabled__icon", "workflowContainerRight__icon", "workflowArrow__icon", "workflowDescription", "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", "strong"];
4
4
 
@@ -68,6 +68,7 @@ type Variables = {
68
68
  colorRing?: string;
69
69
  fontSize?: string;
70
70
  borderRadius?: string;
71
+ colorStripes?: string;
71
72
  };
72
73
  type AppearanceKey = (typeof appearanceKeys)[number];
73
74
  type Elements = Partial<Record<AppearanceKey, ElementStyles>>;
@@ -1,7 +1,7 @@
1
- import { s as NovuOptions } from '../novu-C2hAbM3b.js';
2
- export { u as Notification } from '../novu-C2hAbM3b.js';
3
- import { B as BellRenderer, N as NotificationClickHandler, a as NotificationActionClickHandler, b as NotificationRenderer, S as SubjectRenderer, c as BodyRenderer, d as NovuProviderProps, e as BaseNovuProviderProps, A as Appearance, L as Localization, T as Tab, P as PreferencesFilter, R as RouterPush } from '../types-CKkldJh0.js';
4
- export { f as AppearanceKey, C as CSSProperties, E as ElementStyles, g as Elements, j as LocalizationKey, i as NotificationStatus, h as Theme, V as Variables } from '../types-CKkldJh0.js';
1
+ import { s as NovuOptions } from '../novu-BXVPjTIj.js';
2
+ export { u as Notification } from '../novu-BXVPjTIj.js';
3
+ import { B as BellRenderer, N as NotificationClickHandler, a as NotificationActionClickHandler, b as NotificationRenderer, S as SubjectRenderer, c as BodyRenderer, d as NovuProviderProps, e as BaseNovuProviderProps, A as Appearance, L as Localization, T as Tab, P as PreferencesFilter, R as RouterPush } from '../types-BOvaROWQ.js';
4
+ export { f as AppearanceKey, C as CSSProperties, E as ElementStyles, g as Elements, j as LocalizationKey, i as NotificationStatus, h as Theme, V as Variables } from '../types-BOvaROWQ.js';
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';