@vcmap/core 5.2.0 → 5.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/vcsApp.d.ts +7 -1
- package/dist/src/vcsApp.js +71 -20
- package/dist/src/vcsApp.js.map +1 -1
- package/package.json +1 -1
- package/src/vcsApp.ts +82 -23
package/dist/src/vcsApp.d.ts
CHANGED
|
@@ -57,7 +57,7 @@ declare class VcsApp {
|
|
|
57
57
|
private _categoryClassRegistry;
|
|
58
58
|
private _categories;
|
|
59
59
|
private _destroyed;
|
|
60
|
-
private
|
|
60
|
+
private _moduleMutationChain;
|
|
61
61
|
private _categoryItemClassRegistry;
|
|
62
62
|
private _tileProviderClassRegistry;
|
|
63
63
|
private _featureProviderClassRegistry;
|
|
@@ -98,7 +98,13 @@ declare class VcsApp {
|
|
|
98
98
|
getModuleById(id: string): VcsModule | undefined;
|
|
99
99
|
protected _parseModule(module: VcsModule): Promise<void>;
|
|
100
100
|
protected _setModuleState(module: VcsModule): Promise<void>;
|
|
101
|
+
/**
|
|
102
|
+
* When adding multiple modules, adding of previous modules are awaited.
|
|
103
|
+
* If an invalid module is added an error is thrown and already added items of invalid module are removed.
|
|
104
|
+
* @param module
|
|
105
|
+
*/
|
|
101
106
|
addModule(module: VcsModule): Promise<void>;
|
|
107
|
+
_startModuleMutationChain(): void;
|
|
102
108
|
serializeModule(moduleId: string): VcsModuleConfig;
|
|
103
109
|
/**
|
|
104
110
|
* sets the given module as the dynamic
|
package/dist/src/vcsApp.js
CHANGED
|
@@ -61,7 +61,7 @@ class VcsApp {
|
|
|
61
61
|
_categoryClassRegistry;
|
|
62
62
|
_categories;
|
|
63
63
|
_destroyed;
|
|
64
|
-
|
|
64
|
+
_moduleMutationChain;
|
|
65
65
|
_categoryItemClassRegistry;
|
|
66
66
|
_tileProviderClassRegistry;
|
|
67
67
|
_featureProviderClassRegistry;
|
|
@@ -95,7 +95,7 @@ class VcsApp {
|
|
|
95
95
|
this._categoryClassRegistry = new OverrideClassRegistry(categoryClassRegistry);
|
|
96
96
|
this._categories = new CategoryCollection(this);
|
|
97
97
|
this._destroyed = new VcsEvent();
|
|
98
|
-
this.
|
|
98
|
+
this._moduleMutationChain = { running: false, items: [] };
|
|
99
99
|
this._categoryItemClassRegistry = new OverrideClassRegistry(new ClassRegistry());
|
|
100
100
|
this._tileProviderClassRegistry = new OverrideClassRegistry(tileProviderClassRegistry);
|
|
101
101
|
this._featureProviderClassRegistry = new OverrideClassRegistry(featureProviderClassRegistry);
|
|
@@ -228,12 +228,11 @@ class VcsApp {
|
|
|
228
228
|
if (config.startingObliqueCollectionName) {
|
|
229
229
|
const startingObliqueCollection = this._obliqueCollections.getByKey(config.startingObliqueCollectionName);
|
|
230
230
|
if (startingObliqueCollection) {
|
|
231
|
-
[...this._maps]
|
|
231
|
+
await Promise.all([...this._maps]
|
|
232
232
|
.filter((m) => m instanceof ObliqueMap)
|
|
233
|
-
.
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
});
|
|
233
|
+
.map((m) => {
|
|
234
|
+
return m.setCollection(startingObliqueCollection);
|
|
235
|
+
}));
|
|
237
236
|
}
|
|
238
237
|
}
|
|
239
238
|
if (config.startingMapName) {
|
|
@@ -249,18 +248,60 @@ class VcsApp {
|
|
|
249
248
|
}
|
|
250
249
|
}
|
|
251
250
|
}
|
|
252
|
-
|
|
251
|
+
/**
|
|
252
|
+
* When adding multiple modules, adding of previous modules are awaited.
|
|
253
|
+
* If an invalid module is added an error is thrown and already added items of invalid module are removed.
|
|
254
|
+
* @param module
|
|
255
|
+
*/
|
|
256
|
+
async addModule(module) {
|
|
253
257
|
check(module, VcsModule);
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
+
const mutation = async () => {
|
|
259
|
+
try {
|
|
260
|
+
if (this._modules.hasKey(module._id)) {
|
|
261
|
+
getLogger().info(`module with id ${module._id} already loaded`);
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
await this._parseModule(module);
|
|
265
|
+
await this._setModuleState(module);
|
|
266
|
+
this._modules.add(module);
|
|
258
267
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
268
|
+
catch (err) {
|
|
269
|
+
await this._removeModule(module._id);
|
|
270
|
+
throw err;
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
return new Promise((resolve, reject) => {
|
|
274
|
+
this._moduleMutationChain.items.push({
|
|
275
|
+
moduleId: module._id,
|
|
276
|
+
mutation,
|
|
277
|
+
resolve,
|
|
278
|
+
reject,
|
|
279
|
+
});
|
|
280
|
+
this._startModuleMutationChain();
|
|
262
281
|
});
|
|
263
|
-
|
|
282
|
+
}
|
|
283
|
+
_startModuleMutationChain() {
|
|
284
|
+
if (!this._moduleMutationChain.running) {
|
|
285
|
+
const item = this._moduleMutationChain.items.shift();
|
|
286
|
+
if (item) {
|
|
287
|
+
try {
|
|
288
|
+
this._moduleMutationChain.running = true;
|
|
289
|
+
item
|
|
290
|
+
.mutation()
|
|
291
|
+
.then(() => item.resolve())
|
|
292
|
+
.catch((err) => item.reject(err))
|
|
293
|
+
.finally(() => {
|
|
294
|
+
this._moduleMutationChain.running = false;
|
|
295
|
+
this._startModuleMutationChain();
|
|
296
|
+
});
|
|
297
|
+
}
|
|
298
|
+
catch (err) {
|
|
299
|
+
item.reject(err);
|
|
300
|
+
this._moduleMutationChain.running = false;
|
|
301
|
+
this._startModuleMutationChain();
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
}
|
|
264
305
|
}
|
|
265
306
|
serializeModule(moduleId) {
|
|
266
307
|
check(moduleId, String);
|
|
@@ -311,8 +352,8 @@ class VcsApp {
|
|
|
311
352
|
this._flights.removeModule(moduleId),
|
|
312
353
|
]);
|
|
313
354
|
}
|
|
314
|
-
removeModule(moduleId) {
|
|
315
|
-
|
|
355
|
+
async removeModule(moduleId) {
|
|
356
|
+
const mutation = async () => {
|
|
316
357
|
const module = this._modules.getByKey(moduleId);
|
|
317
358
|
if (!module) {
|
|
318
359
|
getLogger().info(`module with id ${moduleId} has already been removed`);
|
|
@@ -320,14 +361,24 @@ class VcsApp {
|
|
|
320
361
|
}
|
|
321
362
|
await this._removeModule(moduleId);
|
|
322
363
|
this._modules.remove(module);
|
|
364
|
+
};
|
|
365
|
+
return new Promise((resolve, reject) => {
|
|
366
|
+
this._moduleMutationChain.items.push({
|
|
367
|
+
moduleId,
|
|
368
|
+
mutation,
|
|
369
|
+
resolve,
|
|
370
|
+
reject,
|
|
371
|
+
});
|
|
372
|
+
this._startModuleMutationChain();
|
|
323
373
|
});
|
|
324
|
-
return this._moduleMutationPromise;
|
|
325
374
|
}
|
|
326
375
|
/**
|
|
327
376
|
* Destroys the app and all its collections, their content and ui managers.
|
|
328
377
|
*/
|
|
329
378
|
destroy() {
|
|
330
|
-
|
|
379
|
+
this._moduleMutationChain.running = false;
|
|
380
|
+
this._moduleMutationChain.items.splice(0);
|
|
381
|
+
Object.defineProperty(this, '_moduleMutationChain', {
|
|
331
382
|
get() {
|
|
332
383
|
throw new Error('VcsApp was destroyed');
|
|
333
384
|
},
|
package/dist/src/vcsApp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vcsApp.js","sourceRoot":"","sources":["../../src/vcsApp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,eAAe,EAAU,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,SAA8B,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,cAAc,EACd,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,sBAEN,MAAM,8BAA8B,CAAC;AACtC,OAAO,kBAAkB,MAAM,kCAAkC,CAAC;AAClE,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,KAAK,MAAM,kBAAkB,CAAC;AACrC,OAAO,UAAU,MAAM,sBAAsB,CAAC;AAC9C,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAC/D,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,SAA+B,MAAM,sBAAsB,CAAC;AACnE,OAAO,iBAAiB,MAAM,6BAA6B,CAAC;AAC5D,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAC7C,OAAO,qBAAqB,MAAM,4BAA4B,CAAC;AAC/D,OAAO,aAAa,EAAE,EACpB,qBAAqB,EAErB,4BAA4B,EAC5B,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAKrD,OAAO,EACL,6BAA6B,GAE9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,cAEN,MAAM,iCAAiC,CAAC;AACzC,OAAO,gBAAgB,MAAM,mCAAmC,CAAC;AAEjE,SAAS,SAAS;IAChB,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC;AASD,MAAM,OAAO,GAAwB,IAAI,GAAG,EAAE,CAAC;AAE/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,uBAAuB,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM;IACF,GAAG,CAAS;IAEpB,IAAI,CAAqB;IAEzB,WAAW,CAAqB;IAEhC,UAAU,CAAsC;IAExC,qBAAqB,CAAY;IAEjC,cAAc,CAAY;IAE1B,uBAAuB,CAAmB;IAElD;;OAEG;IACK,OAAO,CAAS;IAExB;;OAEG;IACK,cAAc,CAAmB;IAEjC,iBAAiB,CAAuC;IAExD,KAAK,CAA4C;IAEjD,mBAAmB,CAAsC;IAEzD,OAAO,CAA6C;IAEpD,mBAAmB,CAAwC;IAE3D,WAAW,CAAgC;IAE3C,mBAAmB,CAA0C;IAE7D,OAAO,CAAgC;IAEvC,QAAQ,CAA+B;IAEvC,cAAc,CAAmC;IAEjD,QAAQ,CAAuD;IAE/D,sBAAsB,CAAyC;IAE/D,WAAW,CAAqB;IAEhC,UAAU,CAAiB;IAE3B,sBAAsB,CAAgB;IAEtC,0BAA0B,CAAmC;IAE7D,0BAA0B,CAEhC;IAEM,6BAA6B,CAEnC;IAEF;;OAEG;IACH,YAAY,UAAyB,EAAE;QACrC,IAAI,CAAC,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,MAAM,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,qBAAqB,GAAG,IAAI,SAAS,CAAC,EAAE,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAEjD,MAAM,kBAAkB,GAAG,GAAW,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;QACjE,IAAI,CAAC,uBAAuB,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,mBAAmB,EAAE,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,IAAI,QAAQ,EAAE,CAAC;QAErC,IAAI,CAAC,iBAAiB,GAAG,IAAI,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;QACrE,IAAI,CAAC,KAAK,GAAG,sBAAsB,CACjC,IAAI,aAAa,EAAE,EACnB,kBAAkB,EAClB,SAAS,EACT,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAC/B,MAAM,CACP,CAAC;QACF,IAAI,CAAC,mBAAmB,GAAG,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,GAAG,sBAAsB,CACnC,IAAI,CAAC,KAAK,CAAC,eAAe,EAC1B,kBAAkB,EAClB,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAC/B,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EACjC,KAAK,EACL,aAAa,CACd,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAElC,IAAI,CAAC,mBAAmB,GAAG,sBAAsB,CAC/C,IAAI,UAAU,EAAE,EAChB,kBAAkB,EAClB,SAAS,EACT,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,iBAAiB,CAAC,MAAM,CAAC,EACzC,iBAAiB,CAClB,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,sBAAsB,CACvC,IAAI,UAAU,EAAE,EAChB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACpB,SAAS,CACV,CAAC;QAEF,IAAI,CAAC,mBAAmB,GAAG,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;QAEzE,IAAI,CAAC,OAAO,GAAG,sBAAsB,CACnC,IAAI,UAAU,EAAE,EAChB,kBAAkB,EAClB,SAAS,EACT,CAAC,YAA8B,EAAE,EAAE,CACjC,0BAA0B,CAAC,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,EACpE,SAAS,CACV,CAAC;QAEF,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEvC,IAAI,CAAC,cAAc,GAAG,6BAA6B,CACjD,kBAAkB,EAClB,IAAI,CAAC,OAAO,CAAC,WAAW,CACzB,CAAC;QAEF,IAAI,CAAC,QAAQ,GAAG,sBAAsB,CACpC,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAC1B,kBAAkB,EAClB,SAAS,EACT,CAAC,aAAoC,EAAE,EAAE,CACvC,IAAI,cAAc,CAAC,aAAa,CAAC,CACpC,CAAC;QAEF,IAAI,CAAC,sBAAsB,GAAG,IAAI,qBAAqB,CACrD,qBAAqB,CACtB,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,GAAG,IAAI,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAChD,IAAI,CAAC,0BAA0B,GAAG,IAAI,qBAAqB,CACzD,IAAI,aAAa,EAAE,CACpB,CAAC;QACF,IAAI,CAAC,0BAA0B,GAAG,IAAI,qBAAqB,CACzD,yBAAyB,CAC1B,CAAC;QACF,IAAI,CAAC,6BAA6B,GAAG,IAAI,qBAAqB,CAC5D,4BAA4B,CAC7B,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,IAAI,MAAM,CAAC,KAAa;QACtB,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAErB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,SAAS,EAAE,CAAC,OAAO,CACjB,oEAAoE,CACrE,CAAC;YACF,OAAO;SACR;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE;YAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SACvC;IACH,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC7B,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IAC/B,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;IACjC,CAAC;IAED,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,IAAI,yBAAyB;QAC3B,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,IAAI,yBAAyB;QAC3B,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,IAAI,4BAA4B;QAG9B,OAAO,IAAI,CAAC,6BAA6B,CAAC;IAC5C,CAAC;IAED,aAAa,CAAC,EAAU;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,MAAiB;QAC5C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAC1B,IAAI,MAAM,CAAC,UAAU,EAAE;YACrB,gGAAgG;YAChG,2BAA2B,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SAChD;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACzD,oBAAoB;QAEpB,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,CACvC,MAAM,CAAC,kBAAkB,EACzB,MAAM,CAAC,GAAG,CACX,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACvE,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAE3D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;YACpC,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC9C,MAAM,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YACrE,CAAC,CAAC,CACH,CAAC;SACH;IACH,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,MAAiB;QAC/C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAC1B,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;aACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC;aAC/C,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACb,IAAI,CAAC,CAAC,eAAe,EAAE;gBACrB,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACzB,SAAS,EAAE,CAAC,KAAK,CACf,8CAA8C,CAAC,CAAC,IAAI,EAAE,CACvD,CAAC;oBACF,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBACjC,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC,CAAC;QAEL,IAAI,MAAM,CAAC,6BAA6B,EAAE;YACxC,MAAM,yBAAyB,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CACjE,MAAM,CAAC,6BAA6B,CACrC,CAAC;YACF,IAAI,yBAAyB,EAAE;gBAC7B,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;qBACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC;qBACtC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACb,mCAAmC;oBACnC,KAAM,CAAgB,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;gBAClE,CAAC,CAAC,CAAC;aACN;SACF;QAED,IAAI,MAAM,CAAC,eAAe,EAAE;YAC1B,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;SACvD;aAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE;YACvD,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACxD;QAED,IAAI,MAAM,CAAC,qBAAqB,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;YACxD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAC9C,MAAM,CAAC,qBAAqB,CAC7B,CAAC;YACF,IAAI,cAAc,EAAE;gBAClB,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;aAC1D;SACF;IACH,CAAC;IAED,SAAS,CAAC,MAAiB;QACzB,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAEzB,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YACxE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;gBACpC,SAAS,EAAE,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,GAAG,iBAAiB,CAAC,CAAC;gBAChE,OAAO;aACR;YAED,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,eAAe,CAAC,QAAgB;QAC9B,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YACnC,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;SACH;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAE,CAAC,MAAM,EAAE,CAAC;QAC1D,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACnD,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,CAAC,kBAAkB;YACvB,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACrD,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CACxD,QAAQ,CACS,CAAC;QACpB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACzD,MAAM,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;aACvC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAwC,CAAC;QAE7D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,MAAiB;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;SACH;QACD,IAAI,IAAI,CAAC,cAAc,KAAK,MAAM,EAAE;YAClC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;YAC7B,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SAC9D;IACH,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACpD,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,QAAgB;QAC5C,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC;YACvC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC;YACnC,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,QAAQ,CAAC;YAC/C,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,QAAQ,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC;SACrC,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,QAAgB;QAC3B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YACxE,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,EAAE;gBACX,SAAS,EAAE,CAAC,IAAI,CAAC,kBAAkB,QAAQ,2BAA2B,CAAC,CAAC;gBACxE,OAAO;aACR;YACD,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,wBAAwB,EAAE;YACpD,GAAG;gBACD,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC5C,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;QACnC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;QACnC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC;QACtC,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,CAAC,6BAA6B,CAAC,OAAO,EAAE,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAAC,EAAU;IACtC,OAAO,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;AAC9B,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC;AAE1B,eAAe,MAAM,CAAC"}
|
|
1
|
+
{"version":3,"file":"vcsApp.js","sourceRoot":"","sources":["../../src/vcsApp.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/vcsApp.ts
CHANGED
|
@@ -122,7 +122,15 @@ class VcsApp {
|
|
|
122
122
|
|
|
123
123
|
private _destroyed: VcsEvent<void>;
|
|
124
124
|
|
|
125
|
-
private
|
|
125
|
+
private _moduleMutationChain: {
|
|
126
|
+
running: boolean;
|
|
127
|
+
items: Array<{
|
|
128
|
+
moduleId: string;
|
|
129
|
+
mutation: () => Promise<void>;
|
|
130
|
+
resolve: () => void;
|
|
131
|
+
reject: (reason?: any) => void;
|
|
132
|
+
}>;
|
|
133
|
+
};
|
|
126
134
|
|
|
127
135
|
private _categoryItemClassRegistry: OverrideClassRegistry<Ctor<any>>;
|
|
128
136
|
|
|
@@ -216,7 +224,7 @@ class VcsApp {
|
|
|
216
224
|
);
|
|
217
225
|
this._categories = new CategoryCollection(this);
|
|
218
226
|
this._destroyed = new VcsEvent();
|
|
219
|
-
this.
|
|
227
|
+
this._moduleMutationChain = { running: false, items: [] };
|
|
220
228
|
this._categoryItemClassRegistry = new OverrideClassRegistry(
|
|
221
229
|
new ClassRegistry(),
|
|
222
230
|
);
|
|
@@ -402,12 +410,13 @@ class VcsApp {
|
|
|
402
410
|
config.startingObliqueCollectionName,
|
|
403
411
|
);
|
|
404
412
|
if (startingObliqueCollection) {
|
|
405
|
-
|
|
406
|
-
.
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
413
|
+
await Promise.all(
|
|
414
|
+
[...this._maps]
|
|
415
|
+
.filter((m) => m instanceof ObliqueMap)
|
|
416
|
+
.map((m) => {
|
|
417
|
+
return (m as ObliqueMap).setCollection(startingObliqueCollection);
|
|
418
|
+
}),
|
|
419
|
+
);
|
|
411
420
|
}
|
|
412
421
|
}
|
|
413
422
|
|
|
@@ -427,20 +436,61 @@ class VcsApp {
|
|
|
427
436
|
}
|
|
428
437
|
}
|
|
429
438
|
|
|
430
|
-
|
|
439
|
+
/**
|
|
440
|
+
* When adding multiple modules, adding of previous modules are awaited.
|
|
441
|
+
* If an invalid module is added an error is thrown and already added items of invalid module are removed.
|
|
442
|
+
* @param module
|
|
443
|
+
*/
|
|
444
|
+
async addModule(module: VcsModule): Promise<void> {
|
|
431
445
|
check(module, VcsModule);
|
|
432
446
|
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
447
|
+
const mutation = async (): Promise<void> => {
|
|
448
|
+
try {
|
|
449
|
+
if (this._modules.hasKey(module._id)) {
|
|
450
|
+
getLogger().info(`module with id ${module._id} already loaded`);
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
438
453
|
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
454
|
+
await this._parseModule(module);
|
|
455
|
+
await this._setModuleState(module);
|
|
456
|
+
this._modules.add(module);
|
|
457
|
+
} catch (err) {
|
|
458
|
+
await this._removeModule(module._id);
|
|
459
|
+
throw err;
|
|
460
|
+
}
|
|
461
|
+
};
|
|
462
|
+
return new Promise((resolve, reject) => {
|
|
463
|
+
this._moduleMutationChain.items.push({
|
|
464
|
+
moduleId: module._id,
|
|
465
|
+
mutation,
|
|
466
|
+
resolve,
|
|
467
|
+
reject,
|
|
468
|
+
});
|
|
469
|
+
this._startModuleMutationChain();
|
|
442
470
|
});
|
|
443
|
-
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
_startModuleMutationChain(): void {
|
|
474
|
+
if (!this._moduleMutationChain.running) {
|
|
475
|
+
const item = this._moduleMutationChain.items.shift();
|
|
476
|
+
if (item) {
|
|
477
|
+
try {
|
|
478
|
+
this._moduleMutationChain.running = true;
|
|
479
|
+
item
|
|
480
|
+
.mutation()
|
|
481
|
+
.then(() => item.resolve())
|
|
482
|
+
.catch((err) => item.reject(err))
|
|
483
|
+
.finally(() => {
|
|
484
|
+
this._moduleMutationChain.running = false;
|
|
485
|
+
this._startModuleMutationChain();
|
|
486
|
+
});
|
|
487
|
+
} catch (err) {
|
|
488
|
+
item.reject(err);
|
|
489
|
+
this._moduleMutationChain.running = false;
|
|
490
|
+
this._startModuleMutationChain();
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
}
|
|
444
494
|
}
|
|
445
495
|
|
|
446
496
|
serializeModule(moduleId: string): VcsModuleConfig {
|
|
@@ -503,8 +553,8 @@ class VcsApp {
|
|
|
503
553
|
]);
|
|
504
554
|
}
|
|
505
555
|
|
|
506
|
-
removeModule(moduleId: string): Promise<void> {
|
|
507
|
-
|
|
556
|
+
async removeModule(moduleId: string): Promise<void> {
|
|
557
|
+
const mutation = async (): Promise<void> => {
|
|
508
558
|
const module = this._modules.getByKey(moduleId);
|
|
509
559
|
if (!module) {
|
|
510
560
|
getLogger().info(`module with id ${moduleId} has already been removed`);
|
|
@@ -512,16 +562,25 @@ class VcsApp {
|
|
|
512
562
|
}
|
|
513
563
|
await this._removeModule(moduleId);
|
|
514
564
|
this._modules.remove(module);
|
|
565
|
+
};
|
|
566
|
+
return new Promise((resolve, reject) => {
|
|
567
|
+
this._moduleMutationChain.items.push({
|
|
568
|
+
moduleId,
|
|
569
|
+
mutation,
|
|
570
|
+
resolve,
|
|
571
|
+
reject,
|
|
572
|
+
});
|
|
573
|
+
this._startModuleMutationChain();
|
|
515
574
|
});
|
|
516
|
-
|
|
517
|
-
return this._moduleMutationPromise;
|
|
518
575
|
}
|
|
519
576
|
|
|
520
577
|
/**
|
|
521
578
|
* Destroys the app and all its collections, their content and ui managers.
|
|
522
579
|
*/
|
|
523
580
|
destroy(): void {
|
|
524
|
-
|
|
581
|
+
this._moduleMutationChain.running = false;
|
|
582
|
+
this._moduleMutationChain.items.splice(0);
|
|
583
|
+
Object.defineProperty(this, '_moduleMutationChain', {
|
|
525
584
|
get() {
|
|
526
585
|
throw new Error('VcsApp was destroyed');
|
|
527
586
|
},
|