vsn 0.1.120 → 0.1.121

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.
@@ -79,7 +79,9 @@ var ModifierNode = /** @class */ (function (_super) {
79
79
  };
80
80
  ModifierNode.parse = function (lastNode, token, tokens) {
81
81
  var modifier = tokens.shift().value.substr(1);
82
- lastNode.modifiers.push(modifier);
82
+ if (lastNode) {
83
+ lastNode.modifiers.push(modifier);
84
+ }
83
85
  return lastNode;
84
86
  };
85
87
  return ModifierNode;
@@ -1 +1 @@
1
- {"version":3,"file":"ModifierNode.js","sourceRoot":"","sources":["../../src/AST/ModifierNode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,+BAA4B;AAI5B;IAAkC,gCAAI;IAClC,sBACoB,IAAY,EACZ,KAAgB;QAFpC,YAII,iBAAO,SACV;QAJmB,UAAI,GAAJ,IAAI,CAAQ;QACZ,WAAK,GAAL,KAAK,CAAW;;IAGpC,CAAC;IAEY,8BAAO,GAApB,UAAqB,KAAY,EAAE,GAAQ,EAAE,GAAe,EAAE,IAAU;QAA3B,oBAAA,EAAA,UAAe;;;gBACxD,sBAAO,IAAI,EAAC;;;KACf;IAEY,+BAAQ,GAArB,UAAsB,KAAY,EAAE,GAAQ,EAAE,GAAe;QAAf,oBAAA,EAAA,UAAe;;;gBACzD,sBAAO,IAAI,EAAC;;;KACf;IAEa,kBAAK,GAAnB,UAAoB,QAAQ,EAAE,KAAK,EAAE,MAAe;QAChD,IAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAChD,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClC,OAAO,QAAQ,CAAC;IACpB,CAAC;IACL,mBAAC;AAAD,CAAC,AArBD,CAAkC,WAAI,GAqBrC;AArBY,oCAAY"}
1
+ {"version":3,"file":"ModifierNode.js","sourceRoot":"","sources":["../../src/AST/ModifierNode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,+BAA4B;AAI5B;IAAkC,gCAAI;IAClC,sBACoB,IAAY,EACZ,KAAgB;QAFpC,YAII,iBAAO,SACV;QAJmB,UAAI,GAAJ,IAAI,CAAQ;QACZ,WAAK,GAAL,KAAK,CAAW;;IAGpC,CAAC;IAEY,8BAAO,GAApB,UAAqB,KAAY,EAAE,GAAQ,EAAE,GAAe,EAAE,IAAU;QAA3B,oBAAA,EAAA,UAAe;;;gBACxD,sBAAO,IAAI,EAAC;;;KACf;IAEY,+BAAQ,GAArB,UAAsB,KAAY,EAAE,GAAQ,EAAE,GAAe;QAAf,oBAAA,EAAA,UAAe;;;gBACzD,sBAAO,IAAI,EAAC;;;KACf;IAEa,kBAAK,GAAnB,UAAoB,QAAQ,EAAE,KAAK,EAAE,MAAe;QAChD,IAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,QAAQ,EAAE;YACV,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACrC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;IACL,mBAAC;AAAD,CAAC,AAvBD,CAAkC,WAAI,GAuBrC;AAvBY,oCAAY"}
@@ -1,7 +1,7 @@
1
1
  import { Scope } from "../Scope";
2
2
  import { DOM } from "../DOM";
3
3
  import { Tag } from "../Tag";
4
- import { TreeNode } from "../AST";
4
+ import { Token, TreeNode } from "../AST";
5
5
  export interface INodeMeta {
6
6
  [key: string]: string | number | boolean | null;
7
7
  }
@@ -21,4 +21,6 @@ export declare abstract class Node implements TreeNode {
21
21
  getChildNodes(): Node[];
22
22
  findChildrenByType<T = Node>(t: any): T[];
23
23
  findChildrenByTypes<T = Node>(types: any[], cacheKey?: string): T[];
24
+ hasModifier(modifier: string): boolean;
25
+ static moveModifiers(from: Token[], to: Token[]): void;
24
26
  }
package/dist/AST/Node.js CHANGED
@@ -37,6 +37,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.Node = void 0;
40
+ var AST_1 = require("../AST");
40
41
  var Node = /** @class */ (function () {
41
42
  function Node() {
42
43
  this.requiresPrep = false;
@@ -136,6 +137,14 @@ var Node = /** @class */ (function () {
136
137
  this.nodeCache[cacheKey] = nodes;
137
138
  return nodes;
138
139
  };
140
+ Node.prototype.hasModifier = function (modifier) {
141
+ return this.modifiers.indexOf(modifier) !== -1;
142
+ };
143
+ Node.moveModifiers = function (from, to) {
144
+ while (from[0].type == AST_1.TokenType.MODIFIER) {
145
+ to.unshift(from.shift());
146
+ }
147
+ };
139
148
  return Node;
140
149
  }());
141
150
  exports.Node = Node;
@@ -1 +1 @@
1
- {"version":3,"file":"Node.js","sourceRoot":"","sources":["../../src/AST/Node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Node.js","sourceRoot":"","sources":["../../src/AST/Node.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import { BlockNode } from "./BlockNode";
7
7
  export declare class WithNode extends Node implements TreeNode {
8
8
  readonly context: Node;
9
9
  readonly statements: BlockNode;
10
+ protected requiresPrep: boolean;
10
11
  constructor(context: Node, statements: BlockNode);
11
12
  protected _getChildNodes(): Node[];
12
13
  evaluate(scope: Scope, dom: DOM, tag?: Tag): Promise<any>;
@@ -52,6 +52,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
52
52
  };
53
53
  Object.defineProperty(exports, "__esModule", { value: true });
54
54
  exports.WithNode = void 0;
55
+ var Scope_1 = require("../Scope");
55
56
  var Tag_1 = require("../Tag");
56
57
  var AST_1 = require("../AST");
57
58
  var Node_1 = require("./Node");
@@ -62,6 +63,7 @@ var WithNode = /** @class */ (function (_super) {
62
63
  var _this = _super.call(this) || this;
63
64
  _this.context = context;
64
65
  _this.statements = statements;
66
+ _this.requiresPrep = true;
65
67
  return _this;
66
68
  }
67
69
  WithNode.prototype._getChildNodes = function () {
@@ -73,12 +75,13 @@ var WithNode = /** @class */ (function (_super) {
73
75
  WithNode.prototype.evaluate = function (scope, dom, tag) {
74
76
  if (tag === void 0) { tag = null; }
75
77
  return __awaiter(this, void 0, void 0, function () {
76
- var context, tags, ret, _i, tags_1, _tag, _a, _b;
77
- return __generator(this, function (_c) {
78
- switch (_c.label) {
78
+ var context, tags, ret, _i, tags_1, _tag, _a, _b, promises, _c, tags_2, _tag, _scope, _d, _e;
79
+ return __generator(this, function (_f) {
80
+ switch (_f.label) {
79
81
  case 0: return [4 /*yield*/, this.context.evaluate(scope, dom, tag)];
80
82
  case 1:
81
- context = _c.sent();
83
+ context = _f.sent();
84
+ tags = [];
82
85
  if (context instanceof TagList_1.TagList) {
83
86
  tags = context;
84
87
  }
@@ -86,20 +89,57 @@ var WithNode = /** @class */ (function (_super) {
86
89
  tags = [context];
87
90
  }
88
91
  ret = [];
92
+ if (!tags.length) return [3 /*break*/, 14];
93
+ if (!this.hasModifier('sequential')) return [3 /*break*/, 7];
89
94
  _i = 0, tags_1 = tags;
90
- _c.label = 2;
95
+ _f.label = 2;
91
96
  case 2:
92
- if (!(_i < tags_1.length)) return [3 /*break*/, 5];
97
+ if (!(_i < tags_1.length)) return [3 /*break*/, 6];
93
98
  _tag = tags_1[_i];
99
+ return [4 /*yield*/, this.statements.prepare(_tag.scope, dom, _tag)];
100
+ case 3:
101
+ _f.sent();
94
102
  _b = (_a = ret).push;
95
103
  return [4 /*yield*/, this.statements.evaluate(_tag.scope, dom, _tag)];
96
- case 3:
97
- _b.apply(_a, [_c.sent()]);
98
- _c.label = 4;
99
104
  case 4:
105
+ _b.apply(_a, [_f.sent()]);
106
+ _f.label = 5;
107
+ case 5:
100
108
  _i++;
101
109
  return [3 /*break*/, 2];
102
- case 5: return [2 /*return*/, ret.length === 1 ? ret[0] : ret];
110
+ case 6: return [3 /*break*/, 13];
111
+ case 7:
112
+ promises = [];
113
+ _c = 0, tags_2 = tags;
114
+ _f.label = 8;
115
+ case 8:
116
+ if (!(_c < tags_2.length)) return [3 /*break*/, 11];
117
+ _tag = tags_2[_c];
118
+ return [4 /*yield*/, this.statements.prepare(_tag.scope, dom, _tag)];
119
+ case 9:
120
+ _f.sent();
121
+ promises.push(this.statements.evaluate(_tag.scope, dom, _tag));
122
+ _f.label = 10;
123
+ case 10:
124
+ _c++;
125
+ return [3 /*break*/, 8];
126
+ case 11: return [4 /*yield*/, Promise.all(promises)];
127
+ case 12:
128
+ ret = _f.sent();
129
+ _f.label = 13;
130
+ case 13: return [3 /*break*/, 16];
131
+ case 14:
132
+ _scope = void 0;
133
+ if (context instanceof Scope_1.Scope) {
134
+ _scope = context;
135
+ }
136
+ if (!_scope) return [3 /*break*/, 16];
137
+ _e = (_d = ret).push;
138
+ return [4 /*yield*/, this.statements.evaluate(_scope, dom, tag)];
139
+ case 15:
140
+ _e.apply(_d, [_f.sent()]);
141
+ _f.label = 16;
142
+ case 16: return [2 /*return*/, ret.length === 1 ? ret[0] : ret];
103
143
  }
104
144
  });
105
145
  });
@@ -108,6 +148,7 @@ var WithNode = /** @class */ (function (_super) {
108
148
  tokens.shift(); // Consume with
109
149
  var contextTokens = AST_1.Tree.getTokensUntil(tokens, AST_1.TokenType.L_BRACE, false, false, true);
110
150
  var statementTokens = AST_1.Tree.getNextStatementTokens(tokens);
151
+ this.moveModifiers(contextTokens, tokens);
111
152
  return new WithNode(AST_1.Tree.processTokens(contextTokens), AST_1.Tree.processTokens(statementTokens));
112
153
  };
113
154
  return WithNode;
@@ -1 +1 @@
1
- {"version":3,"file":"WithNode.js","sourceRoot":"","sources":["../../src/AST/WithNode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,8BAA2B;AAC3B,8BAAmE;AACnE,+BAA4B;AAE5B,0CAAuC;AAEvC;IAA8B,4BAAI;IAC9B,kBACoB,OAAa,EACb,UAAqB;QAFzC,YAII,iBAAO,SACV;QAJmB,aAAO,GAAP,OAAO,CAAM;QACb,gBAAU,GAAV,UAAU,CAAW;;IAGzC,CAAC;IAES,iCAAc,GAAxB;QACI,OAAO;YACH,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,UAAU;SAClB,CAAA;IACL,CAAC;IAEY,2BAAQ,GAArB,UAAsB,KAAY,EAAE,GAAQ,EAAE,GAAe;QAAf,oBAAA,EAAA,UAAe;;;;;4BACzC,qBAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAA;;wBAAtD,OAAO,GAAG,SAA4C;wBAE5D,IAAI,OAAO,YAAY,iBAAO,EAAE;4BAC5B,IAAI,GAAG,OAAO,CAAC;yBAClB;6BAAM,IAAI,OAAO,YAAY,SAAG,EAAE;4BAC/B,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;yBACpB;wBACG,GAAG,GAAG,EAAE,CAAC;8BACU,EAAJ,aAAI;;;6BAAJ,CAAA,kBAAI,CAAA;wBAAZ,IAAI;wBACX,KAAA,CAAA,KAAA,GAAG,CAAA,CAAC,IAAI,CAAA;wBAAC,qBAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAA;;wBAA9D,cAAS,SAAqD,EAAC,CAAA;;;wBADhD,IAAI,CAAA;;4BAGvB,sBAAO,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAC;;;;KAC1C;IAEa,cAAK,GAAnB,UAAoB,QAAQ,EAAE,KAAK,EAAE,MAAe;QAChD,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,eAAe;QAC/B,IAAM,aAAa,GAAG,UAAI,CAAC,cAAc,CAAC,MAAM,EAAE,eAAS,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACzF,IAAM,eAAe,GAAG,UAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC5D,OAAO,IAAI,QAAQ,CAAC,UAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,UAAI,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC;IAChG,CAAC;IACL,eAAC;AAAD,CAAC,AApCD,CAA8B,WAAI,GAoCjC;AApCY,4BAAQ"}
1
+ {"version":3,"file":"WithNode.js","sourceRoot":"","sources":["../../src/AST/WithNode.ts"],"names":[],"mappings":"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"}
package/dist/AST.d.ts CHANGED
@@ -113,7 +113,7 @@ export declare class Tree {
113
113
  bindToScopeChanges(scope: any, fnc: any, dom: DOM, tag?: Tag): Promise<void>;
114
114
  static tokenize(code: string): Token[];
115
115
  static stripWhiteSpace(tokens: Token[]): Token[];
116
- static processTokens(tokens: Token[]): BlockNode;
116
+ static processTokens(tokens: Token[], _node?: Node, _lastBlock?: Node): BlockNode;
117
117
  static toCode(tokens: Token[], limit?: any): string;
118
118
  static getBlockInfo(tokens: Token[]): IBlockInfo;
119
119
  static getNextStatementTokens(tokens: Token[], consumeClosingToken?: boolean, consumeOpeningToken?: boolean, includeClosingToken?: boolean): Token[];
package/dist/AST.js CHANGED
@@ -223,7 +223,7 @@ var TOKEN_PATTERNS = [
223
223
  },
224
224
  {
225
225
  type: TokenType.WITH,
226
- pattern: /^with\s/
226
+ pattern: /^with(?=\||\s)?/ // Allows with|sequential
227
227
  },
228
228
  {
229
229
  type: TokenType.FOR,
@@ -533,9 +533,12 @@ var Tree = /** @class */ (function () {
533
533
  }
534
534
  return tokens;
535
535
  };
536
- Tree.processTokens = function (tokens) {
536
+ Tree.processTokens = function (tokens, _node, _lastBlock) {
537
+ if (_node === void 0) { _node = null; }
538
+ if (_lastBlock === void 0) { _lastBlock = null; }
537
539
  var blockNodes = [];
538
- var node = null;
540
+ var lastBlock = _lastBlock;
541
+ var node = _node;
539
542
  var count = 0;
540
543
  Tree.stripWhiteSpace(tokens);
541
544
  while (tokens.length > 0) {
@@ -557,32 +560,40 @@ var Tree = /** @class */ (function () {
557
560
  }
558
561
  else if (token.type === TokenType.WITH) {
559
562
  node = WithNode_1.WithNode.parse(node, tokens[0], tokens);
563
+ lastBlock = node;
564
+ blockNodes.push(node);
565
+ node = null;
560
566
  }
561
567
  else if (token.type === TokenType.AS) {
562
568
  node = AsNode_1.AsNode.parse(node, tokens[0], tokens);
563
569
  }
564
570
  else if (token.type === TokenType.IF) {
565
571
  node = IfStatementNode_1.IfStatementNode.parse(node, token, tokens);
572
+ lastBlock = node;
566
573
  blockNodes.push(node);
567
574
  node = null;
568
575
  }
569
576
  else if (token.type === TokenType.FOR) {
570
577
  node = ForStatementNode_1.ForStatementNode.parse(node, token, tokens);
578
+ lastBlock = node;
571
579
  blockNodes.push(node);
572
580
  node = null;
573
581
  }
574
582
  else if (token.type === TokenType.FUNC) {
575
583
  node = FunctionNode_1.FunctionNode.parse(node, token, tokens);
584
+ lastBlock = node;
576
585
  blockNodes.push(node);
577
586
  node = null;
578
587
  }
579
588
  else if (token.type === TokenType.ON) {
580
589
  node = OnNode_1.OnNode.parse(node, token, tokens);
590
+ lastBlock = node;
581
591
  blockNodes.push(node);
582
592
  node = null;
583
593
  }
584
594
  else if (token.type === TokenType.CLASS) {
585
595
  node = ClassNode_1.ClassNode.parse(node, token, tokens);
596
+ lastBlock = node;
586
597
  blockNodes.push(node);
587
598
  node = null;
588
599
  }
@@ -680,7 +691,7 @@ var Tree = /** @class */ (function () {
680
691
  node = NotNode_1.NotNode.parse(node, tokens[0], tokens);
681
692
  }
682
693
  else if (tokens[0].type === TokenType.MODIFIER) {
683
- node = ModifierNode_1.ModifierNode.parse(node, tokens[0], tokens);
694
+ ModifierNode_1.ModifierNode.parse(node ? node : lastBlock, tokens[0], tokens);
684
695
  }
685
696
  else {
686
697
  var code = Tree.toCode(tokens, 10);
package/dist/AST.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"AST.js","sourceRoot":"","sources":["../src/AST.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AST.js","sourceRoot":"","sources":["../src/AST.ts"],"names":[],"mappings":"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"}
package/dist/Scope.js CHANGED
@@ -27,6 +27,7 @@ var QueryReference_1 = require("./Scope/QueryReference");
27
27
  var WrappedArray_1 = require("./Scope/WrappedArray");
28
28
  var ScopeData_1 = require("./Scope/ScopeData");
29
29
  var DynamicScopeData_1 = require("./Scope/DynamicScopeData");
30
+ var DOM_1 = require("./DOM");
30
31
  var Scope = /** @class */ (function (_super) {
31
32
  __extends(Scope, _super);
32
33
  function Scope(parent) {
@@ -47,7 +48,10 @@ var Scope = /** @class */ (function (_super) {
47
48
  });
48
49
  Object.defineProperty(Scope.prototype, "parentScope", {
49
50
  get: function () {
50
- return this._parentScope;
51
+ if (this._parentScope)
52
+ return this._parentScope;
53
+ var rootScope = DOM_1.DOM.instance.root.scope;
54
+ return this == rootScope ? null : rootScope;
51
55
  },
52
56
  set: function (scope) {
53
57
  if (this._parentScope && this._parentScope !== scope)
package/dist/Scope.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Scope.js","sourceRoot":"","sources":["../src/Scope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Scope.js","sourceRoot":"","sources":["../src/Scope.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const VERSION = "0.1.120";
1
+ export declare const VERSION = "0.1.121";
package/dist/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '0.1.120';
4
+ exports.VERSION = '0.1.121';
5
5
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vsn",
3
- "version": "0.1.120",
3
+ "version": "0.1.121",
4
4
  "description": "SEO Friendly Javascript/Typescript Framework",
5
5
  "keywords": [
6
6
  "framework",
@@ -24,7 +24,9 @@ export class ModifierNode extends Node implements TreeNode {
24
24
 
25
25
  public static parse(lastNode, token, tokens: Token[]): Node {
26
26
  const modifier = tokens.shift().value.substr(1);
27
- lastNode.modifiers.push(modifier);
27
+ if (lastNode) {
28
+ lastNode.modifiers.push(modifier);
29
+ }
28
30
  return lastNode;
29
31
  }
30
32
  }
package/src/AST/Node.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import {Scope} from "../Scope";
2
2
  import {DOM} from "../DOM";
3
3
  import {Tag} from "../Tag";
4
- import {TreeNode} from "../AST";
4
+ import {Token, TokenType, TreeNode} from "../AST";
5
5
 
6
6
  export interface INodeMeta {
7
7
  [key: string]: string | number | boolean | null;
@@ -78,5 +78,15 @@ export abstract class Node implements TreeNode {
78
78
 
79
79
  return nodes;
80
80
  }
81
+
82
+ hasModifier(modifier: string): boolean {
83
+ return this.modifiers.indexOf(modifier) !== -1;
84
+ }
85
+
86
+ public static moveModifiers(from: Token[], to: Token[]) {
87
+ while (from[0].type == TokenType.MODIFIER) {
88
+ to.unshift(from.shift());
89
+ }
90
+ }
81
91
  }
82
92
 
@@ -1,12 +1,14 @@
1
1
  import {Scope} from "../Scope";
2
2
  import {DOM} from "../DOM";
3
3
  import {Tag} from "../Tag";
4
- import {BlockType, Token, TokenType, Tree, TreeNode} from "../AST";
4
+ import {Token, TokenType, Tree, TreeNode} from "../AST";
5
5
  import {Node} from "./Node";
6
6
  import {BlockNode} from "./BlockNode";
7
7
  import {TagList} from "../Tag/TagList";
8
8
 
9
9
  export class WithNode extends Node implements TreeNode {
10
+ protected requiresPrep: boolean = true;
11
+
10
12
  constructor(
11
13
  public readonly context: Node,
12
14
  public readonly statements: BlockNode
@@ -23,15 +25,35 @@ export class WithNode extends Node implements TreeNode {
23
25
 
24
26
  public async evaluate(scope: Scope, dom: DOM, tag: Tag = null) {
25
27
  const context = await this.context.evaluate(scope, dom, tag);
26
- let tags;
28
+ let tags = [];
27
29
  if (context instanceof TagList) {
28
30
  tags = context;
29
31
  } else if (context instanceof Tag) {
30
32
  tags = [context];
31
33
  }
32
34
  let ret = [];
33
- for (const _tag of tags) {
34
- ret.push(await this.statements.evaluate(_tag.scope, dom, _tag))
35
+ if (tags.length) {
36
+ if (this.hasModifier('sequential')) { // More like a for loop, needed?
37
+ for (const _tag of tags) {
38
+ await this.statements.prepare(_tag.scope, dom, _tag);
39
+ ret.push(await this.statements.evaluate(_tag.scope, dom, _tag));
40
+ }
41
+ } else {
42
+ const promises = [];
43
+ for (const _tag of tags) {
44
+ await this.statements.prepare(_tag.scope, dom, _tag);
45
+ promises.push(this.statements.evaluate(_tag.scope, dom, _tag));
46
+ }
47
+ ret = await Promise.all(promises);
48
+ }
49
+ } else {
50
+ let _scope;
51
+ if (context instanceof Scope) {
52
+ _scope = context;
53
+ }
54
+
55
+ if (_scope)
56
+ ret.push(await this.statements.evaluate(_scope, dom, tag))
35
57
  }
36
58
  return ret.length === 1 ? ret[0] : ret;
37
59
  }
@@ -40,6 +62,7 @@ export class WithNode extends Node implements TreeNode {
40
62
  tokens.shift(); // Consume with
41
63
  const contextTokens = Tree.getTokensUntil(tokens, TokenType.L_BRACE, false, false, true);
42
64
  const statementTokens = Tree.getNextStatementTokens(tokens);
65
+ this.moveModifiers(contextTokens, tokens);
43
66
  return new WithNode(Tree.processTokens(contextTokens), Tree.processTokens(statementTokens));
44
67
  }
45
68
  }