vsn 0.1.76 → 0.1.79

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 (62) hide show
  1. package/demo/vsn.js +3 -2
  2. package/dist/AST/ClassNode.js +31 -28
  3. package/dist/AST/ClassNode.js.map +1 -1
  4. package/dist/Attribute.d.ts +5 -2
  5. package/dist/Attribute.js +39 -8
  6. package/dist/Attribute.js.map +1 -1
  7. package/dist/Component.d.ts +4 -0
  8. package/dist/Component.js +42 -0
  9. package/dist/Component.js.map +1 -0
  10. package/dist/DOM/DOMObject.d.ts +3 -0
  11. package/dist/DOM/DOMObject.js +14 -0
  12. package/dist/DOM/DOMObject.js.map +1 -1
  13. package/dist/DOM.js +31 -45
  14. package/dist/DOM.js.map +1 -1
  15. package/dist/Registry.d.ts +4 -2
  16. package/dist/Registry.js +6 -0
  17. package/dist/Registry.js.map +1 -1
  18. package/dist/Tag.d.ts +4 -2
  19. package/dist/Tag.js +163 -99
  20. package/dist/Tag.js.map +1 -1
  21. package/dist/attributes/ComponentAttribute.d.ts +5 -0
  22. package/dist/attributes/ComponentAttribute.js +105 -0
  23. package/dist/attributes/ComponentAttribute.js.map +1 -0
  24. package/dist/attributes/ListItem.d.ts +0 -1
  25. package/dist/attributes/ListItem.js +0 -7
  26. package/dist/attributes/ListItem.js.map +1 -1
  27. package/dist/attributes/TemplateAttribute.d.ts +5 -0
  28. package/dist/attributes/TemplateAttribute.js +89 -0
  29. package/dist/attributes/TemplateAttribute.js.map +1 -0
  30. package/dist/attributes/_imports.d.ts +2 -1
  31. package/dist/attributes/_imports.js +5 -3
  32. package/dist/attributes/_imports.js.map +1 -1
  33. package/dist/custom-elements.d.ts +9 -0
  34. package/dist/custom-elements.js +44 -0
  35. package/dist/custom-elements.js.map +1 -0
  36. package/dist/version.d.ts +1 -1
  37. package/dist/version.js +1 -1
  38. package/dist/vsn.d.ts +2 -0
  39. package/dist/vsn.js +5 -0
  40. package/dist/vsn.js.map +1 -1
  41. package/dist/vsn.min.js +3 -0
  42. package/dist/vsn.min.js.LICENSE.txt +9 -0
  43. package/package.json +2 -2
  44. package/src/AST/ClassNode.ts +5 -3
  45. package/src/Attribute.ts +19 -8
  46. package/src/Component.ts +24 -0
  47. package/src/DOM/DOMObject.ts +11 -0
  48. package/src/DOM.ts +8 -10
  49. package/src/Registry.ts +9 -3
  50. package/src/Tag.ts +70 -50
  51. package/src/attributes/ComponentAttribute.ts +24 -0
  52. package/src/attributes/ListItem.ts +0 -4
  53. package/src/attributes/TemplateAttribute.ts +12 -0
  54. package/src/attributes/_imports.ts +2 -1
  55. package/src/custom-elements.ts +46 -0
  56. package/src/version.ts +2 -1
  57. package/src/vsn.ts +6 -0
  58. package/test/AST/ClassNode.spec.ts +1 -1
  59. package/dist/attributes/Template.d.ts +0 -4
  60. package/dist/attributes/Template.js +0 -39
  61. package/dist/attributes/Template.js.map +0 -1
  62. package/src/attributes/Template.ts +0 -7
package/dist/Tag.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Scope } from "./Scope";
2
- import { Attribute } from "./Attribute";
2
+ import { Attribute, AttributeState } from "./Attribute";
3
3
  import { DOM } from "./DOM";
4
4
  import { Controller } from "./Controller";
5
5
  import { StandardAttribute } from "./attributes/StandardAttribute";
@@ -35,6 +35,7 @@ export declare class Tag extends DOMObject {
35
35
  get uniqueScope(): boolean;
36
36
  constructor(element: HTMLElement, dom: DOM, ...props: any[]);
37
37
  protected onAttributeStateChange(event: any): void;
38
+ getAttributesWithState(state: AttributeState): Attribute[];
38
39
  get nonDeferredAttributes(): Attribute[];
39
40
  get style(): CSSStyleDeclaration;
40
41
  get computedStyle(): CSSStyleDeclaration;
@@ -79,13 +80,14 @@ export declare class Tag extends DOMObject {
79
80
  getRawAttributeValue(key: string, fallback?: any): any;
80
81
  hasRawAttribute(mod: string): boolean;
81
82
  getParsedAttributeValue(key: string, index?: number, fallback?: any): any;
83
+ getTagsToBuild(): Promise<import("./Tag/List").TagList | this[]>;
82
84
  buildAttributes(): Promise<void>;
83
85
  compileAttributes(): Promise<void>;
84
86
  setupAttributes(): Promise<void>;
85
87
  extractAttributes(): Promise<void>;
86
88
  connectAttributes(): Promise<void>;
87
89
  inputMutation(e: any): void;
88
- finalize(): void;
90
+ finalize(): Promise<void>;
89
91
  callOnWrapped(method: any, ...args: any[]): boolean;
90
92
  protected handleEvent(eventType: string, e: any): void;
91
93
  hasModifier(attribute: string, modifier: string): boolean;
package/dist/Tag.js CHANGED
@@ -65,7 +65,6 @@ var VisionHelper_1 = require("./helpers/VisionHelper");
65
65
  var StandardAttribute_1 = require("./attributes/StandardAttribute");
66
66
  var On_1 = require("./attributes/On");
67
67
  var Registry_1 = require("./Registry");
68
- var Bencmark_1 = require("./Bencmark");
69
68
  var DOMObject_1 = require("./DOM/DOMObject");
70
69
  var AST_1 = require("./AST");
71
70
  var StyleAttribute_1 = require("./attributes/StyleAttribute");
@@ -121,9 +120,12 @@ var Tag = /** @class */ (function (_super) {
121
120
  });
122
121
  ;
123
122
  Tag.prototype.onAttributeStateChange = function (event) {
124
- if (event.previouseState === Attribute_1.AttributeState.Deferred)
123
+ if (event.previouseState === Attribute_1.AttributeState.Deferred) // @todo: what is this?
125
124
  this._nonDeferredAttributes.length = 0;
126
125
  };
126
+ Tag.prototype.getAttributesWithState = function (state) {
127
+ return this.attributes.filter(function (attr) { return attr.state === state; });
128
+ };
127
129
  Object.defineProperty(Tag.prototype, "nonDeferredAttributes", {
128
130
  get: function () {
129
131
  if (this._nonDeferredAttributes.length > 0)
@@ -510,11 +512,24 @@ var Tag = /** @class */ (function (_super) {
510
512
  if (fallback === void 0) { fallback = null; }
511
513
  return this.parsedAttributes[key] && this.parsedAttributes[key][index] || fallback;
512
514
  };
515
+ Tag.prototype.getTagsToBuild = function () {
516
+ return __awaiter(this, void 0, void 0, function () {
517
+ return __generator(this, function (_a) {
518
+ switch (_a.label) {
519
+ case 0:
520
+ if (!this.isSlot) return [3 /*break*/, 2];
521
+ return [4 /*yield*/, DOM_1.DOM.instance.getTagsForElements(this.delegates, true)];
522
+ case 1: return [2 /*return*/, _a.sent()];
523
+ case 2: return [2 /*return*/, [this]];
524
+ }
525
+ });
526
+ });
527
+ };
513
528
  Tag.prototype.buildAttributes = function () {
514
529
  return __awaiter(this, void 0, void 0, function () {
515
- var requiresScope, defer, isMobile, _a, _b, _i, attr, attrClass, attrObj;
516
- return __generator(this, function (_c) {
517
- switch (_c.label) {
530
+ var requiresScope, defer, isMobile, tags, slot, _i, tags_1, tag, _a, _b, _c, attr, attrClass, attrObj;
531
+ return __generator(this, function (_d) {
532
+ switch (_d.label) {
518
533
  case 0:
519
534
  requiresScope = false;
520
535
  defer = false;
@@ -525,48 +540,62 @@ var Tag = /** @class */ (function (_super) {
525
540
  this.hasAttribute('vsn-defer')) {
526
541
  defer = true;
527
542
  }
543
+ return [4 /*yield*/, this.getTagsToBuild()];
544
+ case 1:
545
+ tags = _d.sent();
546
+ slot = this.isSlot ? this : null;
547
+ _i = 0, tags_1 = tags;
548
+ _d.label = 2;
549
+ case 2:
550
+ if (!(_i < tags_1.length)) return [3 /*break*/, 9];
551
+ tag = tags_1[_i];
528
552
  _a = [];
529
553
  for (_b in this.rawAttributes)
530
554
  _a.push(_b);
531
- _i = 0;
532
- _c.label = 1;
533
- case 1:
534
- if (!(_i < _a.length)) return [3 /*break*/, 5];
535
- attr = _a[_i];
555
+ _c = 0;
556
+ _d.label = 3;
557
+ case 3:
558
+ if (!(_c < _a.length)) return [3 /*break*/, 7];
559
+ attr = _a[_c];
536
560
  if (this.hasModifier(attr, 'mobile')) {
537
561
  if (!isMobile) {
538
- return [3 /*break*/, 4];
562
+ return [3 /*break*/, 6];
539
563
  }
540
564
  }
541
565
  if (this.hasModifier(attr, 'desktop')) {
542
566
  if (isMobile) {
543
- return [3 /*break*/, 4];
567
+ return [3 /*break*/, 6];
544
568
  }
545
569
  }
546
570
  return [4 /*yield*/, this.getAttributeClass(attr)];
547
- case 2:
548
- attrClass = _c.sent();
549
- if (!attrClass) return [3 /*break*/, 4];
571
+ case 4:
572
+ attrClass = _d.sent();
573
+ if (!attrClass) return [3 /*break*/, 6];
550
574
  if (attrClass.scoped)
551
575
  requiresScope = true;
552
- attrObj = attrClass.create(this, attr, attrClass);
553
- this.attributes.push(attrObj);
554
- if (!(defer && attrClass.canDefer)) return [3 /*break*/, 4];
576
+ attrObj = attrClass.create(tag, attr, attrClass, slot);
577
+ tag.attributes.push(attrObj);
578
+ if (!(defer && attrClass.canDefer)) return [3 /*break*/, 6];
555
579
  return [4 /*yield*/, attrObj.defer()];
556
- case 3:
557
- _c.sent();
558
- this.deferredAttributes.push(attrObj);
559
- attrObj.on('state', this.onAttributeStateChange.bind(this));
560
- _c.label = 4;
561
- case 4:
562
- _i++;
563
- return [3 /*break*/, 1];
564
580
  case 5:
565
- if (this.element.getAttribute('id'))
581
+ _d.sent();
582
+ tag.deferredAttributes.push(attrObj);
583
+ attrObj.on('state', tag.onAttributeStateChange, tag);
584
+ _d.label = 6;
585
+ case 6:
586
+ _c++;
587
+ return [3 /*break*/, 3];
588
+ case 7:
589
+ if (tag.element.getAttribute('id'))
566
590
  requiresScope = true;
567
- if (requiresScope && !this.uniqueScope) {
568
- this._uniqueScope = true;
591
+ if (requiresScope && !tag.uniqueScope) {
592
+ tag._uniqueScope = true;
569
593
  }
594
+ _d.label = 8;
595
+ case 8:
596
+ _i++;
597
+ return [3 /*break*/, 2];
598
+ case 9:
570
599
  this._state = TagState.AttributesBuilt;
571
600
  return [2 /*return*/];
572
601
  }
@@ -575,23 +604,33 @@ var Tag = /** @class */ (function (_super) {
575
604
  };
576
605
  Tag.prototype.compileAttributes = function () {
577
606
  return __awaiter(this, void 0, void 0, function () {
578
- var _i, _a, attr;
579
- return __generator(this, function (_b) {
580
- switch (_b.label) {
581
- case 0:
582
- _i = 0, _a = this.nonDeferredAttributes;
583
- _b.label = 1;
607
+ var tags, _i, tags_2, tag, _a, _b, attr;
608
+ return __generator(this, function (_c) {
609
+ switch (_c.label) {
610
+ case 0: return [4 /*yield*/, this.getTagsToBuild()];
584
611
  case 1:
585
- if (!(_i < _a.length)) return [3 /*break*/, 4];
586
- attr = _a[_i];
587
- return [4 /*yield*/, attr.compile()];
612
+ tags = _c.sent();
613
+ _i = 0, tags_2 = tags;
614
+ _c.label = 2;
588
615
  case 2:
589
- _b.sent();
590
- _b.label = 3;
616
+ if (!(_i < tags_2.length)) return [3 /*break*/, 7];
617
+ tag = tags_2[_i];
618
+ _a = 0, _b = tag.getAttributesWithState(Attribute_1.AttributeState.Instantiated);
619
+ _c.label = 3;
591
620
  case 3:
592
- _i++;
593
- return [3 /*break*/, 1];
621
+ if (!(_a < _b.length)) return [3 /*break*/, 6];
622
+ attr = _b[_a];
623
+ return [4 /*yield*/, attr.compile()];
594
624
  case 4:
625
+ _c.sent();
626
+ _c.label = 5;
627
+ case 5:
628
+ _a++;
629
+ return [3 /*break*/, 3];
630
+ case 6:
631
+ _i++;
632
+ return [3 /*break*/, 2];
633
+ case 7:
595
634
  this._state = TagState.AttributesCompiled;
596
635
  return [2 /*return*/];
597
636
  }
@@ -600,34 +639,37 @@ var Tag = /** @class */ (function (_super) {
600
639
  };
601
640
  Tag.prototype.setupAttributes = function () {
602
641
  return __awaiter(this, void 0, void 0, function () {
603
- var _i, _a, attr;
604
- return __generator(this, function (_b) {
605
- switch (_b.label) {
606
- case 0:
607
- if (VisionHelper_1.VisionHelper.doBenchmark)
608
- Bencmark_1.benchmarkStart('Tag.setupAttributes');
609
- _i = 0, _a = this.nonDeferredAttributes;
610
- _b.label = 1;
642
+ var tags, _i, tags_3, tag, _a, _b, attr;
643
+ return __generator(this, function (_c) {
644
+ switch (_c.label) {
645
+ case 0: return [4 /*yield*/, this.getTagsToBuild()];
611
646
  case 1:
612
- if (!(_i < _a.length)) return [3 /*break*/, 4];
613
- attr = _a[_i];
614
- return [4 /*yield*/, attr.setup()];
647
+ tags = _c.sent();
648
+ _i = 0, tags_3 = tags;
649
+ _c.label = 2;
615
650
  case 2:
616
- _b.sent();
617
- _b.label = 3;
651
+ if (!(_i < tags_3.length)) return [3 /*break*/, 7];
652
+ tag = tags_3[_i];
653
+ _a = 0, _b = tag.getAttributesWithState(Attribute_1.AttributeState.Compiled);
654
+ _c.label = 3;
618
655
  case 3:
619
- _i++;
620
- return [3 /*break*/, 1];
656
+ if (!(_a < _b.length)) return [3 /*break*/, 6];
657
+ attr = _b[_a];
658
+ return [4 /*yield*/, attr.setup()];
621
659
  case 4:
622
- if (VisionHelper_1.VisionHelper.doBenchmark)
623
- Bencmark_1.benchmarkEnd('Tag.setupAttributes', 'Attribute.setup');
624
- this.dom.registerElementInRoot(this);
625
- if (VisionHelper_1.VisionHelper.doBenchmark)
626
- Bencmark_1.benchmarkEnd('Tag.setupAttributes', 'register');
660
+ _c.sent();
661
+ _c.label = 5;
662
+ case 5:
663
+ _a++;
664
+ return [3 /*break*/, 3];
665
+ case 6:
666
+ _i++;
667
+ return [3 /*break*/, 2];
668
+ case 7:
669
+ if (!this.isSlot)
670
+ this.dom.registerElementInRoot(this);
627
671
  this._state = TagState.AttributesSetup;
628
672
  this.callOnWrapped('$setup');
629
- if (VisionHelper_1.VisionHelper.doBenchmark)
630
- Bencmark_1.benchmarkEnd('Tag.setupAttributes', '$setup');
631
673
  return [2 /*return*/];
632
674
  }
633
675
  });
@@ -635,23 +677,33 @@ var Tag = /** @class */ (function (_super) {
635
677
  };
636
678
  Tag.prototype.extractAttributes = function () {
637
679
  return __awaiter(this, void 0, void 0, function () {
638
- var _i, _a, attr;
639
- return __generator(this, function (_b) {
640
- switch (_b.label) {
641
- case 0:
642
- _i = 0, _a = this.nonDeferredAttributes;
643
- _b.label = 1;
680
+ var tags, _i, tags_4, tag, _a, _b, attr;
681
+ return __generator(this, function (_c) {
682
+ switch (_c.label) {
683
+ case 0: return [4 /*yield*/, this.getTagsToBuild()];
644
684
  case 1:
645
- if (!(_i < _a.length)) return [3 /*break*/, 4];
646
- attr = _a[_i];
647
- return [4 /*yield*/, attr.extract()];
685
+ tags = _c.sent();
686
+ _i = 0, tags_4 = tags;
687
+ _c.label = 2;
648
688
  case 2:
649
- _b.sent();
650
- _b.label = 3;
689
+ if (!(_i < tags_4.length)) return [3 /*break*/, 7];
690
+ tag = tags_4[_i];
691
+ _a = 0, _b = tag.getAttributesWithState(Attribute_1.AttributeState.Setup);
692
+ _c.label = 3;
651
693
  case 3:
652
- _i++;
653
- return [3 /*break*/, 1];
694
+ if (!(_a < _b.length)) return [3 /*break*/, 6];
695
+ attr = _b[_a];
696
+ return [4 /*yield*/, attr.extract()];
654
697
  case 4:
698
+ _c.sent();
699
+ _c.label = 5;
700
+ case 5:
701
+ _a++;
702
+ return [3 /*break*/, 3];
703
+ case 6:
704
+ _i++;
705
+ return [3 /*break*/, 2];
706
+ case 7:
655
707
  this._state = TagState.AttributesExtracted;
656
708
  this.callOnWrapped('$extracted');
657
709
  return [2 /*return*/];
@@ -661,26 +713,36 @@ var Tag = /** @class */ (function (_super) {
661
713
  };
662
714
  Tag.prototype.connectAttributes = function () {
663
715
  return __awaiter(this, void 0, void 0, function () {
664
- var _i, _a, attr;
665
- return __generator(this, function (_b) {
666
- switch (_b.label) {
667
- case 0:
668
- if (this.isInput) {
669
- this.addEventHandler('input', [], this.inputMutation, this);
670
- }
671
- _i = 0, _a = this.nonDeferredAttributes;
672
- _b.label = 1;
716
+ var tags, _i, tags_5, tag, _a, _b, attr;
717
+ return __generator(this, function (_c) {
718
+ switch (_c.label) {
719
+ case 0: return [4 /*yield*/, this.getTagsToBuild()];
673
720
  case 1:
674
- if (!(_i < _a.length)) return [3 /*break*/, 4];
675
- attr = _a[_i];
676
- return [4 /*yield*/, attr.connect()];
721
+ tags = _c.sent();
722
+ _i = 0, tags_5 = tags;
723
+ _c.label = 2;
677
724
  case 2:
678
- _b.sent();
679
- _b.label = 3;
725
+ if (!(_i < tags_5.length)) return [3 /*break*/, 7];
726
+ tag = tags_5[_i];
727
+ if (tag.isInput) {
728
+ tag.addEventHandler('input', [], tag.inputMutation, tag);
729
+ }
730
+ _a = 0, _b = tag.getAttributesWithState(Attribute_1.AttributeState.Extracted);
731
+ _c.label = 3;
680
732
  case 3:
681
- _i++;
682
- return [3 /*break*/, 1];
733
+ if (!(_a < _b.length)) return [3 /*break*/, 6];
734
+ attr = _b[_a];
735
+ return [4 /*yield*/, attr.connect()];
683
736
  case 4:
737
+ _c.sent();
738
+ _c.label = 5;
739
+ case 5:
740
+ _a++;
741
+ return [3 /*break*/, 3];
742
+ case 6:
743
+ _i++;
744
+ return [3 /*break*/, 2];
745
+ case 7:
684
746
  this._state = TagState.AttributesConnected;
685
747
  this.callOnWrapped('$bound');
686
748
  return [2 /*return*/];
@@ -704,19 +766,21 @@ var Tag = /** @class */ (function (_super) {
704
766
  option.removeAttribute('selected');
705
767
  }
706
768
  }
707
- //this.element.setAttribute('value', );
708
769
  this.value = values.join(',');
709
770
  }
710
771
  else {
711
- //this.element.setAttribute('value', e.target.value);
712
- //(this.element as any).value = e.target.value;
713
772
  this.value = e.target.value;
714
773
  }
715
774
  };
716
775
  Tag.prototype.finalize = function () {
717
- this._state = TagState.Built;
718
- this.callOnWrapped('$built', this, this.scope, this.element);
719
- VisionHelper_1.VisionHelper.nice(this.setupDeferredAttributes.bind(this));
776
+ return __awaiter(this, void 0, void 0, function () {
777
+ return __generator(this, function (_a) {
778
+ this._state = TagState.Built;
779
+ this.callOnWrapped('$built', this, this.scope, this.element);
780
+ VisionHelper_1.VisionHelper.nice(this.setupDeferredAttributes.bind(this));
781
+ return [2 /*return*/];
782
+ });
783
+ });
720
784
  };
721
785
  Tag.prototype.callOnWrapped = function (method) {
722
786
  var _a;
package/dist/Tag.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sourceRoot":"","sources":["../src/Tag.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tag.js","sourceRoot":"","sources":["../src/Tag.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { TemplateAttribute } from "./TemplateAttribute";
2
+ export declare class ComponentAttribute extends TemplateAttribute {
3
+ static readonly scoped: boolean;
4
+ extract(): Promise<void>;
5
+ }
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20
+ 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;
21
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
22
+ };
23
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
24
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
25
+ return new (P || (P = Promise))(function (resolve, reject) {
26
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
27
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
28
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
29
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
30
+ });
31
+ };
32
+ var __generator = (this && this.__generator) || function (thisArg, body) {
33
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
34
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
35
+ function verb(n) { return function (v) { return step([n, v]); }; }
36
+ function step(op) {
37
+ if (f) throw new TypeError("Generator is already executing.");
38
+ while (_) try {
39
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
40
+ if (y = 0, t) op = [op[0] & 2, t.value];
41
+ switch (op[0]) {
42
+ case 0: case 1: t = op; break;
43
+ case 4: _.label++; return { value: op[1], done: false };
44
+ case 5: _.label++; y = op[1]; op = [0]; continue;
45
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
46
+ default:
47
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
48
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
49
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
50
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
51
+ if (t[2]) _.ops.pop();
52
+ _.trys.pop(); continue;
53
+ }
54
+ op = body.call(thisArg, _);
55
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
56
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
57
+ }
58
+ };
59
+ Object.defineProperty(exports, "__esModule", { value: true });
60
+ exports.ComponentAttribute = void 0;
61
+ var Registry_1 = require("../Registry");
62
+ var TemplateAttribute_1 = require("./TemplateAttribute");
63
+ var Component_1 = require("../Component");
64
+ var ComponentAttribute = /** @class */ (function (_super) {
65
+ __extends(ComponentAttribute, _super);
66
+ function ComponentAttribute() {
67
+ return _super !== null && _super.apply(this, arguments) || this;
68
+ }
69
+ ComponentAttribute.prototype.extract = function () {
70
+ return __awaiter(this, void 0, void 0, function () {
71
+ var name, clsName, cls;
72
+ return __generator(this, function (_a) {
73
+ switch (_a.label) {
74
+ case 0:
75
+ name = this.getAttributeBinding();
76
+ if (!!Registry_1.Registry.instance.components.has(name)) return [3 /*break*/, 4];
77
+ return [4 /*yield*/, _super.prototype.extract.call(this)];
78
+ case 1:
79
+ _a.sent();
80
+ clsName = this.getAttributeValue();
81
+ cls = Component_1.Component;
82
+ if (!clsName) return [3 /*break*/, 3];
83
+ return [4 /*yield*/, Registry_1.Registry.instance.components.get(clsName)];
84
+ case 2:
85
+ cls = _a.sent();
86
+ if (!cls) {
87
+ throw new Error("Component " + clsName + " not found");
88
+ }
89
+ _a.label = 3;
90
+ case 3:
91
+ Registry_1.Registry.instance.components.register(name, cls);
92
+ _a.label = 4;
93
+ case 4: return [2 /*return*/];
94
+ }
95
+ });
96
+ });
97
+ };
98
+ ComponentAttribute.scoped = true;
99
+ ComponentAttribute = __decorate([
100
+ Registry_1.Registry.attribute('vsn-component')
101
+ ], ComponentAttribute);
102
+ return ComponentAttribute;
103
+ }(TemplateAttribute_1.TemplateAttribute));
104
+ exports.ComponentAttribute = ComponentAttribute;
105
+ //# sourceMappingURL=ComponentAttribute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComponentAttribute.js","sourceRoot":"","sources":["../../src/attributes/ComponentAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wCAAqC;AACrC,yDAAsD;AACtD,0CAAuC;AAGvC;IAAwC,sCAAiB;IAAzD;;IAkBA,CAAC;IAfgB,oCAAO,GAApB;;;;;;wBACU,IAAI,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;6BACpC,CAAC,mBAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAvC,wBAAuC;wBACvC,qBAAM,iBAAM,OAAO,WAAE,EAAA;;wBAArB,SAAqB,CAAC;wBAChB,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;wBACrC,GAAG,GAAG,qBAAS,CAAC;6BAChB,OAAO,EAAP,wBAAO;wBACD,qBAAM,mBAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAA;;wBAArD,GAAG,GAAG,SAA+C,CAAC;wBACtD,IAAI,CAAC,GAAG,EAAE;4BACN,MAAM,IAAI,KAAK,CAAC,eAAa,OAAO,eAAY,CAAC,CAAC;yBACrD;;;wBAEL,mBAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;;;;;;KAExD;IAhBsB,yBAAM,GAAY,IAAI,CAAC;IADrC,kBAAkB;QAD9B,mBAAQ,CAAC,SAAS,CAAC,eAAe,CAAC;OACvB,kBAAkB,CAkB9B;IAAD,yBAAC;CAAA,AAlBD,CAAwC,qCAAiB,GAkBxD;AAlBY,gDAAkB"}
@@ -10,6 +10,5 @@ export declare class ListItem extends Attribute {
10
10
  setup(): Promise<void>;
11
11
  get listItemName(): string;
12
12
  getList(): Promise<List>;
13
- protected configure(): Promise<void>;
14
13
  private instantiateModel;
15
14
  }
@@ -115,13 +115,6 @@ var ListItem = /** @class */ (function (_super) {
115
115
  });
116
116
  });
117
117
  };
118
- ListItem.prototype.configure = function () {
119
- return __awaiter(this, void 0, void 0, function () {
120
- return __generator(this, function (_a) {
121
- return [2 /*return*/];
122
- });
123
- });
124
- };
125
118
  ListItem.prototype.instantiateModel = function (model) {
126
119
  this.tag.wrap(model, false, true);
127
120
  };