@openinc/parse-server-opendash 2.4.103 → 3.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/dist/featuremap.json +4 -1
- package/dist/features/config/helper/baseOptions.d.ts +2 -0
- package/dist/features/config/helper/baseOptions.js +50 -0
- package/dist/features/config/helper/customOptions.d.ts +2 -0
- package/dist/{config.js → features/config/helper/customOptions.js} +2 -4
- package/dist/features/config/index.d.ts +6 -0
- package/dist/features/config/index.js +16 -0
- package/dist/features/config/services/ConfigInstance.d.ts +5 -0
- package/dist/features/config/services/ConfigInstance.js +13 -0
- package/dist/features/config/states/Config.d.ts +20 -0
- package/dist/{helper → features/config/states}/Config.js +86 -52
- package/dist/features/config/types/configTypes.d.ts +35 -0
- package/dist/features/cron/index.d.ts +1 -0
- package/dist/features/notifications/index.d.ts +4 -0
- package/dist/features/notifications/index.js +13 -0
- package/dist/features/notifications/services/registerNotification.d.ts +7 -0
- package/dist/features/notifications/services/registerNotification.js +80 -0
- package/dist/features/notifications/states/NotificationClass.d.ts +12 -0
- package/dist/features/notifications/states/NotificationClass.js +21 -0
- package/dist/features/notifications/types/NotificationTypes.d.ts +11 -0
- package/dist/features/notifications/types/NotificationTypes.js +2 -0
- package/dist/features/openservice/index.d.ts +2 -0
- package/dist/features/openservice/index.js +5 -0
- package/dist/{helper/TranslationKeys.d.ts → features/openservice/types/OpenserviceTranslationKeys.d.ts} +1 -1
- package/dist/{helper/TranslationKeys.js → features/openservice/types/OpenserviceTranslationKeys.js} +5 -5
- package/dist/{helper → features/openservice/types}/TicketData.d.ts +1 -1
- package/dist/features/openservice/types/TicketData.js +2 -0
- package/dist/features/openware/helper/getToken.d.ts +1 -0
- package/dist/features/openware/helper/getToken.js +25 -0
- package/dist/features/openware/index.d.ts +7 -0
- package/dist/features/openware/index.js +7 -0
- package/dist/features/openware/services/publishDataItem.d.ts +2 -0
- package/dist/{ow.js → features/openware/services/publishDataItem.js} +5 -23
- package/dist/features/openware/types/DataItemInterface.d.ts +10 -0
- package/dist/features/openware/types/DataItemInterface.js +2 -0
- package/dist/features/openware/types/DataItemValueInterface.d.ts +4 -0
- package/dist/features/openware/types/DataItemValueInterface.js +2 -0
- package/dist/features/openware/types/DataItemValueTypeInterface.d.ts +6 -0
- package/dist/features/openware/types/DataItemValueTypeInterface.js +2 -0
- package/dist/features/openware/types/DataItemValueTypeTypeField.d.ts +1 -0
- package/dist/features/openware/types/DataItemValueTypeTypeField.js +2 -0
- package/dist/{app_types → features/openware/types}/OpenWareTicketObject.d.ts +1 -1
- package/dist/features/openware/types/OpenWareTicketObject.js +2 -0
- package/dist/features/permissions/index.d.ts +4 -0
- package/dist/features/permissions/index.js +13 -0
- package/dist/features/permissions/services/registerPermissions.d.ts +7 -0
- package/dist/features/permissions/services/registerPermissions.js +80 -0
- package/dist/{helper/registerPermissions.d.ts → features/permissions/states/PermissionClass.d.ts} +2 -12
- package/dist/features/permissions/states/PermissionClass.js +21 -0
- package/dist/features/permissions/types/PermissionTypes.d.ts +11 -0
- package/dist/features/permissions/types/PermissionTypes.js +2 -0
- package/dist/functions/opendash-geo-features.js +5 -5
- package/dist/functions/openinc-auth-signup.js +6 -5
- package/dist/functions/openinc-auth.common.js +3 -3
- package/dist/functions/openinc-config.js +2 -2
- package/dist/functions/openinc-geo-google.common.d.ts +1 -1
- package/dist/functions/openinc-geo-google.common.js +3 -4
- package/dist/functions/openinc-geo-graphhopper.common.d.ts +1 -1
- package/dist/functions/openinc-geo-graphhopper.common.js +4 -4
- package/dist/functions/openinc-openservice-save-ticket-data.js +45 -7
- package/dist/hooks/Alarm.js +3 -3
- package/dist/hooks/BDE_Result.js +2 -2
- package/dist/hooks/Core_Email.js +10 -10
- package/dist/hooks/MES_Order.js +8 -12
- package/dist/hooks/ML_DataSelection.d.ts +1 -0
- package/dist/hooks/ML_DataSelection.js +17 -0
- package/dist/hooks/Maintenance_Downtime.js +5 -5
- package/dist/hooks/Maintenance_Duedate.js +5 -5
- package/dist/hooks/Maintenance_Frequency.js +5 -5
- package/dist/hooks/Maintenance_Message.js +29 -29
- package/dist/hooks/Maintenance_Priority.js +5 -5
- package/dist/hooks/Maintenance_Restriction.js +5 -5
- package/dist/hooks/Maintenance_Schedule_Execution.js +3 -3
- package/dist/hooks/Maintenance_Ticket.js +1 -1
- package/dist/hooks/Maintenance_Ticket_FormConfig.d.ts +1 -0
- package/dist/hooks/Maintenance_Ticket_FormConfig.js +34 -0
- package/dist/hooks/Maintenance_Ticket_Issuecategory.js +5 -5
- package/dist/hooks/Maintenance_Ticket_Kanban_State.js +5 -5
- package/dist/hooks/Maintenance_Ticket_Material.js +5 -5
- package/dist/hooks/Maintenance_Ticket_Project.js +5 -5
- package/dist/hooks/Maintenance_Ticket_Source.js +5 -5
- package/dist/hooks/Maintenance_Ticket_Title.js +5 -5
- package/dist/hooks/Notification.js +4 -4
- package/dist/hooks/Notification_Setting.js +0 -38
- package/dist/hooks/OWPlcDevice.d.ts +1 -0
- package/dist/hooks/OWPlcDevice.js +17 -0
- package/dist/hooks/OWPlcItem.d.ts +1 -0
- package/dist/hooks/OWPlcItem.js +17 -0
- package/dist/hooks/_User.js +2 -2
- package/dist/hooks/_beforeLogin.js +3 -3
- package/dist/index.js +23 -56
- package/dist/jobs/open_service_notifyOnSchedule.js +4 -4
- package/dist/types/Maintenance_Project.d.ts +3 -0
- package/dist/types/Maintenance_Project.js +6 -0
- package/dist/types/Maintenance_Schedule_Step.d.ts +3 -17
- package/dist/types/Maintenance_Ticket_FormConfig.d.ts +19 -0
- package/dist/types/Maintenance_Ticket_FormConfig.js +26 -0
- package/dist/types/OWPlcDevice.d.ts +28 -0
- package/dist/types/OWPlcDevice.js +47 -0
- package/dist/types/OWPlcItem.d.ts +42 -0
- package/dist/types/OWPlcItem.js +71 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.js +8 -1
- package/package.json +33 -11
- package/schema/Maintenance_Project.json +5 -0
- package/schema/Maintenance_Ticket_FormConfig.json +44 -0
- package/schema/OWPlcDevice.json +56 -0
- package/schema/OWPlcItem.json +75 -0
- package/dist/app_types/index.d.ts +0 -5
- package/dist/app_types/index.js +0 -9
- package/dist/config.d.ts +0 -2
- package/dist/helper/Config.d.ts +0 -33
- package/dist/helper/pdf2img.d.ts +0 -15
- package/dist/helper/pdf2img.js +0 -157
- package/dist/helper/registerNotification.d.ts +0 -25
- package/dist/helper/registerNotification.js +0 -61
- package/dist/helper/registerPermissions.js +0 -58
- package/dist/ow.d.ts +0 -21
- package/dist/{app_types → features/config/types}/ConfigKeys.d.ts +0 -0
- package/dist/{app_types → features/config/types}/ConfigKeys.js +0 -0
- package/dist/{app_types/CRON_Types.js → features/config/types/configTypes.js} +0 -0
- package/dist/{app_types/OpenWareTicketObject.js → features/cron/index.js} +0 -0
- package/dist/{app_types → features/cron/types}/CRON_Types.d.ts +0 -0
- package/dist/{helper/TicketData.js → features/cron/types/CRON_Types.js} +0 -0
- package/dist/{app_types → features/notifications/types}/Notifications.d.ts +0 -0
- package/dist/{app_types → features/notifications/types}/Notifications.js +2 -2
- /package/dist/{app_types → features/permissions/types}/Permissions.d.ts +0 -0
- /package/dist/{app_types → features/permissions/types}/Permissions.js +0 -0
|
@@ -2,11 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.init = init;
|
|
4
4
|
const __1 = require("..");
|
|
5
|
-
const catchError_1 = require("../helper/catchError");
|
|
6
|
-
const registerNotification_1 = require("../helper/registerNotification");
|
|
7
5
|
const types_1 = require("../types");
|
|
8
6
|
async function init() {
|
|
9
|
-
registerNotifications();
|
|
10
7
|
(0, __1.beforeSaveHook)(types_1.Notification_Setting, async (request) => {
|
|
11
8
|
const { object, original, user } = request;
|
|
12
9
|
await (0, __1.defaultHandler)(request);
|
|
@@ -18,38 +15,3 @@ async function init() {
|
|
|
18
15
|
// TODO
|
|
19
16
|
});
|
|
20
17
|
}
|
|
21
|
-
/**
|
|
22
|
-
* Register all notification settings in the database, if not already registered.
|
|
23
|
-
*/
|
|
24
|
-
async function registerNotifications() {
|
|
25
|
-
//Check if only one tenant is present in the database
|
|
26
|
-
const [tenantCountError, tenantCount] = await (0, catchError_1.catchError)(new Parse.Query(types_1.Tenant).count({ useMasterKey: true }));
|
|
27
|
-
if (tenantCountError) {
|
|
28
|
-
console.error("Error while counting Tenant object", tenantCountError);
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
//If only one tenant is present, register all notifications for this tenant
|
|
32
|
-
const tenant = tenantCount === 1
|
|
33
|
-
? await new Parse.Query(types_1.Tenant).first({ useMasterKey: true })
|
|
34
|
-
: undefined;
|
|
35
|
-
console.log("Register all notification settings");
|
|
36
|
-
(0, registerNotification_1.getAllNotifications)().forEach((notification) => {
|
|
37
|
-
new Parse.Query(types_1.Notification_Setting)
|
|
38
|
-
.equalTo("key", notification.key)
|
|
39
|
-
.first({ useMasterKey: true })
|
|
40
|
-
.then((result) => {
|
|
41
|
-
if (!result) {
|
|
42
|
-
console.log("Create notification", notification.key);
|
|
43
|
-
const newNotification = new types_1.Notification_Setting();
|
|
44
|
-
newNotification.set("key", notification.key);
|
|
45
|
-
newNotification.set("description", notification.description);
|
|
46
|
-
newNotification.set("label", notification.label);
|
|
47
|
-
newNotification.set("tenant", tenant);
|
|
48
|
-
newNotification.save({}, { useMasterKey: true });
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
console.log("Notification already exists", notification.key);
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
});
|
|
55
|
-
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function init(): Promise<void>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.init = init;
|
|
4
|
+
const __1 = require("..");
|
|
5
|
+
const types_1 = require("../types");
|
|
6
|
+
async function init() {
|
|
7
|
+
(0, __1.beforeSaveHook)(types_1.OWPlcDevice, async (request) => {
|
|
8
|
+
const { object, original, user } = request;
|
|
9
|
+
await (0, __1.defaultHandler)(request);
|
|
10
|
+
await (0, __1.defaultAclHandler)(request);
|
|
11
|
+
// TODO
|
|
12
|
+
});
|
|
13
|
+
(0, __1.afterSaveHook)(types_1.OWPlcDevice, async (request) => {
|
|
14
|
+
const { object, original, user } = request;
|
|
15
|
+
// TODO
|
|
16
|
+
});
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function init(): Promise<void>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.init = init;
|
|
4
|
+
const __1 = require("..");
|
|
5
|
+
const types_1 = require("../types");
|
|
6
|
+
async function init() {
|
|
7
|
+
(0, __1.beforeSaveHook)(types_1.OWPlcItem, async (request) => {
|
|
8
|
+
const { object, original, user } = request;
|
|
9
|
+
await (0, __1.defaultHandler)(request);
|
|
10
|
+
await (0, __1.defaultAclHandler)(request);
|
|
11
|
+
// TODO
|
|
12
|
+
});
|
|
13
|
+
(0, __1.afterSaveHook)(types_1.OWPlcItem, async (request) => {
|
|
14
|
+
const { object, original, user } = request;
|
|
15
|
+
// TODO
|
|
16
|
+
});
|
|
17
|
+
}
|
package/dist/hooks/_User.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.init = init;
|
|
4
4
|
const __1 = require("..");
|
|
5
|
-
const config_1 = require("../config");
|
|
5
|
+
const config_1 = require("../features/config");
|
|
6
6
|
const transformLogin_1 = require("../helper/transformLogin");
|
|
7
7
|
const types_1 = require("../types");
|
|
8
8
|
async function init() {
|
|
@@ -96,7 +96,7 @@ async function init() {
|
|
|
96
96
|
}
|
|
97
97
|
});
|
|
98
98
|
const verificationEmailCache = {};
|
|
99
|
-
if (config_1.
|
|
99
|
+
if (config_1.ConfigInstance.getInstance().getBoolean("AUTH_VERIFY_TENANT")) {
|
|
100
100
|
(0, __1.afterSaveHook)(Parse.User, async (request) => {
|
|
101
101
|
const object = request.object;
|
|
102
102
|
const original = request.original;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.init = init;
|
|
4
|
-
const config_1 = require("../config");
|
|
4
|
+
const config_1 = require("../features/config");
|
|
5
5
|
async function init() {
|
|
6
6
|
Parse.Cloud.beforeLogin(async ({ object }) => {
|
|
7
|
-
const verifyEmail = config_1.
|
|
7
|
+
const verifyEmail = config_1.ConfigInstance.getInstance().getBoolean("AUTH_VERIFY_EMAIL");
|
|
8
8
|
if (verifyEmail && !object.get("emailVerified")) {
|
|
9
9
|
throw new Parse.Error(-1, "t:AUTH_MISSING_EMAIL_VERIFICATION");
|
|
10
10
|
}
|
|
11
11
|
if (object.get("tenant")) {
|
|
12
|
-
const verifyTenant = config_1.
|
|
12
|
+
const verifyTenant = config_1.ConfigInstance.getInstance().getBoolean("AUTH_VERIFY_TENANT");
|
|
13
13
|
if (verifyTenant && !object.get("tenantVerified")) {
|
|
14
14
|
throw new Parse.Error(-1, "t:AUTH_MISSING_TENANT_VERIFICATION");
|
|
15
15
|
}
|
package/dist/index.js
CHANGED
|
@@ -25,19 +25,20 @@ const fast_equals_1 = require("fast-equals");
|
|
|
25
25
|
const fs_1 = __importDefault(require("fs"));
|
|
26
26
|
const path_1 = require("path");
|
|
27
27
|
const web_push_1 = __importDefault(require("web-push"));
|
|
28
|
-
const config_1 = require("./config");
|
|
29
28
|
const featuremap_json_1 = __importDefault(require("./featuremap.json"));
|
|
29
|
+
const config_1 = require("./features/config");
|
|
30
|
+
const notifications_1 = require("./features/notifications");
|
|
31
|
+
const permissions_1 = require("./features/permissions");
|
|
30
32
|
const _init_1 = require("./functions/_init");
|
|
31
33
|
const BreeInstance_1 = __importDefault(require("./helper/BreeInstance"));
|
|
32
|
-
const registerPermissions_1 = require("./helper/registerPermissions");
|
|
33
34
|
const Core_Email_1 = require("./hooks/Core_Email");
|
|
34
35
|
const _init_2 = require("./hooks/_init");
|
|
35
36
|
const types_1 = require("./types");
|
|
36
|
-
// export { Config } from "./helper/Config";
|
|
37
37
|
var Core_Email_2 = require("./hooks/Core_Email");
|
|
38
38
|
Object.defineProperty(exports, "sendSimpleEmail", { enumerable: true, get: function () { return Core_Email_2.sendSimpleEmail; } });
|
|
39
39
|
Object.defineProperty(exports, "sendTemplateEmail", { enumerable: true, get: function () { return Core_Email_2.sendTemplateEmail; } });
|
|
40
40
|
const PREFIX = "OD3_";
|
|
41
|
+
let config;
|
|
41
42
|
// const lang_deu = require("../i18n/deu.json");
|
|
42
43
|
let schema = {};
|
|
43
44
|
/**
|
|
@@ -55,7 +56,8 @@ async function init() {
|
|
|
55
56
|
console.log(`[${pkg.name}] init (v${pkg.version})`);
|
|
56
57
|
}
|
|
57
58
|
catch (error) { }
|
|
58
|
-
|
|
59
|
+
config = config_1.ConfigInstance.getInstance();
|
|
60
|
+
await config.init(true);
|
|
59
61
|
await initBree();
|
|
60
62
|
await initTranslations();
|
|
61
63
|
await (0, Core_Email_1.initEmailTransport)();
|
|
@@ -66,7 +68,8 @@ async function init() {
|
|
|
66
68
|
await initDefaultData();
|
|
67
69
|
await (0, _init_1.init)();
|
|
68
70
|
await initAutoload();
|
|
69
|
-
await initPermissions();
|
|
71
|
+
await (0, permissions_1.initPermissions)();
|
|
72
|
+
await (0, notifications_1.initNotifications)();
|
|
70
73
|
}
|
|
71
74
|
async function initBree() {
|
|
72
75
|
const bree = BreeInstance_1.default.getInstance();
|
|
@@ -93,9 +96,9 @@ async function initTranslations() {
|
|
|
93
96
|
}
|
|
94
97
|
async function initWebPush() {
|
|
95
98
|
try {
|
|
96
|
-
if (
|
|
97
|
-
web_push_1.default.setVapidDetails(
|
|
98
|
-
web_push_1.default.setGCMAPIKey(
|
|
99
|
+
if (config.getBoolean("WEB_PUSH_ENABLED")) {
|
|
100
|
+
web_push_1.default.setVapidDetails(config.get("WEB_PUSH_HOST"), config.get("WEB_PUSH_VAPID_PUBLIC_KEY"), config.get("WEB_PUSH_VAPID_PRIVATE_KEY"));
|
|
101
|
+
web_push_1.default.setGCMAPIKey(config.get("WEB_PUSH_FCM_KEY"));
|
|
99
102
|
}
|
|
100
103
|
}
|
|
101
104
|
catch (error) {
|
|
@@ -108,9 +111,9 @@ async function initSchema() {
|
|
|
108
111
|
try {
|
|
109
112
|
await (0, parse_server_schema_1.up)(schemaConfig, (0, path_1.resolve)(__dirname, "../schema"), {
|
|
110
113
|
prefix: PREFIX,
|
|
111
|
-
deleteClasses:
|
|
112
|
-
deleteFields:
|
|
113
|
-
deleteNonEmptyClass:
|
|
114
|
+
deleteClasses: config.getBoolean("FORCE_SCHEMA"),
|
|
115
|
+
deleteFields: config.getBoolean("FORCE_SCHEMA"),
|
|
116
|
+
deleteNonEmptyClass: config.getBoolean("FORCE_DELETE_CLASS"),
|
|
114
117
|
filter: (className) => isClassEnabled(className),
|
|
115
118
|
});
|
|
116
119
|
schema = Object.fromEntries((await Parse.Schema.all()).map((schema) => [
|
|
@@ -175,42 +178,6 @@ async function initDefaultData() {
|
|
|
175
178
|
console.error(error);
|
|
176
179
|
}
|
|
177
180
|
}
|
|
178
|
-
async function initPermissions() {
|
|
179
|
-
const tenants = await new Parse.Query(types_1.Tenant)
|
|
180
|
-
.descending("createdAt")
|
|
181
|
-
.find({ useMasterKey: true });
|
|
182
|
-
if (tenants) {
|
|
183
|
-
for await (const tenant of tenants) {
|
|
184
|
-
await registerPermissions(tenant);
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
/**
|
|
189
|
-
* Register all permissions in the database, if not already registered.
|
|
190
|
-
*/
|
|
191
|
-
async function registerPermissions(tenant) {
|
|
192
|
-
console.log("Register all permissions");
|
|
193
|
-
(0, registerPermissions_1.getAllPermissions)().forEach((permission) => {
|
|
194
|
-
new Parse.Query(types_1.Permission)
|
|
195
|
-
.equalTo("key", permission.key)
|
|
196
|
-
.equalTo("tenant", tenant)
|
|
197
|
-
.first({ useMasterKey: true })
|
|
198
|
-
.then((result) => {
|
|
199
|
-
if (!result) {
|
|
200
|
-
console.log("Create permission", permission.key);
|
|
201
|
-
const newPermission = new types_1.Permission();
|
|
202
|
-
newPermission.set("key", permission.key);
|
|
203
|
-
newPermission.set("label", permission.label);
|
|
204
|
-
newPermission.set("tenant", tenant);
|
|
205
|
-
newPermission.set("description", permission.description);
|
|
206
|
-
newPermission.save({}, { useMasterKey: true });
|
|
207
|
-
}
|
|
208
|
-
else {
|
|
209
|
-
console.log("Permission already exists", permission.key);
|
|
210
|
-
}
|
|
211
|
-
});
|
|
212
|
-
});
|
|
213
|
-
}
|
|
214
181
|
/**
|
|
215
182
|
* Checks if a user has a specific permission in OD3_Permission.
|
|
216
183
|
* @param sessionToken - The session token of the user.
|
|
@@ -585,7 +552,7 @@ async function autoloadCloudCode(path, regex = /^[a-zA-Z0-9]+(?:-[a-zA-Z0-9]+)*$
|
|
|
585
552
|
}
|
|
586
553
|
}
|
|
587
554
|
async function initAutoload() {
|
|
588
|
-
const path =
|
|
555
|
+
const path = config.get("AUTOLOAD_DIR");
|
|
589
556
|
if (path) {
|
|
590
557
|
await autoloadCloudCode((0, path_1.resolve)(process.cwd(), path));
|
|
591
558
|
}
|
|
@@ -597,21 +564,21 @@ function getFeatureForClassName(className) {
|
|
|
597
564
|
function isFeatureEnabled(feature) {
|
|
598
565
|
switch (feature) {
|
|
599
566
|
case "CORE":
|
|
600
|
-
return
|
|
567
|
+
return config.getBoolean("FEATURE_CORE");
|
|
601
568
|
case "MONITORING":
|
|
602
|
-
return
|
|
569
|
+
return config.getBoolean("FEATURE_MONITORING");
|
|
603
570
|
case "BDE":
|
|
604
|
-
return
|
|
571
|
+
return config.getBoolean("FEATURE_BDE");
|
|
605
572
|
case "GTFS":
|
|
606
|
-
return
|
|
573
|
+
return config.getBoolean("FEATURE_GTFS");
|
|
607
574
|
case "KNOWLEDGE":
|
|
608
|
-
return
|
|
575
|
+
return config.getBoolean("FEATURE_KNOWLEDGE");
|
|
609
576
|
case "MAINTENANCE":
|
|
610
|
-
return
|
|
577
|
+
return config.getBoolean("FEATURE_MAINTENANCE");
|
|
611
578
|
case "DOCUMENTATION":
|
|
612
|
-
return
|
|
579
|
+
return config.getBoolean("FEATURE_DOCUMENTATION");
|
|
613
580
|
case "MIAAS":
|
|
614
|
-
return
|
|
581
|
+
return config.getBoolean("FEATURE_MIAAS");
|
|
615
582
|
default:
|
|
616
583
|
return false;
|
|
617
584
|
}
|
|
@@ -11,8 +11,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
11
11
|
const node_process_1 = __importDefault(require("node:process"));
|
|
12
12
|
const node_worker_threads_1 = require("node:worker_threads");
|
|
13
13
|
const node_js_1 = __importDefault(require("parse/node.js"));
|
|
14
|
-
const
|
|
15
|
-
const
|
|
14
|
+
const index_js_1 = require("../features/config/index.js");
|
|
15
|
+
const index_js_2 = require("../features/notifications/index.js");
|
|
16
16
|
const openinc_openservice_save_ticket_data_js_1 = require("../functions/openinc-openservice-save-ticket-data.js");
|
|
17
17
|
const catchError_js_1 = require("../helper/catchError.js");
|
|
18
18
|
const Config_js_1 = require("../types/Config.js");
|
|
@@ -31,7 +31,7 @@ function l(message) {
|
|
|
31
31
|
l("Schedule is due.");
|
|
32
32
|
// Check OD3_Config class for key ConfigKeys.OpenService.createTicketOnSchedule. If value is true, proceed with ticket creation
|
|
33
33
|
const [configError, config] = await (0, catchError_js_1.catchError)(new node_js_1.default.Query(Config_js_1.Config.className)
|
|
34
|
-
.equalTo("key",
|
|
34
|
+
.equalTo("key", index_js_1.ConfigKeys.OpenService.createTicketOnSchedule)
|
|
35
35
|
.first({ useMasterKey: true }));
|
|
36
36
|
//Get schedule object from worker data
|
|
37
37
|
const [scheduleError, schedule] = await (0, catchError_js_1.catchError)(new node_js_1.default.Query(Maintenance_Schedule_Template_js_1.Maintenance_Schedule_Template.className).get(node_worker_threads_1.workerData.scheduleId, { useMasterKey: true }));
|
|
@@ -69,7 +69,7 @@ function l(message) {
|
|
|
69
69
|
}
|
|
70
70
|
l("Config 'createTicketOnSchedule' is true, creating new ticket object");
|
|
71
71
|
const [notificationSettingsError, notificationSettings] = await (0, catchError_js_1.catchError)(new node_js_1.default.Query(Notification_Setting_js_1.Notification_Setting)
|
|
72
|
-
.equalTo("key",
|
|
72
|
+
.equalTo("key", index_js_2.Notifications.OpenService.schedule_due)
|
|
73
73
|
.find({ useMasterKey: true }));
|
|
74
74
|
if (notificationSettingsError) {
|
|
75
75
|
l("Error while querying Notification_Setting for 'Notifications.OpenService.schedule_due' key: " +
|
|
@@ -12,6 +12,7 @@ export interface Maintenance_ProjectAttributes {
|
|
|
12
12
|
color?: string;
|
|
13
13
|
description: string;
|
|
14
14
|
end?: Date;
|
|
15
|
+
finished: boolean;
|
|
15
16
|
icon?: string;
|
|
16
17
|
name: string;
|
|
17
18
|
parent?: Maintenance_Project;
|
|
@@ -31,6 +32,8 @@ export declare class Maintenance_Project extends Parse.Object<Maintenance_Projec
|
|
|
31
32
|
set description(value: string);
|
|
32
33
|
get end(): Date | undefined;
|
|
33
34
|
set end(value: Date | undefined);
|
|
35
|
+
get finished(): boolean;
|
|
36
|
+
set finished(value: boolean);
|
|
34
37
|
get icon(): string | undefined;
|
|
35
38
|
set icon(value: string | undefined);
|
|
36
39
|
get name(): string;
|
|
@@ -29,6 +29,12 @@ class Maintenance_Project extends Parse.Object {
|
|
|
29
29
|
set end(value) {
|
|
30
30
|
super.set("end", value);
|
|
31
31
|
}
|
|
32
|
+
get finished() {
|
|
33
|
+
return super.get("finished");
|
|
34
|
+
}
|
|
35
|
+
set finished(value) {
|
|
36
|
+
super.set("finished", value);
|
|
37
|
+
}
|
|
32
38
|
get icon() {
|
|
33
39
|
return super.get("icon");
|
|
34
40
|
}
|
|
@@ -7,7 +7,7 @@ export interface Maintenance_Schedule_StepAttributes {
|
|
|
7
7
|
createdAt: Date;
|
|
8
8
|
updatedAt: Date;
|
|
9
9
|
description?: string;
|
|
10
|
-
fields?:
|
|
10
|
+
fields?: any[];
|
|
11
11
|
media: Parse.Relation<Maintenance_Schedule_Step, Maintenance_Media>;
|
|
12
12
|
roles: Parse.Relation<Maintenance_Schedule_Step, _Role>;
|
|
13
13
|
tenant?: Tenant;
|
|
@@ -18,8 +18,8 @@ export declare class Maintenance_Schedule_Step extends Parse.Object<Maintenance_
|
|
|
18
18
|
constructor(data?: Partial<Maintenance_Schedule_StepAttributes>);
|
|
19
19
|
get description(): string | undefined;
|
|
20
20
|
set description(value: string | undefined);
|
|
21
|
-
get fields():
|
|
22
|
-
set fields(value:
|
|
21
|
+
get fields(): any[] | undefined;
|
|
22
|
+
set fields(value: any[] | undefined);
|
|
23
23
|
get media(): Parse.Relation<Maintenance_Schedule_Step, Maintenance_Media>;
|
|
24
24
|
get roles(): Parse.Relation<Maintenance_Schedule_Step, _Role>;
|
|
25
25
|
get tenant(): Tenant | undefined;
|
|
@@ -27,17 +27,3 @@ export declare class Maintenance_Schedule_Step extends Parse.Object<Maintenance_
|
|
|
27
27
|
get title(): string | undefined;
|
|
28
28
|
set title(value: string | undefined);
|
|
29
29
|
}
|
|
30
|
-
export type StepFieldType = {
|
|
31
|
-
value: StepValueType | StepValueType[];
|
|
32
|
-
metafield: MetaField;
|
|
33
|
-
};
|
|
34
|
-
export type StepValueType = {
|
|
35
|
-
value: string;
|
|
36
|
-
classname: string | undefined;
|
|
37
|
-
};
|
|
38
|
-
export type MetaField = {
|
|
39
|
-
label: string;
|
|
40
|
-
allowedValues: string[];
|
|
41
|
-
required: boolean;
|
|
42
|
-
onlyOneAllowedValue: boolean;
|
|
43
|
-
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { _Role } from "./_Role";
|
|
2
|
+
export interface Maintenance_Ticket_FormConfigAttributes {
|
|
3
|
+
id: string;
|
|
4
|
+
objectId: string;
|
|
5
|
+
createdAt: Date;
|
|
6
|
+
updatedAt: Date;
|
|
7
|
+
config: any;
|
|
8
|
+
roles: Parse.Relation<Maintenance_Ticket_FormConfig, _Role>;
|
|
9
|
+
view: string;
|
|
10
|
+
}
|
|
11
|
+
export declare class Maintenance_Ticket_FormConfig extends Parse.Object<Maintenance_Ticket_FormConfigAttributes> {
|
|
12
|
+
static className: string;
|
|
13
|
+
constructor(data?: Partial<Maintenance_Ticket_FormConfigAttributes>);
|
|
14
|
+
get config(): any;
|
|
15
|
+
set config(value: any);
|
|
16
|
+
get roles(): Parse.Relation<Maintenance_Ticket_FormConfig, _Role>;
|
|
17
|
+
get view(): string;
|
|
18
|
+
set view(value: string);
|
|
19
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Maintenance_Ticket_FormConfig = void 0;
|
|
4
|
+
class Maintenance_Ticket_FormConfig extends Parse.Object {
|
|
5
|
+
constructor(data) {
|
|
6
|
+
super("OD3_Maintenance_Ticket_FormConfig", data);
|
|
7
|
+
}
|
|
8
|
+
get config() {
|
|
9
|
+
return super.get("config");
|
|
10
|
+
}
|
|
11
|
+
set config(value) {
|
|
12
|
+
super.set("config", value);
|
|
13
|
+
}
|
|
14
|
+
get roles() {
|
|
15
|
+
return super.relation("roles");
|
|
16
|
+
}
|
|
17
|
+
get view() {
|
|
18
|
+
return super.get("view");
|
|
19
|
+
}
|
|
20
|
+
set view(value) {
|
|
21
|
+
super.set("view", value);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.Maintenance_Ticket_FormConfig = Maintenance_Ticket_FormConfig;
|
|
25
|
+
Maintenance_Ticket_FormConfig.className = "OD3_Maintenance_Ticket_FormConfig";
|
|
26
|
+
Parse.Object.registerSubclass("OD3_Maintenance_Ticket_FormConfig", Maintenance_Ticket_FormConfig);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export interface OWPlcDeviceAttributes {
|
|
2
|
+
id: string;
|
|
3
|
+
objectId: string;
|
|
4
|
+
createdAt: Date;
|
|
5
|
+
updatedAt: Date;
|
|
6
|
+
connectionString: string;
|
|
7
|
+
enabled: boolean;
|
|
8
|
+
extraOptions: any;
|
|
9
|
+
interval: number;
|
|
10
|
+
name?: string;
|
|
11
|
+
options: any;
|
|
12
|
+
}
|
|
13
|
+
export declare class OWPlcDevice extends Parse.Object<OWPlcDeviceAttributes> {
|
|
14
|
+
static className: string;
|
|
15
|
+
constructor(data?: Partial<OWPlcDeviceAttributes>);
|
|
16
|
+
get connectionString(): string;
|
|
17
|
+
set connectionString(value: string);
|
|
18
|
+
get enabled(): boolean;
|
|
19
|
+
set enabled(value: boolean);
|
|
20
|
+
get extraOptions(): any;
|
|
21
|
+
set extraOptions(value: any);
|
|
22
|
+
get interval(): number;
|
|
23
|
+
set interval(value: number);
|
|
24
|
+
get name(): string | undefined;
|
|
25
|
+
set name(value: string | undefined);
|
|
26
|
+
get options(): any;
|
|
27
|
+
set options(value: any);
|
|
28
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OWPlcDevice = void 0;
|
|
4
|
+
class OWPlcDevice extends Parse.Object {
|
|
5
|
+
constructor(data) {
|
|
6
|
+
super("OD3_OWPlcDevice", data);
|
|
7
|
+
}
|
|
8
|
+
get connectionString() {
|
|
9
|
+
return super.get("connectionString");
|
|
10
|
+
}
|
|
11
|
+
set connectionString(value) {
|
|
12
|
+
super.set("connectionString", value);
|
|
13
|
+
}
|
|
14
|
+
get enabled() {
|
|
15
|
+
return super.get("enabled");
|
|
16
|
+
}
|
|
17
|
+
set enabled(value) {
|
|
18
|
+
super.set("enabled", value);
|
|
19
|
+
}
|
|
20
|
+
get extraOptions() {
|
|
21
|
+
return super.get("extraOptions");
|
|
22
|
+
}
|
|
23
|
+
set extraOptions(value) {
|
|
24
|
+
super.set("extraOptions", value);
|
|
25
|
+
}
|
|
26
|
+
get interval() {
|
|
27
|
+
return super.get("interval");
|
|
28
|
+
}
|
|
29
|
+
set interval(value) {
|
|
30
|
+
super.set("interval", value);
|
|
31
|
+
}
|
|
32
|
+
get name() {
|
|
33
|
+
return super.get("name");
|
|
34
|
+
}
|
|
35
|
+
set name(value) {
|
|
36
|
+
super.set("name", value);
|
|
37
|
+
}
|
|
38
|
+
get options() {
|
|
39
|
+
return super.get("options");
|
|
40
|
+
}
|
|
41
|
+
set options(value) {
|
|
42
|
+
super.set("options", value);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.OWPlcDevice = OWPlcDevice;
|
|
46
|
+
OWPlcDevice.className = "OD3_OWPlcDevice";
|
|
47
|
+
Parse.Object.registerSubclass("OD3_OWPlcDevice", OWPlcDevice);
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { OWPlcDevice } from "./OWPlcDevice";
|
|
2
|
+
import type { Source } from "./Source";
|
|
3
|
+
export interface OWPlcItemAttributes {
|
|
4
|
+
id: string;
|
|
5
|
+
objectId: string;
|
|
6
|
+
createdAt: Date;
|
|
7
|
+
updatedAt: Date;
|
|
8
|
+
address: string;
|
|
9
|
+
DeviceID?: OWPlcDevice;
|
|
10
|
+
enabled: boolean;
|
|
11
|
+
extraOptions?: any;
|
|
12
|
+
label: string;
|
|
13
|
+
note?: string;
|
|
14
|
+
onChange: boolean;
|
|
15
|
+
source?: Source;
|
|
16
|
+
type: string;
|
|
17
|
+
unit: string;
|
|
18
|
+
}
|
|
19
|
+
export declare class OWPlcItem extends Parse.Object<OWPlcItemAttributes> {
|
|
20
|
+
static className: string;
|
|
21
|
+
constructor(data?: Partial<OWPlcItemAttributes>);
|
|
22
|
+
get address(): string;
|
|
23
|
+
set address(value: string);
|
|
24
|
+
get DeviceID(): OWPlcDevice | undefined;
|
|
25
|
+
set DeviceID(value: OWPlcDevice | undefined);
|
|
26
|
+
get enabled(): boolean;
|
|
27
|
+
set enabled(value: boolean);
|
|
28
|
+
get extraOptions(): any | undefined;
|
|
29
|
+
set extraOptions(value: any | undefined);
|
|
30
|
+
get label(): string;
|
|
31
|
+
set label(value: string);
|
|
32
|
+
get note(): string | undefined;
|
|
33
|
+
set note(value: string | undefined);
|
|
34
|
+
get onChange(): boolean;
|
|
35
|
+
set onChange(value: boolean);
|
|
36
|
+
get source(): Source | undefined;
|
|
37
|
+
set source(value: Source | undefined);
|
|
38
|
+
get type(): string;
|
|
39
|
+
set type(value: string);
|
|
40
|
+
get unit(): string;
|
|
41
|
+
set unit(value: string);
|
|
42
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OWPlcItem = void 0;
|
|
4
|
+
class OWPlcItem extends Parse.Object {
|
|
5
|
+
constructor(data) {
|
|
6
|
+
super("OD3_OWPlcItem", data);
|
|
7
|
+
}
|
|
8
|
+
get address() {
|
|
9
|
+
return super.get("address");
|
|
10
|
+
}
|
|
11
|
+
set address(value) {
|
|
12
|
+
super.set("address", value);
|
|
13
|
+
}
|
|
14
|
+
get DeviceID() {
|
|
15
|
+
return super.get("DeviceID");
|
|
16
|
+
}
|
|
17
|
+
set DeviceID(value) {
|
|
18
|
+
super.set("DeviceID", value);
|
|
19
|
+
}
|
|
20
|
+
get enabled() {
|
|
21
|
+
return super.get("enabled");
|
|
22
|
+
}
|
|
23
|
+
set enabled(value) {
|
|
24
|
+
super.set("enabled", value);
|
|
25
|
+
}
|
|
26
|
+
get extraOptions() {
|
|
27
|
+
return super.get("extraOptions");
|
|
28
|
+
}
|
|
29
|
+
set extraOptions(value) {
|
|
30
|
+
super.set("extraOptions", value);
|
|
31
|
+
}
|
|
32
|
+
get label() {
|
|
33
|
+
return super.get("label");
|
|
34
|
+
}
|
|
35
|
+
set label(value) {
|
|
36
|
+
super.set("label", value);
|
|
37
|
+
}
|
|
38
|
+
get note() {
|
|
39
|
+
return super.get("note");
|
|
40
|
+
}
|
|
41
|
+
set note(value) {
|
|
42
|
+
super.set("note", value);
|
|
43
|
+
}
|
|
44
|
+
get onChange() {
|
|
45
|
+
return super.get("onChange");
|
|
46
|
+
}
|
|
47
|
+
set onChange(value) {
|
|
48
|
+
super.set("onChange", value);
|
|
49
|
+
}
|
|
50
|
+
get source() {
|
|
51
|
+
return super.get("source");
|
|
52
|
+
}
|
|
53
|
+
set source(value) {
|
|
54
|
+
super.set("source", value);
|
|
55
|
+
}
|
|
56
|
+
get type() {
|
|
57
|
+
return super.get("type");
|
|
58
|
+
}
|
|
59
|
+
set type(value) {
|
|
60
|
+
super.set("type", value);
|
|
61
|
+
}
|
|
62
|
+
get unit() {
|
|
63
|
+
return super.get("unit");
|
|
64
|
+
}
|
|
65
|
+
set unit(value) {
|
|
66
|
+
super.set("unit", value);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
exports.OWPlcItem = OWPlcItem;
|
|
70
|
+
OWPlcItem.className = "OD3_OWPlcItem";
|
|
71
|
+
Parse.Object.registerSubclass("OD3_OWPlcItem", OWPlcItem);
|
package/dist/types/index.d.ts
CHANGED
|
@@ -136,6 +136,8 @@ export { Maintenance_Ticket } from "./Maintenance_Ticket";
|
|
|
136
136
|
export type { Maintenance_TicketAttributes } from "./Maintenance_Ticket";
|
|
137
137
|
export { Maintenance_Ticket_Assignment } from "./Maintenance_Ticket_Assignment";
|
|
138
138
|
export type { Maintenance_Ticket_AssignmentAttributes } from "./Maintenance_Ticket_Assignment";
|
|
139
|
+
export { Maintenance_Ticket_FormConfig } from "./Maintenance_Ticket_FormConfig";
|
|
140
|
+
export type { Maintenance_Ticket_FormConfigAttributes } from "./Maintenance_Ticket_FormConfig";
|
|
139
141
|
export { Maintenance_Ticket_Issuecategory } from "./Maintenance_Ticket_Issuecategory";
|
|
140
142
|
export type { Maintenance_Ticket_IssuecategoryAttributes } from "./Maintenance_Ticket_Issuecategory";
|
|
141
143
|
export { Maintenance_Ticket_Kanban_State } from "./Maintenance_Ticket_Kanban_State";
|
|
@@ -168,6 +170,10 @@ export { Notification } from "./Notification";
|
|
|
168
170
|
export type { NotificationAttributes } from "./Notification";
|
|
169
171
|
export { Notification_Setting } from "./Notification_Setting";
|
|
170
172
|
export type { Notification_SettingAttributes } from "./Notification_Setting";
|
|
173
|
+
export { OWPlcDevice } from "./OWPlcDevice";
|
|
174
|
+
export type { OWPlcDeviceAttributes } from "./OWPlcDevice";
|
|
175
|
+
export { OWPlcItem } from "./OWPlcItem";
|
|
176
|
+
export type { OWPlcItemAttributes } from "./OWPlcItem";
|
|
171
177
|
export { Permission } from "./Permission";
|
|
172
178
|
export type { PermissionAttributes } from "./Permission";
|
|
173
179
|
export { Push } from "./Push";
|