@adtrackify/at-tracking-event-types 3.5.16 → 3.5.18

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.
Files changed (113) hide show
  1. package/dist/cjs/types/api/dashboards/widget.d.ts +11 -0
  2. package/dist/cjs/types/api/destinations/destinations.d.ts +16 -12
  3. package/dist/cjs/types/api/destinations/destinations.js +2 -0
  4. package/dist/cjs/types/api/destinations/destinations.js.map +1 -1
  5. package/dist/cjs/types/api/destinations/emq-health.d.ts +16 -0
  6. package/dist/cjs/types/api/destinations/emq-health.js +3 -0
  7. package/dist/cjs/types/api/destinations/emq-health.js.map +1 -0
  8. package/dist/cjs/types/api/destinations/index.d.ts +1 -0
  9. package/dist/cjs/types/api/destinations/index.js +1 -0
  10. package/dist/cjs/types/api/destinations/index.js.map +1 -1
  11. package/dist/cjs/types/api/emq/emq-types.d.ts +160 -0
  12. package/dist/cjs/types/api/emq/emq-types.js +50 -0
  13. package/dist/cjs/types/api/emq/emq-types.js.map +1 -0
  14. package/dist/cjs/types/api/emq/index.d.ts +1 -0
  15. package/dist/cjs/types/api/emq/index.js +18 -0
  16. package/dist/cjs/types/api/emq/index.js.map +1 -0
  17. package/dist/cjs/types/api/events/health-events.d.ts +150 -0
  18. package/dist/cjs/types/api/events/health-events.js +47 -0
  19. package/dist/cjs/types/api/events/health-events.js.map +1 -0
  20. package/dist/cjs/types/api/events/index.d.ts +1 -0
  21. package/dist/cjs/types/api/events/index.js +18 -0
  22. package/dist/cjs/types/api/events/index.js.map +1 -0
  23. package/dist/cjs/types/api/index.d.ts +2 -1
  24. package/dist/cjs/types/api/index.js +2 -1
  25. package/dist/cjs/types/api/index.js.map +1 -1
  26. package/dist/cjs/types/api/measures/definitions/emq-measure-definitions.d.ts +2 -0
  27. package/dist/cjs/types/api/measures/definitions/emq-measure-definitions.js +205 -0
  28. package/dist/cjs/types/api/measures/definitions/emq-measure-definitions.js.map +1 -0
  29. package/dist/cjs/types/api/measures/definitions/index.d.ts +1 -0
  30. package/dist/cjs/types/api/measures/definitions/index.js +1 -0
  31. package/dist/cjs/types/api/measures/definitions/index.js.map +1 -1
  32. package/dist/cjs/types/api/measures/definitions/measure-categories.d.ts +2 -1
  33. package/dist/cjs/types/api/measures/definitions/measure-categories.js +1 -0
  34. package/dist/cjs/types/api/measures/definitions/measure-categories.js.map +1 -1
  35. package/dist/cjs/types/api/measures/definitions/measure-definitions.js +3 -1
  36. package/dist/cjs/types/api/measures/definitions/measure-definitions.js.map +1 -1
  37. package/dist/cjs/types/api/measures/measures.d.ts +15 -1
  38. package/dist/cjs/types/api/measures/measures.js +14 -0
  39. package/dist/cjs/types/api/measures/measures.js.map +1 -1
  40. package/dist/cjs/types/api/query.d.ts +7 -1
  41. package/dist/cjs/types/api/query.js +6 -0
  42. package/dist/cjs/types/api/query.js.map +1 -1
  43. package/dist/cjs/types/api/user-account.d.ts +9 -2
  44. package/dist/cjs/types/event/base/event-name-enum.d.ts +42 -16
  45. package/dist/cjs/types/event/base/event-name-enum.js +41 -15
  46. package/dist/cjs/types/event/base/event-name-enum.js.map +1 -1
  47. package/dist/cjs/types/event/index.d.ts +1 -0
  48. package/dist/cjs/types/event/index.js +1 -0
  49. package/dist/cjs/types/event/index.js.map +1 -1
  50. package/dist/cjs/types/event/saas-event-properties.d.ts +47 -0
  51. package/dist/cjs/types/event/saas-event-properties.js +11 -0
  52. package/dist/cjs/types/event/saas-event-properties.js.map +1 -0
  53. package/dist/cjs/types/event/tracking-event.d.ts +5 -2
  54. package/dist/esm/types/api/dashboards/widget.d.ts +11 -0
  55. package/dist/esm/types/api/destinations/destinations.d.ts +16 -12
  56. package/dist/esm/types/api/destinations/destinations.js +2 -0
  57. package/dist/esm/types/api/destinations/destinations.js.map +1 -1
  58. package/dist/esm/types/api/destinations/emq-health.d.ts +16 -0
  59. package/dist/esm/types/api/destinations/emq-health.js +2 -0
  60. package/dist/esm/types/api/destinations/emq-health.js.map +1 -0
  61. package/dist/esm/types/api/destinations/index.d.ts +1 -0
  62. package/dist/esm/types/api/destinations/index.js +1 -0
  63. package/dist/esm/types/api/destinations/index.js.map +1 -1
  64. package/dist/esm/types/api/emq/emq-types.d.ts +160 -0
  65. package/dist/esm/types/api/emq/emq-types.js +47 -0
  66. package/dist/esm/types/api/emq/emq-types.js.map +1 -0
  67. package/dist/esm/types/api/emq/index.d.ts +1 -0
  68. package/dist/esm/types/api/emq/index.js +2 -0
  69. package/dist/esm/types/api/emq/index.js.map +1 -0
  70. package/dist/esm/types/api/events/health-events.d.ts +150 -0
  71. package/dist/esm/types/api/events/health-events.js +44 -0
  72. package/dist/esm/types/api/events/health-events.js.map +1 -0
  73. package/dist/esm/types/api/events/index.d.ts +1 -0
  74. package/dist/esm/types/api/events/index.js +2 -0
  75. package/dist/esm/types/api/events/index.js.map +1 -0
  76. package/dist/esm/types/api/index.d.ts +2 -1
  77. package/dist/esm/types/api/index.js +2 -1
  78. package/dist/esm/types/api/index.js.map +1 -1
  79. package/dist/esm/types/api/measures/definitions/emq-measure-definitions.d.ts +2 -0
  80. package/dist/esm/types/api/measures/definitions/emq-measure-definitions.js +202 -0
  81. package/dist/esm/types/api/measures/definitions/emq-measure-definitions.js.map +1 -0
  82. package/dist/esm/types/api/measures/definitions/index.d.ts +1 -0
  83. package/dist/esm/types/api/measures/definitions/index.js +1 -0
  84. package/dist/esm/types/api/measures/definitions/index.js.map +1 -1
  85. package/dist/esm/types/api/measures/definitions/measure-categories.d.ts +2 -1
  86. package/dist/esm/types/api/measures/definitions/measure-categories.js +1 -0
  87. package/dist/esm/types/api/measures/definitions/measure-categories.js.map +1 -1
  88. package/dist/esm/types/api/measures/definitions/measure-definitions.js +3 -1
  89. package/dist/esm/types/api/measures/definitions/measure-definitions.js.map +1 -1
  90. package/dist/esm/types/api/measures/measures.d.ts +15 -1
  91. package/dist/esm/types/api/measures/measures.js +14 -0
  92. package/dist/esm/types/api/measures/measures.js.map +1 -1
  93. package/dist/esm/types/api/query.d.ts +7 -1
  94. package/dist/esm/types/api/query.js +6 -0
  95. package/dist/esm/types/api/query.js.map +1 -1
  96. package/dist/esm/types/api/user-account.d.ts +9 -2
  97. package/dist/esm/types/event/base/event-name-enum.d.ts +42 -16
  98. package/dist/esm/types/event/base/event-name-enum.js +41 -15
  99. package/dist/esm/types/event/base/event-name-enum.js.map +1 -1
  100. package/dist/esm/types/event/index.d.ts +1 -0
  101. package/dist/esm/types/event/index.js +1 -0
  102. package/dist/esm/types/event/index.js.map +1 -1
  103. package/dist/esm/types/event/saas-event-properties.d.ts +47 -0
  104. package/dist/esm/types/event/saas-event-properties.js +8 -0
  105. package/dist/esm/types/event/saas-event-properties.js.map +1 -0
  106. package/dist/esm/types/event/tracking-event.d.ts +5 -2
  107. package/package.json +1 -1
  108. package/dist/cjs/types/api/notification-settings.d.ts +0 -23
  109. package/dist/cjs/types/api/notification-settings.js +0 -107
  110. package/dist/cjs/types/api/notification-settings.js.map +0 -1
  111. package/dist/esm/types/api/notification-settings.d.ts +0 -23
  112. package/dist/esm/types/api/notification-settings.js +0 -103
  113. package/dist/esm/types/api/notification-settings.js.map +0 -1
@@ -3,3 +3,4 @@ export * from './context/index.js';
3
3
  export * from './tracking-event.js';
4
4
  export * from './metric-event.js';
5
5
  export * from './log-event.js';
6
+ export * from './saas-event-properties.js';
@@ -3,4 +3,5 @@ export * from './context/index.js';
3
3
  export * from './tracking-event.js';
4
4
  export * from './metric-event.js';
5
5
  export * from './log-event.js';
6
+ export * from './saas-event-properties.js';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/types/event/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/types/event/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { USER_ROLES } from '../api/user-account.js';
2
+ export declare enum BILLING_INTERVAL {
3
+ DAY = "day",
4
+ WEEK = "week",
5
+ MONTH = "month",
6
+ YEAR = "year"
7
+ }
8
+ export interface SaaSEventProperties {
9
+ accountId?: string;
10
+ accountName?: string;
11
+ accountCreatedAt?: string;
12
+ userId?: string;
13
+ userEmail?: string;
14
+ userRole?: USER_ROLES;
15
+ subscriptionId?: string;
16
+ planId?: string;
17
+ planName?: string;
18
+ billingInterval?: BILLING_INTERVAL;
19
+ mrr?: number;
20
+ arr?: number;
21
+ mrrDelta?: number;
22
+ ltv?: number;
23
+ trialStartDate?: string;
24
+ trialEndDate?: string;
25
+ trialDaysRemaining?: number;
26
+ usageInfo?: {
27
+ currentUsage?: number;
28
+ limit?: number;
29
+ usagePercentage?: number;
30
+ };
31
+ invoiceId?: string;
32
+ amount?: number;
33
+ currency?: string;
34
+ failureReason?: string;
35
+ seatCount?: number;
36
+ seatDelta?: number;
37
+ addonId?: string;
38
+ addonName?: string;
39
+ featureId?: string;
40
+ featureName?: string;
41
+ milestoneId?: string;
42
+ milestoneName?: string;
43
+ inactiveDays?: number;
44
+ cancelReason?: string;
45
+ cancelFeedback?: string;
46
+ cancelledAt?: string;
47
+ }
@@ -0,0 +1,8 @@
1
+ export var BILLING_INTERVAL;
2
+ (function (BILLING_INTERVAL) {
3
+ BILLING_INTERVAL["DAY"] = "day";
4
+ BILLING_INTERVAL["WEEK"] = "week";
5
+ BILLING_INTERVAL["MONTH"] = "month";
6
+ BILLING_INTERVAL["YEAR"] = "year";
7
+ })(BILLING_INTERVAL || (BILLING_INTERVAL = {}));
8
+ //# sourceMappingURL=saas-event-properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saas-event-properties.js","sourceRoot":"","sources":["../../../../src/types/event/saas-event-properties.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,iCAAa,CAAA;IACb,mCAAe,CAAA;IACf,iCAAa,CAAA;AACf,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,QAK3B"}
@@ -1,11 +1,11 @@
1
1
  import { InternalEvent } from './base/event.js';
2
2
  import { AddressInfo } from '../common/address.js';
3
+ import { SaaSEventProperties } from './saas-event-properties.js';
3
4
  export interface TrackingEvent extends InternalEvent {
4
5
  data?: TrackingEventData;
5
6
  testCode?: string;
6
7
  }
7
- export interface TrackingEventData {
8
- [key: string]: any;
8
+ export interface EcommerceEventProperties {
9
9
  isSyntheticWebhookEvent?: boolean;
10
10
  firstName?: string;
11
11
  lastName?: string;
@@ -38,6 +38,9 @@ export interface TrackingEventData {
38
38
  totalUnitCost?: number;
39
39
  totalUnitMargin?: number;
40
40
  }
41
+ export interface TrackingEventData extends EcommerceEventProperties, SaaSEventProperties {
42
+ [key: string]: any;
43
+ }
41
44
  export interface GenericContent {
42
45
  [key: string]: any;
43
46
  content_type?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adtrackify/at-tracking-event-types",
3
- "version": "3.5.16",
3
+ "version": "3.5.18",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist/*"
@@ -1,23 +0,0 @@
1
- import { TRACKING_EVENT_NAME } from '../event/base/event-name-enum.js';
2
- import { USER_ROLES } from './user-account.js';
3
- export declare enum NOTIFICATION_CATEGORY {
4
- ACCOUNT_MANAGEMENT = "account_management",
5
- SUBSCRIPTION = "subscription",
6
- USAGE = "usage",
7
- SYSTEM_HEALTH = "system_health"
8
- }
9
- export interface NotificationSetting {
10
- key: string;
11
- displayName: string;
12
- description: string;
13
- category: NOTIFICATION_CATEGORY;
14
- allowedRoles: USER_ROLES[];
15
- events: TRACKING_EVENT_NAME[];
16
- }
17
- export interface NotificationPreferences {
18
- categories: Partial<Record<NOTIFICATION_CATEGORY, boolean>>;
19
- settings?: Partial<Record<string, boolean>>;
20
- updatedAt?: string;
21
- }
22
- export declare const NOTIFICATION_SETTINGS: NotificationSetting[];
23
- export declare function getSettingsForEvent(eventName: TRACKING_EVENT_NAME): NotificationSetting[];
@@ -1,107 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSettingsForEvent = exports.NOTIFICATION_SETTINGS = exports.NOTIFICATION_CATEGORY = void 0;
4
- const event_name_enum_js_1 = require("../event/base/event-name-enum.js");
5
- const user_account_js_1 = require("./user-account.js");
6
- var NOTIFICATION_CATEGORY;
7
- (function (NOTIFICATION_CATEGORY) {
8
- NOTIFICATION_CATEGORY["ACCOUNT_MANAGEMENT"] = "account_management";
9
- NOTIFICATION_CATEGORY["SUBSCRIPTION"] = "subscription";
10
- NOTIFICATION_CATEGORY["USAGE"] = "usage";
11
- NOTIFICATION_CATEGORY["SYSTEM_HEALTH"] = "system_health";
12
- })(NOTIFICATION_CATEGORY = exports.NOTIFICATION_CATEGORY || (exports.NOTIFICATION_CATEGORY = {}));
13
- exports.NOTIFICATION_SETTINGS = [
14
- {
15
- key: 'team_member_invited',
16
- displayName: 'Team member invited',
17
- description: 'When a new user is invited to join the team',
18
- category: NOTIFICATION_CATEGORY.ACCOUNT_MANAGEMENT,
19
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN, user_account_js_1.USER_ROLES.MANAGER],
20
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_INVITATION_NEW_USER],
21
- },
22
- {
23
- key: 'team_member_added',
24
- displayName: 'Team member added',
25
- description: 'When an existing user is added to the account',
26
- category: NOTIFICATION_CATEGORY.ACCOUNT_MANAGEMENT,
27
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN, user_account_js_1.USER_ROLES.MANAGER],
28
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_INVITATION_EXISTING_USER],
29
- },
30
- {
31
- key: 'subscription_cancelled',
32
- displayName: 'Subscription cancelled',
33
- description: 'When your subscription is cancelled',
34
- category: NOTIFICATION_CATEGORY.SUBSCRIPTION,
35
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN],
36
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_CANCELLED],
37
- },
38
- {
39
- key: 'payment_failed',
40
- displayName: 'Payment failed',
41
- description: 'When a payment attempt fails',
42
- category: NOTIFICATION_CATEGORY.SUBSCRIPTION,
43
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN],
44
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_PAYMENT_FAILED],
45
- },
46
- {
47
- key: 'trial_ending_soon',
48
- displayName: 'Trial ending soon',
49
- description: 'When your trial period is ending',
50
- category: NOTIFICATION_CATEGORY.SUBSCRIPTION,
51
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN],
52
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_TRIAL_ENDING_SOON],
53
- },
54
- {
55
- key: 'approaching_usage_limit',
56
- displayName: 'Approaching usage limit',
57
- description: 'When usage reaches 90% of plan limit',
58
- category: NOTIFICATION_CATEGORY.USAGE,
59
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN, user_account_js_1.USER_ROLES.MANAGER],
60
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_NEARING_USAGE_LIMIT],
61
- },
62
- {
63
- key: 'usage_limit_exceeded',
64
- displayName: 'Usage limit exceeded',
65
- description: 'When usage exceeds plan limit',
66
- category: NOTIFICATION_CATEGORY.USAGE,
67
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN, user_account_js_1.USER_ROLES.MANAGER],
68
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_OVER_USAGE_LIMIT],
69
- },
70
- {
71
- key: 'destination_unhealthy',
72
- displayName: 'Destination unhealthy',
73
- description: 'When a destination connection fails after retries',
74
- category: NOTIFICATION_CATEGORY.SYSTEM_HEALTH,
75
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN, user_account_js_1.USER_ROLES.MANAGER, user_account_js_1.USER_ROLES.MEMBER],
76
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_DESTINATION_UNHEALTHY],
77
- },
78
- {
79
- key: 'integration_unhealthy',
80
- displayName: 'Integration unhealthy',
81
- description: 'When an integration connection fails after retries',
82
- category: NOTIFICATION_CATEGORY.SYSTEM_HEALTH,
83
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN, user_account_js_1.USER_ROLES.MANAGER, user_account_js_1.USER_ROLES.MEMBER],
84
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_INTEGRATION_UNHEALTHY],
85
- },
86
- {
87
- key: 'pixel_unhealthy',
88
- displayName: 'Pixel unhealthy',
89
- description: 'When the tracking pixel fails',
90
- category: NOTIFICATION_CATEGORY.SYSTEM_HEALTH,
91
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN, user_account_js_1.USER_ROLES.MANAGER, user_account_js_1.USER_ROLES.MEMBER],
92
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_PIXEL_UNHEALTHY],
93
- },
94
- {
95
- key: 'theme_extension_unhealthy',
96
- displayName: 'Theme app extension unhealthy',
97
- description: 'When the theme app extension fails',
98
- category: NOTIFICATION_CATEGORY.SYSTEM_HEALTH,
99
- allowedRoles: [user_account_js_1.USER_ROLES.OWNER, user_account_js_1.USER_ROLES.ADMIN, user_account_js_1.USER_ROLES.MANAGER, user_account_js_1.USER_ROLES.MEMBER],
100
- events: [event_name_enum_js_1.TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_THEME_EXTENSION_UNHEALTHY],
101
- },
102
- ];
103
- function getSettingsForEvent(eventName) {
104
- return exports.NOTIFICATION_SETTINGS.filter((s) => s.events.includes(eventName));
105
- }
106
- exports.getSettingsForEvent = getSettingsForEvent;
107
- //# sourceMappingURL=notification-settings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notification-settings.js","sourceRoot":"","sources":["../../../../src/types/api/notification-settings.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import { TRACKING_EVENT_NAME } from '../event/base/event-name-enum.js';
2
- import { USER_ROLES } from './user-account.js';
3
- export declare enum NOTIFICATION_CATEGORY {
4
- ACCOUNT_MANAGEMENT = "account_management",
5
- SUBSCRIPTION = "subscription",
6
- USAGE = "usage",
7
- SYSTEM_HEALTH = "system_health"
8
- }
9
- export interface NotificationSetting {
10
- key: string;
11
- displayName: string;
12
- description: string;
13
- category: NOTIFICATION_CATEGORY;
14
- allowedRoles: USER_ROLES[];
15
- events: TRACKING_EVENT_NAME[];
16
- }
17
- export interface NotificationPreferences {
18
- categories: Partial<Record<NOTIFICATION_CATEGORY, boolean>>;
19
- settings?: Partial<Record<string, boolean>>;
20
- updatedAt?: string;
21
- }
22
- export declare const NOTIFICATION_SETTINGS: NotificationSetting[];
23
- export declare function getSettingsForEvent(eventName: TRACKING_EVENT_NAME): NotificationSetting[];
@@ -1,103 +0,0 @@
1
- import { TRACKING_EVENT_NAME } from '../event/base/event-name-enum.js';
2
- import { USER_ROLES } from './user-account.js';
3
- export var NOTIFICATION_CATEGORY;
4
- (function (NOTIFICATION_CATEGORY) {
5
- NOTIFICATION_CATEGORY["ACCOUNT_MANAGEMENT"] = "account_management";
6
- NOTIFICATION_CATEGORY["SUBSCRIPTION"] = "subscription";
7
- NOTIFICATION_CATEGORY["USAGE"] = "usage";
8
- NOTIFICATION_CATEGORY["SYSTEM_HEALTH"] = "system_health";
9
- })(NOTIFICATION_CATEGORY || (NOTIFICATION_CATEGORY = {}));
10
- export const NOTIFICATION_SETTINGS = [
11
- {
12
- key: 'team_member_invited',
13
- displayName: 'Team member invited',
14
- description: 'When a new user is invited to join the team',
15
- category: NOTIFICATION_CATEGORY.ACCOUNT_MANAGEMENT,
16
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN, USER_ROLES.MANAGER],
17
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_INVITATION_NEW_USER],
18
- },
19
- {
20
- key: 'team_member_added',
21
- displayName: 'Team member added',
22
- description: 'When an existing user is added to the account',
23
- category: NOTIFICATION_CATEGORY.ACCOUNT_MANAGEMENT,
24
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN, USER_ROLES.MANAGER],
25
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_INVITATION_EXISTING_USER],
26
- },
27
- {
28
- key: 'subscription_cancelled',
29
- displayName: 'Subscription cancelled',
30
- description: 'When your subscription is cancelled',
31
- category: NOTIFICATION_CATEGORY.SUBSCRIPTION,
32
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN],
33
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_CANCELLED],
34
- },
35
- {
36
- key: 'payment_failed',
37
- displayName: 'Payment failed',
38
- description: 'When a payment attempt fails',
39
- category: NOTIFICATION_CATEGORY.SUBSCRIPTION,
40
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN],
41
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_PAYMENT_FAILED],
42
- },
43
- {
44
- key: 'trial_ending_soon',
45
- displayName: 'Trial ending soon',
46
- description: 'When your trial period is ending',
47
- category: NOTIFICATION_CATEGORY.SUBSCRIPTION,
48
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN],
49
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_TRIAL_ENDING_SOON],
50
- },
51
- {
52
- key: 'approaching_usage_limit',
53
- displayName: 'Approaching usage limit',
54
- description: 'When usage reaches 90% of plan limit',
55
- category: NOTIFICATION_CATEGORY.USAGE,
56
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN, USER_ROLES.MANAGER],
57
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_NEARING_USAGE_LIMIT],
58
- },
59
- {
60
- key: 'usage_limit_exceeded',
61
- displayName: 'Usage limit exceeded',
62
- description: 'When usage exceeds plan limit',
63
- category: NOTIFICATION_CATEGORY.USAGE,
64
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN, USER_ROLES.MANAGER],
65
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_SUBSCRIPTION_OVER_USAGE_LIMIT],
66
- },
67
- {
68
- key: 'destination_unhealthy',
69
- displayName: 'Destination unhealthy',
70
- description: 'When a destination connection fails after retries',
71
- category: NOTIFICATION_CATEGORY.SYSTEM_HEALTH,
72
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN, USER_ROLES.MANAGER, USER_ROLES.MEMBER],
73
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_DESTINATION_UNHEALTHY],
74
- },
75
- {
76
- key: 'integration_unhealthy',
77
- displayName: 'Integration unhealthy',
78
- description: 'When an integration connection fails after retries',
79
- category: NOTIFICATION_CATEGORY.SYSTEM_HEALTH,
80
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN, USER_ROLES.MANAGER, USER_ROLES.MEMBER],
81
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_INTEGRATION_UNHEALTHY],
82
- },
83
- {
84
- key: 'pixel_unhealthy',
85
- displayName: 'Pixel unhealthy',
86
- description: 'When the tracking pixel fails',
87
- category: NOTIFICATION_CATEGORY.SYSTEM_HEALTH,
88
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN, USER_ROLES.MANAGER, USER_ROLES.MEMBER],
89
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_PIXEL_UNHEALTHY],
90
- },
91
- {
92
- key: 'theme_extension_unhealthy',
93
- displayName: 'Theme app extension unhealthy',
94
- description: 'When the theme app extension fails',
95
- category: NOTIFICATION_CATEGORY.SYSTEM_HEALTH,
96
- allowedRoles: [USER_ROLES.OWNER, USER_ROLES.ADMIN, USER_ROLES.MANAGER, USER_ROLES.MEMBER],
97
- events: [TRACKING_EVENT_NAME.INTERNAL_ACCOUNT_THEME_EXTENSION_UNHEALTHY],
98
- },
99
- ];
100
- export function getSettingsForEvent(eventName) {
101
- return NOTIFICATION_SETTINGS.filter((s) => s.events.includes(eventName));
102
- }
103
- //# sourceMappingURL=notification-settings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notification-settings.js","sourceRoot":"","sources":["../../../../src/types/api/notification-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK/C,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,kEAAyC,CAAA;IACzC,sDAA6B,CAAA;IAC7B,wCAAe,CAAA;IACf,wDAA+B,CAAA;AACjC,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC;AAqCD,MAAM,CAAC,MAAM,qBAAqB,GAA0B;IAE1D;QACE,GAAG,EAAE,qBAAqB;QAC1B,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,6CAA6C;QAC1D,QAAQ,EAAE,qBAAqB,CAAC,kBAAkB;QAClD,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC;QACtE,MAAM,EAAE,CAAC,mBAAmB,CAAC,oCAAoC,CAAC;KACnE;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,WAAW,EAAE,mBAAmB;QAChC,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,qBAAqB,CAAC,kBAAkB;QAClD,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC;QACtE,MAAM,EAAE,CAAC,mBAAmB,CAAC,yCAAyC,CAAC;KACxE;IAED;QACE,GAAG,EAAE,wBAAwB;QAC7B,WAAW,EAAE,wBAAwB;QACrC,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE,qBAAqB,CAAC,YAAY;QAC5C,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;QAClD,MAAM,EAAE,CAAC,mBAAmB,CAAC,uCAAuC,CAAC;KACtE;IACD;QACE,GAAG,EAAE,gBAAgB;QACrB,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,8BAA8B;QAC3C,QAAQ,EAAE,qBAAqB,CAAC,YAAY;QAC5C,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;QAClD,MAAM,EAAE,CAAC,mBAAmB,CAAC,4CAA4C,CAAC;KAC3E;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,WAAW,EAAE,mBAAmB;QAChC,WAAW,EAAE,kCAAkC;QAC/C,QAAQ,EAAE,qBAAqB,CAAC,YAAY;QAC5C,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;QAClD,MAAM,EAAE,CAAC,mBAAmB,CAAC,+CAA+C,CAAC;KAC9E;IAED;QACE,GAAG,EAAE,yBAAyB;QAC9B,WAAW,EAAE,yBAAyB;QACtC,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,qBAAqB,CAAC,KAAK;QACrC,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC;QACtE,MAAM,EAAE,CAAC,mBAAmB,CAAC,iDAAiD,CAAC;KAChF;IACD;QACE,GAAG,EAAE,sBAAsB;QAC3B,WAAW,EAAE,sBAAsB;QACnC,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,qBAAqB,CAAC,KAAK;QACrC,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC;QACtE,MAAM,EAAE,CAAC,mBAAmB,CAAC,8CAA8C,CAAC;KAC7E;IAED;QACE,GAAG,EAAE,uBAAuB;QAC5B,WAAW,EAAE,uBAAuB;QACpC,WAAW,EAAE,mDAAmD;QAChE,QAAQ,EAAE,qBAAqB,CAAC,aAAa;QAC7C,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC;QACzF,MAAM,EAAE,CAAC,mBAAmB,CAAC,sCAAsC,CAAC;KACrE;IACD;QACE,GAAG,EAAE,uBAAuB;QAC5B,WAAW,EAAE,uBAAuB;QACpC,WAAW,EAAE,oDAAoD;QACjE,QAAQ,EAAE,qBAAqB,CAAC,aAAa;QAC7C,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC;QACzF,MAAM,EAAE,CAAC,mBAAmB,CAAC,sCAAsC,CAAC;KACrE;IAED;QACE,GAAG,EAAE,iBAAiB;QACtB,WAAW,EAAE,iBAAiB;QAC9B,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,qBAAqB,CAAC,aAAa;QAC7C,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC;QACzF,MAAM,EAAE,CAAC,mBAAmB,CAAC,gCAAgC,CAAC;KAC/D;IACD;QACE,GAAG,EAAE,2BAA2B;QAChC,WAAW,EAAE,+BAA+B;QAC5C,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,qBAAqB,CAAC,aAAa;QAC7C,YAAY,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC;QACzF,MAAM,EAAE,CAAC,mBAAmB,CAAC,0CAA0C,CAAC;KACzE;CACF,CAAC;AAOF,MAAM,UAAU,mBAAmB,CAAC,SAA8B;IAChE,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AAC3E,CAAC"}