@adaas/a-concept 0.1.10 → 0.1.11

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.
@@ -312,7 +312,7 @@ export declare class A_Scope<_ComponentType extends A_TYPES__Component_Construct
312
312
  /**
313
313
  * Provide a component, fragment or entity constructor or an array of constructors to resolve its instance(s) from the scope
314
314
  */
315
- param1: T): T | Array<T>;
315
+ param1: InstanceType<T>): T | Array<T>;
316
316
  /**
317
317
  * This method is used internally to resolve a component, fragment or entity by its constructor name
318
318
  *
@@ -213,52 +213,56 @@ class A_Scope {
213
213
  has(ctor) {
214
214
  let found = false;
215
215
  switch (true) {
216
- // 1) Check by string name.
216
+ // 1) Check if it's a Scope. It's always true since it returns itself
217
+ case A_TypeGuards_helper_1.A_TypeGuards.isScopeConstructor(ctor):
218
+ return true;
219
+ // 2) Check by string name.
217
220
  case typeof ctor === 'string': {
218
- // 1.1 Check if it's a component name
221
+ // 2.1 Check if it's a component name
219
222
  const possibleComponent = Array.from(this.allowedComponents).find(c => c.name === ctor);
220
223
  if (possibleComponent)
221
224
  found = true;
222
- // 1.2 Check if it's a fragment name
225
+ // 2.2 Check if it's a fragment name
223
226
  const possibleFragment = Array.from(this.allowedFragments).find(f => f.name === ctor);
224
227
  if (possibleFragment)
225
228
  found = true;
226
- // 1.4 Check if it's an entity name or entity static entity property
229
+ // 2.3 Check if it's an entity name or entity static entity property
227
230
  const possibleEntity = Array.from(this.allowedEntities).find(e => e.name === ctor);
228
231
  if (possibleEntity)
229
232
  found = true;
230
- // 1.5 If not found in current scope, check parent scope
233
+ // 2.4 If not found in current scope, check parent scope
231
234
  if (!!this._parent)
232
235
  return this._parent.has(ctor);
233
236
  return false;
234
237
  }
235
- // 2) Check if it's a Component
238
+ // 3) Check if it's a Component
236
239
  case A_TypeGuards_helper_1.A_TypeGuards.isComponentConstructor(ctor): {
237
240
  found = this.isAllowedComponent(ctor)
238
241
  || !![...this.allowedComponents]
239
242
  .find(c => A_Common_helper_1.A_CommonHelper.isInheritedFrom(c, ctor));
240
243
  break;
241
244
  }
242
- // 3) Check if it's an Entity
245
+ // 4) Check if it's an Entity
243
246
  case A_TypeGuards_helper_1.A_TypeGuards.isEntityConstructor(ctor): {
244
247
  found = this.isAllowedEntity(ctor)
245
248
  || !![...this.allowedEntities]
246
249
  .find(e => A_Common_helper_1.A_CommonHelper.isInheritedFrom(e, ctor));
247
250
  break;
248
251
  }
249
- // 4) Check if it's a Fragment
252
+ // 5) Check if it's a Fragment
250
253
  case A_TypeGuards_helper_1.A_TypeGuards.isFragmentConstructor(ctor): {
251
254
  found = this.isAllowedFragment(ctor)
252
255
  || !![...this.allowedFragments]
253
256
  .find(f => A_Common_helper_1.A_CommonHelper.isInheritedFrom(f, ctor));
254
257
  break;
255
258
  }
256
- // check scope issuer
259
+ // 6) Check scope issuer
257
260
  case this.issuer().constructor === ctor: {
258
261
  found = true;
259
262
  break;
260
263
  }
261
264
  }
265
+ // 7) Check parent scope in case not found
262
266
  if (!found && !!this._parent)
263
267
  try {
264
268
  return this._parent.has(ctor);
@@ -1 +1 @@
1
- {"version":3,"file":"A-Scope.class.js","sourceRoot":"","sources":["../../../../src/global/A-Scope/A-Scope.class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"A-Scope.class.js","sourceRoot":"","sources":["../../../../src/global/A-Scope/A-Scope.class.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaas/a-concept",
3
- "version": "0.1.10",
3
+ "version": "0.1.11",
4
4
  "description": "A-Concept is a framework to build new Applications within or outside the ADAAS ecosystem. This framework is designed to be modular structure regardless environment and program goal.",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -364,27 +364,31 @@ export class A_Scope<
364
364
  let found = false;
365
365
 
366
366
  switch (true) {
367
- // 1) Check by string name.
367
+ // 1) Check if it's a Scope. It's always true since it returns itself
368
+ case A_TypeGuards.isScopeConstructor(ctor):
369
+ return true;
370
+
371
+ // 2) Check by string name.
368
372
  case typeof ctor === 'string': {
369
- // 1.1 Check if it's a component name
373
+ // 2.1 Check if it's a component name
370
374
  const possibleComponent = Array.from(this.allowedComponents).find(c => c.name === ctor);
371
375
  if (possibleComponent) found = true;
372
376
 
373
- // 1.2 Check if it's a fragment name
377
+ // 2.2 Check if it's a fragment name
374
378
  const possibleFragment = Array.from(this.allowedFragments).find(f => f.name === ctor);
375
379
  if (possibleFragment) found = true;
376
380
 
377
- // 1.4 Check if it's an entity name or entity static entity property
381
+ // 2.3 Check if it's an entity name or entity static entity property
378
382
  const possibleEntity = Array.from(this.allowedEntities).find(e => e.name === ctor);
379
383
  if (possibleEntity) found = true;
380
384
 
381
- // 1.5 If not found in current scope, check parent scope
385
+ // 2.4 If not found in current scope, check parent scope
382
386
  if (!!this._parent)
383
387
  return this._parent.has(ctor);
384
388
 
385
389
  return false;
386
390
  }
387
- // 2) Check if it's a Component
391
+ // 3) Check if it's a Component
388
392
  case A_TypeGuards.isComponentConstructor(ctor): {
389
393
  found = this.isAllowedComponent(ctor)
390
394
  || !![...this.allowedComponents]
@@ -392,7 +396,7 @@ export class A_Scope<
392
396
 
393
397
  break;
394
398
  }
395
- // 3) Check if it's an Entity
399
+ // 4) Check if it's an Entity
396
400
  case A_TypeGuards.isEntityConstructor(ctor): {
397
401
  found = this.isAllowedEntity(ctor)
398
402
  || !![...this.allowedEntities]
@@ -400,7 +404,7 @@ export class A_Scope<
400
404
 
401
405
  break;
402
406
  }
403
- // 4) Check if it's a Fragment
407
+ // 5) Check if it's a Fragment
404
408
  case A_TypeGuards.isFragmentConstructor(ctor): {
405
409
  found = this.isAllowedFragment(ctor)
406
410
  || !![...this.allowedFragments]
@@ -408,14 +412,14 @@ export class A_Scope<
408
412
 
409
413
  break;
410
414
  }
411
-
412
- // check scope issuer
415
+ // 6) Check scope issuer
413
416
  case this.issuer().constructor === ctor: {
414
417
  found = true;
415
418
  break;
416
419
  }
417
420
  }
418
421
 
422
+ // 7) Check parent scope in case not found
419
423
  if (!found && !!this._parent)
420
424
  try {
421
425
  return this._parent.has(ctor as any);
@@ -596,7 +600,7 @@ export class A_Scope<
596
600
  /**
597
601
  * Provide a component, fragment or entity constructor or an array of constructors to resolve its instance(s) from the scope
598
602
  */
599
- param1: T,
603
+ param1: InstanceType<T>,
600
604
 
601
605
  ): T | Array<T>
602
606
  resolve<T extends A_TYPES__ScopeResolvableComponents>(
@@ -289,8 +289,6 @@ describe('A-Scope tests', () => {
289
289
  });
290
290
 
291
291
  it('Should resolve inherited components', async () => {
292
-
293
-
294
292
  class componentA extends A_Component { }
295
293
  class componentB extends componentA { }
296
294
 
@@ -310,4 +308,22 @@ describe('A-Scope tests', () => {
310
308
  expect(scope.resolve(componentB)).toBeInstanceOf(componentB);
311
309
 
312
310
  });
311
+
312
+ it('Should be able to resolve itself', async () => {
313
+
314
+ const scope = new A_Scope({ name: 'TestScope' });
315
+
316
+ const resolved = scope.resolve(A_Scope);
317
+ expect(resolved).toBe(scope);
318
+ });
319
+ it('Should be able to resolve scope issuer', async () => {
320
+
321
+ const container = new A_Container();
322
+
323
+ const resolved = container.scope.resolve(A_Container);
324
+ expect(resolved).toBe(container);
325
+
326
+ expect(container.scope.issuer()).toBe(container);
327
+ });
328
+
313
329
  });