@openinc/parse-server-opendash 1.5.2 → 1.8.2

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 (79) hide show
  1. package/dist/functions/_init.js +2 -2
  2. package/dist/functions/getAdminConfig.d.ts +1 -0
  3. package/dist/functions/getAdminConfig.js +116 -0
  4. package/dist/hooks/Alarm.d.ts +1 -1
  5. package/dist/hooks/Alarm.js +3 -3
  6. package/dist/hooks/AlarmAction.d.ts +1 -1
  7. package/dist/hooks/AlarmAction.js +3 -3
  8. package/dist/hooks/AlarmWebhook.d.ts +1 -1
  9. package/dist/hooks/AlarmWebhook.js +3 -3
  10. package/dist/hooks/BDE_Form.d.ts +1 -0
  11. package/dist/hooks/BDE_Form.js +124 -0
  12. package/dist/hooks/BDE_List.d.ts +1 -0
  13. package/dist/hooks/BDE_List.js +63 -0
  14. package/dist/hooks/BDE_ListEntry.d.ts +1 -0
  15. package/dist/hooks/BDE_ListEntry.js +63 -0
  16. package/dist/hooks/BDE_Page.d.ts +1 -0
  17. package/dist/hooks/BDE_Page.js +90 -0
  18. package/dist/hooks/BDE_Result.d.ts +1 -0
  19. package/dist/hooks/BDE_Result.js +185 -0
  20. package/dist/hooks/BDE_Unit.d.ts +1 -0
  21. package/dist/hooks/BDE_Unit.js +63 -0
  22. package/dist/hooks/Config.d.ts +1 -1
  23. package/dist/hooks/Config.js +3 -3
  24. package/dist/hooks/Dashboard.d.ts +1 -1
  25. package/dist/hooks/Dashboard.js +4 -4
  26. package/dist/hooks/NavigationGroup.d.ts +1 -1
  27. package/dist/hooks/NavigationGroup.js +3 -3
  28. package/dist/hooks/NavigationItem.d.ts +1 -1
  29. package/dist/hooks/NavigationItem.js +3 -3
  30. package/dist/hooks/Notification.d.ts +1 -1
  31. package/dist/hooks/Notification.js +4 -4
  32. package/dist/hooks/Permission.d.ts +1 -1
  33. package/dist/hooks/Permission.js +3 -3
  34. package/dist/hooks/Report.d.ts +1 -1
  35. package/dist/hooks/Report.js +3 -3
  36. package/dist/hooks/Share.d.ts +1 -1
  37. package/dist/hooks/Share.js +3 -3
  38. package/dist/hooks/Source.d.ts +1 -1
  39. package/dist/hooks/Source.js +9 -8
  40. package/dist/hooks/SourceMeta.d.ts +1 -1
  41. package/dist/hooks/SourceMeta.js +5 -5
  42. package/dist/hooks/Tenant.d.ts +1 -1
  43. package/dist/hooks/Tenant.js +6 -6
  44. package/dist/hooks/TenantMeta.d.ts +1 -1
  45. package/dist/hooks/TenantMeta.js +3 -3
  46. package/dist/hooks/TenantTrustedDomain.d.ts +1 -1
  47. package/dist/hooks/TenantTrustedDomain.js +3 -3
  48. package/dist/hooks/UserData.d.ts +1 -1
  49. package/dist/hooks/UserData.js +3 -3
  50. package/dist/hooks/WebPush.d.ts +1 -1
  51. package/dist/hooks/WebPush.js +3 -3
  52. package/dist/hooks/Widget.d.ts +1 -1
  53. package/dist/hooks/Widget.js +3 -3
  54. package/dist/hooks/_User.js +1 -2
  55. package/dist/hooks/_init.js +24 -27
  56. package/dist/index.d.ts +8 -0
  57. package/dist/index.js +65 -1
  58. package/dist/ow.d.ts +21 -0
  59. package/dist/ow.js +149 -0
  60. package/dist/types/BDE_Form.d.ts +12 -0
  61. package/dist/types/BDE_Form.js +2 -0
  62. package/dist/types/BDE_List.d.ts +9 -0
  63. package/dist/types/BDE_List.js +2 -0
  64. package/dist/types/BDE_ListEntry.d.ts +13 -0
  65. package/dist/types/BDE_ListEntry.js +2 -0
  66. package/dist/types/BDE_Page.d.ts +10 -0
  67. package/dist/types/BDE_Page.js +2 -0
  68. package/dist/types/BDE_Result.d.ts +11 -0
  69. package/dist/types/BDE_Result.js +2 -0
  70. package/dist/types/BDE_Unit.d.ts +13 -0
  71. package/dist/types/BDE_Unit.js +2 -0
  72. package/dist/types/index.d.ts +6 -0
  73. package/package.json +3 -1
  74. package/schema/BDE_Form.json +39 -0
  75. package/schema/BDE_List.json +34 -0
  76. package/schema/BDE_ListEntry.json +43 -0
  77. package/schema/BDE_Page.json +36 -0
  78. package/schema/BDE_Result.json +39 -0
  79. package/schema/BDE_Unit.json +40 -0
@@ -38,11 +38,11 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.init = void 0;
40
40
  var __1 = require("..");
41
- function init() {
41
+ function init(className) {
42
42
  return __awaiter(this, void 0, void 0, function () {
43
43
  var _this = this;
44
44
  return __generator(this, function (_a) {
45
- __1.beforeSaveHook(__1.PREFIX + "Tenant", function (request) { return __awaiter(_this, void 0, void 0, function () {
45
+ __1.beforeSaveHook(className, function (request) { return __awaiter(_this, void 0, void 0, function () {
46
46
  var object, original, user, meta, rootSource, sourceACL, dataSource;
47
47
  var _a, _b;
48
48
  return __generator(this, function (_c) {
@@ -65,7 +65,7 @@ function init() {
65
65
  },
66
66
  _a)));
67
67
  if (!!object.get("meta")) return [3 /*break*/, 2];
68
- meta = new Parse.Object(__1.PREFIX + "TenantMeta", {
68
+ meta = new Parse.Object(className, {
69
69
  tenant: object,
70
70
  });
71
71
  return [4 /*yield*/, meta.save(null, { useMasterKey: true, cascadeSave: false })];
@@ -73,7 +73,7 @@ function init() {
73
73
  _c.sent();
74
74
  object.set("meta", meta);
75
75
  _c.label = 2;
76
- case 2: return [4 /*yield*/, new Parse.Query(__1.PREFIX + "Source")
76
+ case 2: return [4 /*yield*/, new Parse.Query(className)
77
77
  .equalTo("tag", "tenant-root-source")
78
78
  .first({ useMasterKey: true })];
79
79
  case 3:
@@ -85,7 +85,7 @@ function init() {
85
85
  _b));
86
86
  dataSource = object.get("dataSource");
87
87
  if (!dataSource) {
88
- dataSource = new Parse.Object(__1.PREFIX + "Source");
88
+ dataSource = new Parse.Object(className);
89
89
  }
90
90
  dataSource.setACL(sourceACL);
91
91
  if (rootSource) {
@@ -102,7 +102,7 @@ function init() {
102
102
  }
103
103
  });
104
104
  }); });
105
- __1.afterSaveHook(__1.PREFIX + "Tenant", function (_a) {
105
+ __1.afterSaveHook(className, function (_a) {
106
106
  var object = _a.object, original = _a.original, user = _a.user;
107
107
  return __awaiter(_this, void 0, void 0, function () {
108
108
  var users, _i, users_1, user_1;
@@ -1 +1 @@
1
- export declare function init(): Promise<void>;
1
+ export declare function init(className: string): Promise<void>;
@@ -38,17 +38,17 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.init = void 0;
40
40
  var __1 = require("..");
41
- function init() {
41
+ function init(className) {
42
42
  return __awaiter(this, void 0, void 0, function () {
43
43
  var _this = this;
44
44
  return __generator(this, function (_a) {
45
- __1.beforeSaveHook(__1.PREFIX + "TenantMeta", function (request) { return __awaiter(_this, void 0, void 0, function () {
45
+ __1.beforeSaveHook(className, function (request) { return __awaiter(_this, void 0, void 0, function () {
46
46
  return __generator(this, function (_a) {
47
47
  __1.defaultHandler(request);
48
48
  return [2 /*return*/];
49
49
  });
50
50
  }); });
51
- __1.afterSaveHook(__1.PREFIX + "TenantMeta", function (request) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
51
+ __1.afterSaveHook(className, function (request) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
52
52
  return [2 /*return*/];
53
53
  }); }); });
54
54
  return [2 /*return*/];
@@ -1 +1 @@
1
- export declare function init(): Promise<void>;
1
+ export declare function init(className: string): Promise<void>;
@@ -38,17 +38,17 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.init = void 0;
40
40
  var __1 = require("..");
41
- function init() {
41
+ function init(className) {
42
42
  return __awaiter(this, void 0, void 0, function () {
43
43
  var _this = this;
44
44
  return __generator(this, function (_a) {
45
- __1.beforeSaveHook(__1.PREFIX + "TenantTrustedDomain", function (request) { return __awaiter(_this, void 0, void 0, function () {
45
+ __1.beforeSaveHook(className, function (request) { return __awaiter(_this, void 0, void 0, function () {
46
46
  return __generator(this, function (_a) {
47
47
  __1.defaultHandler(request);
48
48
  return [2 /*return*/];
49
49
  });
50
50
  }); });
51
- __1.afterSaveHook(__1.PREFIX + "Tenant", function (request) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
51
+ __1.afterSaveHook(className, function (request) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
52
52
  return [2 /*return*/];
53
53
  }); }); });
54
54
  return [2 /*return*/];
@@ -1 +1 @@
1
- export declare function init(): Promise<void>;
1
+ export declare function init(className: string): Promise<void>;
@@ -38,11 +38,11 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.init = void 0;
40
40
  var __1 = require("..");
41
- function init() {
41
+ function init(className) {
42
42
  return __awaiter(this, void 0, void 0, function () {
43
43
  var _this = this;
44
44
  return __generator(this, function (_a) {
45
- __1.beforeSaveHook(__1.PREFIX + "UserData", function (request) { return __awaiter(_this, void 0, void 0, function () {
45
+ __1.beforeSaveHook(className, function (request) { return __awaiter(_this, void 0, void 0, function () {
46
46
  var object, original, user;
47
47
  return __generator(this, function (_a) {
48
48
  object = request.object, original = request.original, user = request.user;
@@ -50,7 +50,7 @@ function init() {
50
50
  return [2 /*return*/];
51
51
  });
52
52
  }); });
53
- __1.afterSaveHook(__1.PREFIX + "UserData", function (_a) {
53
+ __1.afterSaveHook(className, function (_a) {
54
54
  var object = _a.object, original = _a.original, user = _a.user;
55
55
  return __awaiter(_this, void 0, void 0, function () {
56
56
  return __generator(this, function (_b) {
@@ -1 +1 @@
1
- export declare function init(): Promise<void>;
1
+ export declare function init(className: string): Promise<void>;
@@ -38,11 +38,11 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.init = void 0;
40
40
  var __1 = require("..");
41
- function init() {
41
+ function init(className) {
42
42
  return __awaiter(this, void 0, void 0, function () {
43
43
  var _this = this;
44
44
  return __generator(this, function (_a) {
45
- __1.beforeSaveHook(__1.PREFIX + "WebPush", function (request) { return __awaiter(_this, void 0, void 0, function () {
45
+ __1.beforeSaveHook(className, function (request) { return __awaiter(_this, void 0, void 0, function () {
46
46
  var object, original, user;
47
47
  var _a;
48
48
  return __generator(this, function (_b) {
@@ -63,7 +63,7 @@ function init() {
63
63
  return [2 /*return*/];
64
64
  });
65
65
  }); });
66
- __1.afterSaveHook(__1.PREFIX + "WebPush", function (_a) {
66
+ __1.afterSaveHook(className, function (_a) {
67
67
  var object = _a.object, original = _a.original, user = _a.user;
68
68
  return __awaiter(_this, void 0, void 0, function () {
69
69
  return __generator(this, function (_b) {
@@ -1 +1 @@
1
- export declare function init(): Promise<void>;
1
+ export declare function init(className: string): Promise<void>;
@@ -38,11 +38,11 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.init = void 0;
40
40
  var __1 = require("..");
41
- function init() {
41
+ function init(className) {
42
42
  return __awaiter(this, void 0, void 0, function () {
43
43
  var _this = this;
44
44
  return __generator(this, function (_a) {
45
- __1.beforeSaveHook(__1.PREFIX + "Widget", function (request) { return __awaiter(_this, void 0, void 0, function () {
45
+ __1.beforeSaveHook(className, function (request) { return __awaiter(_this, void 0, void 0, function () {
46
46
  var object, original, user;
47
47
  return __generator(this, function (_a) {
48
48
  object = request.object, original = request.original, user = request.user;
@@ -50,7 +50,7 @@ function init() {
50
50
  return [2 /*return*/];
51
51
  });
52
52
  }); });
53
- __1.afterSaveHook(__1.PREFIX + "Widget", function (_a) {
53
+ __1.afterSaveHook(className, function (_a) {
54
54
  var object = _a.object, original = _a.original, user = _a.user;
55
55
  return __awaiter(_this, void 0, void 0, function () {
56
56
  return __generator(this, function (_b) {
@@ -69,9 +69,8 @@ function init() {
69
69
  _e.sent();
70
70
  _e.label = 2;
71
71
  case 2:
72
- user.set("emailVerified", !!user.get("emailVerified"));
73
72
  user.set("tenantBanned", !!user.get("tenantBanned"));
74
- user.set("tenantVerified", !!tenant && !!user.get("emailVerified") && !!user.get("tenantVerified"));
73
+ user.set("tenantVerified", !!tenant && !!user.get("tenantVerified"));
75
74
  if (!(!!tenant &&
76
75
  !!user.get("emailVerified") &&
77
76
  !user.get("tenantVerified"))) return [3 /*break*/, 4];
@@ -35,42 +35,39 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
35
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
36
  }
37
37
  };
38
+ var __spreadArray = (this && this.__spreadArray) || function (to, from) {
39
+ for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
40
+ to[j] = from[i];
41
+ return to;
42
+ };
43
+ var __importDefault = (this && this.__importDefault) || function (mod) {
44
+ return (mod && mod.__esModule) ? mod : { "default": mod };
45
+ };
38
46
  Object.defineProperty(exports, "__esModule", { value: true });
39
47
  exports.init = void 0;
48
+ var fs_1 = __importDefault(require("fs"));
49
+ var __1 = require("..");
40
50
  function init() {
41
51
  return __awaiter(this, void 0, void 0, function () {
42
- var CloudCode, _i, CloudCode_1, init_1;
52
+ var classNames, _i, classNames_1, name, init_1;
43
53
  return __generator(this, function (_a) {
44
54
  switch (_a.label) {
45
55
  case 0:
46
- CloudCode = [
47
- require("./_beforeLogin"),
48
- require("./_User"),
49
- require("./Alarm"),
50
- require("./AlarmWebhook"),
51
- require("./Tenant"),
52
- require("./TenantMeta"),
53
- require("./TenantTrustedDomain"),
54
- require("./Config"),
55
- require("./Dashboard"),
56
- require("./NavigationGroup"),
57
- require("./NavigationItem"),
58
- require("./Notification"),
59
- require("./Permission"),
60
- require("./Report"),
61
- require("./Share"),
62
- require("./Source"),
63
- require("./SourceMeta"),
64
- require("./UserData"),
65
- require("./WebPush"),
66
- require("./Widget"),
67
- ];
68
- _i = 0, CloudCode_1 = CloudCode;
56
+ classNames = __spreadArray([
57
+ "_beforeLogin",
58
+ "_User"
59
+ ], fs_1.default
60
+ .readdirSync(__dirname)
61
+ .filter(function (filename) { return !filename.startsWith("_"); })
62
+ .filter(function (filename) { return filename.endsWith(".js"); })
63
+ .map(function (filename) { return filename.replace(".js", ""); }));
64
+ _i = 0, classNames_1 = classNames;
69
65
  _a.label = 1;
70
66
  case 1:
71
- if (!(_i < CloudCode_1.length)) return [3 /*break*/, 4];
72
- init_1 = CloudCode_1[_i].init;
73
- return [4 /*yield*/, init_1().catch(function (e) { return console.error(e); })];
67
+ if (!(_i < classNames_1.length)) return [3 /*break*/, 4];
68
+ name = classNames_1[_i];
69
+ init_1 = require("./" + name).init;
70
+ return [4 /*yield*/, init_1(__1.PREFIX + name).catch(function (e) { return console.error(e); })];
74
71
  case 2:
75
72
  _a.sent();
76
73
  _a.label = 3;
package/dist/index.d.ts CHANGED
@@ -28,4 +28,12 @@ declare type afterSaveHookType<T extends Parse.Object<Parse.Attributes>> = (requ
28
28
  export declare function afterSaveHook<T extends Parse.Object<Parse.Attributes>>(target: string | {
29
29
  new (): T;
30
30
  }, callback: afterSaveHookType<T>): void;
31
+ declare type beforeDeleteHookType<T extends Parse.Object<Parse.Attributes>> = (request: ParseCloud.BeforeDeleteRequest<T>) => Promise<void>;
32
+ export declare function beforeDeleteHook<T extends Parse.Object<Parse.Attributes>>(target: string | {
33
+ new (): T;
34
+ }, callback: beforeDeleteHookType<T>): void;
35
+ declare type afterDeleteHookType<T extends Parse.Object<Parse.Attributes>> = (request: ParseCloud.AfterDeleteRequest<T>) => Promise<void>;
36
+ export declare function afterDeleteHook<T extends Parse.Object<Parse.Attributes>>(target: string | {
37
+ new (): T;
38
+ }, callback: afterDeleteHookType<T>): void;
31
39
  export {};
package/dist/index.js CHANGED
@@ -39,7 +39,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
39
39
  return (mod && mod.__esModule) ? mod : { "default": mod };
40
40
  };
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
- exports.afterSaveHook = exports.beforeSaveHook = exports.defaultHandler = exports.immutableField = exports.ensureRole = exports.getEnvBoolean = exports.getEnv = exports.getConfigBoolean = exports.getConfig = exports.requirePermission = exports.hasPermission = exports.init = exports.PREFIX = void 0;
42
+ exports.afterDeleteHook = exports.beforeDeleteHook = exports.afterSaveHook = exports.beforeSaveHook = exports.defaultHandler = exports.immutableField = exports.ensureRole = exports.getEnvBoolean = exports.getEnv = exports.getConfigBoolean = exports.getConfig = exports.requirePermission = exports.hasPermission = exports.init = exports.PREFIX = void 0;
43
43
  var web_push_1 = __importDefault(require("web-push"));
44
44
  var path_1 = require("path");
45
45
  var parse_server_schema_1 = require("@openinc/parse-server-schema");
@@ -492,3 +492,67 @@ function afterSaveHook(target, callback) {
492
492
  afterSaveHooks[className].push(callback);
493
493
  }
494
494
  exports.afterSaveHook = afterSaveHook;
495
+ var beforeDeleteHooks = {};
496
+ function beforeDeleteHook(target, callback) {
497
+ var className = typeof target === "string" ? target : new target().className;
498
+ if (!beforeDeleteHooks[className]) {
499
+ beforeDeleteHooks[className] = [];
500
+ Parse.Cloud.beforeDelete(className, function beforeDeleteHookFunction(request) {
501
+ return __awaiter(this, void 0, void 0, function () {
502
+ var _i, _a, fn;
503
+ return __generator(this, function (_b) {
504
+ switch (_b.label) {
505
+ case 0:
506
+ _i = 0, _a = beforeDeleteHooks[className];
507
+ _b.label = 1;
508
+ case 1:
509
+ if (!(_i < _a.length)) return [3 /*break*/, 4];
510
+ fn = _a[_i];
511
+ return [4 /*yield*/, fn(request)];
512
+ case 2:
513
+ _b.sent();
514
+ _b.label = 3;
515
+ case 3:
516
+ _i++;
517
+ return [3 /*break*/, 1];
518
+ case 4: return [2 /*return*/];
519
+ }
520
+ });
521
+ });
522
+ });
523
+ }
524
+ beforeDeleteHooks[className].push(callback);
525
+ }
526
+ exports.beforeDeleteHook = beforeDeleteHook;
527
+ var afterDeleteHooks = {};
528
+ function afterDeleteHook(target, callback) {
529
+ var className = typeof target === "string" ? target : new target().className;
530
+ if (!afterDeleteHooks[className]) {
531
+ afterDeleteHooks[className] = [];
532
+ Parse.Cloud.afterDelete(className, function afterDeleteHookFunction(request) {
533
+ return __awaiter(this, void 0, void 0, function () {
534
+ var _i, _a, fn;
535
+ return __generator(this, function (_b) {
536
+ switch (_b.label) {
537
+ case 0:
538
+ _i = 0, _a = afterDeleteHooks[className];
539
+ _b.label = 1;
540
+ case 1:
541
+ if (!(_i < _a.length)) return [3 /*break*/, 4];
542
+ fn = _a[_i];
543
+ return [4 /*yield*/, fn(request)];
544
+ case 2:
545
+ _b.sent();
546
+ _b.label = 3;
547
+ case 3:
548
+ _i++;
549
+ return [3 /*break*/, 1];
550
+ case 4: return [2 /*return*/];
551
+ }
552
+ });
553
+ });
554
+ });
555
+ }
556
+ afterDeleteHooks[className].push(callback);
557
+ }
558
+ exports.afterDeleteHook = afterDeleteHook;
package/dist/ow.d.ts ADDED
@@ -0,0 +1,21 @@
1
+ export interface DataItemInterface {
2
+ id: string;
3
+ name: string;
4
+ reference?: string;
5
+ parent: string[];
6
+ user: string;
7
+ meta: Record<string, any>;
8
+ valueTypes: DataItemValueTypeInterface[];
9
+ values: DataItemValueInterface[];
10
+ }
11
+ export interface DataItemValueTypeInterface {
12
+ unit: string;
13
+ name: string;
14
+ type: "Number" | "String" | "Boolean" | "Geo" | "Object";
15
+ }
16
+ export interface DataItemValueInterface {
17
+ date: number;
18
+ value: any[];
19
+ }
20
+ export declare function getToken(usermail?: string): Promise<string | null>;
21
+ export declare function publishDataItem(dataItem: DataItemInterface, usermail?: string): Promise<void>;
package/dist/ow.js ADDED
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.publishDataItem = exports.getToken = void 0;
43
+ var node_fetch_1 = __importDefault(require("node-fetch"));
44
+ var jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
45
+ var _1 = require(".");
46
+ var LOG_PREFIX = "[@openinc/parse-server-opendash][open.WARE] ";
47
+ function getToken(usermail) {
48
+ return __awaiter(this, void 0, void 0, function () {
49
+ var JWT_EMAIL, JWT_SECRET, JWT_ISS, JWT_TOKEN;
50
+ return __generator(this, function (_a) {
51
+ JWT_EMAIL = usermail || _1.getEnv("PARSE_SERVER_OPENWARE_JWT_ADMIN_EMAIL");
52
+ JWT_SECRET = _1.getEnv("PARSE_SERVER_OPENWARE_JWT_SECRET");
53
+ JWT_ISS = _1.getEnv("PARSE_SERVER_OPENWARE_JWT_ISS");
54
+ JWT_TOKEN = _1.getEnv("PARSE_SERVER_OPENWARE_JWT_TOKEN");
55
+ if (JWT_EMAIL && JWT_SECRET && JWT_ISS) {
56
+ return [2 /*return*/, jsonwebtoken_1.default.sign({ usermail: JWT_EMAIL }, JWT_SECRET, {
57
+ algorithm: "HS256",
58
+ issuer: JWT_ISS,
59
+ noTimestamp: true,
60
+ })];
61
+ }
62
+ if (JWT_TOKEN) {
63
+ return [2 /*return*/, JWT_TOKEN];
64
+ }
65
+ return [2 /*return*/, null];
66
+ });
67
+ });
68
+ }
69
+ exports.getToken = getToken;
70
+ function publishDataItem(dataItem, usermail) {
71
+ return __awaiter(this, void 0, void 0, function () {
72
+ var active, token, baseurl, url, headers, response, _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
73
+ return __generator(this, function (_m) {
74
+ switch (_m.label) {
75
+ case 0:
76
+ active = _1.getEnvBoolean("PARSE_SERVER_OPENWARE");
77
+ if (!active) {
78
+ return [2 /*return*/, console.log(LOG_PREFIX +
79
+ "PARSE_SERVER_OPENWARE = false => Sending Data to open.WARE is not available.")];
80
+ }
81
+ return [4 /*yield*/, getToken(usermail)];
82
+ case 1:
83
+ token = _m.sent();
84
+ if (!token) {
85
+ return [2 /*return*/, console.log(LOG_PREFIX +
86
+ "PARSE_SERVER_OPENWARE_JWT_TOKEN OR _JWT_SECERT/_ADMIN_EMAIL/_ISS = undefined => Sending Data to open.WARE is not available.")];
87
+ }
88
+ baseurl = _1.getEnv("PARSE_SERVER_OPENWARE_BASEURL");
89
+ if (!baseurl) {
90
+ return [2 /*return*/, console.log(LOG_PREFIX +
91
+ "PARSE_SERVER_OPENWARE_BASEURL = undefined => Sending Data to open.WARE is not available.")];
92
+ }
93
+ url = baseurl + "/api/data/push";
94
+ headers = {
95
+ Authorization: "Bearer " + token,
96
+ };
97
+ return [4 /*yield*/, node_fetch_1.default(url, {
98
+ method: "POST",
99
+ headers: headers,
100
+ body: JSON.stringify(dataItem),
101
+ })];
102
+ case 2:
103
+ response = _m.sent();
104
+ if (!!response.ok) return [3 /*break*/, 6];
105
+ _b = (_a = console).log;
106
+ _c = LOG_PREFIX +
107
+ "PUBLISH ERROR Bad Status Code: " +
108
+ response.status +
109
+ "\n";
110
+ return [4 /*yield*/, response.text()];
111
+ case 3:
112
+ _b.apply(_a, [_c +
113
+ (_m.sent())]);
114
+ _e = (_d = console).log;
115
+ _f = LOG_PREFIX +
116
+ "PUBLISH ERROR DEBUG: \n" +
117
+ "URL = " +
118
+ url +
119
+ "\n" +
120
+ "TOKEN = " +
121
+ token +
122
+ "\n" +
123
+ "PAYLOAD = " +
124
+ JSON.stringify(dataItem, null, 2) +
125
+ "\n";
126
+ return [4 /*yield*/, response.text()];
127
+ case 4:
128
+ _e.apply(_d, [_f +
129
+ (_m.sent())]);
130
+ _g = Error.bind;
131
+ _h = LOG_PREFIX +
132
+ "Bad Status Code: " +
133
+ response.status +
134
+ "\n";
135
+ return [4 /*yield*/, response.text()];
136
+ case 5: throw new (_g.apply(Error, [void 0, _h +
137
+ (_m.sent())]))();
138
+ case 6:
139
+ _k = (_j = console).log;
140
+ _l = LOG_PREFIX + "PUBLISH SUCCESS ";
141
+ return [4 /*yield*/, response.text()];
142
+ case 7:
143
+ _k.apply(_j, [_l + (_m.sent())]);
144
+ return [2 /*return*/];
145
+ }
146
+ });
147
+ });
148
+ }
149
+ exports.publishDataItem = publishDataItem;
@@ -0,0 +1,12 @@
1
+ /// <reference types="parse" />
2
+ export interface BDE_FormAttributes {
3
+ id: string;
4
+ objectId: string;
5
+ createdAt: Date;
6
+ updatedAt: Date;
7
+ name?: string;
8
+ RID?: string;
9
+ form?: any;
10
+ entries?: any[];
11
+ }
12
+ export declare type BDE_Form = Parse.Object<BDE_FormAttributes>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,9 @@
1
+ /// <reference types="parse" />
2
+ export interface BDE_ListAttributes {
3
+ id: string;
4
+ objectId: string;
5
+ createdAt: Date;
6
+ updatedAt: Date;
7
+ list: string;
8
+ }
9
+ export declare type BDE_List = Parse.Object<BDE_ListAttributes>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,13 @@
1
+ /// <reference types="parse" />
2
+ declare type BDE_List = Parse.Object;
3
+ export interface BDE_ListEntryAttributes {
4
+ id: string;
5
+ objectId: string;
6
+ createdAt: Date;
7
+ updatedAt: Date;
8
+ key: string;
9
+ value: string;
10
+ list: BDE_List;
11
+ }
12
+ export declare type BDE_ListEntry = Parse.Object<BDE_ListEntryAttributes>;
13
+ export {};
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ /// <reference types="parse" />
2
+ export interface BDE_PageAttributes {
3
+ id: string;
4
+ objectId: string;
5
+ createdAt: Date;
6
+ updatedAt: Date;
7
+ pageID?: string;
8
+ data?: any;
9
+ }
10
+ export declare type BDE_Page = Parse.Object<BDE_PageAttributes>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ /// <reference types="parse" />
2
+ export interface BDE_ResultAttributes {
3
+ id: string;
4
+ objectId: string;
5
+ createdAt: Date;
6
+ updatedAt: Date;
7
+ result?: any;
8
+ rueckmeldeUnit?: string;
9
+ RID?: string;
10
+ }
11
+ export declare type BDE_Result = Parse.Object<BDE_ResultAttributes>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,13 @@
1
+ /// <reference types="parse" />
2
+ import { BDE_Form } from ".";
3
+ export interface BDE_UnitAttributes {
4
+ id: string;
5
+ objectId: string;
6
+ createdAt: Date;
7
+ updatedAt: Date;
8
+ name?: string;
9
+ forms?: Parse.Relation<BDE_Form>;
10
+ image?: Parse.File;
11
+ source?: string;
12
+ }
13
+ export declare type BDE_Unit = Parse.Object<BDE_UnitAttributes>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });