kuzzle-device-manager 3.0.0-3-dev.19 → 3.0.0-3-dev.21

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 (118) hide show
  1. package/dist/bin/migration/migrate-tenant-classes.d.ts +2 -0
  2. package/dist/bin/migration/migrate-tenant-classes.js +133 -0
  3. package/dist/bin/migration/migrate-tenant-classes.js.map +1 -0
  4. package/dist/lib/modules/asset/AssetHistoryService.d.ts +1 -1
  5. package/dist/lib/modules/asset/AssetHistoryService.js +3 -3
  6. package/dist/lib/modules/asset/AssetHistoryService.js.map +1 -1
  7. package/dist/lib/modules/asset/AssetService.d.ts +18 -12
  8. package/dist/lib/modules/asset/AssetService.js +115 -115
  9. package/dist/lib/modules/asset/AssetService.js.map +1 -1
  10. package/dist/lib/modules/asset/AssetsController.d.ts +1 -1
  11. package/dist/lib/modules/asset/AssetsController.js +72 -74
  12. package/dist/lib/modules/asset/AssetsController.js.map +1 -1
  13. package/dist/lib/modules/asset/roles/RoleAssetsAdmin.d.ts +1 -0
  14. package/dist/lib/modules/asset/roles/RoleAssetsAdmin.js +2 -0
  15. package/dist/lib/modules/asset/roles/RoleAssetsAdmin.js.map +1 -1
  16. package/dist/lib/modules/asset/roles/RoleAssetsReader.d.ts +1 -0
  17. package/dist/lib/modules/asset/roles/RoleAssetsReader.js +2 -0
  18. package/dist/lib/modules/asset/roles/RoleAssetsReader.js.map +1 -1
  19. package/dist/lib/modules/asset/types/AssetApi.d.ts +6 -6
  20. package/dist/lib/modules/asset/types/AssetEvents.d.ts +1 -1
  21. package/dist/lib/modules/decoder/PayloadService.js +16 -16
  22. package/dist/lib/modules/decoder/PayloadService.js.map +1 -1
  23. package/dist/lib/modules/device/DeviceService.d.ts +11 -11
  24. package/dist/lib/modules/device/DeviceService.js +86 -86
  25. package/dist/lib/modules/device/DeviceService.js.map +1 -1
  26. package/dist/lib/modules/device/DevicesController.js +60 -64
  27. package/dist/lib/modules/device/DevicesController.js.map +1 -1
  28. package/dist/lib/modules/device/collections/deviceMappings.js +2 -2
  29. package/dist/lib/modules/device/collections/deviceMappings.js.map +1 -1
  30. package/dist/lib/modules/device/roles/RoleDevicesAdmin.d.ts +1 -0
  31. package/dist/lib/modules/device/roles/RoleDevicesAdmin.js +2 -0
  32. package/dist/lib/modules/device/roles/RoleDevicesAdmin.js.map +1 -1
  33. package/dist/lib/modules/device/roles/RoleDevicesReader.d.ts +1 -0
  34. package/dist/lib/modules/device/roles/RoleDevicesReader.js +2 -0
  35. package/dist/lib/modules/device/roles/RoleDevicesReader.js.map +1 -1
  36. package/dist/lib/modules/device/types/DeviceApi.d.ts +2 -2
  37. package/dist/lib/modules/device/types/DeviceContent.d.ts +2 -2
  38. package/dist/lib/modules/device/types/DeviceEvents.d.ts +1 -1
  39. package/dist/lib/modules/group/GroupsController.d.ts +3 -3
  40. package/dist/lib/modules/group/GroupsController.js +66 -66
  41. package/dist/lib/modules/group/GroupsController.js.map +1 -1
  42. package/dist/lib/modules/group/GroupsService.d.ts +19 -14
  43. package/dist/lib/modules/group/GroupsService.js +103 -64
  44. package/dist/lib/modules/group/GroupsService.js.map +1 -1
  45. package/dist/lib/modules/group/index.d.ts +1 -0
  46. package/dist/lib/modules/group/index.js +1 -0
  47. package/dist/lib/modules/group/index.js.map +1 -1
  48. package/dist/lib/modules/group/roles/RoleGroupsAdmin.d.ts +1 -0
  49. package/dist/lib/modules/group/roles/RoleGroupsAdmin.js +2 -0
  50. package/dist/lib/modules/group/roles/RoleGroupsAdmin.js.map +1 -1
  51. package/dist/lib/modules/group/roles/RoleGroupsReader.d.ts +1 -0
  52. package/dist/lib/modules/group/roles/RoleGroupsReader.js +2 -0
  53. package/dist/lib/modules/group/roles/RoleGroupsReader.js.map +1 -1
  54. package/dist/lib/modules/group/types/GroupEvents.d.ts +8 -0
  55. package/dist/lib/modules/group/types/GroupEvents.js +3 -0
  56. package/dist/lib/modules/group/types/GroupEvents.js.map +1 -0
  57. package/dist/lib/modules/group/types/GroupsApi.d.ts +1 -1
  58. package/dist/lib/modules/measure/MeasureExporter.d.ts +5 -5
  59. package/dist/lib/modules/measure/MeasureExporter.js +20 -20
  60. package/dist/lib/modules/measure/MeasureExporter.js.map +1 -1
  61. package/dist/lib/modules/measure/MeasureService.d.ts +2 -2
  62. package/dist/lib/modules/measure/MeasureService.js +5 -5
  63. package/dist/lib/modules/measure/MeasureService.js.map +1 -1
  64. package/dist/lib/modules/measure/MeasureTargetBuilder.d.ts +1 -1
  65. package/dist/lib/modules/measure/MeasureTargetBuilder.js +2 -2
  66. package/dist/lib/modules/measure/MeasureTargetBuilder.js.map +1 -1
  67. package/dist/lib/modules/measure/types/MeasureTarget.d.ts +1 -1
  68. package/dist/lib/modules/measure/types/MeasureTarget.js +1 -1
  69. package/dist/lib/modules/measure/types/MeasureTarget.js.map +1 -1
  70. package/dist/lib/modules/model/MetadataReferential.d.ts +119 -0
  71. package/dist/lib/modules/model/MetadataReferential.js +342 -0
  72. package/dist/lib/modules/model/MetadataReferential.js.map +1 -0
  73. package/dist/lib/modules/model/ModelSerializer.js +13 -13
  74. package/dist/lib/modules/model/ModelSerializer.js.map +1 -1
  75. package/dist/lib/modules/model/ModelService.d.ts +120 -22
  76. package/dist/lib/modules/model/ModelService.js +548 -263
  77. package/dist/lib/modules/model/ModelService.js.map +1 -1
  78. package/dist/lib/modules/model/ModelsConflicts.d.ts +23 -0
  79. package/dist/lib/modules/model/ModelsConflicts.js +54 -4
  80. package/dist/lib/modules/model/ModelsConflicts.js.map +1 -1
  81. package/dist/lib/modules/model/ModelsController.d.ts +11 -2
  82. package/dist/lib/modules/model/ModelsController.js +151 -54
  83. package/dist/lib/modules/model/ModelsController.js.map +1 -1
  84. package/dist/lib/modules/model/ModelsRegister.d.ts +37 -5
  85. package/dist/lib/modules/model/ModelsRegister.js +107 -9
  86. package/dist/lib/modules/model/ModelsRegister.js.map +1 -1
  87. package/dist/lib/modules/model/collections/modelsMappings.js +15 -1
  88. package/dist/lib/modules/model/collections/modelsMappings.js.map +1 -1
  89. package/dist/lib/modules/model/types/ModelApi.d.ts +105 -14
  90. package/dist/lib/modules/model/types/ModelContent.d.ts +73 -7
  91. package/dist/lib/modules/model/types/ModelContent.js.map +1 -1
  92. package/dist/lib/modules/model/types/ModelDefinition.d.ts +6 -3
  93. package/dist/lib/modules/model/types/ModelEvents.d.ts +9 -4
  94. package/dist/lib/modules/plugin/DeviceManagerEngine.d.ts +58 -25
  95. package/dist/lib/modules/plugin/DeviceManagerEngine.js +184 -88
  96. package/dist/lib/modules/plugin/DeviceManagerEngine.js.map +1 -1
  97. package/dist/lib/modules/plugin/DeviceManagerPlugin.d.ts +46 -4
  98. package/dist/lib/modules/plugin/DeviceManagerPlugin.js +72 -9
  99. package/dist/lib/modules/plugin/DeviceManagerPlugin.js.map +1 -1
  100. package/dist/lib/modules/plugin/types/DeviceManagerConfiguration.d.ts +11 -0
  101. package/dist/lib/modules/shared/services/AbstractExporter.d.ts +8 -8
  102. package/dist/lib/modules/shared/services/AbstractExporter.js +9 -9
  103. package/dist/lib/modules/shared/services/AbstractExporter.js.map +1 -1
  104. package/dist/lib/modules/shared/services/BaseService.d.ts +7 -7
  105. package/dist/lib/modules/shared/services/BaseService.js +20 -17
  106. package/dist/lib/modules/shared/services/BaseService.js.map +1 -1
  107. package/dist/lib/modules/shared/services/DigitalTwinExporter.d.ts +3 -3
  108. package/dist/lib/modules/shared/services/DigitalTwinExporter.js +18 -18
  109. package/dist/lib/modules/shared/services/DigitalTwinExporter.js.map +1 -1
  110. package/dist/lib/modules/shared/services/DigitalTwinService.d.ts +8 -8
  111. package/dist/lib/modules/shared/services/DigitalTwinService.js +39 -39
  112. package/dist/lib/modules/shared/services/DigitalTwinService.js.map +1 -1
  113. package/dist/lib/modules/shared/types/DigitalTwinApi.d.ts +1 -1
  114. package/dist/lib/modules/shared/types/DigitalTwinEvents.d.ts +2 -2
  115. package/dist/lib/modules/shared/utils/lock.d.ts +7 -1
  116. package/dist/lib/modules/shared/utils/lock.js +2 -2
  117. package/dist/lib/modules/shared/utils/lock.js.map +1 -1
  118. package/package.json +3 -2
@@ -20,6 +20,12 @@ class ModelsController {
20
20
  handler: this.deleteGroup.bind(this),
21
21
  http: [{ path: "device-manager/models/group/:_id", verb: "delete" }],
22
22
  },
23
+ deleteMetadata: {
24
+ handler: this.deleteMetadata.bind(this),
25
+ http: [
26
+ { path: "device-manager/models/metadata/:name", verb: "delete" },
27
+ ],
28
+ },
23
29
  deleteMeasure: {
24
30
  handler: this.deleteMeasure.bind(this),
25
31
  http: [
@@ -38,6 +44,10 @@ class ModelsController {
38
44
  handler: this.getGroup.bind(this),
39
45
  http: [{ path: "device-manager/models/group/:model", verb: "get" }],
40
46
  },
47
+ getMetadataReferential: {
48
+ handler: this.getMetadataReferential.bind(this),
49
+ http: [{ path: "device-manager/models/metadata", verb: "get" }],
50
+ },
41
51
  getMeasure: {
42
52
  handler: this.getMeasure.bind(this),
43
53
  http: [{ path: "device-manager/models/measure/:type", verb: "get" }],
@@ -88,6 +98,18 @@ class ModelsController {
88
98
  { path: "device-manager/models/assets/:model", verb: "patch" },
89
99
  ],
90
100
  },
101
+ updateDevice: {
102
+ handler: this.updateDevice.bind(this),
103
+ http: [
104
+ { path: "device-manager/models/devices/:model", verb: "patch" },
105
+ ],
106
+ },
107
+ updateGroup: {
108
+ handler: this.updateGroup.bind(this),
109
+ http: [
110
+ { path: "device-manager/models/groups/:model", verb: "patch" },
111
+ ],
112
+ },
91
113
  writeAsset: {
92
114
  handler: this.writeAsset.bind(this),
93
115
  http: [{ path: "device-manager/models/assets", verb: "post" }],
@@ -100,6 +122,10 @@ class ModelsController {
100
122
  handler: this.writeGroup.bind(this),
101
123
  http: [{ path: "device-manager/models/groups", verb: "post" }],
102
124
  },
125
+ writeMetadata: {
126
+ handler: this.writeMetadata.bind(this),
127
+ http: [{ path: "device-manager/models/metadata/:name", verb: "put" }],
128
+ },
103
129
  writeMeasure: {
104
130
  handler: this.writeMeasure.bind(this),
105
131
  http: [{ path: "device-manager/models/measures", verb: "post" }],
@@ -109,29 +135,32 @@ class ModelsController {
109
135
  }
110
136
  async getAsset(request) {
111
137
  const model = request.getString("model");
112
- const engineGroups = request.getArray("engineGroups", []) || ["commons"];
113
- const engineId = request.input.args.engineId;
114
- const assetModel = await this.modelService.getAsset(engineGroups, engineId, model);
115
- return assetModel;
138
+ const tenantClasses = request.getArray("tenantClasses", []) || ["commons"];
139
+ const index = request.input.args.index;
140
+ const assetModel = await this.modelService.getAsset(tenantClasses, index, model);
141
+ const [resolved] = await this.resolveModels(request, [assetModel]);
142
+ return resolved;
116
143
  }
117
144
  async getDevice(request) {
118
145
  const model = request.getString("model");
119
146
  const deviceModel = await this.modelService.getDevice(model);
120
- return deviceModel;
147
+ const [resolved] = await this.resolveModels(request, [deviceModel]);
148
+ return resolved;
121
149
  }
122
150
  async getGroup(request) {
123
151
  const model = request.getString("model");
124
152
  const groupModel = await this.modelService.getGroup(model);
125
- return groupModel;
153
+ const [resolved] = await this.resolveModels(request, [groupModel]);
154
+ return resolved;
126
155
  }
127
156
  async getMeasure(request) {
128
157
  const type = request.getString("type");
129
- const engineId = request.input.args.engineId;
130
- const measureModel = await this.modelService.getMeasure(type, engineId);
158
+ const index = request.input.args.index;
159
+ const measureModel = await this.modelService.getMeasure(type, index);
131
160
  return measureModel;
132
161
  }
133
162
  async writeAsset(request) {
134
- const engineGroups = request.getBodyArray("engineGroups", []);
163
+ const tenantClasses = request.getBodyArray("tenantClasses", []);
135
164
  const model = request.getBodyString("model");
136
165
  const metadataMappings = request.getBodyObject("metadataMappings", {});
137
166
  const defaultValues = request.getBodyObject("defaultValues", {});
@@ -140,9 +169,9 @@ class ModelsController {
140
169
  const metadataGroups = request.getBodyObject("metadataGroups", {});
141
170
  const tooltipModels = request.getBodyObject("tooltipModels", {});
142
171
  const locales = request.getBodyObject("locales", {});
143
- const engineIds = request.getBodyArray("engineIds", []);
172
+ const indexes = request.getBodyArray("indexes", []);
144
173
  const icon = request.input.body?.icon;
145
- const assetModel = await this.modelService.writeAsset(engineGroups, model, metadataMappings, defaultValues, metadataDetails, metadataGroups, measures, tooltipModels, locales, engineIds, icon);
174
+ const assetModel = await this.modelService.writeAsset(tenantClasses, model, metadataMappings, defaultValues, metadataDetails, metadataGroups, measures, tooltipModels, locales, indexes, icon);
146
175
  return assetModel;
147
176
  }
148
177
  async writeDevice(request) {
@@ -157,7 +186,7 @@ class ModelsController {
157
186
  return deviceModel;
158
187
  }
159
188
  async writeGroup(request) {
160
- const engineGroups = request.getBodyArray("engineGroups");
189
+ const tenantClasses = request.getBodyArray("tenantClasses");
161
190
  const model = request.getBodyString("model");
162
191
  const affinity = request.getBodyObject("affinity", {
163
192
  models: { assets: [], devices: [] },
@@ -170,7 +199,7 @@ class ModelsController {
170
199
  const metadataGroups = request.getBodyObject("metadataGroups", {});
171
200
  const locales = request.getBodyObject("locales", {});
172
201
  const icon = request.input.body?.icon;
173
- const groupModel = await this.modelService.writeGroup(engineGroups, model, affinity, metadataMappings, defaultValues, metadataDetails, metadataGroups, icon, locales);
202
+ const groupModel = await this.modelService.writeGroup(tenantClasses, model, affinity, metadataMappings, defaultValues, metadataDetails, metadataGroups, icon, locales);
174
203
  return groupModel;
175
204
  }
176
205
  async writeMeasure(request) {
@@ -179,9 +208,9 @@ class ModelsController {
179
208
  const validationSchema = request.getBodyObject("validationSchema", {});
180
209
  const valuesDetails = request.getBodyObject("valuesDetails", {});
181
210
  const locales = request.getBodyObject("locales", {});
182
- const engineIds = request.getBodyArray("engineIds", []);
211
+ const indexes = request.getBodyArray("indexes", []);
183
212
  const icon = request.input.body?.icon;
184
- const measureModel = await this.modelService.writeMeasure(type, valuesMappings, validationSchema, valuesDetails, locales, engineIds, icon);
213
+ const measureModel = await this.modelService.writeMeasure(type, valuesMappings, validationSchema, valuesDetails, locales, indexes, icon);
185
214
  return measureModel;
186
215
  }
187
216
  async deleteAsset(request) {
@@ -201,92 +230,97 @@ class ModelsController {
201
230
  await this.modelService.deleteMeasure(_id);
202
231
  }
203
232
  async listAssets(request) {
204
- const engineGroups = request.getArray("engineGroups", []);
205
- const engineId = request.input.args.engineId;
233
+ const tenantClasses = request.getArray("tenantClasses", []);
234
+ const index = request.input.args.index;
206
235
  const user = request.getUser();
207
236
  const isAdmin = user.profileIds.includes("admin");
208
237
  const isAnonymous = user.profileIds.includes("anonymous") || user.profileIds.length === 0;
209
- // Super admin without engineGroups: return all asset models
210
- if (isAdmin && engineGroups.length === 0 && !engineId) {
211
- const models = await this.modelService.listAllAssets();
238
+ // Super admin without tenantClasses: return all asset models
239
+ if (isAdmin && tenantClasses.length === 0 && !index) {
240
+ const models = await this.resolveModels(request, await this.modelService.listAllAssets());
212
241
  return { models, total: models.length };
213
242
  }
214
- // Authenticated non-admin/non-anonymous must provide engineGroups or engineId
215
- if (!isAdmin && !isAnonymous && engineGroups.length === 0 && !engineId) {
216
- throw new kuzzle_1.BadRequestError('Missing argument: "engineGroups" or "engineId" must be provided.');
243
+ // Authenticated non-admin/non-anonymous must provide tenantClasses or index
244
+ if (!isAdmin && !isAnonymous && tenantClasses.length === 0 && !index) {
245
+ throw new kuzzle_1.BadRequestError('Missing argument: "tenantClasses" or "index" must be provided.');
217
246
  }
218
- // Validate engineId and engineGroups for authenticated non-admin users
247
+ // Validate index and tenantClasses for authenticated non-admin users
219
248
  if (!isAdmin && !isAnonymous) {
220
- if (engineId) {
221
- const engineExists = await this.modelService.engineExists(engineId);
249
+ // Whether the user may act on this engine is Kuzzle's call, not ours:
250
+ // the engine is the request `index`, so a profile restricted to its
251
+ // tenant is refused any other engine by the core before this runs.
252
+ if (index) {
253
+ const engineExists = await this.modelService.engineExists(index);
222
254
  if (!engineExists) {
223
- throw new kuzzle_1.NotFoundError(`Engine "${engineId}" not found.`);
224
- }
225
- const hasAccess = await this.modelService.userHasEngineAccess(request, engineId);
226
- if (!hasAccess) {
227
- throw new kuzzle_1.ForbiddenError(`You do not have access to engine "${engineId}".`);
255
+ throw new kuzzle_1.NotFoundError(`Engine "${index}" not found.`);
228
256
  }
229
257
  }
230
- if (engineGroups.length > 0) {
231
- const invalidGroups = await this.modelService.findInvalidEngineGroups(engineGroups);
258
+ if (tenantClasses.length > 0) {
259
+ const invalidGroups = await this.modelService.findInvalidTenantClasses(tenantClasses);
232
260
  if (invalidGroups.length > 0) {
233
- throw new kuzzle_1.NotFoundError(`Engine group(s) not found: ${invalidGroups.join(", ")}.`);
261
+ throw new kuzzle_1.NotFoundError(`Tenant class(s) not found: ${invalidGroups.join(", ")}.`);
234
262
  }
235
263
  }
236
264
  }
237
265
  // Always include commons alongside requested groups
238
- if (engineGroups.length > 0 && !engineGroups.includes("commons")) {
239
- engineGroups.push("commons");
266
+ if (tenantClasses.length > 0 && !tenantClasses.includes("commons")) {
267
+ tenantClasses.push("commons");
240
268
  }
241
- if (engineGroups.length === 0) {
242
- engineGroups.push("commons");
269
+ if (tenantClasses.length === 0) {
270
+ tenantClasses.push("commons");
243
271
  }
244
- const models = await this.modelService.listAsset(engineGroups, engineId);
272
+ const models = await this.resolveModels(request, await this.modelService.listAsset(tenantClasses, index));
245
273
  return {
246
274
  models,
247
275
  total: models.length,
248
276
  };
249
277
  }
250
- async listDevices() {
251
- const models = await this.modelService.listDevices();
278
+ async listDevices(request) {
279
+ const models = await this.resolveModels(request, await this.modelService.listDevices());
252
280
  return {
253
281
  models,
254
282
  total: models.length,
255
283
  };
256
284
  }
257
285
  async listGroups(request) {
258
- const engineGroups = request.getArray("engineGroups", []) || ["commons"];
259
- const models = await this.modelService.listGroups(engineGroups);
286
+ const tenantClasses = request.getArray("tenantClasses", []) || ["commons"];
287
+ const models = await this.resolveModels(request, await this.modelService.listGroups(tenantClasses));
260
288
  return {
261
289
  models,
262
290
  total: models.length,
263
291
  };
264
292
  }
265
293
  async listMeasures(request) {
266
- const engineId = request.input.args.engineId;
267
- const models = await this.modelService.listMeasures(engineId);
294
+ const index = request.input.args.index;
295
+ const models = await this.modelService.listMeasures(index);
268
296
  return {
269
297
  models,
270
298
  total: models.length,
271
299
  };
272
300
  }
273
301
  async searchAssets(request) {
274
- const engineId = request.input.args.engineId;
275
- return this.modelService.searchAssets(request.getArray("engineGroups", []) || ["commons"], engineId, request.getSearchParams());
302
+ const index = request.input.args.index;
303
+ const result = await this.modelService.searchAssets(request.getArray("tenantClasses", []) || ["commons"], index, request.getSearchParams());
304
+ result.hits = await this.resolveModels(request, result.hits);
305
+ return result;
276
306
  }
277
307
  async searchDevices(request) {
278
- return this.modelService.searchDevices(request.getSearchParams());
308
+ const result = await this.modelService.searchDevices(request.getSearchParams());
309
+ result.hits = await this.resolveModels(request, result.hits);
310
+ return result;
279
311
  }
280
312
  async searchGroups(request) {
281
- return this.modelService.searchGroups(request.getArray("engineGroups", []) || ["commons"], request.getSearchParams());
313
+ const result = await this.modelService.searchGroups(request.getArray("tenantClasses", []) || ["commons"], request.getSearchParams());
314
+ result.hits = await this.resolveModels(request, result.hits);
315
+ return result;
282
316
  }
283
317
  async searchMeasures(request) {
284
- const engineId = request.input.args.engineId;
285
- return this.modelService.searchMeasures(engineId, request.getSearchParams());
318
+ const index = request.input.args.index;
319
+ return this.modelService.searchMeasures(index, request.getSearchParams());
286
320
  }
287
321
  async updateAsset(request) {
288
- const engineGroups = request.getArray("engineGroups", []) || ["commons"];
289
- const engineId = request.input.args.engineId;
322
+ const tenantClasses = request.getArray("tenantClasses", []) || ["commons"];
323
+ const index = request.input.args.index;
290
324
  const model = request.getString("model");
291
325
  const metadataMappings = request.getBodyObject("metadataMappings", {});
292
326
  const defaultValues = request.getBodyObject("defaultValues", {});
@@ -296,9 +330,72 @@ class ModelsController {
296
330
  const tooltipModels = request.getBodyObject("tooltipModels", {});
297
331
  const locales = request.getBodyObject("locales", {});
298
332
  const icon = request.input.body?.icon;
299
- const updatedAssetModel = await this.modelService.updateAsset(engineGroups, engineId, model, metadataMappings, defaultValues, metadataDetails, metadataGroups, measures, tooltipModels, locales, icon, request);
333
+ const updatedAssetModel = await this.modelService.updateAsset(tenantClasses, index, model, metadataMappings, defaultValues, metadataDetails, metadataGroups, measures, tooltipModels, locales, icon, request);
300
334
  return updatedAssetModel;
301
335
  }
336
+ async updateDevice(request) {
337
+ const model = request.getString("model");
338
+ const metadataMappings = request.getBodyObject("metadataMappings");
339
+ const metadataDetails = request.input.body?.metadataDetails === undefined
340
+ ? undefined
341
+ : request.getBodyObject("metadataDetails");
342
+ const defaultValues = request.input.body?.defaultValues === undefined
343
+ ? undefined
344
+ : request.getBodyObject("defaultValues");
345
+ // ? Device models are additive only: only their metadata can be updated
346
+ const forbiddenFields = Object.keys(request.getBody()).filter((field) => !["metadataMappings", "metadataDetails", "defaultValues"].includes(field));
347
+ if (forbiddenFields.length > 0) {
348
+ throw new kuzzle_1.BadRequestError(`Device model "${model}" can only be updated with metadata, forbidden fields: ${forbiddenFields.join(", ")}`);
349
+ }
350
+ return this.modelService.updateDevice(model, {
351
+ defaultMetadata: defaultValues,
352
+ metadataDetails,
353
+ metadataMappings,
354
+ });
355
+ }
356
+ async updateGroup(request) {
357
+ const requestTenantClasses = request.getArray("tenantClasses", []);
358
+ const tenantClasses = requestTenantClasses.length > 0 ? requestTenantClasses : ["commons"];
359
+ const model = request.getString("model");
360
+ const affinity = request.input.body?.affinity === undefined
361
+ ? undefined
362
+ : request.getBodyObject("affinity");
363
+ const metadataMappings = request.getBodyObject("metadataMappings", {});
364
+ const defaultValues = request.getBodyObject("defaultValues", {});
365
+ const metadataDetails = request.getBodyObject("metadataDetails", {});
366
+ const metadataGroups = request.getBodyObject("metadataGroups", {});
367
+ const locales = request.getBodyObject("locales", {});
368
+ const icon = request.input.body?.icon;
369
+ return this.modelService.updateGroup(tenantClasses, model, {
370
+ affinity,
371
+ defaultMetadata: defaultValues,
372
+ icon,
373
+ locales,
374
+ metadataDetails,
375
+ metadataGroups,
376
+ metadataMappings,
377
+ });
378
+ }
379
+ /**
380
+ * Resolves the referential metadata of models, unless the rawModel flag is set
381
+ */
382
+ async resolveModels(request, documents) {
383
+ return request.getBoolean("rawModel")
384
+ ? documents
385
+ : this.modelService.resolveModels(documents);
386
+ }
387
+ async getMetadataReferential() {
388
+ return this.modelService.getMetadataReferential();
389
+ }
390
+ async writeMetadata(request) {
391
+ const name = request.getString("name");
392
+ const definition = request.getBody();
393
+ return this.modelService.writeMetadata(name, definition);
394
+ }
395
+ async deleteMetadata(request) {
396
+ const name = request.getString("name");
397
+ return this.modelService.deleteMetadata(name);
398
+ }
302
399
  }
303
400
  exports.ModelsController = ModelsController;
304
401
  //# sourceMappingURL=ModelsController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModelsController.js","sourceRoot":"","sources":["../../../../lib/modules/model/ModelsController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModelsController.js","sourceRoot":"","sources":["../../../../lib/modules/model/ModelsController.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { DeviceManagerPlugin } from "../plugin";
2
2
  import { NamedMeasures } from "../decoder";
3
3
  import { MeasureDefinition } from "../measure";
4
- import { GroupAffinity, LocaleDetails, MetadataDetails, MetadataGroups, MetadataMappings, TooltipModels } from "./types/ModelContent";
4
+ import { GroupAffinity, LocaleDetails, MetadataDetails, MetadataGroups, MetadataMappings, MetadataReferentialEntry, TooltipModels } from "./types/ModelContent";
5
5
  import { JSONObject } from "kuzzle-sdk";
6
6
  export declare class ModelsRegister {
7
7
  private config;
@@ -10,14 +10,46 @@ export declare class ModelsRegister {
10
10
  private deviceModels;
11
11
  private groupModels;
12
12
  private measureModels;
13
+ private metadataReferential;
13
14
  private logger;
14
15
  private get sdk();
15
16
  init(plugin: DeviceManagerPlugin): void;
16
17
  loadModels(): Promise<void>;
18
+ /**
19
+ * Merges the metadata registered from code over the stored metadata referential and saves it.
20
+ * Metadata added through the API are kept, the details of metadata registered from code win.
21
+ *
22
+ * @throws PluginImplementationError if the mappings of a stored metadata are modified, or if a new
23
+ * metadata conflicts with the stored models or the engines collections mappings
24
+ */
25
+ private loadMetadataReferential;
26
+ /**
27
+ * Checks the metadata registered from code that are not in the stored referential yet
28
+ * against the inline metadata of the stored models and the engines collections mappings
29
+ *
30
+ * @throws PluginImplementationError on a conflict
31
+ */
32
+ private checkNewMetadata;
33
+ /**
34
+ * Validates the metadata of models registered from code against the metadata referential
35
+ * and enriches the details and default values of the metadata coming from it
36
+ */
37
+ private resolveModels;
38
+ /**
39
+ * Registers a metadata in the metadata referential.
40
+ * Asset, device and group models can then use it with `{ referential: true }` in their metadataMappings.
41
+ * Its mappings cannot be modified once loaded, they are merged into the engines collections.
42
+ * Registering again an identical definition is allowed, so several modules can share a metadata.
43
+ *
44
+ * @param name - Name of the metadata
45
+ * @param definition - Mappings, default translations, editor hint, default value and icon of the metadata
46
+ * @throws PluginImplementationError if the metadata is invalid or already registered with another definition
47
+ */
48
+ registerMetadata(name: string, definition: MetadataReferentialEntry): void;
17
49
  /**
18
50
  * Registers an asset model.
19
51
  *
20
- * @param engineGroups - The engine group names.
52
+ * @param tenantClasses - The tenant class names.
21
53
  * @param model - The name of the asset model, which must be in PascalCase.
22
54
  * @param measures - The measures associated with this asset model.
23
55
  * @param metadataMappings - The metadata mappings for the model, defaults to an empty object.
@@ -28,7 +60,7 @@ export declare class ModelsRegister {
28
60
  * @param icon - Optional icon representing the model.
29
61
  * @throws PluginImplementationError if the model name is not in PascalCase.
30
62
  */
31
- registerAsset(engineGroups: string[], model: string, measures: NamedMeasures, metadataMappings?: MetadataMappings, defaultMetadata?: JSONObject, metadataDetails?: MetadataDetails, metadataGroups?: MetadataGroups, tooltipModels?: TooltipModels, locales?: {
63
+ registerAsset(tenantClasses: string[], model: string, measures: NamedMeasures, metadataMappings?: MetadataMappings, defaultMetadata?: JSONObject, metadataDetails?: MetadataDetails, metadataGroups?: MetadataGroups, tooltipModels?: TooltipModels, locales?: {
32
64
  [valueName: string]: LocaleDetails;
33
65
  }, icon?: string): void;
34
66
  /**
@@ -48,7 +80,7 @@ export declare class ModelsRegister {
48
80
  * Registers a group model.
49
81
  *
50
82
  *
51
- * @param engineGroups - The engine group names.
83
+ * @param tenantClasses - The tenant class names.
52
84
  * @param model - The name of the group model, which must be in PascalCase.
53
85
  * @param affinity - The type of object accepted and their model affinity.
54
86
  * @param metadataMappings - The metadata mappings for the model, defaults to an empty object.
@@ -59,7 +91,7 @@ export declare class ModelsRegister {
59
91
  * @param locales - Optional translations specific to the model.
60
92
  * @throws PluginImplementationError if the model name is not in PascalCase.
61
93
  */
62
- registerGroup(engineGroups: string[], model: string, affinity: GroupAffinity, metadataMappings?: MetadataMappings, defaultMetadata?: JSONObject, metadataDetails?: MetadataDetails, metadataGroups?: MetadataGroups, icon?: string, locales?: {
94
+ registerGroup(tenantClasses: string[], model: string, affinity: GroupAffinity, metadataMappings?: MetadataMappings, defaultMetadata?: JSONObject, metadataDetails?: MetadataDetails, metadataGroups?: MetadataGroups, icon?: string, locales?: {
63
95
  [valueName: string]: LocaleDetails;
64
96
  }): void;
65
97
  registerMeasure(type: string, measureDefinition: MeasureDefinition): void;