@webda/core 3.5.0 → 3.7.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.
Files changed (129) hide show
  1. package/lib/application.d.ts +7 -1
  2. package/lib/application.js.map +1 -1
  3. package/lib/core.d.ts +13 -0
  4. package/lib/core.js +58 -2
  5. package/lib/core.js.map +1 -1
  6. package/lib/core.spec.js +10 -4
  7. package/lib/core.spec.js.map +1 -1
  8. package/lib/index.d.ts +5 -4
  9. package/lib/index.js +5 -4
  10. package/lib/index.js.map +1 -1
  11. package/lib/models/aclmodel.d.ts +23 -10
  12. package/lib/models/aclmodel.js +31 -21
  13. package/lib/models/aclmodel.js.map +1 -1
  14. package/lib/models/aclmodel.spec.js +20 -6
  15. package/lib/models/aclmodel.spec.js.map +1 -1
  16. package/lib/models/coremodel.d.ts +106 -14
  17. package/lib/models/coremodel.js +240 -42
  18. package/lib/models/coremodel.js.map +1 -1
  19. package/lib/models/coremodel.spec.js +21 -4
  20. package/lib/models/coremodel.spec.js.map +1 -1
  21. package/lib/models/ident.d.ts +2 -6
  22. package/lib/models/ident.js.map +1 -1
  23. package/lib/models/ident.spec.js.map +1 -1
  24. package/lib/models/ownermodel.js +1 -1
  25. package/lib/models/ownermodel.js.map +1 -1
  26. package/lib/models/relations.d.ts +20 -20
  27. package/lib/models/relations.js +31 -11
  28. package/lib/models/relations.js.map +1 -1
  29. package/lib/models/relations.spec.d.ts +11 -0
  30. package/lib/models/relations.spec.js +115 -0
  31. package/lib/models/relations.spec.js.map +1 -0
  32. package/lib/models/user.d.ts +2 -2
  33. package/lib/models/user.js.map +1 -1
  34. package/lib/services/asyncevents.d.ts +4 -3
  35. package/lib/services/asyncevents.js +17 -4
  36. package/lib/services/asyncevents.js.map +1 -1
  37. package/lib/services/authentication.js +1 -1
  38. package/lib/services/authentication.js.map +1 -1
  39. package/lib/services/binary.d.ts +26 -2
  40. package/lib/services/binary.js +160 -63
  41. package/lib/services/binary.js.map +1 -1
  42. package/lib/services/binary.spec.js +3 -1
  43. package/lib/services/binary.spec.js.map +1 -1
  44. package/lib/services/cloudbinary.d.ts +0 -18
  45. package/lib/services/cloudbinary.js +0 -94
  46. package/lib/services/cloudbinary.js.map +1 -1
  47. package/lib/services/cloudbinary.spec.js +18 -11
  48. package/lib/services/cloudbinary.spec.js.map +1 -1
  49. package/lib/services/configuration.d.ts +1 -1
  50. package/lib/services/configuration.js +2 -1
  51. package/lib/services/configuration.js.map +1 -1
  52. package/lib/services/domainservice.d.ts +2 -1
  53. package/lib/services/domainservice.js +16 -25
  54. package/lib/services/domainservice.js.map +1 -1
  55. package/lib/services/filebinary.js +1 -1
  56. package/lib/services/filebinary.js.map +1 -1
  57. package/lib/services/filebinary.spec.d.ts +1 -0
  58. package/lib/services/filebinary.spec.js +24 -2
  59. package/lib/services/filebinary.spec.js.map +1 -1
  60. package/lib/services/invitationservice.js +1 -1
  61. package/lib/services/invitationservice.js.map +1 -1
  62. package/lib/services/invitationservice.spec.js +3 -1
  63. package/lib/services/invitationservice.spec.js.map +1 -1
  64. package/lib/services/service.d.ts +4 -5
  65. package/lib/services/service.js +9 -34
  66. package/lib/services/service.js.map +1 -1
  67. package/lib/services/service.spec.js +2 -2
  68. package/lib/services/service.spec.js.map +1 -1
  69. package/lib/stores/aliasstore.js +5 -1
  70. package/lib/stores/aliasstore.js.map +1 -1
  71. package/lib/stores/file.js.map +1 -1
  72. package/lib/stores/file.spec.js +1 -1
  73. package/lib/stores/file.spec.js.map +1 -1
  74. package/lib/stores/mapper.d.ts +4 -4
  75. package/lib/stores/mapper.spec.js +1 -1
  76. package/lib/stores/mapper.spec.js.map +1 -1
  77. package/lib/stores/memory.d.ts +4 -0
  78. package/lib/stores/memory.js +8 -0
  79. package/lib/stores/memory.js.map +1 -1
  80. package/lib/stores/memory.spec.d.ts +1 -0
  81. package/lib/stores/memory.spec.js +34 -3
  82. package/lib/stores/memory.spec.js.map +1 -1
  83. package/lib/stores/modelmapper.d.ts +21 -0
  84. package/lib/stores/modelmapper.js +127 -0
  85. package/lib/stores/modelmapper.js.map +1 -0
  86. package/lib/stores/store.d.ts +27 -9
  87. package/lib/stores/store.js +136 -82
  88. package/lib/stores/store.js.map +1 -1
  89. package/lib/stores/store.spec.js +2 -2
  90. package/lib/stores/store.spec.js.map +1 -1
  91. package/lib/test.js +1 -1
  92. package/lib/test.js.map +1 -1
  93. package/lib/utils/case.d.ts +7 -0
  94. package/lib/utils/case.js +43 -0
  95. package/lib/utils/case.js.map +1 -0
  96. package/lib/utils/case.spec.d.ts +1 -0
  97. package/lib/utils/case.spec.js +50 -0
  98. package/lib/utils/case.spec.js.map +1 -0
  99. package/lib/utils/context.d.ts +15 -2
  100. package/lib/utils/context.js +24 -5
  101. package/lib/utils/context.js.map +1 -1
  102. package/lib/utils/cookie.spec.js +2 -2
  103. package/lib/utils/cookie.spec.js.map +1 -1
  104. package/lib/utils/esm.d.ts +9 -0
  105. package/lib/utils/esm.js +9 -0
  106. package/lib/utils/esm.js.map +1 -1
  107. package/lib/utils/logger.spec.js +5 -2
  108. package/lib/utils/logger.spec.js.map +1 -1
  109. package/lib/utils/serializers.js +8 -1
  110. package/lib/utils/serializers.js.map +1 -1
  111. package/lib/utils/serializers.spec.js +6 -0
  112. package/lib/utils/serializers.spec.js.map +1 -1
  113. package/lib/utils/session.spec.js +1 -1
  114. package/lib/utils/session.spec.js.map +1 -1
  115. package/lib/utils/throttler.d.ts +22 -2
  116. package/lib/utils/throttler.js +35 -3
  117. package/lib/utils/throttler.js.map +1 -1
  118. package/lib/utils/throttler.spec.js +10 -2
  119. package/lib/utils/throttler.spec.js.map +1 -1
  120. package/package.json +10 -10
  121. package/webda.module.json +60 -26
  122. package/test/data/binaries/123/Test_plop_456 +0 -0
  123. package/test/data/binaries/123/data +0 -1
  124. package/test/data/tasks/068e6a96-9fdc-44e2-80fa-d27ed28f5440.json +0 -1
  125. package/test/data/tasks/task_no_owner.json +0 -1
  126. package/test/data/tasks/task_public.json +0 -1
  127. package/test/data/tasks/task_user1.json +0 -1
  128. package/test/data/tasks/task_user2.json +0 -1
  129. package/test/my-cnf.json +0 -11
@@ -4,9 +4,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
+ import { EventEmitter } from "events";
7
8
  import util from "util";
8
9
  import { v4 as uuidv4 } from "uuid";
9
- import { Core } from "../core.js";
10
+ import { Core, EventEmitterUtils } from "../core.js";
10
11
  import { WebdaError } from "../errors.js";
11
12
  import { BinariesImpl, Binary } from "../services/binary.js";
12
13
  import { Throttler } from "../utils/throttler.js";
@@ -68,23 +69,29 @@ class CoreModelQuery {
68
69
  async forEach(callback, query, context, parallelism = 3) {
69
70
  const throttler = new Throttler();
70
71
  throttler.setConcurrency(parallelism);
71
- let continuationToken;
72
- do {
73
- const result = await this.query(query + continuationToken ? "OFFSET " + continuationToken : "", context);
74
- continuationToken = result.continuationToken;
75
- for (const model of result.results) {
76
- throttler.queue(() => callback(model));
77
- }
78
- await throttler.waitForCompletion();
79
- } while (continuationToken);
72
+ for await (const model of this.iterate(query, context)) {
73
+ throttler.execute(() => callback(model));
74
+ }
75
+ return throttler.wait();
80
76
  }
81
77
  /**
82
- * Get all objects linked
78
+ * Iterate through all
83
79
  * @param context
84
80
  * @returns
85
81
  */
86
- async getAll(query, context) {
87
- return Core.get().getModelStore(this.getTargetModel()).queryAll(this.completeQuery(query), context);
82
+ iterate(query, context) {
83
+ return Core.get().getModelStore(this.getTargetModel()).iterate(this.completeQuery(query), context);
84
+ }
85
+ /**
86
+ * Get all the objects
87
+ * @returns
88
+ */
89
+ async getAll(context) {
90
+ let res = [];
91
+ for await (const item of this.iterate(this.completeQuery(), context)) {
92
+ res.push(item);
93
+ }
94
+ return res;
88
95
  }
89
96
  }
90
97
  __decorate([
@@ -101,6 +108,9 @@ __decorate([
101
108
  ], CoreModelQuery.prototype, "targetModel", void 0);
102
109
  /**
103
110
  * Make a property hidden from json
111
+ *
112
+ * This property will not be saved in the store
113
+ *
104
114
  * @param target
105
115
  * @param propertyKey
106
116
  */
@@ -140,17 +150,18 @@ export function Action(options = {}) {
140
150
  };
141
151
  }
142
152
  export class ModelRef {
143
- constructor(uuid, model) {
153
+ constructor(uuid, model, parent) {
144
154
  this.uuid = uuid;
145
155
  this.model = model;
146
156
  this.uuid = uuid === "" ? undefined : model.completeUid(uuid);
147
157
  this.store = Core.get().getModelStore(model);
148
158
  }
149
- async get() {
150
- return this.store.get(this.uuid);
159
+ async get(context) {
160
+ return (await this.store.get(this.uuid))?.setContext(context || this.parent?.getContext());
151
161
  }
152
162
  set(id) {
153
163
  this.uuid = id instanceof CoreModel ? id.getUuid() : id;
164
+ this.parent?.__dirty.add(Object.keys(this.parent).find(k => this.parent[k] === this));
154
165
  }
155
166
  toString() {
156
167
  return this.uuid;
@@ -161,11 +172,36 @@ export class ModelRef {
161
172
  getUuid() {
162
173
  return this.uuid;
163
174
  }
164
- deleteItemFromCollection(prop, index, itemWriteCondition, itemWriteConditionField) {
165
- return this.store.deleteItemFromCollection(this.uuid, prop, index, itemWriteCondition, itemWriteConditionField);
175
+ async deleteItemFromCollection(prop, index, itemWriteCondition, itemWriteConditionField) {
176
+ const updateDate = await this.store.deleteItemFromCollection(this.uuid, prop, index, itemWriteCondition, itemWriteConditionField);
177
+ await this.model.emitSync("Store.PartialUpdated", {
178
+ object_id: this.uuid,
179
+ store: this.store,
180
+ updateDate,
181
+ partial_update: {
182
+ deleteItem: {
183
+ property: prop,
184
+ index: index
185
+ }
186
+ }
187
+ });
188
+ return this;
166
189
  }
167
- upsertItemToCollection(prop, item, index, itemWriteCondition, itemWriteConditionField) {
168
- return this.store.upsertItemToCollection(this.uuid, prop, item, index, itemWriteCondition, itemWriteConditionField);
190
+ async upsertItemToCollection(prop, item, index, itemWriteCondition, itemWriteConditionField) {
191
+ const updateDate = await this.store.upsertItemToCollection(this.uuid, prop, item, index, itemWriteCondition, itemWriteConditionField);
192
+ await this.model.emitSync("Store.PartialUpdated", {
193
+ object_id: this.uuid,
194
+ store: this.store,
195
+ updateDate,
196
+ partial_update: {
197
+ addItem: {
198
+ value: item,
199
+ property: prop,
200
+ index: index
201
+ }
202
+ }
203
+ });
204
+ return this;
169
205
  }
170
206
  exists() {
171
207
  return this.store.exists(this.uuid);
@@ -179,14 +215,32 @@ export class ModelRef {
179
215
  patch(updates) {
180
216
  return this.store.conditionalPatch(this.uuid, updates, null, undefined);
181
217
  }
182
- setAttribute(attribute, value) {
183
- return this.store.setAttribute(this.uuid, attribute, value);
218
+ async setAttribute(attribute, value) {
219
+ await this.store.setAttribute(this.uuid, attribute, value);
220
+ return this;
184
221
  }
185
- removeAttribute(attribute, itemWriteCondition, itemWriteConditionField) {
186
- return this.store.removeAttribute(this.uuid, attribute, itemWriteCondition, itemWriteConditionField);
222
+ async removeAttribute(attribute, itemWriteCondition, itemWriteConditionField) {
223
+ await this.store.removeAttribute(this.uuid, attribute, itemWriteCondition, itemWriteConditionField);
224
+ await this.model?.emitSync("Store.PartialUpdated", {
225
+ object_id: this.uuid,
226
+ store: this.store,
227
+ partial_update: {
228
+ deleteAttribute: attribute
229
+ }
230
+ });
231
+ return this;
187
232
  }
188
- incrementAttributes(info) {
189
- return this.store.incrementAttributes(this.uuid, info);
233
+ async incrementAttributes(info) {
234
+ const updateDate = await this.store.incrementAttributes(this.uuid, info);
235
+ await this.model.emitSync("Store.PartialUpdated", {
236
+ object_id: this.uuid,
237
+ store: this.store,
238
+ updateDate,
239
+ partial_update: {
240
+ increments: info
241
+ }
242
+ });
243
+ return this;
190
244
  }
191
245
  }
192
246
  __decorate([
@@ -195,6 +249,9 @@ __decorate([
195
249
  __decorate([
196
250
  NotEnumerable
197
251
  ], ModelRef.prototype, "model", void 0);
252
+ __decorate([
253
+ NotEnumerable
254
+ ], ModelRef.prototype, "parent", void 0);
198
255
  export class ModelRefWithCreate extends ModelRef {
199
256
  /**
200
257
  * Allow to create a model
@@ -224,8 +281,8 @@ export class ModelRefWithCreate extends ModelRef {
224
281
  }
225
282
  }
226
283
  export class ModelRefCustom extends ModelRef {
227
- constructor(uuid, model, data) {
228
- super(uuid, model);
284
+ constructor(uuid, model, data, parent) {
285
+ super(uuid, model, parent);
229
286
  this.uuid = uuid;
230
287
  Object.assign(this, data);
231
288
  }
@@ -236,6 +293,7 @@ export class ModelRefCustom extends ModelRef {
236
293
  return this.uuid;
237
294
  }
238
295
  }
296
+ export const Emitters = new WeakMap();
239
297
  /**
240
298
  * Basic Object in Webda
241
299
  *
@@ -259,6 +317,78 @@ class CoreModel {
259
317
  ?.getApplication()
260
318
  .getShortId(Core.get()?.getApplication().getModelFromInstance(this));
261
319
  }
320
+ /**
321
+ * Listen to events on the model
322
+ * @param event
323
+ * @param listener
324
+ * @param async
325
+ */
326
+ static on(event, listener, async = false) {
327
+ if (!Emitters.has(this)) {
328
+ Emitters.set(this, new EventEmitter());
329
+ }
330
+ // TODO Manage async
331
+ if (async) {
332
+ Core.get()
333
+ .getService("AsyncEvents")
334
+ .bindAsyncListener(this, event, listener);
335
+ }
336
+ else {
337
+ Emitters.get(this).on(event, listener);
338
+ }
339
+ }
340
+ /**
341
+ * Emit an event for this class
342
+ * @param this
343
+ * @param event
344
+ * @param evt
345
+ */
346
+ static emit(event, evt) {
347
+ let clazz = this;
348
+ // @ts-ignore
349
+ while (clazz) {
350
+ // Emit for all parent class
351
+ if (Emitters.has(clazz)) {
352
+ EventEmitterUtils.emit(Emitters.get(clazz), event, evt);
353
+ }
354
+ // @ts-ignore
355
+ if (clazz === CoreModel) {
356
+ break;
357
+ }
358
+ clazz = Object.getPrototypeOf(clazz);
359
+ }
360
+ }
361
+ /**
362
+ * Emit an event for this class and wait for all listeners to finish
363
+ * @param this
364
+ * @param event
365
+ * @param evt
366
+ */
367
+ static async emitSync(event, evt) {
368
+ let clazz = this;
369
+ let p = [];
370
+ // @ts-ignore
371
+ while (clazz) {
372
+ // Emit for all parent class
373
+ if (Emitters.has(clazz)) {
374
+ p.push(EventEmitterUtils.emitSync(Emitters.get(clazz), event, evt));
375
+ }
376
+ // @ts-ignore
377
+ if (clazz === CoreModel) {
378
+ break;
379
+ }
380
+ clazz = Object.getPrototypeOf(clazz);
381
+ }
382
+ await Promise.all(p);
383
+ }
384
+ /**
385
+ * Listen to events on the model asynchronously
386
+ * @param event
387
+ * @param listener
388
+ */
389
+ static onAsync(event, listener) {
390
+ this.on(event, listener, true);
391
+ }
262
392
  /**
263
393
  *
264
394
  * @returns
@@ -404,12 +534,12 @@ class CoreModel {
404
534
  }
405
535
  }
406
536
  /**
407
- * Query for models
408
- * @param this
409
- * @param id
537
+ * Complete the query with __type/__types
538
+ * @param query
539
+ * @param includeSubclass
410
540
  * @returns
411
541
  */
412
- static async query(query = "", includeSubclass = true, context) {
542
+ static completeQuery(query, includeSubclass = true) {
413
543
  if (!query.includes("__type")) {
414
544
  if (query.trim() !== "") {
415
545
  query = ` AND ${query}`;
@@ -423,8 +553,29 @@ class CoreModel {
423
553
  query = `__type = "${name}"${query}`;
424
554
  }
425
555
  }
556
+ return query;
557
+ }
558
+ /**
559
+ * Iterate through the model
560
+ * @param this
561
+ * @param query
562
+ * @param includeSubclass
563
+ * @param context
564
+ * @returns
565
+ */
566
+ static iterate(query = "", includeSubclass = true, context) {
426
567
  // @ts-ignore
427
- return this.store().query(query, context);
568
+ return this.store().iterate(this.completeQuery(query, includeSubclass), context);
569
+ }
570
+ /**
571
+ * Query for models
572
+ * @param this
573
+ * @param id
574
+ * @returns
575
+ */
576
+ static async query(query = "", includeSubclass = true, context) {
577
+ // @ts-ignore
578
+ return this.store().query(this.completeQuery(query, includeSubclass), context);
428
579
  }
429
580
  /**
430
581
  * Return a proxy to the object to detect if dirty
@@ -550,8 +701,8 @@ class CoreModel {
550
701
  * Create an object
551
702
  * @returns
552
703
  */
553
- static factory(model, object, context) {
554
- return new model().setContext(context).load(object, context === undefined);
704
+ static factory(object, context) {
705
+ return object instanceof this ? object : new this().setContext(context).load(object, context === undefined);
555
706
  }
556
707
  /**
557
708
  * Detect what looks like a CoreModel but can be from different version
@@ -650,21 +801,21 @@ class CoreModel {
650
801
  if (link.type === "LINK") {
651
802
  this[_a = link.attribute] ?? (this[_a] = "");
652
803
  if (typeof this[link.attribute] === "string") {
653
- this[link.attribute] = new ModelRef(this[link.attribute], model);
804
+ this[link.attribute] = new ModelRef(this[link.attribute], model, this);
654
805
  }
655
806
  }
656
807
  else if (link.type === "LINKS_ARRAY") {
657
- this[link.attribute] = new ModelLinksArray(model, this[link.attribute]);
808
+ this[link.attribute] = new ModelLinksArray(model, this[link.attribute], this);
658
809
  }
659
810
  else if (link.type === "LINKS_SIMPLE_ARRAY") {
660
- this[link.attribute] = new ModelLinksSimpleArray(model, this[link.attribute]);
811
+ this[link.attribute] = new ModelLinksSimpleArray(model, this[link.attribute], this);
661
812
  }
662
813
  else if (link.type === "LINKS_MAP") {
663
- this[link.attribute] = createModelLinksMap(model, this[link.attribute]);
814
+ this[link.attribute] = createModelLinksMap(model, this[link.attribute], this);
664
815
  }
665
816
  }
666
817
  for (let link of rel.maps || []) {
667
- this[link.attribute] = (this[link.attribute] || []).map(el => new ModelMapLoaderImplementation(Core.get().getModel(link.model), el));
818
+ this[link.attribute] = (this[link.attribute] || []).map(el => new ModelMapLoaderImplementation(Core.get().getModel(link.model), el, this));
668
819
  }
669
820
  for (let query of rel.queries || []) {
670
821
  this[query.attribute] = new CoreModelQuery(query.model, this, query.targetAttribute);
@@ -672,7 +823,7 @@ class CoreModel {
672
823
  if (rel.parent) {
673
824
  this[_b = rel.parent.attribute] ?? (this[_b] = "");
674
825
  if (typeof this[rel.parent.attribute] === "string") {
675
- this[rel.parent.attribute] = new ModelRef(this[rel.parent.attribute], Core.get().getModel(rel.parent.model));
826
+ this[rel.parent.attribute] = new ModelRef(this[rel.parent.attribute], Core.get().getModel(rel.parent.model), this);
676
827
  }
677
828
  }
678
829
  for (let binary of rel.binaries || []) {
@@ -737,7 +888,7 @@ class CoreModel {
737
888
  * @throws Error if the object is not coming from a store
738
889
  */
739
890
  async delete() {
740
- return this.__store.delete(this.getUuid());
891
+ return this.__store.delete(this);
741
892
  }
742
893
  /**
743
894
  * Patch current object with this update
@@ -843,6 +994,9 @@ class CoreModel {
843
994
  if (value instanceof ModelRef) {
844
995
  obj[i] = value.toString();
845
996
  }
997
+ else if (value instanceof Binary) {
998
+ obj[i] = value.toJSON();
999
+ }
846
1000
  else {
847
1001
  obj[i] = value;
848
1002
  }
@@ -901,6 +1055,50 @@ class CoreModel {
901
1055
  async _onUpdated() {
902
1056
  // Empty to be overriden
903
1057
  }
1058
+ /**
1059
+ * Set attribute on the object and database
1060
+ * @param property
1061
+ * @param value
1062
+ */
1063
+ async setAttribute(property, value) {
1064
+ await this.getRef().setAttribute(property, value);
1065
+ this[property] = value;
1066
+ }
1067
+ /**
1068
+ * Remove attribute from both the object and db
1069
+ * @param property
1070
+ */
1071
+ async removeAttribute(property) {
1072
+ await this.getRef().removeAttribute(property);
1073
+ delete this[property];
1074
+ }
1075
+ /**
1076
+ * Increment an attribute both in store and object
1077
+ * @param property
1078
+ * @param value
1079
+ */
1080
+ async incrementAttribute(property, value) {
1081
+ return this.incrementAttributes([{ property, value }]);
1082
+ }
1083
+ /**
1084
+ * Return a model ref
1085
+ * @returns
1086
+ */
1087
+ getRef() {
1088
+ return new ModelRef(this.getUuid(), this.__class);
1089
+ }
1090
+ /**
1091
+ * Increment a attributes both in store and object
1092
+ * @param info
1093
+ */
1094
+ async incrementAttributes(info) {
1095
+ var _a;
1096
+ await this.getRef().incrementAttributes(info);
1097
+ for (let inc of info) {
1098
+ this[_a = inc.property] ?? (this[_a] = 0);
1099
+ this[inc.property] += inc.value;
1100
+ }
1101
+ }
904
1102
  }
905
1103
  __decorate([
906
1104
  NotEnumerable
@@ -1 +1 @@
1
- {"version":3,"file":"coremodel.js","sourceRoot":"","sources":["../../src/models/coremodel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coremodel.js","sourceRoot":"","sources":["../../src/models/coremodel.ts"],"names":[],"mappings":"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"}
@@ -346,7 +346,10 @@ let CoreModelTest = class CoreModelTest extends WebdaTest {
346
346
  maps: [
347
347
  {
348
348
  model: "webdatest/testmask",
349
- attribute: "maps"
349
+ attribute: "maps",
350
+ targetAttributes: [],
351
+ targetLink: "",
352
+ cascadeDelete: false
350
353
  }
351
354
  ],
352
355
  queries: [
@@ -376,15 +379,29 @@ let CoreModelTest = class CoreModelTest extends WebdaTest {
376
379
  assert.strictEqual((await test.links_simple[0].get()).card, "plop");
377
380
  assert.strictEqual((await test.parent.get()).card, "plop");
378
381
  assert.strictEqual((await test.maps[0].get()).card, "plop");
379
- assert.strictEqual((await test.queries.getAll()).length, 2);
380
- console.log("Test query now");
382
+ let info = await test.queries.getAll();
383
+ assert.strictEqual(info.length, 2);
381
384
  assert.strictEqual((await test.queries.query("card = 'pliX?XXXX?XXXX?X???'")).results.length, 1);
382
- console.log("Test for each");
383
385
  let count = 0;
384
386
  await test.queries.forEach(async () => {
385
387
  count++;
386
388
  });
387
389
  assert.strictEqual(count, 2);
390
+ info = [];
391
+ for await (const item of TestMask.iterate('side="uuid-test"')) {
392
+ info.push(item);
393
+ }
394
+ assert.strictEqual(count, 2);
395
+ await test.setAttribute("side", "uuid-test2");
396
+ await test.incrementAttribute("counter", 1);
397
+ let test2 = await TestMask.ref(test.getUuid()).get();
398
+ assert.strictEqual(test2.counter, test.counter);
399
+ assert.strictEqual(test2.side, "uuid-test2");
400
+ assert.strictEqual(test2.counter, 1);
401
+ await test.removeAttribute("counter");
402
+ await test2.refresh();
403
+ assert.strictEqual(test.counter, undefined);
404
+ assert.strictEqual(test2.counter, undefined);
388
405
  }
389
406
  };
390
407
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"coremodel.spec.js","sourceRoot":"","sources":["../../src/models/coremodel.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coremodel.spec.js","sourceRoot":"","sources":["../../src/models/coremodel.spec.ts"],"names":[],"mappings":"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"}