adminforth 1.3.54-next.22 → 1.3.54-next.24

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 (125) hide show
  1. package/dist/auth.js +41 -56
  2. package/dist/auth.js.map +1 -1
  3. package/dist/dataConnectors/baseConnector.js +107 -128
  4. package/dist/dataConnectors/baseConnector.js.map +1 -1
  5. package/dist/dataConnectors/clickhouse.js +125 -148
  6. package/dist/dataConnectors/clickhouse.js.map +1 -1
  7. package/dist/dataConnectors/mongo.js +74 -101
  8. package/dist/dataConnectors/mongo.js.map +1 -1
  9. package/dist/dataConnectors/postgres.js +117 -142
  10. package/dist/dataConnectors/postgres.js.map +1 -1
  11. package/dist/dataConnectors/sqlite.js +106 -129
  12. package/dist/dataConnectors/sqlite.js.map +1 -1
  13. package/dist/index.js +196 -217
  14. package/dist/index.js.map +1 -1
  15. package/dist/modules/codeInjector.js +470 -495
  16. package/dist/modules/codeInjector.js.map +1 -1
  17. package/dist/modules/configValidator.js +13 -22
  18. package/dist/modules/configValidator.js.map +1 -1
  19. package/dist/modules/operationalResource.js +49 -70
  20. package/dist/modules/operationalResource.js.map +1 -1
  21. package/dist/modules/restApi.js +103 -116
  22. package/dist/modules/restApi.js.map +1 -1
  23. package/dist/plugins/audit-log/types.js +2 -0
  24. package/dist/plugins/audit-log/types.js.map +1 -0
  25. package/dist/plugins/chat-gpt/types.js +2 -0
  26. package/dist/plugins/chat-gpt/types.js.map +1 -0
  27. package/dist/plugins/email-password-reset/types.js +2 -0
  28. package/dist/plugins/email-password-reset/types.js.map +1 -0
  29. package/dist/plugins/foreign-inline-list/types.js +2 -0
  30. package/dist/plugins/foreign-inline-list/types.js.map +1 -0
  31. package/dist/plugins/import-export/types.js +2 -0
  32. package/dist/plugins/import-export/types.js.map +1 -0
  33. package/dist/plugins/rich-editor/custom/async-queue.js +29 -0
  34. package/dist/plugins/rich-editor/custom/async-queue.js.map +1 -0
  35. package/dist/plugins/rich-editor/dist/async-queue.js +41 -0
  36. package/dist/plugins/rich-editor/dist/custom/async-queue.js +29 -0
  37. package/dist/plugins/rich-editor/dist/custom/async-queue.js.map +1 -0
  38. package/dist/plugins/rich-editor/types.js +16 -0
  39. package/dist/plugins/rich-editor/types.js.map +1 -0
  40. package/dist/plugins/two-factors-auth/types.js +2 -0
  41. package/dist/plugins/two-factors-auth/types.js.map +1 -0
  42. package/dist/plugins/upload/types.js +2 -0
  43. package/dist/plugins/upload/types.js.map +1 -0
  44. package/dist/servers/express.js +29 -42
  45. package/dist/servers/express.js.map +1 -1
  46. package/package.json +4 -1
  47. package/auth.ts +0 -140
  48. package/basePlugin.ts +0 -70
  49. package/dataConnectors/baseConnector.ts +0 -222
  50. package/dataConnectors/clickhouse.ts +0 -343
  51. package/dataConnectors/mongo.ts +0 -202
  52. package/dataConnectors/postgres.ts +0 -310
  53. package/dataConnectors/sqlite.ts +0 -258
  54. package/index.ts +0 -428
  55. package/modules/codeInjector.ts +0 -747
  56. package/modules/configValidator.ts +0 -588
  57. package/modules/operationalResource.ts +0 -98
  58. package/modules/restApi.ts +0 -718
  59. package/modules/styleGenerator.ts +0 -55
  60. package/modules/styles.ts +0 -126
  61. package/modules/utils.ts +0 -472
  62. package/servers/express.ts +0 -259
  63. package/spa/.eslintrc.cjs +0 -14
  64. package/spa/README.md +0 -39
  65. package/spa/env.d.ts +0 -1
  66. package/spa/index.html +0 -23
  67. package/spa/package-lock.json +0 -4659
  68. package/spa/package.json +0 -52
  69. package/spa/postcss.config.js +0 -6
  70. package/spa/public/assets/favicon.png +0 -0
  71. package/spa/src/App.vue +0 -418
  72. package/spa/src/assets/base.css +0 -2
  73. package/spa/src/assets/logo.svg +0 -19
  74. package/spa/src/components/AcceptModal.vue +0 -45
  75. package/spa/src/components/Breadcrumbs.vue +0 -41
  76. package/spa/src/components/BreadcrumbsWithButtons.vue +0 -26
  77. package/spa/src/components/CustomDatePicker.vue +0 -176
  78. package/spa/src/components/CustomDateRangePicker.vue +0 -218
  79. package/spa/src/components/CustomRangePicker.vue +0 -156
  80. package/spa/src/components/Dropdown.vue +0 -168
  81. package/spa/src/components/Filters.vue +0 -222
  82. package/spa/src/components/HelloWorld.vue +0 -17
  83. package/spa/src/components/MenuLink.vue +0 -27
  84. package/spa/src/components/ResourceForm.vue +0 -325
  85. package/spa/src/components/ResourceListTable.vue +0 -466
  86. package/spa/src/components/SingleSkeletLoader.vue +0 -13
  87. package/spa/src/components/SkeleteLoader.vue +0 -23
  88. package/spa/src/components/ThreeDotsMenu.vue +0 -43
  89. package/spa/src/components/Toast.vue +0 -78
  90. package/spa/src/components/ValueRenderer.vue +0 -141
  91. package/spa/src/components/icons/IconCalendar.vue +0 -5
  92. package/spa/src/components/icons/IconCommunity.vue +0 -7
  93. package/spa/src/components/icons/IconDocumentation.vue +0 -7
  94. package/spa/src/components/icons/IconEcosystem.vue +0 -7
  95. package/spa/src/components/icons/IconSupport.vue +0 -7
  96. package/spa/src/components/icons/IconTime.vue +0 -5
  97. package/spa/src/components/icons/IconTooling.vue +0 -19
  98. package/spa/src/composables/useFrontendApi.ts +0 -26
  99. package/spa/src/composables/useStores.ts +0 -131
  100. package/spa/src/index.scss +0 -31
  101. package/spa/src/main.ts +0 -18
  102. package/spa/src/renderers/CompactUUID.vue +0 -48
  103. package/spa/src/renderers/CountryFlag.vue +0 -69
  104. package/spa/src/router/index.ts +0 -59
  105. package/spa/src/spa_types/core.ts +0 -53
  106. package/spa/src/stores/core.ts +0 -148
  107. package/spa/src/stores/filters.ts +0 -27
  108. package/spa/src/stores/modal.ts +0 -48
  109. package/spa/src/stores/toast.ts +0 -31
  110. package/spa/src/stores/user.ts +0 -72
  111. package/spa/src/utils.ts +0 -160
  112. package/spa/src/views/CreateView.vue +0 -167
  113. package/spa/src/views/EditView.vue +0 -170
  114. package/spa/src/views/ListView.vue +0 -352
  115. package/spa/src/views/LoginView.vue +0 -192
  116. package/spa/src/views/ResourceParent.vue +0 -17
  117. package/spa/src/views/ShowView.vue +0 -194
  118. package/spa/tailwind.config.js +0 -17
  119. package/spa/tsconfig.app.json +0 -14
  120. package/spa/tsconfig.json +0 -11
  121. package/spa/tsconfig.node.json +0 -19
  122. package/spa/vite.config.ts +0 -56
  123. package/tsconfig.json +0 -112
  124. package/types/AdminForthConfig.ts +0 -1762
  125. package/types/FrontendAPI.ts +0 -143
package/dist/auth.js CHANGED
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import jwt from 'jsonwebtoken';
11
2
  import crypto from 'crypto';
12
3
  // Function to generate a password hash using PBKDF2
@@ -70,60 +61,54 @@ class AdminForthAuth {
70
61
  // issue JWT token
71
62
  return jwt.sign(Object.assign(Object.assign({}, payload), { t: type }), secret, { expiresIn });
72
63
  }
73
- verify(jwtToken_1, mustHaveType_1) {
74
- return __awaiter(this, arguments, void 0, function* (jwtToken, mustHaveType, decodeUser = true) {
75
- // read ADMINFORH_SECRET from environment if not drop error
76
- const secret = process.env.ADMINFORTH_SECRET;
77
- if (!secret) {
78
- throw new Error('ADMINFORTH_SECRET environment not set');
64
+ async verify(jwtToken, mustHaveType, decodeUser = true) {
65
+ // read ADMINFORH_SECRET from environment if not drop error
66
+ const secret = process.env.ADMINFORTH_SECRET;
67
+ if (!secret) {
68
+ throw new Error('ADMINFORTH_SECRET environment not set');
69
+ }
70
+ let decoded;
71
+ try {
72
+ // verify JWT token
73
+ decoded = jwt.verify(jwtToken, secret);
74
+ }
75
+ catch (err) {
76
+ if (err.name === 'TokenExpiredError') {
77
+ console.error('Token expired:', err.message);
79
78
  }
80
- let decoded;
81
- try {
82
- // verify JWT token
83
- decoded = jwt.verify(jwtToken, secret);
79
+ else if (err.name === 'JsonWebTokenError') {
80
+ console.error('Token error:', err.message);
84
81
  }
85
- catch (err) {
86
- if (err.name === 'TokenExpiredError') {
87
- console.error('Token expired:', err.message);
88
- }
89
- else if (err.name === 'JsonWebTokenError') {
90
- console.error('Token error:', err.message);
91
- }
92
- else {
93
- console.error('Failed to verify JWT token', err);
94
- }
95
- return null;
82
+ else {
83
+ console.error('Failed to verify JWT token', err);
96
84
  }
97
- const { pk, t } = decoded;
98
- if (t !== mustHaveType) {
99
- console.error(`Invalid token type during verification: ${t}, must be ${mustHaveType}`);
85
+ return null;
86
+ }
87
+ const { pk, t } = decoded;
88
+ if (t !== mustHaveType) {
89
+ console.error(`Invalid token type during verification: ${t}, must be ${mustHaveType}`);
90
+ return null;
91
+ }
92
+ if (decodeUser !== false) {
93
+ const dbUser = await this.adminforth.getUserByPk(pk);
94
+ if (!dbUser) {
95
+ console.error(`User with pk ${pk} not found in database`);
96
+ // will logout user which was deleted
100
97
  return null;
101
98
  }
102
- if (decodeUser !== false) {
103
- const dbUser = yield this.adminforth.getUserByPk(pk);
104
- if (!dbUser) {
105
- console.error(`User with pk ${pk} not found in database`);
106
- // will logout user which was deleted
107
- return null;
108
- }
109
- decoded.dbUser = dbUser;
110
- }
111
- return decoded;
112
- });
99
+ decoded.dbUser = dbUser;
100
+ }
101
+ return decoded;
113
102
  }
114
- static generatePasswordHash(password) {
115
- return __awaiter(this, void 0, void 0, function* () {
116
- const salt = generateSalt();
117
- const hashedPassword = yield calcPasswordHash(password, salt);
118
- return `${salt}:${hashedPassword}`;
119
- });
103
+ static async generatePasswordHash(password) {
104
+ const salt = generateSalt();
105
+ const hashedPassword = await calcPasswordHash(password, salt);
106
+ return `${salt}:${hashedPassword}`;
120
107
  }
121
- static verifyPassword(password, hashedPassword) {
122
- return __awaiter(this, void 0, void 0, function* () {
123
- const [salt, hash] = hashedPassword.split(':');
124
- const newHash = yield calcPasswordHash(password, salt);
125
- return newHash === hash;
126
- });
108
+ static async verifyPassword(password, hashedPassword) {
109
+ const [salt, hash] = hashedPassword.split(':');
110
+ const newHash = await calcPasswordHash(password, salt);
111
+ return newHash === hash;
127
112
  }
128
113
  }
129
114
  export default AdminForthAuth;
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../auth.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,GAAG,MAAM,cAAc,CAAC;AAC/B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,oDAAoD;AACpD,SAAS,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,MAAM,GAAG,QAAQ;IAC9F,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;YAC/E,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,qCAAqC;AACrC,SAAS,YAAY,CAAC,MAAM,GAAG,EAAE;IAC/B,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,GAAG;YACN,OAAO,KAAK,CAAC;QACf,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,CAAC;QACpB,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,CAAC;QACzB,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QAC9B;YACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AAED,MAAM,cAAc;IAGlB,YAAY,UAAU;QACpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,gBAAgB,CAAC,QAAQ;QACvB,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,yBAAyB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG,oEAAoE,CAAC,CAAC;IACvK,CAAC;IAED,aAAa,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAKnD;QACC,MAAM,SAAS,GAAW,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,KAAK,CAAC,CAAC;QAC/G,2BAA2B;QAC3B,MAAM,YAAY,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAC,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAChE,MAAM,mBAAmB,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAErF,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,kBAAkB,KAAK,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG,wCAAwC,mBAAmB,EAAE,CAAC,CAAC;IACxK,CAAC;IAED,kBAAkB,CAAC,EAAC,QAAQ,EAAE,IAAI,EAAC;QACjC,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,cAAc,IAAI,WAAW,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG,oEAAoE,CAAC,CAAC;IAC3K,CAAC;IAED,eAAe,CAAC,EAAE,QAAQ,EAAE,OAAO,EAElC;QACC,MAAM,EAAC,IAAI,EAAC,KAAK,EAAC,MAAM,EAAC,QAAQ,EAAC,GAAG,OAAO,CAAA;QAC5C,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,cAAc,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG,wCAAwC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,WAAW,EAAG,GAAG,CAAC,CAAC;IACtM,CAAC;IAED,QAAQ,CAAC,OAAe,EAAE,IAAY,EAAE,YAAoB,KAAK;QAC/D,2DAA2D;QAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QAED,kBAAkB;QAClB,OAAO,GAAG,CAAC,IAAI,iCAAK,OAAO,KAAE,CAAC,EAAE,IAAI,KAAG,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IAChE,CAAC;IAEK,MAAM;6DAAC,QAAgB,EAAE,YAAoB,EAAE,aAAkC,IAAI;YACzF,2DAA2D;YAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;YAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC3D,CAAC;YACD,IAAI,OAAO,CAAC;YACZ,IAAI,CAAC;gBACH,mBAAmB;gBACnB,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACzC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBACrC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC/C,CAAC;qBAAO,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAC7C,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC7C,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;gBACnD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC;YAC1B,IAAI,CAAC,KAAK,YAAY,EAAE,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,aAAa,YAAY,EAAE,CAAC,CAAC;gBACvF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACrD,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,CAAC;oBAC1D,qCAAqC;oBACrC,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;YAC1B,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;IAED,MAAM,CAAO,oBAAoB,CAAC,QAAQ;;YACxC,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;YAC5B,MAAM,cAAc,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC9D,OAAO,GAAG,IAAI,IAAI,cAAc,EAAE,CAAC;QACrC,CAAC;KAAA;IAED,MAAM,CAAO,cAAc,CAAC,QAAQ,EAAE,cAAc;;YAClD,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACvD,OAAO,OAAO,KAAK,IAAI,CAAC;QAC1B,CAAC;KAAA;CAGF;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../auth.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { AdminForthFilterOperators } from "../types/AdminForthConfig.js";
11
2
  import { suggestIfTypo } from "../modules/utils.js";
12
3
  export default class AdminForthBaseConnector {
@@ -17,17 +8,15 @@ export default class AdminForthBaseConnector {
17
8
  }
18
9
  }
19
10
  }
20
- getRecordByPrimaryKeyWithOriginalTypes(resource, id) {
21
- return __awaiter(this, void 0, void 0, function* () {
22
- const data = yield this.getDataWithOriginalTypes({
23
- resource,
24
- limit: 1,
25
- offset: 0,
26
- sort: [],
27
- filters: [{ field: this.getPrimaryKey(resource), operator: AdminForthFilterOperators.EQ, value: id }],
28
- });
29
- return data.length > 0 ? data[0] : null;
11
+ async getRecordByPrimaryKeyWithOriginalTypes(resource, id) {
12
+ const data = await this.getDataWithOriginalTypes({
13
+ resource,
14
+ limit: 1,
15
+ offset: 0,
16
+ sort: [],
17
+ filters: [{ field: this.getPrimaryKey(resource), operator: AdminForthFilterOperators.EQ, value: id }],
30
18
  });
19
+ return data.length > 0 ? data[0] : null;
31
20
  }
32
21
  getDataWithOriginalTypes({ resource, limit, offset, sort, filters }) {
33
22
  throw new Error('Method not implemented.');
@@ -50,136 +39,126 @@ export default class AdminForthBaseConnector {
50
39
  createRecordOriginalValues({ resource, record }) {
51
40
  throw new Error('Method not implemented.');
52
41
  }
53
- checkUnique(resource, column, value) {
54
- return __awaiter(this, void 0, void 0, function* () {
55
- process.env.HEAVY_DEBUG && console.log('☝️🪲🪲🪲🪲 checkUnique|||', column, value);
56
- const existingRecord = yield this.getData({
57
- resource,
58
- filters: [{ field: column.name, operator: AdminForthFilterOperators.EQ, value }],
59
- limit: 1,
60
- sort: [],
61
- offset: 0,
62
- getTotals: false
63
- });
64
- return existingRecord.data.length > 0;
42
+ async checkUnique(resource, column, value) {
43
+ process.env.HEAVY_DEBUG && console.log('☝️🪲🪲🪲🪲 checkUnique|||', column, value);
44
+ const existingRecord = await this.getData({
45
+ resource,
46
+ filters: [{ field: column.name, operator: AdminForthFilterOperators.EQ, value }],
47
+ limit: 1,
48
+ sort: [],
49
+ offset: 0,
50
+ getTotals: false
65
51
  });
52
+ return existingRecord.data.length > 0;
66
53
  }
67
- createRecord(_a) {
68
- return __awaiter(this, arguments, void 0, function* ({ resource, record, adminUser }) {
69
- // transform value using setFieldValue and call createRecordOriginalValues
70
- const filledRecord = Object.assign({}, record);
71
- const recordWithOriginalValues = Object.assign({}, record);
72
- for (const col of resource.dataSourceColumns) {
73
- if (col.fillOnCreate) {
74
- if (filledRecord[col.name] === undefined) {
75
- filledRecord[col.name] = col.fillOnCreate({
76
- initialRecord: record,
77
- adminUser
78
- });
79
- }
54
+ async createRecord({ resource, record, adminUser }) {
55
+ // transform value using setFieldValue and call createRecordOriginalValues
56
+ const filledRecord = Object.assign({}, record);
57
+ const recordWithOriginalValues = Object.assign({}, record);
58
+ for (const col of resource.dataSourceColumns) {
59
+ if (col.fillOnCreate) {
60
+ if (filledRecord[col.name] === undefined) {
61
+ filledRecord[col.name] = col.fillOnCreate({
62
+ initialRecord: record,
63
+ adminUser
64
+ });
80
65
  }
81
- recordWithOriginalValues[col.name] = this.setFieldValue(col, filledRecord[col.name]);
82
66
  }
83
- let error = null;
84
- yield Promise.all(resource.dataSourceColumns.map((col) => __awaiter(this, void 0, void 0, function* () {
85
- if (col.isUnique && !col.virtual && !error) {
86
- const exists = yield this.checkUnique(resource, col, recordWithOriginalValues[col.name]);
87
- if (exists) {
88
- error = `Record with ${col.name} ${recordWithOriginalValues[col.name]} already exists`;
89
- }
67
+ recordWithOriginalValues[col.name] = this.setFieldValue(col, filledRecord[col.name]);
68
+ }
69
+ let error = null;
70
+ await Promise.all(resource.dataSourceColumns.map(async (col) => {
71
+ if (col.isUnique && !col.virtual && !error) {
72
+ const exists = await this.checkUnique(resource, col, recordWithOriginalValues[col.name]);
73
+ if (exists) {
74
+ error = `Record with ${col.name} ${recordWithOriginalValues[col.name]} already exists`;
90
75
  }
91
- })));
92
- if (error) {
93
- process.env.HEAVY_DEBUG && console.log('🪲🆕 check unique error', error);
94
- return { error, ok: false };
95
76
  }
96
- process.env.HEAVY_DEBUG && console.log('🪲🆕 creating record', recordWithOriginalValues);
97
- yield this.createRecordOriginalValues({ resource, record: recordWithOriginalValues });
98
- return {
99
- ok: true,
100
- createdRecord: recordWithOriginalValues,
101
- };
102
- });
77
+ }));
78
+ if (error) {
79
+ process.env.HEAVY_DEBUG && console.log('🪲🆕 check unique error', error);
80
+ return { error, ok: false };
81
+ }
82
+ process.env.HEAVY_DEBUG && console.log('🪲🆕 creating record', recordWithOriginalValues);
83
+ await this.createRecordOriginalValues({ resource, record: recordWithOriginalValues });
84
+ return {
85
+ ok: true,
86
+ createdRecord: recordWithOriginalValues,
87
+ };
103
88
  }
104
89
  updateRecordOriginalValues({ resource, recordId, newValues }) {
105
90
  throw new Error('Method not implemented.');
106
91
  }
107
- updateRecord(_a) {
108
- return __awaiter(this, arguments, void 0, function* ({ resource, recordId, newValues }) {
109
- // transform value using setFieldValue and call updateRecordOriginalValues
110
- const recordWithOriginalValues = Object.assign({}, newValues);
111
- for (const field of Object.keys(newValues)) {
112
- const col = resource.dataSourceColumns.find((col) => col.name == field);
113
- // todo instead of throwing error, we can just not use setFieldValue here, and pass original value to updateRecordOriginalValues
114
- // we might consider this because some users might not want to define all columns in resource with showIn:[], but still want to use them in hooks
115
- if (!col) {
116
- const similar = suggestIfTypo(resource.dataSourceColumns.map((col) => col.name), field);
117
- throw new Error(`
92
+ async updateRecord({ resource, recordId, newValues }) {
93
+ // transform value using setFieldValue and call updateRecordOriginalValues
94
+ const recordWithOriginalValues = Object.assign({}, newValues);
95
+ for (const field of Object.keys(newValues)) {
96
+ const col = resource.dataSourceColumns.find((col) => col.name == field);
97
+ // todo instead of throwing error, we can just not use setFieldValue here, and pass original value to updateRecordOriginalValues
98
+ // we might consider this because some users might not want to define all columns in resource with showIn:[], but still want to use them in hooks
99
+ if (!col) {
100
+ const similar = suggestIfTypo(resource.dataSourceColumns.map((col) => col.name), field);
101
+ throw new Error(`
118
102
  Update record received field '${field}' (with value ${newValues[field]}), but such column not found in resource '${resource.resourceId}'. ${similar ? `Did you mean '${similar}'?` : ''}
119
103
  `);
120
- }
121
- recordWithOriginalValues[col.name] = this.setFieldValue(col, newValues[col.name]);
122
104
  }
123
- process.env.HEAVY_DEBUG && console.log(`🪲✏️ updating record id:${recordId}, values: ${JSON.stringify(recordWithOriginalValues)}`);
124
- yield this.updateRecordOriginalValues({ resource, recordId, newValues: recordWithOriginalValues });
125
- return { ok: true };
126
- });
105
+ recordWithOriginalValues[col.name] = this.setFieldValue(col, newValues[col.name]);
106
+ }
107
+ process.env.HEAVY_DEBUG && console.log(`🪲✏️ updating record id:${recordId}, values: ${JSON.stringify(recordWithOriginalValues)}`);
108
+ await this.updateRecordOriginalValues({ resource, recordId, newValues: recordWithOriginalValues });
109
+ return { ok: true };
127
110
  }
128
111
  deleteRecord({ resource, recordId }) {
129
112
  throw new Error('Method not implemented.');
130
113
  }
131
- getData(_a) {
132
- return __awaiter(this, arguments, void 0, function* ({ resource, limit, offset, sort, filters, getTotals }) {
133
- if (filters) {
134
- filters.map((f) => {
135
- if (!f.field) {
136
- throw new Error(`Field "field" not specified in filter object: ${JSON.stringify(f)}`);
137
- }
138
- if (!f.operator) {
139
- throw new Error(`Field "operator" not specified in filter object: ${JSON.stringify(f)}`);
140
- }
141
- const fieldObj = resource.dataSourceColumns.find((col) => col.name == f.field);
142
- if (!fieldObj) {
143
- const similar = suggestIfTypo(resource.dataSourceColumns.map((col) => col.name), f.field);
144
- throw new Error(`Field '${f.field}' not found in resource '${resource.resourceId}'. ${similar ? `Did you mean '${similar}'?` : ''}`);
145
- }
146
- if (f.operator == AdminForthFilterOperators.IN || f.operator == AdminForthFilterOperators.NIN) {
147
- f.value = f.value.map((val) => this.setFieldValue(fieldObj, val));
148
- }
149
- else {
150
- f.value = this.setFieldValue(fieldObj, f.value);
151
- }
152
- });
153
- }
154
- const promises = [this.getDataWithOriginalTypes({ resource, limit, offset, sort, filters })];
155
- if (getTotals) {
156
- promises.push(this.getCount({ resource, filters }));
157
- }
158
- else {
159
- promises.push(Promise.resolve(undefined));
160
- }
161
- const [data, total] = yield Promise.all(promises);
162
- // call getFieldValue for each field
163
- data.map((record) => {
164
- for (const col of resource.dataSourceColumns) {
165
- record[col.name] = this.getFieldValue(col, record[col.name]);
114
+ async getData({ resource, limit, offset, sort, filters, getTotals }) {
115
+ if (filters) {
116
+ filters.map((f) => {
117
+ if (!f.field) {
118
+ throw new Error(`Field "field" not specified in filter object: ${JSON.stringify(f)}`);
119
+ }
120
+ if (!f.operator) {
121
+ throw new Error(`Field "operator" not specified in filter object: ${JSON.stringify(f)}`);
122
+ }
123
+ const fieldObj = resource.dataSourceColumns.find((col) => col.name == f.field);
124
+ if (!fieldObj) {
125
+ const similar = suggestIfTypo(resource.dataSourceColumns.map((col) => col.name), f.field);
126
+ throw new Error(`Field '${f.field}' not found in resource '${resource.resourceId}'. ${similar ? `Did you mean '${similar}'?` : ''}`);
127
+ }
128
+ if (f.operator == AdminForthFilterOperators.IN || f.operator == AdminForthFilterOperators.NIN) {
129
+ f.value = f.value.map((val) => this.setFieldValue(fieldObj, val));
130
+ }
131
+ else {
132
+ f.value = this.setFieldValue(fieldObj, f.value);
166
133
  }
167
134
  });
168
- return { data, total };
169
- });
170
- }
171
- getMinMaxForColumns(_a) {
172
- return __awaiter(this, arguments, void 0, function* ({ resource, columns }) {
173
- const mm = yield this.getMinMaxForColumnsWithOriginalTypes({ resource, columns });
174
- const result = {};
175
- for (const col of columns) {
176
- result[col.name] = {
177
- min: this.getFieldValue(col, mm[col.name].min),
178
- max: this.getFieldValue(col, mm[col.name].max),
179
- };
135
+ }
136
+ const promises = [this.getDataWithOriginalTypes({ resource, limit, offset, sort, filters })];
137
+ if (getTotals) {
138
+ promises.push(this.getCount({ resource, filters }));
139
+ }
140
+ else {
141
+ promises.push(Promise.resolve(undefined));
142
+ }
143
+ const [data, total] = await Promise.all(promises);
144
+ // call getFieldValue for each field
145
+ data.map((record) => {
146
+ for (const col of resource.dataSourceColumns) {
147
+ record[col.name] = this.getFieldValue(col, record[col.name]);
180
148
  }
181
- return result;
182
149
  });
150
+ return { data, total };
151
+ }
152
+ async getMinMaxForColumns({ resource, columns }) {
153
+ const mm = await this.getMinMaxForColumnsWithOriginalTypes({ resource, columns });
154
+ const result = {};
155
+ for (const col of columns) {
156
+ result[col.name] = {
157
+ min: this.getFieldValue(col, mm[col.name].min),
158
+ max: this.getFieldValue(col, mm[col.name].max),
159
+ };
160
+ }
161
+ return result;
183
162
  }
184
163
  getRecordByPrimaryKey(resource, recordId) {
185
164
  return this.getRecordByPrimaryKeyWithOriginalTypes(resource, recordId).then((record) => {
@@ -1 +1 @@
1
- {"version":3,"file":"baseConnector.js","sourceRoot":"","sources":["../../dataConnectors/baseConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseConnector.js","sourceRoot":"","sources":["../../dataConnectors/baseConnector.ts"],"names":[],"mappings":"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"}