@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.
- package/Models/DatabaseModels/GlobalConfig.ts +19 -0
- package/Server/API/UserCallAPI.ts +19 -0
- package/Server/API/UserEmailAPI.ts +19 -0
- package/Server/API/UserPushAPI.ts +66 -22
- package/Server/API/UserSmsAPI.ts +19 -0
- package/Server/API/UserWhatsAppAPI.ts +19 -0
- package/Server/DatabaseConfig.ts +7 -0
- package/Server/EnvironmentConfig.ts +15 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1770834237091-MigrationName.ts +23 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -0
- package/Server/Services/ProjectService.ts +14 -0
- package/Server/Services/PushNotificationService.ts +136 -12
- package/Server/Services/UserNotificationRuleService.ts +153 -111
- package/Server/Utils/Monitor/Criteria/DomainMonitorCriteria.ts +142 -0
- package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +13 -0
- package/Server/Utils/Monitor/MonitorTemplateUtil.ts +21 -0
- package/Server/Utils/VM/VMRunner.ts +214 -37
- package/Types/Monitor/CriteriaFilter.ts +9 -1
- package/Types/Monitor/DomainMonitor/DomainMonitorResponse.ts +15 -0
- package/Types/Monitor/MonitorCriteriaInstance.ts +67 -0
- package/Types/Monitor/MonitorStep.ts +32 -0
- package/Types/Monitor/MonitorStepDomainMonitor.ts +33 -0
- package/Types/Monitor/MonitorType.ts +66 -2
- package/Types/Probe/ProbeMonitorResponse.ts +2 -0
- package/UI/Components/CardSelect/CardSelect.tsx +133 -67
- package/UI/Components/Forms/Types/Field.ts +7 -2
- package/build/dist/Models/DatabaseModels/GlobalConfig.js +21 -0
- package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
- package/build/dist/Server/API/UserCallAPI.js +17 -0
- package/build/dist/Server/API/UserCallAPI.js.map +1 -1
- package/build/dist/Server/API/UserEmailAPI.js +17 -0
- package/build/dist/Server/API/UserEmailAPI.js.map +1 -1
- package/build/dist/Server/API/UserPushAPI.js +50 -12
- package/build/dist/Server/API/UserPushAPI.js.map +1 -1
- package/build/dist/Server/API/UserSmsAPI.js +17 -0
- package/build/dist/Server/API/UserSmsAPI.js.map +1 -1
- package/build/dist/Server/API/UserWhatsAppAPI.js +17 -0
- package/build/dist/Server/API/UserWhatsAppAPI.js.map +1 -1
- package/build/dist/Server/DatabaseConfig.js +9 -0
- package/build/dist/Server/DatabaseConfig.js.map +1 -1
- package/build/dist/Server/EnvironmentConfig.js +5 -0
- package/build/dist/Server/EnvironmentConfig.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1770834237091-MigrationName.js +14 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1770834237091-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Services/ProjectService.js +12 -2
- package/build/dist/Server/Services/ProjectService.js.map +1 -1
- package/build/dist/Server/Services/PushNotificationService.js +74 -12
- package/build/dist/Server/Services/PushNotificationService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationRuleService.js +96 -109
- package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/DomainMonitorCriteria.js +113 -0
- package/build/dist/Server/Utils/Monitor/Criteria/DomainMonitorCriteria.js.map +1 -0
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +10 -0
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +16 -0
- package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
- package/build/dist/Server/Utils/VM/VMRunner.js +182 -20
- package/build/dist/Server/Utils/VM/VMRunner.js.map +1 -1
- package/build/dist/Types/Monitor/CriteriaFilter.js +8 -1
- package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
- package/build/dist/Types/Monitor/DomainMonitor/DomainMonitorResponse.js +2 -0
- package/build/dist/Types/Monitor/DomainMonitor/DomainMonitorResponse.js.map +1 -0
- package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +62 -0
- package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStep.js +22 -0
- package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepDomainMonitor.js +24 -0
- package/build/dist/Types/Monitor/MonitorStepDomainMonitor.js.map +1 -0
- package/build/dist/Types/Monitor/MonitorType.js +58 -2
- package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
- package/build/dist/UI/Components/CardSelect/CardSelect.js +55 -20
- package/build/dist/UI/Components/CardSelect/CardSelect.js.map +1 -1
- package/build/dist/UI/Components/Forms/Types/Field.js.map +1 -1
- package/package.json +2 -1
|
@@ -9,8 +9,22 @@ export interface CardSelectOption {
|
|
|
9
9
|
icon: IconProp;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
export interface
|
|
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
|
-
|
|
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
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
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
|
-
|
|
77
|
-
</
|
|
78
|
-
<
|
|
79
|
-
className=
|
|
80
|
-
|
|
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 {
|
|
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?:
|
|
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":"AAAA,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,eAEN,MAAM,6BAA6B,CAAC;
|
|
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":"AAAA,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,gBAEN,MAAM,8BAA8B,CAAC;
|
|
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:
|
|
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
|
-
|
|
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 =
|
|
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());
|