vsn 0.1.123 → 0.1.124

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 (140) hide show
  1. package/demo/demo.html +4 -1
  2. package/demo/resources/xhr-animations.html +24 -0
  3. package/demo/resources/xhr-lazy.html +10 -1
  4. package/demo/silly-animations.html +12 -24
  5. package/demo/vsn.js +2 -2
  6. package/dist/AST/ArrayNode.js +70 -18
  7. package/dist/AST/ArrayNode.js.map +1 -1
  8. package/dist/AST/AssignmentNode.js +92 -35
  9. package/dist/AST/AssignmentNode.js.map +1 -1
  10. package/dist/AST/BlockNode.js +17 -1
  11. package/dist/AST/BlockNode.js.map +1 -1
  12. package/dist/AST/ClassNode.js +225 -87
  13. package/dist/AST/ClassNode.js.map +1 -1
  14. package/dist/AST/ElementAttributeNode.js +55 -29
  15. package/dist/AST/ElementAttributeNode.js.map +1 -1
  16. package/dist/AST/ElementStyleNode.js +48 -22
  17. package/dist/AST/ElementStyleNode.js.map +1 -1
  18. package/dist/AST/FunctionArgumentNode.js +57 -15
  19. package/dist/AST/FunctionArgumentNode.js.map +1 -1
  20. package/dist/AST/FunctionCallNode.js +120 -52
  21. package/dist/AST/FunctionCallNode.js.map +1 -1
  22. package/dist/AST/FunctionNode.js +57 -14
  23. package/dist/AST/FunctionNode.js.map +1 -1
  24. package/dist/AST/IfStatementNode.js +52 -12
  25. package/dist/AST/IfStatementNode.js.map +1 -1
  26. package/dist/AST/IndexNode.js +24 -3
  27. package/dist/AST/IndexNode.js.map +1 -1
  28. package/dist/AST/ModifierNode.js +1 -1
  29. package/dist/AST/ModifierNode.js.map +1 -1
  30. package/dist/AST/Node.d.ts +3 -2
  31. package/dist/AST/Node.js +132 -39
  32. package/dist/AST/Node.js.map +1 -1
  33. package/dist/AST/ObjectNode.js +17 -1
  34. package/dist/AST/ObjectNode.js.map +1 -1
  35. package/dist/AST/OnNode.js +23 -2
  36. package/dist/AST/OnNode.js.map +1 -1
  37. package/dist/AST/ScopeMemberNode.js +40 -16
  38. package/dist/AST/ScopeMemberNode.js.map +1 -1
  39. package/dist/AST/ScopeNodeAbstract.js +29 -8
  40. package/dist/AST/ScopeNodeAbstract.js.map +1 -1
  41. package/dist/AST/StringFormatNode.js +42 -5
  42. package/dist/AST/StringFormatNode.js.map +1 -1
  43. package/dist/AST/WASM/Function.js +20 -4
  44. package/dist/AST/WASM/Function.js.map +1 -1
  45. package/dist/AST/WASM.js +26 -10
  46. package/dist/AST/WASM.js.map +1 -1
  47. package/dist/AST/WithNode.js +81 -41
  48. package/dist/AST/WithNode.js.map +1 -1
  49. package/dist/AST.js +91 -37
  50. package/dist/AST.js.map +1 -1
  51. package/dist/Attribute.d.ts +3 -0
  52. package/dist/Attribute.js +43 -19
  53. package/dist/Attribute.js.map +1 -1
  54. package/dist/Bencmark.js +77 -20
  55. package/dist/Bencmark.js.map +1 -1
  56. package/dist/Component.js +49 -15
  57. package/dist/Component.js.map +1 -1
  58. package/dist/DOM/DOMObject.d.ts +6 -1
  59. package/dist/DOM/DOMObject.js +22 -1
  60. package/dist/DOM/DOMObject.js.map +1 -1
  61. package/dist/DOM.js +450 -193
  62. package/dist/DOM.js.map +1 -1
  63. package/dist/EventDispatcher.js +153 -39
  64. package/dist/EventDispatcher.js.map +1 -1
  65. package/dist/MessageList.js +37 -6
  66. package/dist/MessageList.js.map +1 -1
  67. package/dist/Model.js +27 -6
  68. package/dist/Model.js.map +1 -1
  69. package/dist/Modifiers.d.ts +17 -0
  70. package/dist/Modifiers.js +100 -0
  71. package/dist/Modifiers.js.map +1 -0
  72. package/dist/Scope/DynamicScopeData.js +38 -7
  73. package/dist/Scope/DynamicScopeData.js.map +1 -1
  74. package/dist/Scope/ScopeData.js +29 -8
  75. package/dist/Scope/ScopeData.js.map +1 -1
  76. package/dist/Scope/ScopeDataAbstract.js +103 -27
  77. package/dist/Scope/ScopeDataAbstract.js.map +1 -1
  78. package/dist/Scope/WrappedArray.js +112 -26
  79. package/dist/Scope/WrappedArray.js.map +1 -1
  80. package/dist/Scope/properties/ArrayProperty.js +17 -1
  81. package/dist/Scope/properties/ArrayProperty.js.map +1 -1
  82. package/dist/Scope/properties/Property.js +38 -7
  83. package/dist/Scope/properties/Property.js.map +1 -1
  84. package/dist/Scope.js +70 -13
  85. package/dist/Scope.js.map +1 -1
  86. package/dist/SimplePromise.js +71 -30
  87. package/dist/SimplePromise.js.map +1 -1
  88. package/dist/Tag/TagList.js +22 -1
  89. package/dist/Tag/TagList.js.map +1 -1
  90. package/dist/Tag.d.ts +5 -9
  91. package/dist/Tag.js +512 -195
  92. package/dist/Tag.js.map +1 -1
  93. package/dist/attributes/KeyAbstract.js +1 -1
  94. package/dist/attributes/KeyAbstract.js.map +1 -1
  95. package/dist/attributes/KeyDown.js +1 -1
  96. package/dist/attributes/KeyDown.js.map +1 -1
  97. package/dist/attributes/KeyUp.js +1 -1
  98. package/dist/attributes/KeyUp.js.map +1 -1
  99. package/dist/attributes/LazyAttribute.js +4 -2
  100. package/dist/attributes/LazyAttribute.js.map +1 -1
  101. package/dist/attributes/List.js +77 -30
  102. package/dist/attributes/List.js.map +1 -1
  103. package/dist/attributes/On.d.ts +1 -1
  104. package/dist/attributes/On.js +10 -10
  105. package/dist/attributes/On.js.map +1 -1
  106. package/dist/attributes/RootAttribute.js +29 -8
  107. package/dist/attributes/RootAttribute.js.map +1 -1
  108. package/dist/attributes/ScopeAttribute.js +30 -9
  109. package/dist/attributes/ScopeAttribute.js.map +1 -1
  110. package/dist/attributes/SetAttribute.js +32 -11
  111. package/dist/attributes/SetAttribute.js.map +1 -1
  112. package/dist/attributes/StyleAttribute.js +27 -6
  113. package/dist/attributes/StyleAttribute.js.map +1 -1
  114. package/dist/attributes/XHRAttribute.js +28 -7
  115. package/dist/attributes/XHRAttribute.js.map +1 -1
  116. package/dist/helpers/ElementHelper.js +25 -4
  117. package/dist/helpers/ElementHelper.js.map +1 -1
  118. package/dist/helpers/decorators.js +22 -1
  119. package/dist/helpers/decorators.js.map +1 -1
  120. package/dist/version.d.ts +1 -1
  121. package/dist/version.js +1 -1
  122. package/package.json +1 -1
  123. package/src/AST/FunctionNode.ts +2 -0
  124. package/src/AST/ModifierNode.ts +1 -1
  125. package/src/AST/Node.ts +10 -5
  126. package/src/AST/OnNode.ts +1 -1
  127. package/src/AST/ScopeNodeAbstract.ts +3 -3
  128. package/src/AST.ts +1 -1
  129. package/src/Attribute.ts +19 -8
  130. package/src/DOM/DOMObject.ts +4 -1
  131. package/src/Modifiers.ts +54 -0
  132. package/src/Tag.ts +66 -37
  133. package/src/attributes/KeyAbstract.ts +1 -1
  134. package/src/attributes/KeyDown.ts +1 -1
  135. package/src/attributes/KeyUp.ts +1 -1
  136. package/src/attributes/LazyAttribute.ts +6 -2
  137. package/src/attributes/On.ts +10 -9
  138. package/src/attributes/XHRAttribute.ts +2 -2
  139. package/src/version.ts +1 -1
  140. package/tsconfig.base.json +2 -1
@@ -50,6 +50,17 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
50
50
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
51
  }
52
52
  };
53
+ var __values = (this && this.__values) || function(o) {
54
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
55
+ if (m) return m.call(o);
56
+ if (o && typeof o.length === "number") return {
57
+ next: function () {
58
+ if (o && i >= o.length) o = void 0;
59
+ return { value: o && o[i++], done: !o };
60
+ }
61
+ };
62
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
63
+ };
53
64
  Object.defineProperty(exports, "__esModule", { value: true });
54
65
  exports.ElementStyleNode = void 0;
55
66
  var TagList_1 = require("../Tag/TagList");
@@ -119,37 +130,52 @@ var ElementStyleNode = /** @class */ (function (_super) {
119
130
  if (tag === void 0) { tag = null; }
120
131
  if (meta === void 0) { meta = null; }
121
132
  return __awaiter(this, void 0, void 0, function () {
122
- var tags, _i, tags_1, t;
123
- return __generator(this, function (_a) {
124
- switch (_a.label) {
133
+ var tags, tags_1, tags_1_1, t, e_1_1;
134
+ var e_1, _a;
135
+ return __generator(this, function (_b) {
136
+ switch (_b.label) {
125
137
  case 0:
126
- if (!this.elementRef) return [3 /*break*/, 7];
138
+ if (!this.elementRef) return [3 /*break*/, 11];
127
139
  return [4 /*yield*/, this.elementRef.prepare(scope, dom, tag, meta)];
128
140
  case 1:
129
- _a.sent();
141
+ _b.sent();
130
142
  return [4 /*yield*/, this.elementRef.evaluate(scope, dom, tag, true)];
131
143
  case 2:
132
- tags = _a.sent();
133
- _i = 0, tags_1 = tags;
134
- _a.label = 3;
144
+ tags = _b.sent();
145
+ _b.label = 3;
135
146
  case 3:
136
- if (!(_i < tags_1.length)) return [3 /*break*/, 6];
137
- t = tags_1[_i];
138
- return [4 /*yield*/, t.watchStyle(this.attributeName)];
147
+ _b.trys.push([3, 8, 9, 10]);
148
+ tags_1 = __values(tags), tags_1_1 = tags_1.next();
149
+ _b.label = 4;
139
150
  case 4:
140
- _a.sent();
141
- _a.label = 5;
151
+ if (!!tags_1_1.done) return [3 /*break*/, 7];
152
+ t = tags_1_1.value;
153
+ return [4 /*yield*/, t.watchStyle(this.attributeName)];
142
154
  case 5:
143
- _i++;
144
- return [3 /*break*/, 3];
145
- case 6: return [3 /*break*/, 9];
146
- case 7:
147
- if (!tag) return [3 /*break*/, 9];
148
- return [4 /*yield*/, tag.watchStyle(this.attributeName)];
155
+ _b.sent();
156
+ _b.label = 6;
157
+ case 6:
158
+ tags_1_1 = tags_1.next();
159
+ return [3 /*break*/, 4];
160
+ case 7: return [3 /*break*/, 10];
149
161
  case 8:
150
- _a.sent();
151
- _a.label = 9;
152
- case 9: return [2 /*return*/];
162
+ e_1_1 = _b.sent();
163
+ e_1 = { error: e_1_1 };
164
+ return [3 /*break*/, 10];
165
+ case 9:
166
+ try {
167
+ if (tags_1_1 && !tags_1_1.done && (_a = tags_1.return)) _a.call(tags_1);
168
+ }
169
+ finally { if (e_1) throw e_1.error; }
170
+ return [7 /*endfinally*/];
171
+ case 10: return [3 /*break*/, 13];
172
+ case 11:
173
+ if (!tag) return [3 /*break*/, 13];
174
+ return [4 /*yield*/, tag.watchStyle(this.attributeName)];
175
+ case 12:
176
+ _b.sent();
177
+ _b.label = 13;
178
+ case 13: return [2 /*return*/];
153
179
  }
154
180
  });
155
181
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ElementStyleNode.js","sourceRoot":"","sources":["../../src/AST/ElementStyleNode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,0CAAuC;AAEvC,+BAA4B;AAE5B,6CAA0C;AAE1C;IAAsC,oCAAI;IAGtC,0BACoB,UAAmC,EACnC,IAAY;QAFhC,YAII,iBAAO,SACV;QAJmB,gBAAU,GAAV,UAAU,CAAyB;QACnC,UAAI,GAAJ,IAAI,CAAQ;QAJtB,kBAAY,GAAY,IAAI,CAAC;;IAOvC,CAAC;IAED,sBAAW,kCAAI;aAAf;YACI,OAAO,IAAI,yBAAW,CAAS,MAAI,IAAI,CAAC,aAAe,CAAC,CAAC;QAC7D,CAAC;;;OAAA;IAES,yCAAc,GAAxB;QACI,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,IAAI,CAAC,UAAU;YACf,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,sBAAI,2CAAa;aAAjB;YACI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBACzB,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAClC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;;;OAAA;IAEK,mCAAQ,GAAd,UAAe,KAAY,EAAE,GAAQ,EAAE,GAAe;QAAf,oBAAA,EAAA,UAAe;;;;;;;6BAE9C,IAAI,CAAC,UAAU,EAAf,wBAAe;wBACR,qBAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAA;;wBAA5D,IAAI,GAAG,SAAqD,CAAC;;;wBAC1D,IAAI,GAAG,EAAE;4BACZ,IAAI,GAAG,IAAI,iBAAO,CAAC,GAAG,CAAC,CAAA;yBAC1B;6BAAM;4BACH,sBAAO;yBACV;;;wBAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;4BACjB,sBAAO,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAI,IAAI,CAAC,aAAe,CAAC,EAAC;wBAEvD,sBAAO,IAAI,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAI,KAAI,CAAC,aAAe,CAAC,EAAvC,CAAuC,CAAC,EAAC;;;;KACrE;IAEK,kCAAO,GAAb,UAAc,KAAY,EAAE,GAAQ,EAAE,GAAe,EAAE,IAAgB;QAAjC,oBAAA,EAAA,UAAe;QAAE,qBAAA,EAAA,WAAgB;;;;;;6BAC/D,IAAI,CAAC,UAAU,EAAf,wBAAe;wBACf,qBAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAA;;wBAApD,SAAoD,CAAC;wBAC/B,qBAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAA;;wBAArE,IAAI,GAAY,SAAqD;8BACvD,EAAJ,aAAI;;;6BAAJ,CAAA,kBAAI,CAAA;wBAAT,CAAC;wBACR,qBAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAA;;wBAAtC,SAAsC,CAAC;;;wBAD3B,IAAI,CAAA;;;;6BAEd,GAAG,EAAH,wBAAG;wBACT,qBAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAA;;wBAAxC,SAAwC,CAAC;;;;;;KAEhD;IACL,uBAAC;AAAD,CAAC,AArDD,CAAsC,WAAI,GAqDzC;AArDY,4CAAgB"}
1
+ {"version":3,"file":"ElementStyleNode.js","sourceRoot":"","sources":["../../src/AST/ElementStyleNode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,0CAAuC;AAEvC,+BAA4B;AAE5B,6CAA0C;AAE1C;IAAsC,oCAAI;IAGtC,0BACoB,UAAmC,EACnC,IAAY;QAFhC,YAII,iBAAO,SACV;QAJmB,gBAAU,GAAV,UAAU,CAAyB;QACnC,UAAI,GAAJ,IAAI,CAAQ;QAJtB,kBAAY,GAAY,IAAI,CAAC;;IAOvC,CAAC;IAED,sBAAW,kCAAI;aAAf;YACI,OAAO,IAAI,yBAAW,CAAS,MAAI,IAAI,CAAC,aAAe,CAAC,CAAC;QAC7D,CAAC;;;OAAA;IAES,yCAAc,GAAxB;QACI,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,IAAI,CAAC,UAAU;YACf,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,sBAAI,2CAAa;aAAjB;YACI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBACzB,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAClC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;;;OAAA;IAEK,mCAAQ,GAAd,UAAe,KAAY,EAAE,GAAQ,EAAE,GAAe;QAAf,oBAAA,EAAA,UAAe;;;;;;;6BAE9C,IAAI,CAAC,UAAU,EAAf,wBAAe;wBACR,qBAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAA;;wBAA5D,IAAI,GAAG,SAAqD,CAAC;;;wBAC1D,IAAI,GAAG,EAAE;4BACZ,IAAI,GAAG,IAAI,iBAAO,CAAC,GAAG,CAAC,CAAA;yBAC1B;6BAAM;4BACH,sBAAO;yBACV;;;wBAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;4BACjB,sBAAO,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAI,IAAI,CAAC,aAAe,CAAC,EAAC;wBAEvD,sBAAO,IAAI,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAI,KAAI,CAAC,aAAe,CAAC,EAAvC,CAAuC,CAAC,EAAC;;;;KACrE;IAEK,kCAAO,GAAb,UAAc,KAAY,EAAE,GAAQ,EAAE,GAAe,EAAE,IAAgB;QAAjC,oBAAA,EAAA,UAAe;QAAE,qBAAA,EAAA,WAAgB;;;;;;;6BAC/D,IAAI,CAAC,UAAU,EAAf,yBAAe;wBACf,qBAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAA;;wBAApD,SAAoD,CAAC;wBAC/B,qBAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAA;;wBAArE,IAAI,GAAY,SAAqD;;;;wBAC3D,SAAA,SAAA,IAAI,CAAA;;;;wBAAT,CAAC;wBACR,qBAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAA;;wBAAtC,SAAsC,CAAC;;;;;;;;;;;;;;;;;;6BACrC,GAAG,EAAH,yBAAG;wBACT,qBAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAA;;wBAAxC,SAAwC,CAAC;;;;;;KAEhD;IACL,uBAAC;AAAD,CAAC,AArDD,CAAsC,WAAI,GAqDzC;AArDY,4CAAgB"}
@@ -50,11 +50,38 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
50
50
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
51
  }
52
52
  };
53
+ var __read = (this && this.__read) || function (o, n) {
54
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
55
+ if (!m) return o;
56
+ var i = m.call(o), r, ar = [], e;
57
+ try {
58
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
59
+ }
60
+ catch (error) { e = { error: error }; }
61
+ finally {
62
+ try {
63
+ if (r && !r.done && (m = i["return"])) m.call(i);
64
+ }
65
+ finally { if (e) throw e.error; }
66
+ }
67
+ return ar;
68
+ };
53
69
  var __spreadArray = (this && this.__spreadArray) || function (to, from) {
54
70
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
55
71
  to[j] = from[i];
56
72
  return to;
57
73
  };
74
+ var __values = (this && this.__values) || function(o) {
75
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
76
+ if (m) return m.call(o);
77
+ if (o && typeof o.length === "number") return {
78
+ next: function () {
79
+ if (o && i >= o.length) o = void 0;
80
+ return { value: o && o[i++], done: !o };
81
+ }
82
+ };
83
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
84
+ };
58
85
  Object.defineProperty(exports, "__esModule", { value: true });
59
86
  exports.FunctionArgumentNode = void 0;
60
87
  var Node_1 = require("./Node");
@@ -66,30 +93,45 @@ var FunctionArgumentNode = /** @class */ (function (_super) {
66
93
  return _this;
67
94
  }
68
95
  FunctionArgumentNode.prototype._getChildNodes = function () {
69
- return __spreadArray([], this.args);
96
+ return __spreadArray([], __read(this.args));
70
97
  };
71
98
  FunctionArgumentNode.prototype.evaluate = function (scope, dom, tag) {
72
99
  if (tag === void 0) { tag = null; }
73
100
  return __awaiter(this, void 0, void 0, function () {
74
- var values, _i, _a, arg, _b, _c;
75
- return __generator(this, function (_d) {
76
- switch (_d.label) {
101
+ var values, _a, _b, arg, _c, _d, e_1_1;
102
+ var e_1, _e;
103
+ return __generator(this, function (_f) {
104
+ switch (_f.label) {
77
105
  case 0:
78
106
  values = [];
79
- _i = 0, _a = this.args;
80
- _d.label = 1;
107
+ _f.label = 1;
81
108
  case 1:
82
- if (!(_i < _a.length)) return [3 /*break*/, 4];
83
- arg = _a[_i];
84
- _c = (_b = values).push;
85
- return [4 /*yield*/, arg.evaluate(scope, dom, tag)];
109
+ _f.trys.push([1, 6, 7, 8]);
110
+ _a = __values(this.args), _b = _a.next();
111
+ _f.label = 2;
86
112
  case 2:
87
- _c.apply(_b, [_d.sent()]);
88
- _d.label = 3;
113
+ if (!!_b.done) return [3 /*break*/, 5];
114
+ arg = _b.value;
115
+ _d = (_c = values).push;
116
+ return [4 /*yield*/, arg.evaluate(scope, dom, tag)];
89
117
  case 3:
90
- _i++;
91
- return [3 /*break*/, 1];
92
- case 4: return [2 /*return*/, values];
118
+ _d.apply(_c, [_f.sent()]);
119
+ _f.label = 4;
120
+ case 4:
121
+ _b = _a.next();
122
+ return [3 /*break*/, 2];
123
+ case 5: return [3 /*break*/, 8];
124
+ case 6:
125
+ e_1_1 = _f.sent();
126
+ e_1 = { error: e_1_1 };
127
+ return [3 /*break*/, 8];
128
+ case 7:
129
+ try {
130
+ if (_b && !_b.done && (_e = _a.return)) _e.call(_a);
131
+ }
132
+ finally { if (e_1) throw e_1.error; }
133
+ return [7 /*endfinally*/];
134
+ case 8: return [2 /*return*/, values];
93
135
  }
94
136
  });
95
137
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionArgumentNode.js","sourceRoot":"","sources":["../../src/AST/FunctionArgumentNode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,+BAA4B;AAE5B;IAAmD,wCAAI;IACnD,8BACc,IAAY;QAD1B,YAGI,iBAAO,SACV;QAHa,UAAI,GAAJ,IAAI,CAAQ;;IAG1B,CAAC;IAES,6CAAc,GAAxB;QACI,yBACQ,IAAI,CAAC,IAAe,EAC3B;IACL,CAAC;IAEK,uCAAQ,GAAd,UAAe,KAAY,EAAE,GAAQ,EAAE,GAAe;QAAf,oBAAA,EAAA,UAAe;;;;;;wBAC5C,MAAM,GAAU,EAAE,CAAC;8BACE,EAAT,KAAA,IAAI,CAAC,IAAI;;;6BAAT,CAAA,cAAS,CAAA;wBAAhB,GAAG;wBACV,KAAA,CAAA,KAAA,MAAM,CAAA,CAAC,IAAI,CAAA;wBAAC,qBAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAA;;wBAA/C,cAAY,SAAmC,EAAC,CAAC;;;wBADnC,IAAS,CAAA;;4BAG3B,sBAAO,MAAM,EAAC;;;;KACjB;IACL,2BAAC;AAAD,CAAC,AApBD,CAAmD,WAAI,GAoBtD;AApBY,oDAAoB"}
1
+ {"version":3,"file":"FunctionArgumentNode.js","sourceRoot":"","sources":["../../src/AST/FunctionArgumentNode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,+BAA4B;AAE5B;IAAmD,wCAAI;IACnD,8BACc,IAAY;QAD1B,YAGI,iBAAO,SACV;QAHa,UAAI,GAAJ,IAAI,CAAQ;;IAG1B,CAAC;IAES,6CAAc,GAAxB;QACI,gCACQ,IAAI,CAAC,IAAe,GAC3B;IACL,CAAC;IAEK,uCAAQ,GAAd,UAAe,KAAY,EAAE,GAAQ,EAAE,GAAe;QAAf,oBAAA,EAAA,UAAe;;;;;;;wBAC5C,MAAM,GAAU,EAAE,CAAC;;;;wBACP,KAAA,SAAA,IAAI,CAAC,IAAI,CAAA;;;;wBAAhB,GAAG;wBACV,KAAA,CAAA,KAAA,MAAM,CAAA,CAAC,IAAI,CAAA;wBAAC,qBAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAA;;wBAA/C,cAAY,SAAmC,EAAC,CAAC;;;;;;;;;;;;;;;;4BAErD,sBAAO,MAAM,EAAC;;;;KACjB;IACL,2BAAC;AAAD,CAAC,AApBD,CAAmD,WAAI,GAoBtD;AApBY,oDAAoB"}
@@ -50,6 +50,33 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
50
50
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
51
  }
52
52
  };
53
+ var __values = (this && this.__values) || function(o) {
54
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
55
+ if (m) return m.call(o);
56
+ if (o && typeof o.length === "number") return {
57
+ next: function () {
58
+ if (o && i >= o.length) o = void 0;
59
+ return { value: o && o[i++], done: !o };
60
+ }
61
+ };
62
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
63
+ };
64
+ var __read = (this && this.__read) || function (o, n) {
65
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
66
+ if (!m) return o;
67
+ var i = m.call(o), r, ar = [], e;
68
+ try {
69
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
70
+ }
71
+ catch (error) { e = { error: error }; }
72
+ finally {
73
+ try {
74
+ if (r && !r.done && (m = i["return"])) m.call(i);
75
+ }
76
+ finally { if (e) throw e.error; }
77
+ }
78
+ return ar;
79
+ };
53
80
  var __spreadArray = (this && this.__spreadArray) || function (to, from) {
54
81
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
55
82
  to[j] = from[i];
@@ -81,9 +108,10 @@ var FunctionCallNode = /** @class */ (function (_super) {
81
108
  FunctionCallNode.prototype.evaluate = function (scope, dom, tag) {
82
109
  if (tag === void 0) { tag = null; }
83
110
  return __awaiter(this, void 0, void 0, function () {
84
- var tags, functionScope, functionName, instanceOfScopeMemberNode, _tags, values, func, functionName_1, returnValues, toCleanup, calls, _i, tags_1, _tag, tagNum, _a, _b, className, cls, fnc, _c, _d, _e, toCleanup_1, fnc, r;
85
- return __generator(this, function (_f) {
86
- switch (_f.label) {
111
+ var tags, functionScope, functionName, instanceOfScopeMemberNode, _tags, values, func, functionName_1, returnValues, toCleanup, calls, tags_1, tags_1_1, _tag, tagNum, _a, _b, className, cls, fnc, _c, _d, e_1_1, e_2_1, toCleanup_1, toCleanup_1_1, fnc, e_3_1, r;
112
+ var e_2, _e, e_1, _f, e_3, _g;
113
+ return __generator(this, function (_h) {
114
+ switch (_h.label) {
87
115
  case 0:
88
116
  tags = [];
89
117
  functionScope = scope;
@@ -93,14 +121,14 @@ var FunctionCallNode = /** @class */ (function (_super) {
93
121
  instanceOfScopeMemberNode = true;
94
122
  return [4 /*yield*/, this.fnc.scope.evaluate(scope, dom, tag)];
95
123
  case 1:
96
- functionScope = _f.sent();
124
+ functionScope = _h.sent();
97
125
  return [4 /*yield*/, this.fnc.name.evaluate(scope, dom, tag)];
98
126
  case 2:
99
- functionName = _f.sent();
127
+ functionName = _h.sent();
100
128
  if (!(this.fnc.scope instanceof ElementQueryNode_1.ElementQueryNode)) return [3 /*break*/, 4];
101
129
  return [4 /*yield*/, this.fnc.scope.evaluate(scope, dom, tag)];
102
130
  case 3:
103
- _tags = _f.sent();
131
+ _tags = _h.sent();
104
132
  if (_tags instanceof Array) {
105
133
  tags = _tags;
106
134
  }
@@ -113,64 +141,104 @@ var FunctionCallNode = /** @class */ (function (_super) {
113
141
  return [3 /*break*/, 5];
114
142
  case 4:
115
143
  tags = [tag];
116
- _f.label = 5;
144
+ _h.label = 5;
117
145
  case 5: return [4 /*yield*/, this.args.evaluate(scope, dom, tag)];
118
146
  case 6:
119
- values = _f.sent();
147
+ values = _h.sent();
120
148
  return [4 /*yield*/, this.fnc.evaluate(scope, dom, tag)];
121
149
  case 7:
122
- func = _f.sent();
123
- if (!(!func || func instanceof Array)) return [3 /*break*/, 20];
150
+ func = _h.sent();
151
+ if (!(!func || func instanceof Array)) return [3 /*break*/, 31];
124
152
  return [4 /*yield*/, this.fnc.name.evaluate(scope, dom, tag)];
125
153
  case 8:
126
- functionName_1 = _f.sent();
154
+ functionName_1 = _h.sent();
127
155
  returnValues = [];
128
156
  toCleanup = [];
129
157
  calls = 0;
130
- _i = 0, tags_1 = tags;
131
- _f.label = 9;
158
+ _h.label = 9;
132
159
  case 9:
133
- if (!(_i < tags_1.length)) return [3 /*break*/, 15];
134
- _tag = tags_1[_i];
135
- tagNum = 0;
136
- _a = 0, _b = _tag.element[ClassNode_1.ClassNode.ClassesVariable] || [];
137
- _f.label = 10;
160
+ _h.trys.push([9, 21, 22, 23]);
161
+ tags_1 = __values(tags), tags_1_1 = tags_1.next();
162
+ _h.label = 10;
138
163
  case 10:
139
- if (!(_a < _b.length)) return [3 /*break*/, 14];
140
- className = _b[_a];
164
+ if (!!tags_1_1.done) return [3 /*break*/, 20];
165
+ _tag = tags_1_1.value;
166
+ tagNum = 0;
167
+ _h.label = 11;
168
+ case 11:
169
+ _h.trys.push([11, 17, 18, 19]);
170
+ _a = (e_1 = void 0, __values(_tag.element[ClassNode_1.ClassNode.ClassesVariable] || [])), _b = _a.next();
171
+ _h.label = 12;
172
+ case 12:
173
+ if (!!_b.done) return [3 /*break*/, 16];
174
+ className = _b.value;
141
175
  tagNum++;
142
176
  cls = Registry_1.Registry.instance.classes.getSynchronous(className);
143
- if (!cls) return [3 /*break*/, 13];
144
- if (!cls.classScope.has(functionName_1)) return [3 /*break*/, 13];
177
+ if (!cls) return [3 /*break*/, 15];
178
+ if (!cls.classScope.has(functionName_1)) return [3 /*break*/, 15];
145
179
  fnc = cls.classScope.get(functionName_1);
146
180
  toCleanup.push(fnc);
147
181
  _d = (_c = returnValues).push;
148
182
  return [4 /*yield*/, fnc.evaluate(_tag.scope, dom, _tag)];
149
- case 11: return [4 /*yield*/, (_f.sent()).apply(void 0, values)];
150
- case 12:
151
- _d.apply(_c, [_f.sent()]);
152
- calls++;
153
- _f.label = 13;
154
- case 13:
155
- _a++;
156
- return [3 /*break*/, 10];
183
+ case 13: return [4 /*yield*/, (_h.sent()).apply(void 0, __spreadArray([], __read(values)))];
157
184
  case 14:
158
- _i++;
159
- return [3 /*break*/, 9];
185
+ _d.apply(_c, [_h.sent()]);
186
+ calls++;
187
+ _h.label = 15;
160
188
  case 15:
161
- _e = 0, toCleanup_1 = toCleanup;
162
- _f.label = 16;
163
- case 16:
164
- if (!(_e < toCleanup_1.length)) return [3 /*break*/, 19];
165
- fnc = toCleanup_1[_e];
166
- return [4 /*yield*/, fnc.collectGarbage()];
189
+ _b = _a.next();
190
+ return [3 /*break*/, 12];
191
+ case 16: return [3 /*break*/, 19];
167
192
  case 17:
168
- _f.sent();
169
- _f.label = 18;
193
+ e_1_1 = _h.sent();
194
+ e_1 = { error: e_1_1 };
195
+ return [3 /*break*/, 19];
170
196
  case 18:
171
- _e++;
172
- return [3 /*break*/, 16];
197
+ try {
198
+ if (_b && !_b.done && (_f = _a.return)) _f.call(_a);
199
+ }
200
+ finally { if (e_1) throw e_1.error; }
201
+ return [7 /*endfinally*/];
173
202
  case 19:
203
+ tags_1_1 = tags_1.next();
204
+ return [3 /*break*/, 10];
205
+ case 20: return [3 /*break*/, 23];
206
+ case 21:
207
+ e_2_1 = _h.sent();
208
+ e_2 = { error: e_2_1 };
209
+ return [3 /*break*/, 23];
210
+ case 22:
211
+ try {
212
+ if (tags_1_1 && !tags_1_1.done && (_e = tags_1.return)) _e.call(tags_1);
213
+ }
214
+ finally { if (e_2) throw e_2.error; }
215
+ return [7 /*endfinally*/];
216
+ case 23:
217
+ _h.trys.push([23, 28, 29, 30]);
218
+ toCleanup_1 = __values(toCleanup), toCleanup_1_1 = toCleanup_1.next();
219
+ _h.label = 24;
220
+ case 24:
221
+ if (!!toCleanup_1_1.done) return [3 /*break*/, 27];
222
+ fnc = toCleanup_1_1.value;
223
+ return [4 /*yield*/, fnc.collectGarbage()];
224
+ case 25:
225
+ _h.sent();
226
+ _h.label = 26;
227
+ case 26:
228
+ toCleanup_1_1 = toCleanup_1.next();
229
+ return [3 /*break*/, 24];
230
+ case 27: return [3 /*break*/, 30];
231
+ case 28:
232
+ e_3_1 = _h.sent();
233
+ e_3 = { error: e_3_1 };
234
+ return [3 /*break*/, 30];
235
+ case 29:
236
+ try {
237
+ if (toCleanup_1_1 && !toCleanup_1_1.done && (_g = toCleanup_1.return)) _g.call(toCleanup_1);
238
+ }
239
+ finally { if (e_3) throw e_3.error; }
240
+ return [7 /*endfinally*/];
241
+ case 30:
174
242
  if (calls === 1) {
175
243
  return [2 /*return*/, returnValues[0]];
176
244
  }
@@ -180,19 +248,19 @@ var FunctionCallNode = /** @class */ (function (_super) {
180
248
  else {
181
249
  return [2 /*return*/, returnValues];
182
250
  }
183
- return [3 /*break*/, 25];
184
- case 20:
185
- if (!(func instanceof FunctionNode_1.FunctionNode)) return [3 /*break*/, 24];
251
+ return [3 /*break*/, 36];
252
+ case 31:
253
+ if (!(func instanceof FunctionNode_1.FunctionNode)) return [3 /*break*/, 35];
186
254
  return [4 /*yield*/, func.evaluate(functionScope, dom, tag)];
187
- case 21: return [4 /*yield*/, (_f.sent()).apply(void 0, values)];
188
- case 22:
189
- r = _f.sent();
255
+ case 32: return [4 /*yield*/, (_h.sent()).apply(void 0, __spreadArray([], __read(values)))];
256
+ case 33:
257
+ r = _h.sent();
190
258
  return [4 /*yield*/, func.collectGarbage()];
191
- case 23:
192
- _f.sent();
259
+ case 34:
260
+ _h.sent();
193
261
  return [2 /*return*/, r];
194
- case 24: return [2 /*return*/, func.call.apply(func, __spreadArray([functionScope.wrapped || functionScope], values))];
195
- case 25: return [2 /*return*/];
262
+ case 35: return [2 /*return*/, func.call.apply(func, __spreadArray([functionScope.wrapped || functionScope], __read(values)))];
263
+ case 36: return [2 /*return*/];
196
264
  }
197
265
  });
198
266
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionCallNode.js","sourceRoot":"","sources":["../../src/AST/FunctionCallNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FunctionCallNode.js","sourceRoot":"","sources":["../../src/AST/FunctionCallNode.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,17 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
50
50
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
51
  }
52
52
  };
53
+ var __values = (this && this.__values) || function(o) {
54
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
55
+ if (m) return m.call(o);
56
+ if (o && typeof o.length === "number") return {
57
+ next: function () {
58
+ if (o && i >= o.length) o = void 0;
59
+ return { value: o && o[i++], done: !o };
60
+ }
61
+ };
62
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
63
+ };
53
64
  Object.defineProperty(exports, "__esModule", { value: true });
54
65
  exports.FunctionNode = void 0;
55
66
  var Scope_1 = require("../Scope");
@@ -100,11 +111,21 @@ var FunctionNode = /** @class */ (function (_super) {
100
111
  };
101
112
  FunctionNode.prototype.collectGarbage = function () {
102
113
  return __awaiter(this, void 0, void 0, function () {
103
- var _i, _a, f;
104
- return __generator(this, function (_b) {
105
- for (_i = 0, _a = this.garbage; _i < _a.length; _i++) {
106
- f = _a[_i];
107
- f.collectGarbage();
114
+ var _a, _b, f;
115
+ var e_1, _c;
116
+ return __generator(this, function (_d) {
117
+ try {
118
+ for (_a = __values(this.garbage), _b = _a.next(); !_b.done; _b = _a.next()) {
119
+ f = _b.value;
120
+ f.collectGarbage();
121
+ }
122
+ }
123
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
124
+ finally {
125
+ try {
126
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
127
+ }
128
+ finally { if (e_1) throw e_1.error; }
108
129
  }
109
130
  this.garbage = [];
110
131
  return [2 /*return*/];
@@ -126,8 +147,9 @@ var FunctionNode = /** @class */ (function (_super) {
126
147
  }
127
148
  return __awaiter(_this, void 0, void 0, function () {
128
149
  var functionScope, _a, _b, arg;
129
- return __generator(this, function (_c) {
130
- switch (_c.label) {
150
+ var e_2, _c;
151
+ return __generator(this, function (_d) {
152
+ switch (_d.label) {
131
153
  case 0:
132
154
  if (createFunctionScope && !(scope instanceof Scope_1.FunctionScope)) {
133
155
  functionScope = new Scope_1.FunctionScope(scope);
@@ -136,12 +158,21 @@ var FunctionNode = /** @class */ (function (_super) {
136
158
  else {
137
159
  functionScope = scope;
138
160
  }
139
- for (_a = 0, _b = this.args; _a < _b.length; _a++) {
140
- arg = _b[_a];
141
- functionScope.set(arg, args.shift());
161
+ try {
162
+ for (_a = __values(this.args), _b = _a.next(); !_b.done; _b = _a.next()) {
163
+ arg = _b.value;
164
+ functionScope.set(arg, args.shift());
165
+ }
166
+ }
167
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
168
+ finally {
169
+ try {
170
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
171
+ }
172
+ finally { if (e_2) throw e_2.error; }
142
173
  }
143
174
  return [4 /*yield*/, this.block.evaluate(functionScope, dom, tag)];
144
- case 1: return [2 /*return*/, _c.sent()];
175
+ case 1: return [2 /*return*/, _d.sent()];
145
176
  }
146
177
  });
147
178
  });
@@ -150,16 +181,28 @@ var FunctionNode = /** @class */ (function (_super) {
150
181
  });
151
182
  };
152
183
  FunctionNode.parse = function (lastNode, token, tokens, cls) {
184
+ var e_3, _a;
153
185
  if (cls === void 0) { cls = FunctionNode; }
154
186
  tokens.shift(); // skip 'func'
155
187
  var name = tokens.shift();
188
+ var modifiers = this.moveModifiers(tokens);
156
189
  var argTokens = AST_1.Tree.getBlockTokens(tokens);
157
190
  var funcArgs = [];
158
- for (var _i = 0, argTokens_1 = argTokens; _i < argTokens_1.length; _i++) {
159
- var t = argTokens_1[_i];
160
- funcArgs.push(t[0].value);
191
+ try {
192
+ for (var argTokens_1 = __values(argTokens), argTokens_1_1 = argTokens_1.next(); !argTokens_1_1.done; argTokens_1_1 = argTokens_1.next()) {
193
+ var t = argTokens_1_1.value;
194
+ funcArgs.push(t[0].value);
195
+ }
196
+ }
197
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
198
+ finally {
199
+ try {
200
+ if (argTokens_1_1 && !argTokens_1_1.done && (_a = argTokens_1.return)) _a.call(argTokens_1);
201
+ }
202
+ finally { if (e_3) throw e_3.error; }
161
203
  }
162
204
  var block = AST_1.Tree.processTokens(AST_1.Tree.getNextStatementTokens(tokens, true, true));
205
+ this.moveModifiers(modifiers, tokens);
163
206
  return new cls(name.value, funcArgs, block);
164
207
  };
165
208
  return FunctionNode;
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionNode.js","sourceRoot":"","sources":["../../src/AST/FunctionNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FunctionNode.js","sourceRoot":"","sources":["../../src/AST/FunctionNode.ts"],"names":[],"mappings":"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"}