@novu/js 3.11.0 → 3.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{chunk-QQNKEWGC.js → chunk-MKYWGA37.js} +131 -809
- package/dist/cjs/chunk-WFVHYVDM.js +793 -0
- package/dist/cjs/index.d.ts +3 -4
- package/dist/cjs/index.js +26 -26
- package/dist/cjs/internal/index.d.ts +8 -2
- package/dist/cjs/internal/index.js +8 -4
- package/dist/cjs/novu-CKWESYFZ.d.ts +165 -0
- package/dist/cjs/{novu-ThMWeiRt.d.ts → novu-event-emitter-C7GZ7-r1.d.ts} +220 -163
- package/dist/cjs/themes/index.d.ts +3 -3
- package/dist/cjs/{types-BjANCN3c.d.ts → types-CeLsxWJg.d.ts} +2 -2
- package/dist/cjs/ui/index.d.ts +5 -4
- package/dist/cjs/ui/index.js +12 -12
- package/dist/esm/{chunk-UM35OVAD.mjs → chunk-76A4RQYD.mjs} +99 -771
- package/dist/esm/chunk-GY4JXBST.mjs +765 -0
- package/dist/esm/index.d.mts +3 -4
- package/dist/esm/index.mjs +2 -2
- package/dist/esm/internal/index.d.mts +8 -2
- package/dist/esm/internal/index.mjs +1 -1
- package/dist/esm/novu-3CfttQ8e.d.mts +165 -0
- package/dist/esm/{novu-DY-mm8Og.d.mts → novu-event-emitter-C7GZ7-r1.d.mts} +220 -163
- package/dist/esm/themes/index.d.mts +3 -3
- package/dist/esm/{types-C5eX1GmB.d.mts → types-4YuozpWu.d.mts} +2 -2
- package/dist/esm/ui/index.d.mts +5 -4
- package/dist/esm/ui/index.mjs +4 -4
- package/dist/novu.min.js +12 -12
- package/dist/novu.min.js.gz +0 -0
- package/package.json +17 -17
- package/dist/cjs/chunk-VWSQDNZX.js +0 -66
- package/dist/cjs/types-BM_9Xx5Z.d.ts +0 -220
- package/dist/esm/chunk-RZWQYM3H.mjs +0 -62
- package/dist/esm/types-BM_9Xx5Z.d.mts +0 -220
|
@@ -1,5 +1,3 @@
|
|
|
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.js';
|
|
2
|
-
|
|
3
1
|
type HttpClientOptions = {
|
|
4
2
|
apiVersion?: string;
|
|
5
3
|
apiUrl?: string;
|
|
@@ -7,6 +5,11 @@ type HttpClientOptions = {
|
|
|
7
5
|
headers?: Record<string, string>;
|
|
8
6
|
};
|
|
9
7
|
|
|
8
|
+
declare class NovuError extends Error {
|
|
9
|
+
originalError: Error;
|
|
10
|
+
constructor(message: string, originalError: unknown);
|
|
11
|
+
}
|
|
12
|
+
|
|
10
13
|
type ListPreferencesArgs = {
|
|
11
14
|
tags?: string[];
|
|
12
15
|
severity?: SeverityLevelEnum | SeverityLevelEnum[];
|
|
@@ -41,19 +44,6 @@ declare class PreferencesCache {
|
|
|
41
44
|
clearAll(): void;
|
|
42
45
|
}
|
|
43
46
|
|
|
44
|
-
declare class BaseModule {
|
|
45
|
-
#private;
|
|
46
|
-
protected _inboxService: InboxService;
|
|
47
|
-
protected _emitter: NovuEventEmitter;
|
|
48
|
-
constructor({ inboxServiceInstance, eventEmitterInstance, }: {
|
|
49
|
-
inboxServiceInstance: InboxService;
|
|
50
|
-
eventEmitterInstance: NovuEventEmitter;
|
|
51
|
-
});
|
|
52
|
-
protected onSessionSuccess(_: Session): void;
|
|
53
|
-
protected onSessionError(_: unknown): void;
|
|
54
|
-
callWithSession<T>(fn: () => Result<T>): Result<T>;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
47
|
type ScheduleLike = Partial<Pick<Schedule, 'isEnabled' | 'weeklySchedule'>>;
|
|
58
48
|
declare class Schedule {
|
|
59
49
|
#private;
|
|
@@ -68,36 +58,6 @@ declare class Schedule {
|
|
|
68
58
|
update(args: UpdateScheduleArgs): Result<Schedule>;
|
|
69
59
|
}
|
|
70
60
|
|
|
71
|
-
declare class PreferenceSchedule extends BaseModule {
|
|
72
|
-
#private;
|
|
73
|
-
readonly cache: ScheduleCache;
|
|
74
|
-
constructor({ cache, useCache, inboxServiceInstance, eventEmitterInstance, }: {
|
|
75
|
-
cache: ScheduleCache;
|
|
76
|
-
useCache: boolean;
|
|
77
|
-
inboxServiceInstance: InboxService;
|
|
78
|
-
eventEmitterInstance: NovuEventEmitter;
|
|
79
|
-
});
|
|
80
|
-
get(): Result<Schedule>;
|
|
81
|
-
update(args: UpdateScheduleArgs): Result<Schedule>;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
declare class Preferences extends BaseModule {
|
|
85
|
-
#private;
|
|
86
|
-
readonly cache: PreferencesCache;
|
|
87
|
-
readonly scheduleCache: ScheduleCache;
|
|
88
|
-
readonly schedule: PreferenceSchedule;
|
|
89
|
-
constructor({ useCache, inboxServiceInstance, eventEmitterInstance, }: {
|
|
90
|
-
useCache: boolean;
|
|
91
|
-
inboxServiceInstance: InboxService;
|
|
92
|
-
eventEmitterInstance: NovuEventEmitter;
|
|
93
|
-
});
|
|
94
|
-
list(args?: ListPreferencesArgs): Result<Preference[]>;
|
|
95
|
-
update(args: BasePreferenceArgs): Result<Preference>;
|
|
96
|
-
update(args: InstancePreferenceArgs): Result<Preference>;
|
|
97
|
-
bulkUpdate(args: Array<BasePreferenceArgs>): Result<Preference[]>;
|
|
98
|
-
bulkUpdate(args: Array<InstancePreferenceArgs>): Result<Preference[]>;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
61
|
declare class ScheduleCache {
|
|
102
62
|
#private;
|
|
103
63
|
constructor({ emitterInstance }: {
|
|
@@ -134,6 +94,220 @@ declare class Preference {
|
|
|
134
94
|
}>): Result<Preference>;
|
|
135
95
|
}
|
|
136
96
|
|
|
97
|
+
declare global {
|
|
98
|
+
/**
|
|
99
|
+
* If you want to provide custom types for the notification.data object,
|
|
100
|
+
* simply redeclare this rule in the global namespace.
|
|
101
|
+
* Every notification object will use the provided type.
|
|
102
|
+
*/
|
|
103
|
+
interface NotificationData {
|
|
104
|
+
[k: string]: unknown;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
declare enum NotificationStatus {
|
|
108
|
+
READ = "read",
|
|
109
|
+
SEEN = "seen",
|
|
110
|
+
SNOOZED = "snoozed",
|
|
111
|
+
UNREAD = "unread",
|
|
112
|
+
UNSEEN = "unseen",
|
|
113
|
+
UNSNOOZED = "unsnoozed"
|
|
114
|
+
}
|
|
115
|
+
declare enum PreferenceLevel {
|
|
116
|
+
GLOBAL = "global",
|
|
117
|
+
TEMPLATE = "template"
|
|
118
|
+
}
|
|
119
|
+
declare enum ChannelType {
|
|
120
|
+
IN_APP = "in_app",
|
|
121
|
+
EMAIL = "email",
|
|
122
|
+
SMS = "sms",
|
|
123
|
+
CHAT = "chat",
|
|
124
|
+
PUSH = "push"
|
|
125
|
+
}
|
|
126
|
+
declare enum WebSocketEvent {
|
|
127
|
+
RECEIVED = "notification_received",
|
|
128
|
+
UNREAD = "unread_count_changed",
|
|
129
|
+
UNSEEN = "unseen_count_changed"
|
|
130
|
+
}
|
|
131
|
+
declare enum SeverityLevelEnum {
|
|
132
|
+
HIGH = "high",
|
|
133
|
+
MEDIUM = "medium",
|
|
134
|
+
LOW = "low",
|
|
135
|
+
NONE = "none"
|
|
136
|
+
}
|
|
137
|
+
declare enum WorkflowCriticalityEnum {
|
|
138
|
+
CRITICAL = "critical",
|
|
139
|
+
NON_CRITICAL = "nonCritical",
|
|
140
|
+
ALL = "all"
|
|
141
|
+
}
|
|
142
|
+
type UnreadCount = {
|
|
143
|
+
total: number;
|
|
144
|
+
severity: Record<SeverityLevelEnum, number>;
|
|
145
|
+
};
|
|
146
|
+
type Session = {
|
|
147
|
+
token: string;
|
|
148
|
+
/** @deprecated Use unreadCount.total instead */
|
|
149
|
+
totalUnreadCount: number;
|
|
150
|
+
unreadCount: UnreadCount;
|
|
151
|
+
removeNovuBranding: boolean;
|
|
152
|
+
isDevelopmentMode: boolean;
|
|
153
|
+
maxSnoozeDurationHours: number;
|
|
154
|
+
applicationIdentifier?: string;
|
|
155
|
+
contextKeys?: string[];
|
|
156
|
+
};
|
|
157
|
+
type Subscriber = {
|
|
158
|
+
id?: string;
|
|
159
|
+
subscriberId: string;
|
|
160
|
+
firstName?: string;
|
|
161
|
+
lastName?: string;
|
|
162
|
+
email?: string;
|
|
163
|
+
phone?: string;
|
|
164
|
+
avatar?: string;
|
|
165
|
+
locale?: string;
|
|
166
|
+
data?: Record<string, unknown>;
|
|
167
|
+
timezone?: string;
|
|
168
|
+
};
|
|
169
|
+
type Redirect = {
|
|
170
|
+
url: string;
|
|
171
|
+
target?: '_self' | '_blank' | '_parent' | '_top' | '_unfencedTop';
|
|
172
|
+
};
|
|
173
|
+
declare enum ActionTypeEnum {
|
|
174
|
+
PRIMARY = "primary",
|
|
175
|
+
SECONDARY = "secondary"
|
|
176
|
+
}
|
|
177
|
+
type Action = {
|
|
178
|
+
label: string;
|
|
179
|
+
isCompleted: boolean;
|
|
180
|
+
redirect?: Redirect;
|
|
181
|
+
};
|
|
182
|
+
type Workflow = {
|
|
183
|
+
id: string;
|
|
184
|
+
identifier: string;
|
|
185
|
+
name: string;
|
|
186
|
+
critical: boolean;
|
|
187
|
+
tags?: string[];
|
|
188
|
+
severity: SeverityLevelEnum;
|
|
189
|
+
};
|
|
190
|
+
type InboxNotification = {
|
|
191
|
+
id: string;
|
|
192
|
+
transactionId: string;
|
|
193
|
+
subject?: string;
|
|
194
|
+
body: string;
|
|
195
|
+
to: Subscriber;
|
|
196
|
+
isRead: boolean;
|
|
197
|
+
isSeen: boolean;
|
|
198
|
+
isArchived: boolean;
|
|
199
|
+
isSnoozed: boolean;
|
|
200
|
+
snoozedUntil?: string | null;
|
|
201
|
+
deliveredAt?: string[];
|
|
202
|
+
createdAt: string;
|
|
203
|
+
readAt?: string | null;
|
|
204
|
+
firstSeenAt?: string | null;
|
|
205
|
+
archivedAt?: string | null;
|
|
206
|
+
avatar?: string;
|
|
207
|
+
primaryAction?: Action;
|
|
208
|
+
secondaryAction?: Action;
|
|
209
|
+
channelType: ChannelType;
|
|
210
|
+
tags?: string[];
|
|
211
|
+
data?: NotificationData;
|
|
212
|
+
redirect?: Redirect;
|
|
213
|
+
workflow?: Workflow;
|
|
214
|
+
severity: SeverityLevelEnum;
|
|
215
|
+
};
|
|
216
|
+
type NotificationFilter = {
|
|
217
|
+
tags?: string[];
|
|
218
|
+
read?: boolean;
|
|
219
|
+
archived?: boolean;
|
|
220
|
+
snoozed?: boolean;
|
|
221
|
+
seen?: boolean;
|
|
222
|
+
data?: Record<string, unknown>;
|
|
223
|
+
severity?: SeverityLevelEnum | SeverityLevelEnum[];
|
|
224
|
+
};
|
|
225
|
+
type ChannelPreference = {
|
|
226
|
+
email?: boolean;
|
|
227
|
+
sms?: boolean;
|
|
228
|
+
in_app?: boolean;
|
|
229
|
+
chat?: boolean;
|
|
230
|
+
push?: boolean;
|
|
231
|
+
};
|
|
232
|
+
type TimeRange = {
|
|
233
|
+
start: string;
|
|
234
|
+
end: string;
|
|
235
|
+
};
|
|
236
|
+
type DaySchedule = {
|
|
237
|
+
isEnabled: boolean;
|
|
238
|
+
hours?: Array<TimeRange>;
|
|
239
|
+
};
|
|
240
|
+
type WeeklySchedule = {
|
|
241
|
+
monday?: DaySchedule;
|
|
242
|
+
tuesday?: DaySchedule;
|
|
243
|
+
wednesday?: DaySchedule;
|
|
244
|
+
thursday?: DaySchedule;
|
|
245
|
+
friday?: DaySchedule;
|
|
246
|
+
saturday?: DaySchedule;
|
|
247
|
+
sunday?: DaySchedule;
|
|
248
|
+
};
|
|
249
|
+
type DefaultSchedule = {
|
|
250
|
+
isEnabled?: boolean;
|
|
251
|
+
weeklySchedule?: WeeklySchedule;
|
|
252
|
+
};
|
|
253
|
+
type ContextValue = string | {
|
|
254
|
+
id: string;
|
|
255
|
+
data?: Record<string, unknown>;
|
|
256
|
+
};
|
|
257
|
+
type Context = Partial<Record<string, ContextValue>>;
|
|
258
|
+
type PreferencesResponse = {
|
|
259
|
+
level: PreferenceLevel;
|
|
260
|
+
enabled: boolean;
|
|
261
|
+
channels: ChannelPreference;
|
|
262
|
+
overrides?: IPreferenceOverride[];
|
|
263
|
+
workflow?: Workflow;
|
|
264
|
+
schedule?: {
|
|
265
|
+
isEnabled: boolean;
|
|
266
|
+
weeklySchedule?: WeeklySchedule;
|
|
267
|
+
};
|
|
268
|
+
};
|
|
269
|
+
declare enum PreferenceOverrideSourceEnum {
|
|
270
|
+
SUBSCRIBER = "subscriber",
|
|
271
|
+
TEMPLATE = "template",
|
|
272
|
+
WORKFLOW_OVERRIDE = "workflowOverride"
|
|
273
|
+
}
|
|
274
|
+
type IPreferenceOverride = {
|
|
275
|
+
channel: ChannelType;
|
|
276
|
+
source: PreferenceOverrideSourceEnum;
|
|
277
|
+
};
|
|
278
|
+
type Result<D = undefined, E = NovuError> = Promise<{
|
|
279
|
+
data?: D;
|
|
280
|
+
error?: E;
|
|
281
|
+
}>;
|
|
282
|
+
type KeylessNovuOptions = {} & {
|
|
283
|
+
[K in string]?: never;
|
|
284
|
+
};
|
|
285
|
+
type StandardNovuOptions = {
|
|
286
|
+
/** @deprecated Use apiUrl instead */
|
|
287
|
+
backendUrl?: string;
|
|
288
|
+
/** @internal Should be used internally for testing purposes */
|
|
289
|
+
__userAgent?: string;
|
|
290
|
+
applicationIdentifier: string;
|
|
291
|
+
subscriberHash?: string;
|
|
292
|
+
contextHash?: string;
|
|
293
|
+
apiUrl?: string;
|
|
294
|
+
socketUrl?: string;
|
|
295
|
+
useCache?: boolean;
|
|
296
|
+
defaultSchedule?: DefaultSchedule;
|
|
297
|
+
context?: Context;
|
|
298
|
+
} & ({
|
|
299
|
+
/** @deprecated Use subscriber prop instead */
|
|
300
|
+
subscriberId: string;
|
|
301
|
+
subscriber?: never;
|
|
302
|
+
} | {
|
|
303
|
+
subscriber: Subscriber | string;
|
|
304
|
+
subscriberId?: never;
|
|
305
|
+
});
|
|
306
|
+
type NovuOptions = KeylessNovuOptions | StandardNovuOptions;
|
|
307
|
+
type Prettify<T> = {
|
|
308
|
+
[K in keyof T]: T[K];
|
|
309
|
+
} & {};
|
|
310
|
+
|
|
137
311
|
type InboxServiceOptions = HttpClientOptions;
|
|
138
312
|
declare class InboxService {
|
|
139
313
|
#private;
|
|
@@ -285,28 +459,6 @@ declare class Notification implements Pick<NovuEventEmitter, 'on'>, InboxNotific
|
|
|
285
459
|
off<Key extends EventNames>(eventName: Key, listener: EventHandler<Events[Key]>): void;
|
|
286
460
|
}
|
|
287
461
|
|
|
288
|
-
declare class NotificationsCache {
|
|
289
|
-
#private;
|
|
290
|
-
constructor({ emitter }: {
|
|
291
|
-
emitter: NovuEventEmitter;
|
|
292
|
-
});
|
|
293
|
-
private updateNotification;
|
|
294
|
-
private removeNotification;
|
|
295
|
-
private handleNotificationEvent;
|
|
296
|
-
private getAggregated;
|
|
297
|
-
has(args: ListNotificationsArgs): boolean;
|
|
298
|
-
set(args: ListNotificationsArgs, data: ListNotificationsResponse): void;
|
|
299
|
-
update(args: ListNotificationsArgs, data: ListNotificationsResponse): void;
|
|
300
|
-
getAll(args: ListNotificationsArgs): ListNotificationsResponse | undefined;
|
|
301
|
-
/**
|
|
302
|
-
* Get unique notifications based on specified filter fields.
|
|
303
|
-
* The same tags and data can be applied to multiple filters which means that the same notification can be duplicated.
|
|
304
|
-
*/
|
|
305
|
-
getUniqueNotifications({ tags, read, data, }: Pick<ListNotificationsArgs, 'tags' | 'read' | 'data'>): Array<Notification>;
|
|
306
|
-
clear(filter: NotificationFilter): void;
|
|
307
|
-
clearAll(): void;
|
|
308
|
-
}
|
|
309
|
-
|
|
310
462
|
type ListNotificationsArgs = {
|
|
311
463
|
tags?: string[];
|
|
312
464
|
read?: boolean;
|
|
@@ -376,69 +528,6 @@ type UnsnoozeArgs = BaseArgs | InstanceArgs;
|
|
|
376
528
|
type CompleteArgs = BaseArgs | InstanceArgs;
|
|
377
529
|
type RevertArgs = BaseArgs | InstanceArgs;
|
|
378
530
|
|
|
379
|
-
declare class Notifications extends BaseModule {
|
|
380
|
-
#private;
|
|
381
|
-
readonly cache: NotificationsCache;
|
|
382
|
-
constructor({ useCache, inboxServiceInstance, eventEmitterInstance, }: {
|
|
383
|
-
useCache: boolean;
|
|
384
|
-
inboxServiceInstance: InboxService;
|
|
385
|
-
eventEmitterInstance: NovuEventEmitter;
|
|
386
|
-
});
|
|
387
|
-
get inboxService(): InboxService;
|
|
388
|
-
list({ limit, ...restOptions }?: ListNotificationsArgs): Result<ListNotificationsResponse>;
|
|
389
|
-
count(args?: FilterCountArgs): Result<FilterCountResponse>;
|
|
390
|
-
count(args?: FiltersCountArgs): Result<FiltersCountResponse>;
|
|
391
|
-
read(args: BaseArgs): Result<Notification>;
|
|
392
|
-
read(args: InstanceArgs): Result<Notification>;
|
|
393
|
-
unread(args: BaseArgs): Result<Notification>;
|
|
394
|
-
unread(args: InstanceArgs): Result<Notification>;
|
|
395
|
-
seen(args: BaseArgs): Result<Notification>;
|
|
396
|
-
seen(args: InstanceArgs): Result<Notification>;
|
|
397
|
-
archive(args: BaseArgs): Result<Notification>;
|
|
398
|
-
archive(args: InstanceArgs): Result<Notification>;
|
|
399
|
-
unarchive(args: BaseArgs): Result<Notification>;
|
|
400
|
-
unarchive(args: InstanceArgs): Result<Notification>;
|
|
401
|
-
delete(args: BaseArgs): Result<void>;
|
|
402
|
-
delete(args: InstanceArgs): Result<void>;
|
|
403
|
-
snooze(args: SnoozeArgs): Result<Notification>;
|
|
404
|
-
unsnooze(args: BaseArgs): Result<Notification>;
|
|
405
|
-
unsnooze(args: InstanceArgs): Result<Notification>;
|
|
406
|
-
completePrimary(args: BaseArgs): Result<Notification>;
|
|
407
|
-
completePrimary(args: InstanceArgs): Result<Notification>;
|
|
408
|
-
completeSecondary(args: BaseArgs): Result<Notification>;
|
|
409
|
-
completeSecondary(args: InstanceArgs): Result<Notification>;
|
|
410
|
-
revertPrimary(args: BaseArgs): Result<Notification>;
|
|
411
|
-
revertPrimary(args: InstanceArgs): Result<Notification>;
|
|
412
|
-
revertSecondary(args: BaseArgs): Result<Notification>;
|
|
413
|
-
revertSecondary(args: InstanceArgs): Result<Notification>;
|
|
414
|
-
readAll({ tags, data, }?: {
|
|
415
|
-
tags?: NotificationFilter['tags'];
|
|
416
|
-
data?: Record<string, unknown>;
|
|
417
|
-
}): Result<void>;
|
|
418
|
-
seenAll(args?: {
|
|
419
|
-
notificationIds: string[];
|
|
420
|
-
} | {
|
|
421
|
-
tags?: NotificationFilter['tags'];
|
|
422
|
-
data?: Record<string, unknown>;
|
|
423
|
-
} | {}): Result<void>;
|
|
424
|
-
archiveAll({ tags, data, }?: {
|
|
425
|
-
tags?: NotificationFilter['tags'];
|
|
426
|
-
data?: Record<string, unknown>;
|
|
427
|
-
}): Result<void>;
|
|
428
|
-
archiveAllRead({ tags, data }?: {
|
|
429
|
-
tags?: string[];
|
|
430
|
-
data?: Record<string, unknown>;
|
|
431
|
-
}): Result<void>;
|
|
432
|
-
deleteAll({ tags, data, }?: {
|
|
433
|
-
tags?: NotificationFilter['tags'];
|
|
434
|
-
data?: Record<string, unknown>;
|
|
435
|
-
}): Result<void>;
|
|
436
|
-
clearCache({ filter }?: {
|
|
437
|
-
filter?: NotificationFilter;
|
|
438
|
-
}): void;
|
|
439
|
-
triggerHelloWorldEvent(): Promise<any>;
|
|
440
|
-
}
|
|
441
|
-
|
|
442
531
|
type KeylessInitializeSessionArgs = {} & {
|
|
443
532
|
[K in string]?: never;
|
|
444
533
|
};
|
|
@@ -563,36 +652,4 @@ declare class NovuEventEmitter {
|
|
|
563
652
|
emit<Key extends EventNames>(type: Key, event?: Events[Key]): void;
|
|
564
653
|
}
|
|
565
654
|
|
|
566
|
-
|
|
567
|
-
isSocketEvent(eventName: string): eventName is SocketEventNames;
|
|
568
|
-
connect(): Result<void>;
|
|
569
|
-
disconnect(): Result<void>;
|
|
570
|
-
}
|
|
571
|
-
|
|
572
|
-
declare class Novu implements Pick<NovuEventEmitter, 'on'> {
|
|
573
|
-
#private;
|
|
574
|
-
readonly notifications: Notifications;
|
|
575
|
-
readonly preferences: Preferences;
|
|
576
|
-
readonly socket: BaseSocketInterface;
|
|
577
|
-
on: <Key extends EventNames>(eventName: Key, listener: EventHandler<Events[Key]>) => () => void;
|
|
578
|
-
/**
|
|
579
|
-
* @deprecated
|
|
580
|
-
* Use the cleanup function returned by the "on" method instead.
|
|
581
|
-
*/
|
|
582
|
-
off: <Key extends EventNames>(eventName: Key, listener: EventHandler<Events[Key]>) => void;
|
|
583
|
-
get applicationIdentifier(): string | undefined;
|
|
584
|
-
get subscriberId(): string | undefined;
|
|
585
|
-
get context(): Partial<Record<string, ContextValue>> | undefined;
|
|
586
|
-
get contextKey(): string;
|
|
587
|
-
constructor(options: NovuOptions);
|
|
588
|
-
changeSubscriber(options: {
|
|
589
|
-
subscriber: Subscriber;
|
|
590
|
-
subscriberHash?: string;
|
|
591
|
-
}): Promise<void>;
|
|
592
|
-
changeContext(options: {
|
|
593
|
-
context: Context;
|
|
594
|
-
contextHash?: string;
|
|
595
|
-
}): Promise<void>;
|
|
596
|
-
}
|
|
597
|
-
|
|
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 };
|
|
655
|
+
export { type FilterCountResponse as A, type BasePreferenceArgs as B, type ChannelPreference as C, type DaySchedule as D, type EventHandler as E, type FiltersCountResponse as F, type FiltersCountArgs as G, type BaseArgs as H, type InboxNotification as I, type InstanceArgs as J, type SnoozeArgs as K, type ListNotificationsResponse as L, type EventNames as M, type NotificationFilter as N, type ContextValue as O, Preference as P, type Result as R, SeverityLevelEnum as S, type TimeRange as T, type UnreadCount as U, WebSocketEvent as W, Notification as a, type Events as b, type SocketEventNames as c, ChannelType as d, type Context as e, type DefaultSchedule as f, NotificationStatus as g, NovuError as h, type NovuOptions as i, PreferenceLevel as j, type PreferencesResponse as k, Schedule as l, type StandardNovuOptions as m, type Subscriber as n, type WeeklySchedule as o, WorkflowCriticalityEnum as p, InboxService as q, NovuEventEmitter as r, type Session as s, ScheduleCache as t, type UpdateScheduleArgs as u, PreferencesCache as v, type ListPreferencesArgs as w, type InstancePreferenceArgs as x, type ListNotificationsArgs as y, type FilterCountArgs as z };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { r as Theme } from '../types-
|
|
2
|
-
import '../
|
|
3
|
-
import '../novu-
|
|
1
|
+
import { r as Theme } from '../types-CeLsxWJg.js';
|
|
2
|
+
import '../novu-event-emitter-C7GZ7-r1.js';
|
|
3
|
+
import '../novu-CKWESYFZ.js';
|
|
4
4
|
|
|
5
5
|
declare const dark: Theme;
|
|
6
6
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { U as UnreadCount, N as NotificationFilter,
|
|
2
|
-
import { N as
|
|
1
|
+
import { a as Notification, U as UnreadCount, N as NotificationFilter, P as Preference, l as Schedule, p as WorkflowCriticalityEnum, i as NovuOptions } from './novu-event-emitter-C7GZ7-r1.js';
|
|
2
|
+
import { N as Novu } from './novu-CKWESYFZ.js';
|
|
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
|
|
package/dist/cjs/ui/index.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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-
|
|
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-
|
|
1
|
+
import { i as NovuOptions } from '../novu-event-emitter-C7GZ7-r1.js';
|
|
2
|
+
export { a as Notification } from '../novu-event-emitter-C7GZ7-r1.js';
|
|
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-CeLsxWJg.js';
|
|
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-CeLsxWJg.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';
|
|
8
8
|
import { MountableElement } from 'solid-js/web';
|
|
9
|
+
import '../novu-CKWESYFZ.js';
|
|
9
10
|
|
|
10
11
|
type NotificationRendererProps = {
|
|
11
12
|
renderNotification: NotificationRenderer;
|
package/dist/cjs/ui/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkMKYWGA37_js = require('../chunk-MKYWGA37.js');
|
|
4
|
+
var chunkWFVHYVDM_js = require('../chunk-WFVHYVDM.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
|
-
//
|
|
40
|
+
// _mab1vo2oj:/Users/pavlotymchuk/projects/js/novu-2/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
|
|
@@ -750,7 +750,7 @@ function useNotificationVisibility() {
|
|
|
750
750
|
const novu = useNovu();
|
|
751
751
|
let tracker = null;
|
|
752
752
|
solidJs.onMount(() => {
|
|
753
|
-
tracker = new NotificationVisibilityTracker(novu.notifications.
|
|
753
|
+
tracker = new NotificationVisibilityTracker(novu.notifications._inboxService);
|
|
754
754
|
solidJs.onCleanup(() => {
|
|
755
755
|
if (tracker) {
|
|
756
756
|
tracker.destroy();
|
|
@@ -1455,7 +1455,7 @@ var useInboxContext = () => {
|
|
|
1455
1455
|
};
|
|
1456
1456
|
var NovuContext = solidJs.createContext(void 0);
|
|
1457
1457
|
function NovuProvider(props) {
|
|
1458
|
-
const novu = solidJs.createMemo(() => props.novu || new
|
|
1458
|
+
const novu = solidJs.createMemo(() => props.novu || new chunkMKYWGA37_js.Novu(props.options));
|
|
1459
1459
|
return web.createComponent(NovuContext.Provider, {
|
|
1460
1460
|
get value() {
|
|
1461
1461
|
return novu();
|
|
@@ -1607,8 +1607,8 @@ var CountProvider = (props) => {
|
|
|
1607
1607
|
const tabTags = getTagsFromTab(tab);
|
|
1608
1608
|
const tabDataFilterCriteria = (_a = tab.filter) == null ? void 0 : _a.data;
|
|
1609
1609
|
const tabSeverityFilterCriteria = (_b = tab.filter) == null ? void 0 : _b.severity;
|
|
1610
|
-
const matchesTagFilter =
|
|
1611
|
-
const matchesDataFilterCriteria =
|
|
1610
|
+
const matchesTagFilter = chunkMKYWGA37_js.checkNotificationTagFilter(notification.tags, tabTags);
|
|
1611
|
+
const matchesDataFilterCriteria = chunkMKYWGA37_js.checkNotificationDataFilter(notification.data, tabDataFilterCriteria);
|
|
1612
1612
|
const matchesSeverityFilterCriteria = !tabSeverityFilterCriteria || Array.isArray(tabSeverityFilterCriteria) && tabSeverityFilterCriteria.length === 0 || Array.isArray(tabSeverityFilterCriteria) && tabSeverityFilterCriteria.includes(notification.severity) || !Array.isArray(tabSeverityFilterCriteria) && tabSeverityFilterCriteria === notification.severity;
|
|
1613
1613
|
if (matchesTagFilter && matchesDataFilterCriteria && matchesSeverityFilterCriteria) {
|
|
1614
1614
|
const filterKey = createKey({
|
|
@@ -2622,7 +2622,7 @@ var Footer = () => {
|
|
|
2622
2622
|
});
|
|
2623
2623
|
};
|
|
2624
2624
|
function getCurrentDomain() {
|
|
2625
|
-
if (
|
|
2625
|
+
if (chunkMKYWGA37_js.isBrowser()) {
|
|
2626
2626
|
return window.location.hostname;
|
|
2627
2627
|
}
|
|
2628
2628
|
return "";
|
|
@@ -2634,7 +2634,7 @@ function getCurlCommand() {
|
|
|
2634
2634
|
return "";
|
|
2635
2635
|
}
|
|
2636
2636
|
const DEFAULT_BACKEND_URL = typeof window !== "undefined" && window.NOVU_LOCAL_BACKEND_URL || "https://api.novu.co";
|
|
2637
|
-
return `curl -X POST ${DEFAULT_BACKEND_URL}/${
|
|
2637
|
+
return `curl -X POST ${DEFAULT_BACKEND_URL}/${chunkMKYWGA37_js.DEFAULT_API_VERSION}/events/trigger -H 'Authorization: Keyless ${identifier}' -H 'Content-Type: application/json' -d '{
|
|
2638
2638
|
"name": "hello-world",
|
|
2639
2639
|
"to": {
|
|
2640
2640
|
"subscriberId": "keyless-subscriber-id"
|
|
@@ -4080,7 +4080,7 @@ var useNotificationsInfiniteScroll = (props) => {
|
|
|
4080
4080
|
);
|
|
4081
4081
|
solidJs.onMount(() => {
|
|
4082
4082
|
const listener = ({ data: data2 }) => {
|
|
4083
|
-
if (!data2 || !
|
|
4083
|
+
if (!data2 || !chunkMKYWGA37_js.isSameFilter(filter, data2.filter)) {
|
|
4084
4084
|
return;
|
|
4085
4085
|
}
|
|
4086
4086
|
mutate({ data: data2.notifications, hasMore: data2.hasMore });
|
|
@@ -4090,7 +4090,7 @@ var useNotificationsInfiniteScroll = (props) => {
|
|
|
4090
4090
|
});
|
|
4091
4091
|
solidJs.createEffect(() => chunk7B52C2XE_js.__async(void 0, null, function* () {
|
|
4092
4092
|
const newFilter = chunk7B52C2XE_js.__spreadValues({}, props.options());
|
|
4093
|
-
if (
|
|
4093
|
+
if (chunkMKYWGA37_js.isSameFilter(filter, newFilter)) {
|
|
4094
4094
|
return;
|
|
4095
4095
|
}
|
|
4096
4096
|
novu.notifications.clearCache();
|
|
@@ -6617,7 +6617,7 @@ var Text = (props) => props.children;
|
|
|
6617
6617
|
var Markdown = (props) => {
|
|
6618
6618
|
const [local, rest] = solidJs.splitProps(props, ["class", "children", "appearanceKey", "strongAppearanceKey", "context"]);
|
|
6619
6619
|
const style = useStyle();
|
|
6620
|
-
const tokens = solidJs.createMemo(() =>
|
|
6620
|
+
const tokens = solidJs.createMemo(() => chunkWFVHYVDM_js.parseMarkdownIntoTokens(local.children));
|
|
6621
6621
|
return (() => {
|
|
6622
6622
|
var _el$2 = _tmpl$222();
|
|
6623
6623
|
web.spread(_el$2, web.mergeProps({
|