vsn 0.1.145 → 0.1.146

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.
@@ -9,5 +9,6 @@ export declare class FunctionCallNode<T = any> extends Node implements TreeNode
9
9
  readonly args: FunctionArgumentNode<any[]>;
10
10
  constructor(fnc: TreeNode<(...args: any[]) => any>, args: FunctionArgumentNode<any[]>);
11
11
  protected _getChildNodes(): Node[];
12
+ protected callFunction(func: any, functionScope: any, dom: any, tag: any, ...values: any[]): Promise<[any, boolean]>;
12
13
  protected _evaluate(scope: Scope, dom: DOM, tag?: Tag): Promise<any>;
13
14
  }
@@ -50,17 +50,6 @@ 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
53
  var __read = (this && this.__read) || function (o, n) {
65
54
  var m = typeof Symbol === "function" && o[Symbol.iterator];
66
55
  if (!m) return o;
@@ -82,6 +71,17 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from) {
82
71
  to[j] = from[i];
83
72
  return to;
84
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
+ };
85
85
  Object.defineProperty(exports, "__esModule", { value: true });
86
86
  exports.FunctionCallNode = void 0;
87
87
  var Tag_1 = require("../Tag");
@@ -103,13 +103,42 @@ var FunctionCallNode = /** @class */ (function (_super) {
103
103
  this.args
104
104
  ];
105
105
  };
106
+ FunctionCallNode.prototype.callFunction = function (func, functionScope, dom, tag) {
107
+ var values = [];
108
+ for (var _i = 4; _i < arguments.length; _i++) {
109
+ values[_i - 4] = arguments[_i];
110
+ }
111
+ return __awaiter(this, void 0, void 0, function () {
112
+ var r;
113
+ return __generator(this, function (_a) {
114
+ switch (_a.label) {
115
+ case 0:
116
+ if (!(func instanceof FunctionNode_1.FunctionNode)) return [3 /*break*/, 4];
117
+ return [4 /*yield*/, func.evaluate(functionScope, dom, tag)];
118
+ case 1: return [4 /*yield*/, (_a.sent()).apply(void 0, __spreadArray([], __read(values)))];
119
+ case 2:
120
+ r = _a.sent();
121
+ return [4 /*yield*/, func.collectGarbage()];
122
+ case 3:
123
+ _a.sent();
124
+ return [2 /*return*/, [r, true]];
125
+ case 4:
126
+ if (typeof func === 'function') {
127
+ return [2 /*return*/, [func.call.apply(func, __spreadArray([functionScope.wrapped || functionScope], __read(values))), true]];
128
+ }
129
+ _a.label = 5;
130
+ case 5: return [2 /*return*/, [null, false]];
131
+ }
132
+ });
133
+ });
134
+ };
106
135
  FunctionCallNode.prototype._evaluate = function (scope, dom, tag) {
107
136
  if (tag === void 0) { tag = null; }
108
137
  return __awaiter(this, void 0, void 0, function () {
109
- var tags, functionScope, _tags, values, func, functionName, returnValues, tags_1, tags_1_1, _tag, _a, _b, e_1_1, calls, r;
110
- var e_1, _c;
111
- return __generator(this, function (_d) {
112
- switch (_d.label) {
138
+ var tags, functionScope, _tags, values, functionName, returnValues, calls, func, _functionScope, tags_1, tags_1_1, _tag, _a, result, success, e_1_1;
139
+ var e_1, _b;
140
+ return __generator(this, function (_c) {
141
+ switch (_c.label) {
113
142
  case 0:
114
143
  tags = [];
115
144
  functionScope = scope;
@@ -117,7 +146,7 @@ var FunctionCallNode = /** @class */ (function (_super) {
117
146
  if (!(this.fnc.scope instanceof ElementQueryNode_1.ElementQueryNode)) return [3 /*break*/, 2];
118
147
  return [4 /*yield*/, this.fnc.scope.evaluate(scope, dom, tag)];
119
148
  case 1:
120
- _tags = _d.sent();
149
+ _tags = _c.sent();
121
150
  if (_tags instanceof Array) {
122
151
  tags = _tags;
123
152
  }
@@ -129,69 +158,69 @@ var FunctionCallNode = /** @class */ (function (_super) {
129
158
  throw new Error('Invalid element query result');
130
159
  }
131
160
  return [3 /*break*/, 4];
132
- case 2:
133
- tags = [tag];
134
- return [4 /*yield*/, this.fnc.scope.evaluate(scope, dom, tag)];
161
+ case 2: return [4 /*yield*/, this.fnc.scope.evaluate(scope, dom, tag)];
135
162
  case 3:
136
- functionScope = _d.sent();
137
- _d.label = 4;
138
- case 4: return [4 /*yield*/, this.args.evaluate(scope, dom, tag)];
163
+ functionScope = _c.sent();
164
+ _c.label = 4;
165
+ case 4:
166
+ if (tags.length === 0)
167
+ tags.push(tag);
168
+ return [4 /*yield*/, this.args.evaluate(scope, dom, tag)];
139
169
  case 5:
140
- values = _d.sent();
141
- return [4 /*yield*/, this.fnc.evaluate(scope, dom, tag)];
142
- case 6:
143
- func = _d.sent();
144
- if (!(!func || func instanceof Array)) return [3 /*break*/, 21];
170
+ values = _c.sent();
145
171
  return [4 /*yield*/, this.fnc.name.evaluate(scope, dom, tag)];
146
- case 7:
147
- functionName = _d.sent();
172
+ case 6:
173
+ functionName = _c.sent();
148
174
  returnValues = [];
149
- _d.label = 8;
150
- case 8:
151
- _d.trys.push([8, 18, 19, 20]);
175
+ calls = 0;
176
+ _functionScope = functionScope;
177
+ _c.label = 7;
178
+ case 7:
179
+ _c.trys.push([7, 15, 16, 17]);
152
180
  tags_1 = __values(tags), tags_1_1 = tags_1.next();
153
- _d.label = 9;
154
- case 9:
155
- if (!!tags_1_1.done) return [3 /*break*/, 17];
181
+ _c.label = 8;
182
+ case 8:
183
+ if (!!tags_1_1.done) return [3 /*break*/, 14];
156
184
  _tag = tags_1_1.value;
157
- functionScope = _tag.scope;
158
- func = functionScope.get(functionName);
159
- if (!(func instanceof FunctionNode_1.FunctionNode)) return [3 /*break*/, 13];
160
- _b = (_a = returnValues).push;
161
- return [4 /*yield*/, func.evaluate(functionScope, dom, _tag)];
162
- case 10: return [4 /*yield*/, (_d.sent()).apply(void 0, __spreadArray([], __read(values)))];
163
- case 11:
164
- _b.apply(_a, [_d.sent()]);
165
- return [4 /*yield*/, func.collectGarbage()];
185
+ if (_tag === null) {
186
+ _functionScope = functionScope;
187
+ }
188
+ else {
189
+ _functionScope = _tag.scope;
190
+ }
191
+ if (!_functionScope.has(functionName)) return [3 /*break*/, 9];
192
+ func = _functionScope.get(functionName);
193
+ return [3 /*break*/, 11];
194
+ case 9: return [4 /*yield*/, this.fnc.evaluate(scope, dom, _tag)];
195
+ case 10:
196
+ func = _c.sent();
197
+ _c.label = 11;
198
+ case 11: return [4 /*yield*/, this.callFunction.apply(this, __spreadArray([func, _functionScope, dom, _tag], __read(values)))];
166
199
  case 12:
167
- _d.sent();
168
- return [3 /*break*/, 16];
200
+ _a = __read.apply(void 0, [_c.sent(), 2]), result = _a[0], success = _a[1];
201
+ if (success) {
202
+ returnValues.push(result);
203
+ calls++;
204
+ }
205
+ else {
206
+ console.warn("Function " + functionName + " was not found in current scope.");
207
+ }
208
+ _c.label = 13;
169
209
  case 13:
170
- if (!(typeof func === 'function')) return [3 /*break*/, 15];
171
- returnValues.push(func.call.apply(func, __spreadArray([functionScope], __read(values))));
172
- return [4 /*yield*/, func.collectGarbage()];
173
- case 14:
174
- _d.sent();
175
- return [3 /*break*/, 16];
176
- case 15:
177
- console.warn("Function " + functionName + " was not found in current scope.");
178
- _d.label = 16;
179
- case 16:
180
210
  tags_1_1 = tags_1.next();
181
- return [3 /*break*/, 9];
182
- case 17: return [3 /*break*/, 20];
183
- case 18:
184
- e_1_1 = _d.sent();
211
+ return [3 /*break*/, 8];
212
+ case 14: return [3 /*break*/, 17];
213
+ case 15:
214
+ e_1_1 = _c.sent();
185
215
  e_1 = { error: e_1_1 };
186
- return [3 /*break*/, 20];
187
- case 19:
216
+ return [3 /*break*/, 17];
217
+ case 16:
188
218
  try {
189
- if (tags_1_1 && !tags_1_1.done && (_c = tags_1.return)) _c.call(tags_1);
219
+ if (tags_1_1 && !tags_1_1.done && (_b = tags_1.return)) _b.call(tags_1);
190
220
  }
191
221
  finally { if (e_1) throw e_1.error; }
192
222
  return [7 /*endfinally*/];
193
- case 20:
194
- calls = returnValues.length;
223
+ case 17:
195
224
  if (calls === 1) {
196
225
  return [2 /*return*/, returnValues[0]];
197
226
  }
@@ -201,19 +230,7 @@ var FunctionCallNode = /** @class */ (function (_super) {
201
230
  else {
202
231
  return [2 /*return*/, returnValues];
203
232
  }
204
- return [3 /*break*/, 26];
205
- case 21:
206
- if (!(func instanceof FunctionNode_1.FunctionNode)) return [3 /*break*/, 25];
207
- return [4 /*yield*/, func.evaluate(functionScope, dom, tag)];
208
- case 22: return [4 /*yield*/, (_d.sent()).apply(void 0, __spreadArray([], __read(values)))];
209
- case 23:
210
- r = _d.sent();
211
- return [4 /*yield*/, func.collectGarbage()];
212
- case 24:
213
- _d.sent();
214
- return [2 /*return*/, r];
215
- case 25: return [2 /*return*/, func.call.apply(func, __spreadArray([functionScope.wrapped || functionScope], __read(values)))];
216
- case 26: return [2 /*return*/];
233
+ return [2 /*return*/];
217
234
  }
218
235
  });
219
236
  });
@@ -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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"}
package/dist/Scope.js CHANGED
@@ -386,6 +386,7 @@ var Scope = /** @class */ (function (_super) {
386
386
  }
387
387
  this.wrapped.get = this.get.bind(this);
388
388
  this.wrapped.set = this.set.bind(this);
389
+ this.wrapped.has = this.has.bind(this);
389
390
  this.wrapped.on = this.on.bind(this);
390
391
  this.wrapped.once = this.once.bind(this);
391
392
  this.wrapped.off = this.off.bind(this);
package/dist/Scope.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Scope.js","sourceRoot":"","sources":["../src/Scope.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAkD;AAClD,yDAAsD;AACtD,yDAAsD;AACtD,qDAAkD;AAClD,+CAA4C;AAC5C,6DAA0D;AAC1D,6BAA0B;AAC1B,uDAAoD;AAGpD;IAA2B,yBAAa;IAOpC,eACI,MAAc;QADlB,YAGI,iBAAO,SAMV;QAXS,gBAAU,GAAY,KAAK,CAAC;QAMlC,IAAI,MAAM;YACN,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAC9B,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,KAAI,CAAC,KAAK,GAAG,IAAI,mCAAgB,CAAC,EAAE,CAAC,CAAC;QACtC,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAI,CAAC,CAAC;;IAC9B,CAAC;IAED,2BAAW,GAAX;;QACI,iBAAM,WAAW,WAAE,CAAC;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAE1B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,IAAI,CAAC,KAAK;YACV,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;;YAElB,KAAoB,IAAA,KAAA,SAAA,IAAI,CAAC,QAAQ,CAAA,gBAAA,4BAAE;gBAA9B,IAAM,KAAK,WAAA;gBACZ,KAAK,CAAC,WAAW,EAAE,CAAC;aACvB;;;;;;;;;QACD,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,sBAAW,uBAAI;aAAf;YACI,OAAO,IAAI,CAAC,KAAK,CAAC;QACtB,CAAC;;;OAAA;IAED,sBAAW,4BAAS;aAApB;;YACI,IAAM,GAAG,GAAG,EAAE,CAAC;;gBACf,KAAkB,IAAA,KAAA,SAAA,IAAI,CAAC,IAAI,CAAA,gBAAA,4BAAE;oBAAxB,IAAM,GAAG,WAAA;oBACV,IAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC5B,IAAI,KAAK,YAAY,KAAK;wBACtB,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;;wBAE3B,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;iBACxB;;;;;;;;;YACD,OAAO,GAAG,CAAC;QACf,CAAC;;;OAAA;IAED,sBAAW,8BAAW;aAAtB;YACI,IAAI,IAAI,CAAC,YAAY;gBACjB,OAAO,IAAI,CAAC,YAAY,CAAC;YAE7B,IAAM,SAAS,GAAG,SAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;YAC1C,OAAO,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAChD,CAAC;aAED,UAAuB,KAAY;YAC/B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK;gBAChD,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAExC,IAAI,KAAK,EAAE;gBACP,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aACxB;iBAAM,IAAI,IAAI,CAAC,YAAY,EAAC;gBACzB,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;aAC5B;QACL,CAAC;;;OAbA;IAeM,wBAAQ,GAAf,UAAgB,KAAY;QACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAEM,2BAAW,GAAlB,UAAmB,KAAY;QAC3B,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,KAAK,GAAG,CAAC,CAAC;YACV,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,4BAAY,GAAZ,UAAa,IAAY,EAAE,gBAAgC;QAAhC,iCAAA,EAAA,uBAAgC;QACvD,IAAM,SAAS,GAAa,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,GAAG,GAAW,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,KAAK,GAAU,IAAI,CAAC;QACxB,IAAI,GAAG,GAAQ,IAAI,CAAC;QACpB,IAAI,GAAG,GAAW,SAAS,CAAC,MAAM,CAAC;QAEnC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACtB,OAAO,IAAI,+BAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SAC1C;QAED,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAClC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAEnB,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9B,IAAM,MAAM,GAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5D,IAAI,gBAAgB,IAAI,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE;gBAC3C,GAAG,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;gBACvB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aACvB;iBAAM,IAAI,CAAC,gBAAgB,IAAI,MAAM,EAAE;gBACpC,OAAO,IAAI,CAAC;aACf;YAED,IAAI,GAAG,IAAI,GAAG,YAAY,KAAK,EAAE;gBAC7B,KAAK,GAAG,GAAG,CAAC;aACf;SACJ;QAED,OAAO,IAAI,+BAAc,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED,mBAAG,GAAH,UAAI,GAAW,EAAE,aAA6B;QAA7B,8BAAA,EAAA,oBAA6B;QAC1C,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACrC,IAAM,KAAK,GAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,KAAK,KAAK,SAAS,EAAE;YACrB,IAAI,aAAa,IAAI,IAAI,CAAC,WAAW;gBACjC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;YAEpD,OAAO,EAAE,CAAC;SACb;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,mBAAG,GAAH,UAAI,GAAW,EAAE,KAAU,EAAE,UAA2B;QAA3B,2BAAA,EAAA,kBAA2B;QACpD,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,OAAO;QAChC,IAAI,UAAU,EAAE;YACZ,IAAM,IAAI,GAAG,OAAO,KAAK,CAAC;YAC1B,IAAI,IAAI,KAAK,QAAQ,EAAE;gBACnB,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC;oBACf,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;;oBAE7B,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;aAClC;iBAAM,IAAI,IAAI,KAAK,QAAQ,EAAE;gBAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;aAC/B;iBAAM,IAAI,IAAI,KAAK,SAAS,EAAE;gBAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;aAChC;SACJ;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC5B,CAAC;IAED,sBAAM,GAAN,UAAO,GAAW;QACd,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,OAAO;QAChC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,sBAAI,uBAAI;aAAR;YACI,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;gBAAE,OAAO,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC3B,CAAC;;;OAAA;IAED,mBAAG,GAAH,UAAI,GAAW;QACX,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAED,uBAAO,GAAP,UAAQ,GAAW,EAAE,IAAY;QAC7B,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACnD,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,uBAAO,GAAP,UAAQ,GAAW;QACf,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC7C,OAAO,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAC;IAC1B,CAAC;IAED,sBAAM,GAAN,UAAO,IAAI;;;YACP,KAAkB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE;gBAAnB,IAAM,GAAG,iBAAA;gBACV,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;aAC5B;;;;;;;;;IACL,CAAC;IAED,qBAAK,GAAL;;;YACI,KAAkB,IAAA,KAAA,SAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA,gBAAA,4BAAE;gBAA9B,IAAM,GAAG,WAAA;gBACV,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;oBAAE,SAAS;gBACxE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aACvB;;;;;;;;;IACL,CAAC;IAED,uBAAO,GAAP;QACI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,sBAAW,4BAAS;aAApB;YACI,OAAO,IAAI,CAAC,UAAU,CAAC;QAC3B,CAAC;;;OAAA;IAED,8BAAc,GAAd,UAAe,KAAsB;;QAAtB,sBAAA,EAAA,aAAsB;QACjC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;;YACvB,KAAoB,IAAA,KAAA,SAAA,IAAI,CAAC,QAAQ,CAAA,gBAAA,4BAAE;gBAA9B,IAAM,KAAK,WAAA;gBACZ,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;aAC/B;;;;;;;;;QACD,IAAI,KAAK;YACL,IAAI,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAEM,oBAAI,GAAX,UAAY,MAAW,EAAE,cAA+B,EAAE,iBAAiC;QAA3F,iBAiFC;QAjFwB,+BAAA,EAAA,sBAA+B;QAAE,kCAAA,EAAA,wBAAiC;QACvF,IAAI,MAAM,YAAY,qBAAS,EAAE;YAC7B,IAAI,IAAI,CAAC,KAAK,YAAY,iCAAe,EAAE;gBACvC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC7B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;aAC5B;YACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1B,OAAO;SACV;QAED,IAAI,MAAM,YAAY,KAAK;YACvB,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;QAE1B,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9C,MAAM,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAEzD,IAAI,CAAC,MAAM,EAAE;YACT,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;SACzC;QAED,IAAI,MAAM,CAAC,UAAU,CAAC,EAAE;YACpB,MAAM,KAAK,CAAC,wCAAwC,CAAC,CAAC;SACzD;QAED,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;gCACrB,KAAK;YACZ,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;kCACnD;YAEb,IAAI,OAAK,OAAO,CAAC,KAAK,CAAC,YAAY,QAAQ,EAAE;gBACzC,OAAK,GAAG,CAAC,KAAK,EAAE,OAAK,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;;aAExC;YAED,IAAI,OAAK,OAAO,CAAC,KAAK,CAAC,YAAY,KAAK,EAAE;gBACtC,IAAI,CAAC,CAAC,OAAK,OAAO,CAAC,KAAK,CAAC,YAAY,2BAAY,CAAC,EAAE;oBAChD,OAAK,OAAO,CAAC,KAAK,CAAC,QAAO,2BAAY,YAAZ,2BAAY,iCAAI,MAAM,CAAC,KAAK,CAAC,MAAC,CAAC;iBAC5D;gBACD,OAAK,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE;oBAAC,cAAO;yBAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;wBAAP,yBAAO;;oBACrC,KAAI,CAAC,QAAQ,OAAb,KAAI,iBAAU,YAAU,KAAO,UAAK,IAAI,IAAE;gBAC9C,CAAC,CAAC,CAAA;aACL;YAED,IAAI,OAAO,OAAK,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,IAAI,OAAK,OAAO,CAAC,KAAK,CAAC,IAAI,OAAK,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,KAAK,MAAM,EAAE;gBAC7G,IAAM,WAAW,GAAG,IAAI,KAAK,QAAM,CAAC;gBACpC,WAAW,CAAC,IAAI,CAAC,OAAK,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtC,OAAK,OAAO,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;aACrC;YAED,sEAAsE;YACtE,IAAI,iBAAiB,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,OAAK,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC5E,OAAK,GAAG,CAAC,KAAK,EAAE,OAAK,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;aACxC;YAED,IAAM,MAAM,GAAG;gBACX,OAAO,KAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,CAAC;YAEF,IAAM,MAAM,GAAG,UAAC,KAAU;gBACtB,KAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC3B,CAAC,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,OAAK,OAAO,EAAE,KAAK,EAAE;gBACvC,GAAG,EAAE,MAAM;gBACX,GAAG,EAAE,MAAM;gBACX,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI;aACrB,CAAC,CAAC;YAEH,IAAI,cAAc;gBACd,OAAK,QAAQ,CAAC,YAAU,KAAO,CAAC,CAAC;;;QA7CzC,KAAK,IAAM,KAAK,IAAI,MAAM;oBAAf,KAAK;SA8Cf;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEM,sBAAM,GAAb;QACI,IAAI,CAAC,IAAI,CAAC,OAAO;YACb,OAAO;QACX,IAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC1B,KAAK,IAAM,KAAK,IAAI,QAAQ,EAAE;YAC1B,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC1B;IACL,CAAC;IAEa,gBAAU,GAAxB,UAAyB,GAAG,EAAE,WAAmB;QAC7C,IAAM,KAAK,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,OAAO,KAAK,CAAC;IACjB,CAAC;IACL,YAAC;AAAD,CAAC,AA9SD,CAA2B,6BAAa,GA8SvC;AA9SY,sBAAK;AAgTlB;IAAmC,iCAAK;IACpC,uBAAY,WAAmB;QAA/B,YACI,kBAAM,WAAW,CAAC,SAErB;QADG,KAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;;IAC/B,CAAC;IAED,2BAAG,GAAH,UAAI,GAAW,EAAE,KAAU;QACvB,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACpF,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACpC;aAAM;YACH,iBAAM,GAAG,YAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACzB;IACL,CAAC;IAED,sCAAc,GAAd,UAAe,KAAqB;QAArB,sBAAA,EAAA,YAAqB;QAChC,iBAAM,cAAc,YAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACL,oBAAC;AAAD,CAAC,AAjBD,CAAmC,KAAK,GAiBvC;AAjBY,sCAAa"}
1
+ {"version":3,"file":"Scope.js","sourceRoot":"","sources":["../src/Scope.ts"],"names":[],"mappings":"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"}
@@ -79,29 +79,43 @@ var RootAttribute = /** @class */ (function (_super) {
79
79
  }
80
80
  RootAttribute.prototype.setup = function () {
81
81
  return __awaiter(this, void 0, void 0, function () {
82
- var _a, _b, key, fn;
82
+ var _a, _b, key, fn, e_1_1;
83
83
  var e_1, _c;
84
84
  return __generator(this, function (_d) {
85
85
  switch (_d.label) {
86
86
  case 0:
87
87
  this.tag.scope.set('$mobile', VisionHelper_1.VisionHelper.isMobile());
88
+ _d.label = 1;
89
+ case 1:
90
+ _d.trys.push([1, 6, 7, 8]);
91
+ _a = __values(Registry_1.Registry.instance.functions.keys), _b = _a.next();
92
+ _d.label = 2;
93
+ case 2:
94
+ if (!!_b.done) return [3 /*break*/, 5];
95
+ key = _b.value;
96
+ return [4 /*yield*/, Registry_1.Registry.instance.functions.get(key)];
97
+ case 3:
98
+ fn = _d.sent();
99
+ this.tag.scope.set(key, fn);
100
+ _d.label = 4;
101
+ case 4:
102
+ _b = _a.next();
103
+ return [3 /*break*/, 2];
104
+ case 5: return [3 /*break*/, 8];
105
+ case 6:
106
+ e_1_1 = _d.sent();
107
+ e_1 = { error: e_1_1 };
108
+ return [3 /*break*/, 8];
109
+ case 7:
88
110
  try {
89
- for (_a = __values(Registry_1.Registry.instance.functions.keys), _b = _a.next(); !_b.done; _b = _a.next()) {
90
- key = _b.value;
91
- fn = Registry_1.Registry.instance.functions.get(key);
92
- this.tag.scope.set(key, fn);
93
- }
94
- }
95
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
96
- finally {
97
- try {
98
- if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
99
- }
100
- finally { if (e_1) throw e_1.error; }
111
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
101
112
  }
113
+ finally { if (e_1) throw e_1.error; }
114
+ return [7 /*endfinally*/];
115
+ case 8:
102
116
  Registry_1.Registry.instance.functions.on('register', this.registerFunction, this);
103
117
  return [4 /*yield*/, _super.prototype.setup.call(this)];
104
- case 1:
118
+ case 9:
105
119
  _d.sent();
106
120
  return [2 /*return*/];
107
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RootAttribute.js","sourceRoot":"","sources":["../../src/attributes/RootAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAuC;AACvC,wDAAqD;AACrD,wCAAqC;AAGrC;IAAmC,iCAAS;IAA5C;;IAkBA,CAAC;IAdgB,6BAAK,GAAlB;;;;;;;wBACI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,2BAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;;4BACvD,KAAkB,KAAA,SAAA,mBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAA,4CAAE;gCAAzC,GAAG;gCACJ,EAAE,GAAG,mBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gCAChD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;6BAC/B;;;;;;;;;wBAED,mBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;wBACxE,qBAAM,iBAAM,KAAK,WAAE,EAAA;;wBAAnB,SAAmB,CAAC;;;;;KACvB;IAEY,wCAAgB,GAA7B,UAA8B,IAAY,EAAE,EAAY;;;gBACpD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;;;;KAChC;IAhBsB,sBAAQ,GAAY,KAAK,CAAC;IAC1B,oBAAM,GAAY,IAAI,CAAC;IAFrC,aAAa;QADzB,mBAAQ,CAAC,SAAS,CAAC,UAAU,CAAC;OAClB,aAAa,CAkBzB;IAAD,oBAAC;CAAA,AAlBD,CAAmC,qBAAS,GAkB3C;AAlBY,sCAAa"}
1
+ {"version":3,"file":"RootAttribute.js","sourceRoot":"","sources":["../../src/attributes/RootAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAuC;AACvC,wDAAqD;AACrD,wCAAqC;AAGrC;IAAmC,iCAAS;IAA5C;;IAkBA,CAAC;IAdgB,6BAAK,GAAlB;;;;;;;wBACI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,2BAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;;;;wBACrC,KAAA,SAAA,mBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAA;;;;wBAAvC,GAAG;wBACC,qBAAM,mBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAA;;wBAA/C,EAAE,GAAG,SAA0C;wBACrD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;;;;;;;;;;;;;;;;;wBAGhC,mBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;wBACxE,qBAAM,iBAAM,KAAK,WAAE,EAAA;;wBAAnB,SAAmB,CAAC;;;;;KACvB;IAEY,wCAAgB,GAA7B,UAA8B,IAAY,EAAE,EAAY;;;gBACpD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;;;;KAChC;IAhBsB,sBAAQ,GAAY,KAAK,CAAC;IAC1B,oBAAM,GAAY,IAAI,CAAC;IAFrC,aAAa;QADzB,mBAAQ,CAAC,SAAS,CAAC,UAAU,CAAC;OAClB,aAAa,CAkBzB;IAAD,oBAAC;CAAA,AAlBD,CAAmC,qBAAS,GAkB3C;AAlBY,sCAAa"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const VERSION = "0.1.145";
1
+ export declare const VERSION = "0.1.146";
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.145';
4
+ exports.VERSION = '0.1.146';
5
5
  //# sourceMappingURL=version.js.map
package/dist/vsn.js CHANGED
@@ -70,6 +70,7 @@ var VisionHelper_1 = require("./helpers/VisionHelper");
70
70
  var AST_1 = require("./AST");
71
71
  var EventDispatcher_1 = require("./EventDispatcher");
72
72
  var DynamicScopeData_1 = require("./Scope/DynamicScopeData");
73
+ var Scope_1 = require("./Scope");
73
74
  var version_1 = require("./version");
74
75
  require("./custom-elements");
75
76
  var Vision = /** @class */ (function (_super) {
@@ -99,6 +100,7 @@ var Vision = /** @class */ (function (_super) {
99
100
  window['Registry'] = Registry_1.Registry;
100
101
  window['vision'] = window['vsn'] = _this;
101
102
  window['Tree'] = AST_1.Tree;
103
+ window['Scope'] = Scope_1.Scope;
102
104
  window['$'] = _this.exec.bind(_this);
103
105
  VisionHelper_1.VisionHelper.window.dispatchEvent(new Event('vsn'));
104
106
  }
@@ -177,8 +179,8 @@ var Validators_1 = require("./Validators");
177
179
  Object.defineProperty(exports, "Validators", { enumerable: true, get: function () { return Validators_1.Validators; } });
178
180
  var DOM_2 = require("./DOM");
179
181
  Object.defineProperty(exports, "DOM", { enumerable: true, get: function () { return DOM_2.DOM; } });
180
- var Scope_1 = require("./Scope");
181
- Object.defineProperty(exports, "Scope", { enumerable: true, get: function () { return Scope_1.Scope; } });
182
+ var Scope_2 = require("./Scope");
183
+ Object.defineProperty(exports, "Scope", { enumerable: true, get: function () { return Scope_2.Scope; } });
182
184
  var ScopeReference_1 = require("./Scope/ScopeReference");
183
185
  Object.defineProperty(exports, "ScopeReference", { enumerable: true, get: function () { return ScopeReference_1.ScopeReference; } });
184
186
  var WrappedArray_2 = require("./Scope/WrappedArray");
package/dist/vsn.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"vsn.js","sourceRoot":"","sources":["../src/vsn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vsn.js","sourceRoot":"","sources":["../src/vsn.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vsn",
3
- "version": "0.1.145",
3
+ "version": "0.1.146",
4
4
  "description": "SEO Friendly Javascript/Typescript Framework",
5
5
  "keywords": [
6
6
  "framework",
@@ -6,9 +6,7 @@ import {Node} from "./Node";
6
6
  import {FunctionArgumentNode} from "./FunctionArgumentNode";
7
7
  import {ScopeMemberNode} from "./ScopeMemberNode";
8
8
  import {FunctionNode} from "./FunctionNode";
9
- import {Registry} from "../Registry";
10
9
  import {ElementQueryNode} from "./ElementQueryNode";
11
- import {ClassNode} from "./ClassNode";
12
10
 
13
11
  export class FunctionCallNode<T = any> extends Node implements TreeNode {
14
12
  constructor(
@@ -25,6 +23,17 @@ export class FunctionCallNode<T = any> extends Node implements TreeNode {
25
23
  ]
26
24
  }
27
25
 
26
+ protected async callFunction(func, functionScope, dom, tag, ...values): Promise<[any, boolean]> {
27
+ if (func instanceof FunctionNode) {
28
+ const r = await (await func.evaluate(functionScope, dom, tag) as any)(...values);
29
+ await func.collectGarbage();
30
+ return [r, true];
31
+ } else if (typeof func === 'function') {
32
+ return [func.call(functionScope.wrapped || functionScope, ...values), true];
33
+ }
34
+ return [null, false];
35
+ }
36
+
28
37
  protected async _evaluate(scope: Scope, dom: DOM, tag: Tag = null) {
29
38
  // @todo: Need to rewrite/refactor this. It's a bit of a mess with element queries.
30
39
  let tags: Tag[] = [];
@@ -41,45 +50,48 @@ export class FunctionCallNode<T = any> extends Node implements TreeNode {
41
50
  throw new Error('Invalid element query result');
42
51
  }
43
52
  } else {
44
- tags = [tag];
45
- functionScope = await this.fnc.scope.evaluate(scope, dom, tag);
53
+ functionScope = await this.fnc.scope.evaluate(scope, dom, tag);
46
54
  }
47
55
  }
48
56
 
57
+ if (tags.length === 0)
58
+ tags.push(tag);
59
+
49
60
  const values = await this.args.evaluate(scope, dom, tag);
50
- let func = await this.fnc.evaluate(scope, dom, tag);
51
- if (!func || func instanceof Array) {
52
- const functionName = await (this.fnc as any).name.evaluate(scope, dom, tag);
53
- const returnValues = [];
61
+ const functionName = await (this.fnc as any).name.evaluate(scope, dom, tag);
62
+ const returnValues = [];
63
+ let calls = 0;
64
+ let func;
65
+ let _functionScope: Scope = functionScope;
54
66
 
55
- for (const _tag of tags) {
56
- functionScope = _tag.scope;
57
- func = functionScope.get(functionName);
58
- if (func instanceof FunctionNode) {
59
- returnValues.push(await (await func.evaluate(functionScope, dom, _tag) as any)(...values));
60
- await func.collectGarbage();
61
- } else if (typeof func === 'function') {
62
- returnValues.push(func.call(functionScope, ...values));
63
- await func.collectGarbage();
64
- } else {
65
- console.warn(`Function ${functionName} was not found in current scope.`);
66
- }
67
+ for (const _tag of tags) {
68
+ if (_tag === null) {
69
+ _functionScope = functionScope;
70
+ } else {
71
+ _functionScope = _tag.scope;
67
72
  }
68
73
 
69
- const calls = returnValues.length;
70
- if (calls === 1) {
71
- return returnValues[0];
72
- } else if (calls === 0) {
73
- throw new Error(`Function ${functionName} not found`);
74
+ if (_functionScope.has(functionName)) {
75
+ func = _functionScope.get(functionName);
74
76
  } else {
75
- return returnValues;
77
+ func = await this.fnc.evaluate(scope, dom, _tag);
76
78
  }
77
- } else if (func instanceof FunctionNode) {
78
- const r = await (await func.evaluate(functionScope, dom, tag) as any)(...values);
79
- await func.collectGarbage();
80
- return r;
79
+
80
+ const [result, success] = await this.callFunction(func, _functionScope, dom, _tag, ...values);
81
+ if (success) {
82
+ returnValues.push(result);
83
+ calls++;
84
+ } else {
85
+ console.warn(`Function ${functionName} was not found in current scope.`);
86
+ }
87
+ }
88
+
89
+ if (calls === 1) {
90
+ return returnValues[0];
91
+ } else if (calls === 0) {
92
+ throw new Error(`Function ${functionName} not found`);
81
93
  } else {
82
- return func.call(functionScope.wrapped || functionScope, ...values);
94
+ return returnValues;
83
95
  }
84
96
  }
85
97
  }
package/src/Scope.ts CHANGED
@@ -289,6 +289,7 @@ export class Scope extends ScopeAbstract {
289
289
 
290
290
  this.wrapped.get = this.get.bind(this);
291
291
  this.wrapped.set = this.set.bind(this);
292
+ this.wrapped.has = this.has.bind(this);
292
293
  this.wrapped.on = this.on.bind(this);
293
294
  this.wrapped.once = this.once.bind(this);
294
295
  this.wrapped.off = this.off.bind(this);
@@ -10,7 +10,7 @@ export class RootAttribute extends Attribute {
10
10
  public async setup() {
11
11
  this.tag.scope.set('$mobile', VisionHelper.isMobile());
12
12
  for (const key of Registry.instance.functions.keys) {
13
- const fn = Registry.instance.functions.get(key);
13
+ const fn = await Registry.instance.functions.get(key);
14
14
  this.tag.scope.set(key, fn);
15
15
  }
16
16
 
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '0.1.145';
1
+ export const VERSION = '0.1.146';
2
2
 
package/src/vsn.ts CHANGED
@@ -6,7 +6,7 @@ import {VisionHelper} from "./helpers/VisionHelper";
6
6
  import {Tree} from "./AST";
7
7
  import {EventDispatcher} from "./EventDispatcher";
8
8
  import {DynamicScopeData} from "./Scope/DynamicScopeData";
9
- import {Controller} from "./Controller";
9
+ import {Scope} from "./Scope";
10
10
  import {VERSION} from "./version";
11
11
  import './custom-elements';
12
12
 
@@ -42,6 +42,7 @@ export class Vision extends EventDispatcher {
42
42
  window['Registry'] = Registry;
43
43
  window['vision'] = window['vsn'] = this;
44
44
  window['Tree'] = Tree;
45
+ window['Scope'] = Scope;
45
46
  window['$'] = this.exec.bind(this);
46
47
  VisionHelper.window.dispatchEvent(new Event('vsn'));
47
48
  }