vsn 0.1.64 → 0.1.65

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 (52) hide show
  1. package/demo/demo.html +4 -0
  2. package/demo/vsn.js +2 -2
  3. package/demo/xhr.html +8 -2
  4. package/dist/AST/ClassNode.d.ts +2 -1
  5. package/dist/AST/ClassNode.js +40 -51
  6. package/dist/AST/ClassNode.js.map +1 -1
  7. package/dist/AST/ElementAttributeNode.d.ts +1 -1
  8. package/dist/AST/ElementAttributeNode.js +3 -2
  9. package/dist/AST/ElementAttributeNode.js.map +1 -1
  10. package/dist/AST/ElementQueryNode.d.ts +4 -4
  11. package/dist/AST/ElementQueryNode.js +17 -6
  12. package/dist/AST/ElementQueryNode.js.map +1 -1
  13. package/dist/AST/ElementStyleNode.d.ts +1 -1
  14. package/dist/AST/ElementStyleNode.js +3 -2
  15. package/dist/AST/ElementStyleNode.js.map +1 -1
  16. package/dist/AST/FunctionNode.d.ts +1 -1
  17. package/dist/AST/FunctionNode.js +4 -3
  18. package/dist/AST/FunctionNode.js.map +1 -1
  19. package/dist/AST/Node.d.ts +1 -1
  20. package/dist/AST/Node.js +3 -2
  21. package/dist/AST/Node.js.map +1 -1
  22. package/dist/AST/OnNode.d.ts +1 -1
  23. package/dist/AST/OnNode.js +5 -4
  24. package/dist/AST/OnNode.js.map +1 -1
  25. package/dist/AST.d.ts +1 -1
  26. package/dist/AST.js +1 -1
  27. package/dist/AST.js.map +1 -1
  28. package/dist/DOM.d.ts +7 -1
  29. package/dist/DOM.js +23 -3
  30. package/dist/DOM.js.map +1 -1
  31. package/dist/Registry.d.ts +3 -0
  32. package/dist/Registry.js +13 -0
  33. package/dist/Registry.js.map +1 -1
  34. package/dist/attributes/RootAttribute.d.ts +1 -0
  35. package/dist/attributes/RootAttribute.js +18 -6
  36. package/dist/attributes/RootAttribute.js.map +1 -1
  37. package/dist/vsn.js +4 -0
  38. package/dist/vsn.js.map +1 -1
  39. package/package.json +1 -1
  40. package/src/AST/ClassNode.ts +16 -16
  41. package/src/AST/ElementAttributeNode.ts +2 -2
  42. package/src/AST/ElementQueryNode.ts +13 -5
  43. package/src/AST/ElementStyleNode.ts +2 -2
  44. package/src/AST/FunctionNode.ts +4 -3
  45. package/src/AST/Node.ts +2 -2
  46. package/src/AST/OnNode.ts +4 -4
  47. package/src/AST.ts +2 -3
  48. package/src/DOM.ts +19 -3
  49. package/src/Registry.ts +10 -0
  50. package/src/attributes/RootAttribute.ts +11 -3
  51. package/src/vsn.ts +4 -0
  52. package/test/DOM.spec.ts +27 -0
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/DOM.d.ts CHANGED
@@ -4,6 +4,11 @@ import { WrappedWindow } from "./DOM/WrappedWindow";
4
4
  import { WrappedDocument } from "./DOM/WrappedDocument";
5
5
  import { Scope } from "./Scope";
6
6
  import { EventDispatcher } from "./EventDispatcher";
7
+ export declare enum EQuerySelectDirection {
8
+ ALL = 0,
9
+ UP = 1,
10
+ DOWN = 2
11
+ }
7
12
  export declare class DOM extends EventDispatcher {
8
13
  protected rootElement: Document;
9
14
  protected debug: boolean;
@@ -18,9 +23,10 @@ export declare class DOM extends EventDispatcher {
18
23
  selected: Tag;
19
24
  constructor(rootElement: Document, build?: boolean, debug?: boolean);
20
25
  get root(): Tag;
21
- get(selector: string, create?: boolean, tag?: Tag): Promise<TagList>;
26
+ get(selector: string, create?: boolean, tag?: Tag, direction?: EQuerySelectDirection): Promise<TagList>;
22
27
  getFromTag(tag: Tag, selector: string, create?: boolean): Promise<TagList>;
23
28
  registerElementInRoot(tag: Tag): void;
29
+ querySelectorClosest(q: string, tag?: Tag): HTMLElement;
24
30
  querySelectorAll(q: string, tag?: Tag): NodeList | HTMLElement[];
25
31
  querySelectorElement(element: HTMLElement | Document, q: string): NodeList | HTMLElement[];
26
32
  querySelector(q: string): Element;
package/dist/DOM.js CHANGED
@@ -56,7 +56,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from) {
56
56
  return to;
57
57
  };
58
58
  Object.defineProperty(exports, "__esModule", { value: true });
59
- exports.DOM = void 0;
59
+ exports.DOM = exports.EQuerySelectDirection = void 0;
60
60
  var Tag_1 = require("./Tag");
61
61
  var ElementHelper_1 = require("./helpers/ElementHelper");
62
62
  var Configuration_1 = require("./Configuration");
@@ -66,6 +66,12 @@ var WrappedWindow_1 = require("./DOM/WrappedWindow");
66
66
  var WrappedDocument_1 = require("./DOM/WrappedDocument");
67
67
  var EventDispatcher_1 = require("./EventDispatcher");
68
68
  var ClassNode_1 = require("./AST/ClassNode");
69
+ var EQuerySelectDirection;
70
+ (function (EQuerySelectDirection) {
71
+ EQuerySelectDirection[EQuerySelectDirection["ALL"] = 0] = "ALL";
72
+ EQuerySelectDirection[EQuerySelectDirection["UP"] = 1] = "UP";
73
+ EQuerySelectDirection[EQuerySelectDirection["DOWN"] = 2] = "DOWN";
74
+ })(EQuerySelectDirection = exports.EQuerySelectDirection || (exports.EQuerySelectDirection = {}));
69
75
  var DOM = /** @class */ (function (_super) {
70
76
  __extends(DOM, _super);
71
77
  function DOM(rootElement, build, debug) {
@@ -93,9 +99,10 @@ var DOM = /** @class */ (function (_super) {
93
99
  enumerable: false,
94
100
  configurable: true
95
101
  });
96
- DOM.prototype.get = function (selector, create, tag) {
102
+ DOM.prototype.get = function (selector, create, tag, direction) {
97
103
  if (create === void 0) { create = false; }
98
104
  if (tag === void 0) { tag = null; }
105
+ if (direction === void 0) { direction = EQuerySelectDirection.DOWN; }
99
106
  return __awaiter(this, void 0, void 0, function () {
100
107
  var _a, nodes;
101
108
  return __generator(this, function (_b) {
@@ -112,7 +119,16 @@ var DOM = /** @class */ (function (_super) {
112
119
  case 2: return [2 /*return*/, new List_1.TagList(this.document)];
113
120
  case 3: return [2 /*return*/, new List_1.TagList(this.root)];
114
121
  case 4:
115
- nodes = this.querySelectorAll(selector, tag);
122
+ nodes = void 0;
123
+ if (direction === EQuerySelectDirection.DOWN) {
124
+ nodes = this.querySelectorAll(selector, tag);
125
+ }
126
+ else if (direction === EQuerySelectDirection.UP) {
127
+ nodes = [this.querySelectorClosest(selector, tag)];
128
+ }
129
+ else {
130
+ nodes = this.querySelectorAll(selector);
131
+ }
116
132
  return [4 /*yield*/, this.getTagsForElements(Array.from(nodes), create)];
117
133
  case 5: return [2 /*return*/, _b.sent()];
118
134
  }
@@ -138,6 +154,10 @@ var DOM = /** @class */ (function (_super) {
138
154
  if (!!id)
139
155
  this.root.scope.set("#" + id, tag.scope);
140
156
  };
157
+ DOM.prototype.querySelectorClosest = function (q, tag) {
158
+ if (tag === void 0) { tag = null; }
159
+ return tag.element.closest(q);
160
+ };
141
161
  DOM.prototype.querySelectorAll = function (q, tag) {
142
162
  if (tag === void 0) { tag = null; }
143
163
  var element = tag && !q.startsWith('#') ? tag.element : this.rootElement;
package/dist/DOM.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"DOM.js","sourceRoot":"","sources":["../src/DOM.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DOM.js","sourceRoot":"","sources":["../src/DOM.ts"],"names":[],"mappings":"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"}
@@ -10,9 +10,11 @@ export declare class RegistryStore extends EventDispatcher {
10
10
  get(key: string): IPromise<any>;
11
11
  getSynchronous(key: string): any;
12
12
  has(key: string): boolean;
13
+ get keys(): string[];
13
14
  }
14
15
  export declare class Registry extends EventDispatcher {
15
16
  protected static _instance: Registry;
17
+ readonly functions: RegistryStore;
16
18
  readonly controllers: RegistryStore;
17
19
  readonly classes: RegistryStore;
18
20
  readonly models: RegistryStore;
@@ -22,6 +24,7 @@ export declare class Registry extends EventDispatcher {
22
24
  readonly formats: RegistryStore;
23
25
  readonly attributes: RegistryStore;
24
26
  constructor();
27
+ static function(key?: string, setup?: any): (target: any, _key?: string) => void;
25
28
  static class(cls: ClassNode): void;
26
29
  static controller(key?: string, setup?: any): (target: any, _key?: string) => void;
27
30
  static model(key?: string, setup?: any): (target: any, _key?: string) => void;
package/dist/Registry.js CHANGED
@@ -70,6 +70,13 @@ var RegistryStore = /** @class */ (function (_super) {
70
70
  RegistryStore.prototype.has = function (key) {
71
71
  return !!this.store[key];
72
72
  };
73
+ Object.defineProperty(RegistryStore.prototype, "keys", {
74
+ get: function () {
75
+ return Object.keys(this.store);
76
+ },
77
+ enumerable: false,
78
+ configurable: true
79
+ });
73
80
  return RegistryStore;
74
81
  }(EventDispatcher_1.EventDispatcher));
75
82
  exports.RegistryStore = RegistryStore;
@@ -77,6 +84,7 @@ var Registry = /** @class */ (function (_super) {
77
84
  __extends(Registry, _super);
78
85
  function Registry() {
79
86
  var _this = _super.call(this) || this;
87
+ _this.functions = new RegistryStore();
80
88
  _this.controllers = new RegistryStore();
81
89
  _this.classes = new RegistryStore();
82
90
  _this.models = new RegistryStore();
@@ -87,6 +95,11 @@ var Registry = /** @class */ (function (_super) {
87
95
  _this.attributes = new RegistryStore();
88
96
  return _this;
89
97
  }
98
+ Registry.function = function (key, setup) {
99
+ if (key === void 0) { key = null; }
100
+ if (setup === void 0) { setup = null; }
101
+ return register('functions', key, setup);
102
+ };
90
103
  Registry.class = function (cls) {
91
104
  Registry.instance.classes.register(cls.name, cls);
92
105
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Registry.js","sourceRoot":"","sources":["../src/Registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Registry.js","sourceRoot":"","sources":["../src/Registry.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ export declare class RootAttribute extends Attribute {
3
3
  static readonly canDefer: boolean;
4
4
  static readonly scoped: boolean;
5
5
  setup(): Promise<void>;
6
+ registerFunction(name: string, fn: Function): Promise<void>;
6
7
  }
@@ -61,7 +61,6 @@ exports.RootAttribute = void 0;
61
61
  var Attribute_1 = require("../Attribute");
62
62
  var VisionHelper_1 = require("../helpers/VisionHelper");
63
63
  var Registry_1 = require("../Registry");
64
- var Scope_1 = require("../Scope");
65
64
  var RootAttribute = /** @class */ (function (_super) {
66
65
  __extends(RootAttribute, _super);
67
66
  function RootAttribute() {
@@ -69,20 +68,33 @@ var RootAttribute = /** @class */ (function (_super) {
69
68
  }
70
69
  RootAttribute.prototype.setup = function () {
71
70
  return __awaiter(this, void 0, void 0, function () {
72
- return __generator(this, function (_a) {
73
- switch (_a.label) {
71
+ var _i, _a, key, fn;
72
+ return __generator(this, function (_b) {
73
+ switch (_b.label) {
74
74
  case 0:
75
75
  this.tag.scope.set('$mobile', VisionHelper_1.VisionHelper.isMobile());
76
- if (console && !this.tag.scope.get('console'))
77
- this.tag.scope.set('console', Scope_1.Scope.fromObject(console));
76
+ for (_i = 0, _a = Registry_1.Registry.instance.functions.keys; _i < _a.length; _i++) {
77
+ key = _a[_i];
78
+ fn = Registry_1.Registry.instance.functions.get(key);
79
+ this.tag.scope.set(key, fn);
80
+ }
81
+ Registry_1.Registry.instance.functions.on('register', this.registerFunction, this);
78
82
  return [4 /*yield*/, _super.prototype.setup.call(this)];
79
83
  case 1:
80
- _a.sent();
84
+ _b.sent();
81
85
  return [2 /*return*/];
82
86
  }
83
87
  });
84
88
  });
85
89
  };
90
+ RootAttribute.prototype.registerFunction = function (name, fn) {
91
+ return __awaiter(this, void 0, void 0, function () {
92
+ return __generator(this, function (_a) {
93
+ this.tag.scope.set(name, fn);
94
+ return [2 /*return*/];
95
+ });
96
+ });
97
+ };
86
98
  RootAttribute.canDefer = false;
87
99
  RootAttribute.scoped = true;
88
100
  RootAttribute = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"RootAttribute.js","sourceRoot":"","sources":["../../src/attributes/RootAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAuC;AACvC,wDAAqD;AACrD,wCAAqC;AACrC,kCAA+B;AAG/B;IAAmC,iCAAS;IAA5C;;IAUA,CAAC;IANgB,6BAAK,GAAlB;;;;;wBACI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,2BAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;wBACvD,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;4BACzC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,aAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC7D,qBAAM,iBAAM,KAAK,WAAE,EAAA;;wBAAnB,SAAmB,CAAC;;;;;KACvB;IARsB,sBAAQ,GAAY,KAAK,CAAC;IAC1B,oBAAM,GAAY,IAAI,CAAC;IAFrC,aAAa;QADzB,mBAAQ,CAAC,SAAS,CAAC,UAAU,CAAC;OAClB,aAAa,CAUzB;IAAD,oBAAC;CAAA,AAVD,CAAmC,qBAAS,GAU3C;AAVY,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;;IAmBA,CAAC;IAfgB,6BAAK,GAAlB;;;;;;wBACI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,2BAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;wBAEvD,WAAkD,EAAhC,KAAA,mBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAhC,cAAgC,EAAhC,IAAgC,EAAE;4BAAzC,GAAG;4BACJ,EAAE,GAAG,mBAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;4BAChD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;yBAC/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;IAjBsB,sBAAQ,GAAY,KAAK,CAAC;IAC1B,oBAAM,GAAY,IAAI,CAAC;IAFrC,aAAa;QADzB,mBAAQ,CAAC,SAAS,CAAC,UAAU,CAAC;OAClB,aAAa,CAmBzB;IAAD,oBAAC;CAAA,AAnBD,CAAmC,qBAAS,GAmB3C;AAnBY,sCAAa"}
package/dist/vsn.js CHANGED
@@ -83,6 +83,10 @@ var Vision = /** @class */ (function (_super) {
83
83
  else {
84
84
  console.warn('No dom, running in CLI mode.');
85
85
  }
86
+ _this.registry.functions.register('log', console.log);
87
+ _this.registry.functions.register('warn', console.warn);
88
+ _this.registry.functions.register('error', console.error);
89
+ _this.registry.functions.register('info', console.info);
86
90
  _this.registry.controllers.register('Object', Object);
87
91
  _this.registry.controllers.register('WrappedArray', WrappedArray_1.WrappedArray);
88
92
  _this.registry.controllers.register('Data', DynamicScopeData_1.DynamicScopeData);
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.64",
3
+ "version": "0.1.65",
4
4
  "description": "SEO Friendly Javascript/Typescript Framework",
5
5
  "keywords": [
6
6
  "framework",
@@ -19,19 +19,19 @@ export class ClassNode extends Node implements TreeNode {
19
19
  super();
20
20
  }
21
21
 
22
- public async prepare(scope: Scope, dom: DOM, tag: Tag = null): Promise<void> {
22
+ public updateMeta(meta?: any) {
23
+ meta = meta || {};
24
+ meta['ClassNode'] = this;
25
+ return meta;
26
+ }
27
+
28
+ public async prepare(scope: Scope, dom: DOM, tag: Tag = null, meta?: any): Promise<void> {
29
+ meta = meta || {};
30
+ meta['ClassNodePrepare'] = true;
23
31
  if (ClassNode.classes[this.name]) return; // Don't re-prepare same classes
24
32
  ClassNode.classes[this.name] = this;
25
- await this.block.prepare(this.classScope, dom, tag);
33
+ await this.block.prepare(this.classScope, dom, tag, meta);
26
34
  Registry.class(this);
27
- const hasConstructor = this.classScope.has('construct');
28
-
29
- for (const element of Array.from(dom.querySelectorAll(`.${this.name}`))) {
30
- const tag: Tag = await dom.getTagForElement(element as HTMLElement, true);
31
- if (tag) {
32
- await this.prepareTag(tag, dom, hasConstructor);
33
- }
34
- }
35
35
  }
36
36
 
37
37
  public async prepareTag(tag: Tag, dom: DOM, hasConstructor: boolean | null = null) {
@@ -39,7 +39,8 @@ export class ClassNode extends Node implements TreeNode {
39
39
  hasConstructor = this.classScope.has('construct');
40
40
 
41
41
  tag.createScope(true);
42
- await this.block.prepare(tag.scope, dom, tag);
42
+ const meta = this.updateMeta();
43
+ await this.block.prepare(tag.scope, dom, tag, meta);
43
44
  if (hasConstructor) {
44
45
  const fnc = this.classScope.get('construct');
45
46
  (await fnc.evaluate(tag.scope, dom, tag))();
@@ -83,7 +84,7 @@ export class ClassNode extends Node implements TreeNode {
83
84
  if (t.type === TokenType.L_BRACE) break;
84
85
  nameParts.push(t.value);
85
86
  }
86
- const name = nameParts.join('');
87
+ const name = nameParts.join('').trim();
87
88
  tokens.splice(0, nameParts.length);
88
89
  const block = Tree.processTokens(Tree.getNextStatementTokens(tokens, true, true));
89
90
  return new ClassNode(name, block);
@@ -93,12 +94,11 @@ export class ClassNode extends Node implements TreeNode {
93
94
  const classes: string[] = Array.from(element.classList);
94
95
  let addedClasses: string[] = classes.filter(c => Registry.instance.classes.has(c));
95
96
  let removedClasses: string[] = [];
96
- if (tag) {
97
- addedClasses = addedClasses.filter(c => !tag.preppedClasses.includes(c));
98
- removedClasses = tag.preppedClasses.filter(c => !classes.includes(c));
99
- } else {
97
+ if (!tag) {
100
98
  tag = await dom.getTagForElement(element, true);
101
99
  }
100
+ addedClasses = addedClasses.filter(c => !tag.preppedClasses.includes(c));
101
+ removedClasses = tag.preppedClasses.filter(c => !classes.includes(c));
102
102
 
103
103
  for (const addedClass of addedClasses) {
104
104
  const classNode: ClassNode = Registry.instance.classes.getSynchronous(addedClass);
@@ -50,9 +50,9 @@ export class ElementAttributeNode extends Node implements TreeNode {
50
50
  return tags.map((tag) => tag.scope.get(`@${this.attributeName}`));
51
51
  }
52
52
 
53
- async prepare(scope: Scope, dom: DOM, tag: Tag = null) {
53
+ async prepare(scope: Scope, dom: DOM, tag: Tag = null, meta: any = null) {
54
54
  if (this.elementRef) {
55
- await this.elementRef.prepare(scope, dom, tag);
55
+ await this.elementRef.prepare(scope, dom, tag, meta);
56
56
  const tags: TagList = await this.elementRef.evaluate(scope, dom, tag, true);
57
57
  for (const t of tags)
58
58
  await t.watchAttribute(this.attributeName);
@@ -1,5 +1,5 @@
1
1
  import {Scope} from "../Scope";
2
- import {DOM} from "../DOM";
2
+ import {DOM, EQuerySelectDirection} from "../DOM";
3
3
  import {Tag} from "../Tag";
4
4
  import {Token, TreeNode} from "../AST";
5
5
  import {Node} from "./Node";
@@ -10,24 +10,32 @@ export class ElementQueryNode extends Node implements TreeNode {
10
10
  constructor(
11
11
  public readonly query: string,
12
12
  public readonly first: boolean = false,
13
- public readonly global: boolean = false,
13
+ public readonly direction: EQuerySelectDirection = EQuerySelectDirection.ALL,
14
14
  ) {
15
15
  super();
16
16
  }
17
17
 
18
18
  async evaluate(scope: Scope, dom: DOM, tag: Tag = null, forceList: boolean = false): Promise<any> {
19
19
  tag = tag || await dom.getTagForScope(scope);
20
- const elements = await dom.get(this.query, true, this.global ? null : tag);
20
+ const elements = await dom.get(this.query, true, tag, this.direction);
21
21
  return this.first && !forceList ? elements[0] : elements;
22
22
  }
23
23
 
24
- async prepare(scope: Scope, dom: DOM, tag: Tag = null) {
24
+ async prepare(scope: Scope, dom: DOM, tag: Tag = null, meta: any = null): Promise<any> {
25
25
  tag = tag || await dom.getTagForScope(scope);
26
26
  await dom.get(this.query, true, tag);
27
27
  }
28
28
 
29
29
  public static parse(lastNode, token, tokens: Token[]): ElementQueryNode {
30
30
  tokens.shift();
31
- return new ElementQueryNode(token.value, false, !token.full.startsWith('?>'));
31
+ let first = false;
32
+ let direction = EQuerySelectDirection.ALL;
33
+ if (token.full.startsWith('?>')) {
34
+ direction = EQuerySelectDirection.DOWN;
35
+ } else if (token.full.startsWith('?<')) {
36
+ direction = EQuerySelectDirection.UP;
37
+ first = true;
38
+ }
39
+ return new ElementQueryNode(token.value, first, direction);
32
40
  }
33
41
  }
@@ -50,9 +50,9 @@ export class ElementStyleNode extends Node implements TreeNode {
50
50
  return tags.map((tag) => tag.scope.get(`$${this.attributeName}`));
51
51
  }
52
52
 
53
- async prepare(scope: Scope, dom: DOM, tag: Tag = null) {
53
+ async prepare(scope: Scope, dom: DOM, tag: Tag = null, meta: any = null) {
54
54
  if (this.elementRef) {
55
- await this.elementRef.prepare(scope, dom, tag);
55
+ await this.elementRef.prepare(scope, dom, tag, meta);
56
56
  const tags: TagList = await this.elementRef.evaluate(scope, dom, tag, true);
57
57
  for (const t of tags)
58
58
  await t.watchStyle(this.attributeName);
@@ -22,9 +22,10 @@ export class FunctionNode extends Node implements TreeNode {
22
22
  ];
23
23
  }
24
24
 
25
- public async prepare(scope: Scope, dom: DOM, tag: Tag = null): Promise<void> {
26
- scope.set(this.name, this);
27
- await super.prepare(scope, dom, tag);
25
+ public async prepare(scope: Scope, dom: DOM, tag: Tag = null, meta?: any): Promise<void> {
26
+ if (!meta?.ClassNode) // Don't muddle up tag scope if we're in a class
27
+ scope.set(this.name, this);
28
+ await super.prepare(scope, dom, tag, meta);
28
29
  }
29
30
 
30
31
  public async evaluate(scope: Scope, dom: DOM, tag: Tag = null) {
package/src/AST/Node.ts CHANGED
@@ -27,9 +27,9 @@ export abstract class Node implements TreeNode {
27
27
  return false;
28
28
  }
29
29
 
30
- async prepare(scope: Scope, dom: DOM, tag: Tag = null) {
30
+ async prepare(scope: Scope, dom: DOM, tag: Tag = null, meta: any = null): Promise<void> {
31
31
  for (const node of this.getChildNodes()) {
32
- await node.prepare(scope, dom, tag);
32
+ await node.prepare(scope, dom, tag, meta);
33
33
  }
34
34
  }
35
35
 
package/src/AST/OnNode.ts CHANGED
@@ -5,11 +5,11 @@ import {DOM} from "../DOM";
5
5
  import {Tag} from "../Tag";
6
6
 
7
7
  export class OnNode extends FunctionNode implements TreeNode {
8
- public async prepare(scope: Scope, dom: DOM, tag: Tag = null): Promise<void> {
9
- if (tag) {
8
+ public async prepare(scope: Scope, dom: DOM, tag: Tag = null, meta): Promise<void> {
9
+ const classPrep = meta?.ClassNodePrepare; // Don't add event handler if we're in class prep
10
+ if (tag && !classPrep)
10
11
  tag.addEventHandler(this.name, [], await this.getFunction(scope, dom, tag), this);
11
- }
12
- await super.prepare(scope, dom, tag);
12
+ await super.prepare(scope, dom, tag, meta);
13
13
  }
14
14
 
15
15
  public static parse(lastNode, token, tokens: Token[]): OnNode {
package/src/AST.ts CHANGED
@@ -226,7 +226,7 @@ const TOKEN_PATTERNS: TokenPattern[] = [
226
226
  },
227
227
  {
228
228
  type: TokenType.ELEMENT_QUERY,
229
- pattern: /^\?>?\(([#.\[\]:,=\-_a-zA-Z0-9*\s]*[\]_a-zA-Z0-9*])\)/
229
+ pattern: /^\?[>|<]?\(([#.\[\]:,=\-_a-zA-Z0-9*\s]*[\]_a-zA-Z0-9*])\)/
230
230
  },
231
231
  {
232
232
  type: TokenType.NAME,
@@ -368,8 +368,7 @@ const TOKEN_PATTERNS: TokenPattern[] = [
368
368
 
369
369
  export interface TreeNode<T = any> {
370
370
  evaluate(scope: Scope, dom: DOM, tag?: Tag);
371
-
372
- prepare(scope: Scope, dom: DOM, tag?: Tag);
371
+ prepare(scope: Scope, dom: DOM, tag?: Tag, meta?: any);
373
372
  }
374
373
 
375
374
  export interface IBlockInfo {