@oneuptime/common 9.5.12 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/Models/DatabaseModels/GlobalConfig.ts +19 -0
  2. package/Server/API/UserCallAPI.ts +19 -0
  3. package/Server/API/UserEmailAPI.ts +19 -0
  4. package/Server/API/UserPushAPI.ts +66 -22
  5. package/Server/API/UserSmsAPI.ts +19 -0
  6. package/Server/API/UserWhatsAppAPI.ts +19 -0
  7. package/Server/DatabaseConfig.ts +7 -0
  8. package/Server/EnvironmentConfig.ts +15 -0
  9. package/Server/Infrastructure/Postgres/SchemaMigrations/1770834237091-MigrationName.ts +23 -0
  10. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -0
  11. package/Server/Services/ProjectService.ts +14 -0
  12. package/Server/Services/PushNotificationService.ts +136 -12
  13. package/Server/Services/UserNotificationRuleService.ts +153 -111
  14. package/Server/Utils/Monitor/Criteria/DomainMonitorCriteria.ts +142 -0
  15. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +13 -0
  16. package/Server/Utils/Monitor/MonitorTemplateUtil.ts +21 -0
  17. package/Server/Utils/VM/VMRunner.ts +214 -37
  18. package/Types/Monitor/CriteriaFilter.ts +9 -1
  19. package/Types/Monitor/DomainMonitor/DomainMonitorResponse.ts +15 -0
  20. package/Types/Monitor/MonitorCriteriaInstance.ts +67 -0
  21. package/Types/Monitor/MonitorStep.ts +32 -0
  22. package/Types/Monitor/MonitorStepDomainMonitor.ts +33 -0
  23. package/Types/Monitor/MonitorType.ts +66 -2
  24. package/Types/Probe/ProbeMonitorResponse.ts +2 -0
  25. package/UI/Components/CardSelect/CardSelect.tsx +133 -67
  26. package/UI/Components/Forms/Types/Field.ts +7 -2
  27. package/build/dist/Models/DatabaseModels/GlobalConfig.js +21 -0
  28. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
  29. package/build/dist/Server/API/UserCallAPI.js +17 -0
  30. package/build/dist/Server/API/UserCallAPI.js.map +1 -1
  31. package/build/dist/Server/API/UserEmailAPI.js +17 -0
  32. package/build/dist/Server/API/UserEmailAPI.js.map +1 -1
  33. package/build/dist/Server/API/UserPushAPI.js +50 -12
  34. package/build/dist/Server/API/UserPushAPI.js.map +1 -1
  35. package/build/dist/Server/API/UserSmsAPI.js +17 -0
  36. package/build/dist/Server/API/UserSmsAPI.js.map +1 -1
  37. package/build/dist/Server/API/UserWhatsAppAPI.js +17 -0
  38. package/build/dist/Server/API/UserWhatsAppAPI.js.map +1 -1
  39. package/build/dist/Server/DatabaseConfig.js +9 -0
  40. package/build/dist/Server/DatabaseConfig.js.map +1 -1
  41. package/build/dist/Server/EnvironmentConfig.js +5 -0
  42. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  43. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1770834237091-MigrationName.js +14 -0
  44. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1770834237091-MigrationName.js.map +1 -0
  45. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -0
  46. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  47. package/build/dist/Server/Services/ProjectService.js +12 -2
  48. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  49. package/build/dist/Server/Services/PushNotificationService.js +74 -12
  50. package/build/dist/Server/Services/PushNotificationService.js.map +1 -1
  51. package/build/dist/Server/Services/UserNotificationRuleService.js +96 -109
  52. package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
  53. package/build/dist/Server/Utils/Monitor/Criteria/DomainMonitorCriteria.js +113 -0
  54. package/build/dist/Server/Utils/Monitor/Criteria/DomainMonitorCriteria.js.map +1 -0
  55. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +10 -0
  56. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  57. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +16 -0
  58. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
  59. package/build/dist/Server/Utils/VM/VMRunner.js +182 -20
  60. package/build/dist/Server/Utils/VM/VMRunner.js.map +1 -1
  61. package/build/dist/Types/Monitor/CriteriaFilter.js +8 -1
  62. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  63. package/build/dist/Types/Monitor/DomainMonitor/DomainMonitorResponse.js +2 -0
  64. package/build/dist/Types/Monitor/DomainMonitor/DomainMonitorResponse.js.map +1 -0
  65. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +62 -0
  66. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  67. package/build/dist/Types/Monitor/MonitorStep.js +22 -0
  68. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  69. package/build/dist/Types/Monitor/MonitorStepDomainMonitor.js +24 -0
  70. package/build/dist/Types/Monitor/MonitorStepDomainMonitor.js.map +1 -0
  71. package/build/dist/Types/Monitor/MonitorType.js +58 -2
  72. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  73. package/build/dist/UI/Components/CardSelect/CardSelect.js +55 -20
  74. package/build/dist/UI/Components/CardSelect/CardSelect.js.map +1 -1
  75. package/build/dist/UI/Components/Forms/Types/Field.js.map +1 -1
  76. package/package.json +2 -1
@@ -9,8 +9,22 @@ export interface CardSelectOption {
9
9
  icon: IconProp;
10
10
  }
11
11
 
12
- export interface ComponentProps {
12
+ export interface CardSelectOptionGroup {
13
+ label: string;
13
14
  options: Array<CardSelectOption>;
15
+ }
16
+
17
+ export function isCardSelectOptionGroup(
18
+ option: CardSelectOption | CardSelectOptionGroup,
19
+ ): option is CardSelectOptionGroup {
20
+ return (
21
+ (option as CardSelectOptionGroup).label !== undefined &&
22
+ Array.isArray((option as CardSelectOptionGroup).options)
23
+ );
24
+ }
25
+
26
+ export interface ComponentProps {
27
+ options: Array<CardSelectOption | CardSelectOptionGroup>;
14
28
  value?: string | undefined;
15
29
  onChange: (value: string) => void;
16
30
  error?: string | undefined;
@@ -18,80 +32,132 @@ export interface ComponentProps {
18
32
  dataTestId?: string | undefined;
19
33
  }
20
34
 
35
+ interface RenderGroup {
36
+ label: string | null;
37
+ options: Array<CardSelectOption>;
38
+ }
39
+
21
40
  const CardSelect: FunctionComponent<ComponentProps> = (
22
41
  props: ComponentProps,
23
42
  ): ReactElement => {
43
+ // Normalize options into render groups
44
+ const groups: Array<RenderGroup> = [];
45
+ let ungroupedOptions: Array<CardSelectOption> = [];
46
+
47
+ for (const option of props.options) {
48
+ if (isCardSelectOptionGroup(option)) {
49
+ // Flush any accumulated ungrouped options first
50
+ if (ungroupedOptions.length > 0) {
51
+ groups.push({ label: null, options: ungroupedOptions });
52
+ ungroupedOptions = [];
53
+ }
54
+ groups.push({ label: option.label, options: option.options });
55
+ } else {
56
+ ungroupedOptions.push(option);
57
+ }
58
+ }
59
+
60
+ if (ungroupedOptions.length > 0) {
61
+ groups.push({ label: null, options: ungroupedOptions });
62
+ }
63
+
64
+ let cardIndex: number = 0;
65
+
24
66
  return (
25
67
  <div data-testid={props.dataTestId}>
26
- <div
27
- role="radiogroup"
28
- aria-label="Select an option"
29
- className="grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3"
30
- >
31
- {props.options.map((option: CardSelectOption, index: number) => {
32
- const isSelected: boolean = props.value === option.value;
33
-
68
+ <div role="radiogroup" aria-label="Select an option">
69
+ {groups.map((group: RenderGroup, groupIndex: number) => {
34
70
  return (
35
- <div
36
- key={index}
37
- tabIndex={props.tabIndex ? props.tabIndex + index : index}
38
- onClick={() => {
39
- props.onChange(option.value);
40
- }}
41
- onKeyDown={(e: React.KeyboardEvent) => {
42
- if (e.key === "Enter" || e.key === " ") {
43
- e.preventDefault();
44
- props.onChange(option.value);
45
- }
46
- }}
47
- className={`relative flex cursor-pointer rounded-lg border p-4 shadow-sm focus:outline-none transition-all duration-200 hover:border-indigo-400 hover:shadow-md ${
48
- isSelected
49
- ? "border-indigo-500 bg-indigo-50/50"
50
- : "border-gray-200 bg-white"
51
- }`}
52
- role="radio"
53
- aria-checked={isSelected}
54
- data-testid={`card-select-option-${option.value}`}
55
- >
56
- <div className="flex w-full items-start">
57
- <div
58
- className={`flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg ${
59
- isSelected ? "bg-indigo-100" : "bg-gray-100"
60
- }`}
61
- >
62
- <Icon
63
- icon={option.icon}
64
- size={SizeProp.Large}
65
- className={`h-5 w-5 ${
66
- isSelected ? "text-indigo-600" : "text-gray-600"
67
- }`}
68
- />
69
- </div>
70
- <div className="ml-4 flex-1">
71
- <span
72
- className={`block text-sm font-semibold ${
73
- isSelected ? "text-gray-900" : "text-gray-900"
74
- }`}
71
+ <div key={groupIndex} className={groupIndex > 0 ? "mt-8" : ""}>
72
+ {group.label && (
73
+ <div className="relative mb-4">
74
+ <div
75
+ className="absolute inset-0 flex items-center"
76
+ aria-hidden="true"
75
77
  >
76
- {option.title}
77
- </span>
78
- <span
79
- className={`mt-1 block text-sm ${
80
- isSelected ? "text-gray-600" : "text-gray-500"
81
- }`}
82
- >
83
- {option.description}
84
- </span>
85
- </div>
86
- {isSelected && (
87
- <div className="flex-shrink-0 ml-2">
88
- <Icon
89
- icon={IconProp.CheckCircle}
90
- size={SizeProp.Large}
91
- className="h-5 w-5 text-indigo-500"
92
- />
78
+ <div className="w-full border-t border-gray-200"></div>
79
+ </div>
80
+ <div className="relative flex justify-start">
81
+ <span className="bg-white pr-3 text-xs font-semibold uppercase tracking-wider text-gray-400">
82
+ {group.label}
83
+ </span>
93
84
  </div>
94
- )}
85
+ </div>
86
+ )}
87
+ <div className="grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3">
88
+ {group.options.map((option: CardSelectOption) => {
89
+ const isSelected: boolean = props.value === option.value;
90
+ const currentIndex: number = cardIndex++;
91
+
92
+ return (
93
+ <div
94
+ key={option.value}
95
+ tabIndex={
96
+ props.tabIndex
97
+ ? props.tabIndex + currentIndex
98
+ : currentIndex
99
+ }
100
+ onClick={() => {
101
+ props.onChange(option.value);
102
+ }}
103
+ onKeyDown={(e: React.KeyboardEvent) => {
104
+ if (e.key === "Enter" || e.key === " ") {
105
+ e.preventDefault();
106
+ props.onChange(option.value);
107
+ }
108
+ }}
109
+ className={`relative flex cursor-pointer rounded-lg border p-4 shadow-sm focus:outline-none transition-all duration-200 hover:border-indigo-400 hover:shadow-md ${
110
+ isSelected
111
+ ? "border-indigo-500 bg-indigo-50/50"
112
+ : "border-gray-200 bg-white"
113
+ }`}
114
+ role="radio"
115
+ aria-checked={isSelected}
116
+ data-testid={`card-select-option-${option.value}`}
117
+ >
118
+ <div className="flex w-full items-start">
119
+ <div
120
+ className={`flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg ${
121
+ isSelected ? "bg-indigo-100" : "bg-gray-100"
122
+ }`}
123
+ >
124
+ <Icon
125
+ icon={option.icon}
126
+ size={SizeProp.Large}
127
+ className={`h-5 w-5 ${
128
+ isSelected ? "text-indigo-600" : "text-gray-600"
129
+ }`}
130
+ />
131
+ </div>
132
+ <div className="ml-4 flex-1">
133
+ <span
134
+ className={`block text-sm font-semibold ${
135
+ isSelected ? "text-gray-900" : "text-gray-900"
136
+ }`}
137
+ >
138
+ {option.title}
139
+ </span>
140
+ <span
141
+ className={`mt-1 block text-sm ${
142
+ isSelected ? "text-gray-600" : "text-gray-500"
143
+ }`}
144
+ >
145
+ {option.description}
146
+ </span>
147
+ </div>
148
+ {isSelected && (
149
+ <div className="flex-shrink-0 ml-2">
150
+ <Icon
151
+ icon={IconProp.CheckCircle}
152
+ size={SizeProp.Large}
153
+ className="h-5 w-5 text-indigo-500"
154
+ />
155
+ </div>
156
+ )}
157
+ </div>
158
+ </div>
159
+ );
160
+ })}
95
161
  </div>
96
162
  </div>
97
163
  );
@@ -3,7 +3,10 @@ import {
3
3
  CategoryCheckboxOption,
4
4
  CheckboxCategory,
5
5
  } from "../../CategoryCheckbox/CategoryCheckboxTypes";
6
- import { CardSelectOption } from "../../CardSelect/CardSelect";
6
+ import {
7
+ CardSelectOption,
8
+ CardSelectOptionGroup,
9
+ } from "../../CardSelect/CardSelect";
7
10
  import { DropdownOption, DropdownOptionGroup } from "../../Dropdown/Dropdown";
8
11
  import { RadioButton } from "../../RadioButtons/GroupRadioButtons";
9
12
  import FormFieldSchemaType from "./FormFieldSchemaType";
@@ -51,7 +54,9 @@ export default interface Field<TEntity> {
51
54
  stepId?: string | undefined;
52
55
  required?: boolean | ((item: FormValues<TEntity>) => boolean) | undefined;
53
56
  dropdownOptions?: Array<DropdownOption | DropdownOptionGroup> | undefined;
54
- cardSelectOptions?: Array<CardSelectOption> | undefined;
57
+ cardSelectOptions?:
58
+ | Array<CardSelectOption | CardSelectOptionGroup>
59
+ | undefined;
55
60
  fetchDropdownOptions?:
56
61
  | ((
57
62
  item: FormValues<TEntity>,
@@ -33,6 +33,7 @@ let GlobalConfig = class GlobalConfig extends GlobalConfigModel {
33
33
  constructor() {
34
34
  super(...arguments);
35
35
  this.disableSignup = undefined;
36
+ this.disableUserProjectCreation = undefined;
36
37
  // SMTP Settings.
37
38
  this.isSMTPSecure = undefined;
38
39
  this.smtpUsername = undefined;
@@ -86,6 +87,26 @@ __decorate([
86
87
  }),
87
88
  __metadata("design:type", Boolean)
88
89
  ], GlobalConfig.prototype, "disableSignup", void 0);
90
+ __decorate([
91
+ ColumnAccessControl({
92
+ create: [],
93
+ read: [],
94
+ update: [],
95
+ }),
96
+ TableColumn({
97
+ type: TableColumnType.Boolean,
98
+ title: "Disable User Project Creation",
99
+ description: "Only master admins can create projects when enabled.",
100
+ defaultValue: false,
101
+ }),
102
+ Column({
103
+ type: ColumnType.Boolean,
104
+ nullable: true,
105
+ default: false,
106
+ unique: true,
107
+ }),
108
+ __metadata("design:type", Boolean)
109
+ ], GlobalConfig.prototype, "disableUserProjectCreation", void 0);
89
110
  __decorate([
90
111
  ColumnAccessControl({
91
112
  create: [],
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalConfig.js","sourceRoot":"","sources":["../../../../Models/DatabaseModels/GlobalConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GlobalConfig.js","sourceRoot":"","sources":["../../../../Models/DatabaseModels/GlobalConfig.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
1
  import UserMiddleware from "../Middleware/UserAuthorization";
2
2
  import UserCallService from "../Services/UserCallService";
3
+ import UserNotificationRuleService from "../Services/UserNotificationRuleService";
3
4
  import Response from "../Utils/Response";
5
+ import logger from "../Utils/Logger";
4
6
  import BaseAPI from "./BaseAPI";
5
7
  import BadDataException from "../../Types/Exception/BadDataException";
8
+ import ObjectID from "../../Types/ObjectID";
6
9
  import UserCall from "../../Models/DatabaseModels/UserCall";
7
10
  export default class UserCallAPI extends BaseAPI {
8
11
  constructor() {
@@ -25,6 +28,7 @@ export default class UserCallAPI extends BaseAPI {
25
28
  },
26
29
  select: {
27
30
  userId: true,
31
+ projectId: true,
28
32
  verificationCode: true,
29
33
  },
30
34
  });
@@ -48,6 +52,19 @@ export default class UserCallAPI extends BaseAPI {
48
52
  isVerified: true,
49
53
  },
50
54
  });
55
+ // Create default notification rules for this verified call number
56
+ try {
57
+ await UserNotificationRuleService.addDefaultNotificationRulesForVerifiedMethod({
58
+ projectId: new ObjectID(item.projectId.toString()),
59
+ userId: new ObjectID(item.userId.toString()),
60
+ notificationMethod: {
61
+ userCallId: item.id,
62
+ },
63
+ });
64
+ }
65
+ catch (e) {
66
+ logger.error(e);
67
+ }
51
68
  return Response.sendEmptySuccessResponse(req, res);
52
69
  }
53
70
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"UserCallAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserCallAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UserCallAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserCallAPI.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
1
  import UserMiddleware from "../Middleware/UserAuthorization";
2
2
  import UserEmailService from "../Services/UserEmailService";
3
+ import UserNotificationRuleService from "../Services/UserNotificationRuleService";
3
4
  import Response from "../Utils/Response";
5
+ import logger from "../Utils/Logger";
4
6
  import BaseAPI from "./BaseAPI";
5
7
  import BadDataException from "../../Types/Exception/BadDataException";
8
+ import ObjectID from "../../Types/ObjectID";
6
9
  import UserEmail from "../../Models/DatabaseModels/UserEmail";
7
10
  export default class UserEmailAPI extends BaseAPI {
8
11
  constructor() {
@@ -26,6 +29,7 @@ export default class UserEmailAPI extends BaseAPI {
26
29
  },
27
30
  select: {
28
31
  userId: true,
32
+ projectId: true,
29
33
  verificationCode: true,
30
34
  },
31
35
  });
@@ -49,6 +53,19 @@ export default class UserEmailAPI extends BaseAPI {
49
53
  isVerified: true,
50
54
  },
51
55
  });
56
+ // Create default notification rules for this verified email
57
+ try {
58
+ await UserNotificationRuleService.addDefaultNotificationRulesForVerifiedMethod({
59
+ projectId: new ObjectID(item.projectId.toString()),
60
+ userId: new ObjectID(item.userId.toString()),
61
+ notificationMethod: {
62
+ userEmailId: item.id,
63
+ },
64
+ });
65
+ }
66
+ catch (e) {
67
+ logger.error(e);
68
+ }
52
69
  return Response.sendEmptySuccessResponse(req, res);
53
70
  }
54
71
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"UserEmailAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserEmailAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UserEmailAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserEmailAPI.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,32 @@
1
1
  import UserMiddleware from "../Middleware/UserAuthorization";
2
2
  import UserPushService from "../Services/UserPushService";
3
+ import UserNotificationRuleService from "../Services/UserNotificationRuleService";
3
4
  import PushNotificationService from "../Services/PushNotificationService";
4
5
  import PushNotificationUtil from "../Utils/PushNotificationUtil";
6
+ import logger from "../Utils/Logger";
5
7
  import Response from "../Utils/Response";
6
8
  import BaseAPI from "./BaseAPI";
7
9
  import BadDataException from "../../Types/Exception/BadDataException";
10
+ import NotAuthenticatedException from "../../Types/Exception/NotAuthenticatedException";
8
11
  import ObjectID from "../../Types/ObjectID";
9
12
  import PushDeviceType from "../../Types/PushNotification/PushDeviceType";
10
13
  import UserPush from "../../Models/DatabaseModels/UserPush";
14
+ function getAuthenticatedUserId(req) {
15
+ var _a;
16
+ const userId = (_a = req
17
+ .userAuthorization) === null || _a === void 0 ? void 0 : _a.userId;
18
+ if (!userId) {
19
+ throw new NotAuthenticatedException("You must be logged in to perform this action.");
20
+ }
21
+ return userId;
22
+ }
11
23
  export default class UserPushAPI extends BaseAPI {
12
24
  constructor() {
13
25
  super(UserPush, UserPushService);
14
26
  this.router.post(`/user-push/register`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
15
27
  try {
16
28
  req = req;
29
+ const userId = getAuthenticatedUserId(req);
17
30
  if (!req.body.deviceToken) {
18
31
  return Response.sendErrorResponse(req, res, new BadDataException("Device token is required"));
19
32
  }
@@ -28,7 +41,7 @@ export default class UserPushAPI extends BaseAPI {
28
41
  // Check if device is already registered
29
42
  const existingDevice = await this.service.findOneBy({
30
43
  query: {
31
- userId: req.userAuthorization.userId,
44
+ userId: userId,
32
45
  projectId: new ObjectID(req.body.projectId),
33
46
  deviceToken: req.body.deviceToken,
34
47
  },
@@ -40,12 +53,11 @@ export default class UserPushAPI extends BaseAPI {
40
53
  },
41
54
  });
42
55
  if (existingDevice) {
43
- // Mark as used and return a specific response indicating device was already registered
44
- throw new BadDataException("This device is already registered for push notifications");
56
+ return Response.sendErrorResponse(req, res, new BadDataException("This device is already registered for push notifications"));
45
57
  }
46
58
  // Create new device registration
47
59
  const userPush = new UserPush();
48
- userPush.userId = req.userAuthorization.userId;
60
+ userPush.userId = userId;
49
61
  userPush.projectId = new ObjectID(req.body.projectId);
50
62
  userPush.deviceToken = req.body.deviceToken;
51
63
  userPush.deviceType = req.body.deviceType;
@@ -57,6 +69,19 @@ export default class UserPushAPI extends BaseAPI {
57
69
  isRoot: true,
58
70
  },
59
71
  });
72
+ // Create default notification rules for this registered push device
73
+ try {
74
+ await UserNotificationRuleService.addDefaultNotificationRulesForVerifiedMethod({
75
+ projectId: new ObjectID(req.body.projectId),
76
+ userId,
77
+ notificationMethod: {
78
+ userPushId: savedDevice.id,
79
+ },
80
+ });
81
+ }
82
+ catch (e) {
83
+ logger.error(e);
84
+ }
60
85
  return Response.sendJsonObjectResponse(req, res, {
61
86
  success: true,
62
87
  deviceId: savedDevice._id.toString(),
@@ -69,11 +94,10 @@ export default class UserPushAPI extends BaseAPI {
69
94
  this.router.post(`/user-push/unregister`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
70
95
  try {
71
96
  req = req;
97
+ const userId = getAuthenticatedUserId(req);
72
98
  if (!req.body.deviceToken) {
73
99
  return Response.sendErrorResponse(req, res, new BadDataException("Device token is required"));
74
100
  }
75
- const userId = req.userAuthorization
76
- .userId;
77
101
  await this.service.deleteBy({
78
102
  query: {
79
103
  userId: userId,
@@ -98,6 +122,7 @@ export default class UserPushAPI extends BaseAPI {
98
122
  var _a;
99
123
  try {
100
124
  req = req;
125
+ const userId = getAuthenticatedUserId(req);
101
126
  if (!req.params["deviceId"]) {
102
127
  return Response.sendErrorResponse(req, res, new BadDataException("Device ID is required"));
103
128
  }
@@ -120,8 +145,7 @@ export default class UserPushAPI extends BaseAPI {
120
145
  return Response.sendErrorResponse(req, res, new BadDataException("Device not found"));
121
146
  }
122
147
  // Check if the device belongs to the current user
123
- if (((_a = device.userId) === null || _a === void 0 ? void 0 : _a.toString()) !==
124
- req.userAuthorization.userId.toString()) {
148
+ if (((_a = device.userId) === null || _a === void 0 ? void 0 : _a.toString()) !== userId.toString()) {
125
149
  return Response.sendErrorResponse(req, res, new BadDataException("Unauthorized access to device"));
126
150
  }
127
151
  if (!device.isVerified) {
@@ -166,6 +190,7 @@ export default class UserPushAPI extends BaseAPI {
166
190
  var _a;
167
191
  try {
168
192
  req = req;
193
+ const userId = getAuthenticatedUserId(req);
169
194
  if (!req.params["deviceId"]) {
170
195
  return Response.sendErrorResponse(req, res, new BadDataException("Device ID is required"));
171
196
  }
@@ -176,17 +201,30 @@ export default class UserPushAPI extends BaseAPI {
176
201
  },
177
202
  select: {
178
203
  userId: true,
204
+ projectId: true,
179
205
  },
180
206
  });
181
207
  if (!device) {
182
208
  return Response.sendErrorResponse(req, res, new BadDataException("Device not found"));
183
209
  }
184
210
  // Check if the device belongs to the current user
185
- if (((_a = device.userId) === null || _a === void 0 ? void 0 : _a.toString()) !==
186
- req.userAuthorization.userId.toString()) {
211
+ if (((_a = device.userId) === null || _a === void 0 ? void 0 : _a.toString()) !== userId.toString()) {
187
212
  return Response.sendErrorResponse(req, res, new BadDataException("Unauthorized access to device"));
188
213
  }
189
214
  await this.service.verifyDevice(device._id.toString());
215
+ // Create default notification rules for this verified push device
216
+ try {
217
+ await UserNotificationRuleService.addDefaultNotificationRulesForVerifiedMethod({
218
+ projectId: new ObjectID(device.projectId.toString()),
219
+ userId,
220
+ notificationMethod: {
221
+ userPushId: device.id,
222
+ },
223
+ });
224
+ }
225
+ catch (e) {
226
+ logger.error(e);
227
+ }
190
228
  return Response.sendEmptySuccessResponse(req, res);
191
229
  }
192
230
  catch (error) {
@@ -197,6 +235,7 @@ export default class UserPushAPI extends BaseAPI {
197
235
  var _a;
198
236
  try {
199
237
  req = req;
238
+ const userId = getAuthenticatedUserId(req);
200
239
  if (!req.params["deviceId"]) {
201
240
  return Response.sendErrorResponse(req, res, new BadDataException("Device ID is required"));
202
241
  }
@@ -213,8 +252,7 @@ export default class UserPushAPI extends BaseAPI {
213
252
  return Response.sendErrorResponse(req, res, new BadDataException("Device not found"));
214
253
  }
215
254
  // Check if the device belongs to the current user
216
- if (((_a = device.userId) === null || _a === void 0 ? void 0 : _a.toString()) !==
217
- req.userAuthorization.userId.toString()) {
255
+ if (((_a = device.userId) === null || _a === void 0 ? void 0 : _a.toString()) !== userId.toString()) {
218
256
  return Response.sendErrorResponse(req, res, new BadDataException("Unauthorized access to device"));
219
257
  }
220
258
  await this.service.unverifyDevice(device._id.toString());