babel-plugin-wallace 0.14.1 → 0.16.0

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 (50) hide show
  1. package/dist/ast-helpers.d.ts +35 -4
  2. package/dist/ast-helpers.js +83 -14
  3. package/dist/ast-helpers.js.map +1 -1
  4. package/dist/config.d.ts +3 -0
  5. package/dist/config.js +12 -3
  6. package/dist/config.js.map +1 -1
  7. package/dist/consolidation/ComponentDefinitionData.d.ts +9 -4
  8. package/dist/consolidation/ComponentDefinitionData.js +15 -13
  9. package/dist/consolidation/ComponentDefinitionData.js.map +1 -1
  10. package/dist/consolidation/processNodes.js +94 -92
  11. package/dist/consolidation/processNodes.js.map +1 -1
  12. package/dist/consolidation/types.d.ts +3 -3
  13. package/dist/consolidation/utils.d.ts +1 -2
  14. package/dist/consolidation/utils.js +0 -9
  15. package/dist/consolidation/utils.js.map +1 -1
  16. package/dist/constants.d.ts +14 -10
  17. package/dist/constants.js +12 -8
  18. package/dist/constants.js.map +1 -1
  19. package/dist/contexts/handlers.js +1 -1
  20. package/dist/contexts/handlers.js.map +1 -1
  21. package/dist/directives.js +3 -82
  22. package/dist/directives.js.map +1 -1
  23. package/dist/errors.d.ts +3 -10
  24. package/dist/errors.js +22 -25
  25. package/dist/errors.js.map +1 -1
  26. package/dist/index.d.ts +2 -3
  27. package/dist/index.js +2 -40
  28. package/dist/index.js.map +1 -1
  29. package/dist/models/component.d.ts +4 -3
  30. package/dist/models/component.js +16 -22
  31. package/dist/models/component.js.map +1 -1
  32. package/dist/models/index.d.ts +2 -2
  33. package/dist/models/index.js.map +1 -1
  34. package/dist/models/node.d.ts +23 -21
  35. package/dist/models/node.js +40 -67
  36. package/dist/models/node.js.map +1 -1
  37. package/dist/visitors/attribute.d.ts +2 -1
  38. package/dist/visitors/attribute.js +6 -46
  39. package/dist/visitors/attribute.js.map +1 -1
  40. package/dist/visitors/jsx.js +9 -27
  41. package/dist/visitors/jsx.js.map +1 -1
  42. package/dist/visitors/library.d.ts +26 -24
  43. package/dist/visitors/library.js +52 -47
  44. package/dist/visitors/library.js.map +1 -1
  45. package/dist/visitors/main.d.ts +3 -0
  46. package/dist/visitors/main.js +39 -0
  47. package/dist/visitors/main.js.map +1 -0
  48. package/dist/writers/defineComponent.js +14 -7
  49. package/dist/writers/defineComponent.js.map +1 -1
  50. package/package.json +2 -2
@@ -1,9 +1,22 @@
1
1
  import type { NodePath } from "@babel/core";
2
- import type { Expression, JSXElement, JSXEmptyExpression } from "@babel/types";
3
- export declare function getJSXElementName(path: NodePath<JSXElement>): string | {
2
+ import type { Expression, JSXElement, JSXAttribute, JSXEmptyExpression } from "@babel/types";
3
+ import { NodeValue } from "./models";
4
+ interface JSXElementData {
5
+ type: "normal" | "nested" | "stub";
6
+ repeat?: true;
4
7
  name: string;
5
- namespace: string;
6
- };
8
+ }
9
+ /**
10
+ * A JSXElement's openingElement can be several things:
11
+ *
12
+ * <div // A normal element
13
+ * <Foo // A nested component
14
+ * <Foo.repeat // A repeated component
15
+ * <stub.foo // A nested stub
16
+ * <stub.foo.repeat // A repeated stub
17
+ *
18
+ */
19
+ export declare function getJSXElementData(path: NodePath<JSXElement>): JSXElementData;
7
20
  /**
8
21
  * An Expression can be one of dozens of types, most of which are not usable.
9
22
  */
@@ -12,3 +25,21 @@ export declare function getPlaceholderExpression(path: NodePath, expression: Exp
12
25
  * Builds a string concat Expression.
13
26
  */
14
27
  export declare function buildConcat(parts: Expression[]): Expression;
28
+ /**
29
+ * Name could be:
30
+ * foo
31
+ * foo:bar
32
+ */
33
+ export declare function extractAttributeName(path: NodePath<JSXAttribute>): {
34
+ base: string;
35
+ qualifier: string | undefined;
36
+ };
37
+ /**
38
+ * Value could be:
39
+ *
40
+ * foo
41
+ * foo="bar"
42
+ * foo={bar}
43
+ */
44
+ export declare function extractAttributeValue(path: NodePath<JSXAttribute>): NodeValue | undefined;
45
+ export {};
@@ -1,32 +1,59 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getJSXElementName = getJSXElementName;
3
+ exports.getJSXElementData = getJSXElementData;
4
4
  exports.getPlaceholderExpression = getPlaceholderExpression;
5
5
  exports.buildConcat = buildConcat;
6
+ exports.extractAttributeName = extractAttributeName;
7
+ exports.extractAttributeValue = extractAttributeValue;
6
8
  const t = require("@babel/types");
7
9
  const errors_1 = require("./errors");
8
- function getJSXElementName(path) {
10
+ const utils_1 = require("./utils");
11
+ /**
12
+ * A JSXElement's openingElement can be several things:
13
+ *
14
+ * <div // A normal element
15
+ * <Foo // A nested component
16
+ * <Foo.repeat // A repeated component
17
+ * <stub.foo // A nested stub
18
+ * <stub.foo.repeat // A repeated stub
19
+ *
20
+ */
21
+ function getJSXElementData(path) {
9
22
  const openingElementName = path.node.openingElement.name;
10
- if (t.isJSXIdentifier(openingElementName)) {
11
- return openingElementName.name;
12
- }
13
- else if (t.isJSXNamespacedName(openingElementName)) {
23
+ if (t.isJSXNamespacedName(openingElementName)) {
14
24
  const { namespace, name } = openingElementName;
15
- return { namespace: namespace.name, name: name.name };
25
+ return { type: "normal", name: `${namespace.name}:${name.name}` };
26
+ }
27
+ else if (t.isJSXIdentifier(openingElementName)) {
28
+ const name = openingElementName.name;
29
+ return { name, type: (0, utils_1.isCapitalized)(name) ? "nested" : "normal" };
16
30
  }
17
31
  else if (t.isJSXMemberExpression(openingElementName)) {
18
32
  const { object, property } = openingElementName;
19
33
  if (t.isJSXIdentifier(object)) {
20
- return { namespace: object.name, name: property.name };
34
+ // Means we have aaa.bbb
35
+ if ((0, utils_1.isCapitalized)(object.name)) {
36
+ if (property.name === "repeat") {
37
+ return { name: object.name, type: "nested", repeat: true };
38
+ }
39
+ }
40
+ else {
41
+ if (object.name === "stub") {
42
+ return { name: property.name, type: "stub" };
43
+ }
44
+ }
21
45
  }
22
- else {
23
- (0, errors_1.error)(path, errors_1.ERROR_MESSAGES.ARROW_FUNCTION_NOT_ASSIGNED);
46
+ else if (t.isJSXMemberExpression(object)) {
47
+ // Means we have aaa.bbb.ccc
48
+ const { object: subObject, property: subProperty } = object;
49
+ if (t.isJSXIdentifier(subObject) &&
50
+ subObject.name === "stub" &&
51
+ property.name === "repeat") {
52
+ return { name: subProperty.name, type: "stub", repeat: true };
53
+ }
24
54
  }
25
55
  }
26
- else {
27
- console.debug(path.node);
28
- throw Error(`Can't read name from ${openingElementName}`);
29
- }
56
+ (0, errors_1.error)(path, errors_1.ERROR_MESSAGES.INVALID_TAG_FORMAT);
30
57
  }
31
58
  /**
32
59
  * An Expression can be one of dozens of types, most of which are not usable.
@@ -48,4 +75,46 @@ function getPlaceholderExpression(path, expression) {
48
75
  function buildConcat(parts) {
49
76
  return parts.reduce((left, right) => (left ? t.binaryExpression("+", left, right) : right), null);
50
77
  }
78
+ /**
79
+ * Name could be:
80
+ * foo
81
+ * foo:bar
82
+ */
83
+ function extractAttributeName(path) {
84
+ const { name } = path.node;
85
+ let base, qualifier;
86
+ if (t.isJSXNamespacedName(name)) {
87
+ base = name.namespace.name;
88
+ qualifier = name.name.name;
89
+ }
90
+ else {
91
+ base = name.name;
92
+ }
93
+ return { base, qualifier };
94
+ }
95
+ /**
96
+ * Value could be:
97
+ *
98
+ * foo
99
+ * foo="bar"
100
+ * foo={bar}
101
+ */
102
+ function extractAttributeValue(path) {
103
+ const { value } = path.node;
104
+ if (t.isStringLiteral(value)) {
105
+ return { type: "string", value: value.value };
106
+ }
107
+ else if (t.isJSXExpressionContainer(value)) {
108
+ const expression = getPlaceholderExpression(path, value.expression);
109
+ if (expression) {
110
+ return { type: "expression", expression: expression, path };
111
+ }
112
+ }
113
+ else if (value === null) {
114
+ return { type: "null" };
115
+ }
116
+ else {
117
+ (0, errors_1.error)(path, errors_1.ERROR_MESSAGES.JSX_ELEMENTS_NOT_ALLOWED_IN_EXPRESSIONS);
118
+ }
119
+ }
51
120
  //# sourceMappingURL=ast-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ast-helpers.js","sourceRoot":"","sources":["../src/ast-helpers.ts"],"names":[],"mappings":";;AAKA,8CAoBC;AAKD,4DAYC;AAKD,kCAKC;AApDD,kCAAkC;AAGlC,qCAAiD;AAEjD,SAAgB,iBAAiB,CAC/B,IAA0B;IAE1B,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;IACzD,IAAI,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC1C,OAAO,kBAAkB,CAAC,IAAI,CAAC;IACjC,CAAC;SAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACrD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,kBAAkB,CAAC;QAC/C,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IACxD,CAAC;SAAM,IAAI,CAAC,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACvD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAAC;QAChD,IAAI,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,IAAA,cAAK,EAAC,IAAI,EAAE,uBAAc,CAAC,2BAA2B,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,KAAK,CAAC,wBAAwB,kBAAkB,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,wBAAwB,CACtC,IAAc,EACd,UAA2C;IAE3C,IAAI,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC;QACvC,oCAAoC;QACpC,OAAO,SAAS,CAAC;IACnB,CAAC;SAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,uEAAuE;QACvE,IAAA,cAAK,EAAC,IAAI,EAAE,uBAAc,CAAC,qCAAqC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,UAAwB,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,KAAmB;IAC7C,OAAO,KAAK,CAAC,MAAM,CACjB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EACtE,IAAI,CACL,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ast-helpers.js","sourceRoot":"","sources":["../src/ast-helpers.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -3,6 +3,7 @@ import { Directive } from "./models";
3
3
  export declare enum FlagValue {
4
4
  allowBase = "allowBase",
5
5
  allowCtrl = "allowCtrl",
6
+ allowDismount = "allowDismount",
6
7
  allowMethods = "allowMethods",
7
8
  allowParts = "allowParts",
8
9
  allowRepeaterSiblings = "allowRepeaterSiblings",
@@ -19,9 +20,11 @@ declare class WallaceConfig {
19
20
  [key: string]: typeof Directive;
20
21
  };
21
22
  flags: Flag;
23
+ allFLags(): string[];
22
24
  applyOptions(options: WallaceOptions): void;
23
25
  addDirectives(directives: Array<typeof Directive>): void;
24
26
  applyFlags(suppliedFlags: Flag | undefined): void;
27
+ ensureFlagIsValid(flag: string): void;
25
28
  ensureFlagIstrue(path: NodePath<any>, flag: FlagValue): void;
26
29
  }
27
30
  export declare const wallaceConfig: WallaceConfig;
package/dist/config.js CHANGED
@@ -19,6 +19,7 @@ var FlagValue;
19
19
  (function (FlagValue) {
20
20
  FlagValue["allowBase"] = "allowBase";
21
21
  FlagValue["allowCtrl"] = "allowCtrl";
22
+ FlagValue["allowDismount"] = "allowDismount";
22
23
  FlagValue["allowMethods"] = "allowMethods";
23
24
  FlagValue["allowParts"] = "allowParts";
24
25
  FlagValue["allowRepeaterSiblings"] = "allowRepeaterSiblings";
@@ -27,6 +28,7 @@ var FlagValue;
27
28
  const DefaultFlagValues = {
28
29
  allowBase: true,
29
30
  allowCtrl: true,
31
+ allowDismount: true,
30
32
  allowMethods: true,
31
33
  allowParts: true,
32
34
  allowRepeaterSiblings: true,
@@ -35,6 +37,7 @@ const DefaultFlagValues = {
35
37
  const DefaultFlagOverrideValues = {
36
38
  allowBase: false,
37
39
  allowCtrl: false,
40
+ allowDismount: false,
38
41
  allowMethods: false,
39
42
  allowParts: false,
40
43
  allowRepeaterSiblings: false,
@@ -45,6 +48,9 @@ class WallaceConfig {
45
48
  this.directives = {};
46
49
  _WallaceConfig_loaded.set(this, false);
47
50
  }
51
+ allFLags() {
52
+ return Object.keys(DefaultFlagValues);
53
+ }
48
54
  applyOptions(options) {
49
55
  if (__classPrivateFieldGet(this, _WallaceConfig_loaded, "f")) {
50
56
  return;
@@ -70,9 +76,7 @@ class WallaceConfig {
70
76
  applyFlags(suppliedFlags) {
71
77
  if (suppliedFlags) {
72
78
  for (const [flag, value] of Object.entries(suppliedFlags)) {
73
- if (!DefaultFlagValues.hasOwnProperty(flag)) {
74
- throw new Error(`Unknown flag ${flag} in supplied flags.`);
75
- }
79
+ this.ensureFlagIsValid(flag);
76
80
  }
77
81
  this.flags = Object.assign({}, DefaultFlagOverrideValues, suppliedFlags);
78
82
  }
@@ -80,6 +84,11 @@ class WallaceConfig {
80
84
  this.flags = Object.assign({}, DefaultFlagValues, suppliedFlags);
81
85
  }
82
86
  }
87
+ ensureFlagIsValid(flag) {
88
+ if (!DefaultFlagValues.hasOwnProperty(flag)) {
89
+ throw new Error(`Unknown flag ${flag} in supplied flags.`);
90
+ }
91
+ }
83
92
  ensureFlagIstrue(path, flag) {
84
93
  if (!this.flags[flag]) {
85
94
  (0, errors_1.error)(path, errors_1.ERROR_MESSAGES.FLAG_REQUIRED(String(flag)));
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,qCAAiD;AAEjD,6CAAiD;AAEjD,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,oCAAuB,CAAA;IACvB,oCAAuB,CAAA;IACvB,0CAA6B,CAAA;IAC7B,sCAAyB,CAAA;IACzB,4DAA+C,CAAA;IAC/C,sCAAyB,CAAA;AAC3B,CAAC,EAPW,SAAS,yBAAT,SAAS,QAOpB;AASD,MAAM,iBAAiB,GAAS;IAC9B,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,IAAI;IAChB,qBAAqB,EAAE,IAAI;IAC3B,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,yBAAyB,GAAS;IACtC,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,KAAK;IAChB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;IACjB,qBAAqB,EAAE,KAAK;IAC5B,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF,MAAM,aAAa;IAAnB;QACE,eAAU,GAAwC,EAAE,CAAC;QAErD,gCAAmB,KAAK,EAAC;IA0C3B,CAAC;IAzCC,YAAY,CAAC,OAAuB;QAClC,IAAI,uBAAA,IAAI,6BAAQ,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/B,uBAAA,IAAI,yBAAW,IAAI,MAAA,CAAC;IACtB,CAAC;IACD,aAAa,CAAC,UAAmC;QAC/C,KAAK,MAAM,cAAc,IAAI,UAAU,EAAE,CAAC;YACxC,MAAM,aAAa,GAAG,cAAc,CAAC,aAAa,CAAC;YACnD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CACb,qBAAqB,cAAc,CAAC,IAAI,8BAA8B,CACvE,CAAC;YACJ,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,KAAK,CAAC,wBAAwB,aAAa,SAAS,cAAc,GAAG,CAAC,CAAC;YACjF,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,cAAc,CAAC;QAClD,CAAC;IACH,CAAC;IACD,UAAU,CAAC,aAA+B;QACxC,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC1D,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5C,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,qBAAqB,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,yBAAyB,EAAE,aAAa,CAAC,CAAC;QAC3E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IACD,gBAAgB,CAAC,IAAmB,EAAE,IAAe;QACnD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,IAAA,cAAK,EAAC,IAAI,EAAE,uBAAc,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;CACF;;AAEY,QAAA,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;AAEjD,qBAAa,CAAC,aAAa,CAAC,8BAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,19 @@ import type { Expression, CallExpression, ArrowFunctionExpression, Identifier, S
2
2
  import { Component, ExtractedNode } from "../models";
3
3
  import { IMPORTABLES } from "../constants";
4
4
  import { NodeAddress, Part, ShieldInfo } from "./types";
5
+ interface Declaration {
6
+ id: Identifier;
7
+ expression: Expression;
8
+ }
5
9
  /**
6
10
  * An object with all the consolidated data for writing.
7
11
  */
8
12
  export declare class ComponentDefinitionData {
9
13
  #private;
10
14
  stash: Array<Expression>;
11
- detachers: Array<Expression>;
15
+ stashKey: number;
16
+ additionalDeclarations: Array<Declaration>;
17
+ dismountKeys: Array<number>;
12
18
  component: Component;
13
19
  html: Expression;
14
20
  watches: Array<ComponentWatch>;
@@ -19,14 +25,12 @@ export declare class ComponentDefinitionData {
19
25
  parts: Array<Part>;
20
26
  constructor(component: Component);
21
27
  saveDynamicElement(address: NodeAddress): number;
22
- saveNestedAsDynamicElement(address: NodeAddress, componentCls: Expression): number;
23
28
  addLookup(expression: Expression): number;
24
29
  getFunctionIdentifier(name: IMPORTABLES): Identifier;
25
30
  getLookupCallBackParams(): Array<Identifier>;
26
31
  wrapDynamicElementCall(key: number, functionName: IMPORTABLES, remainingArgs: Expression[]): CallExpression;
27
32
  stashItem(expression: Expression): number;
28
- createDetacher(expression: Expression): string;
29
- getDetacherId(index: number): string;
33
+ addDeclaration(expression: Expression): Identifier;
30
34
  }
31
35
  export declare class ComponentWatch {
32
36
  #private;
@@ -42,3 +46,4 @@ export declare class ComponentWatch {
42
46
  add(lookupKey: string | number, statements: Statement[]): void;
43
47
  consolidate(): void;
44
48
  }
49
+ export {};
@@ -17,7 +17,9 @@ const utils_2 = require("../utils");
17
17
  class ComponentDefinitionData {
18
18
  constructor(component) {
19
19
  this.stash = [];
20
- this.detachers = [];
20
+ this.stashKey = -1;
21
+ this.additionalDeclarations = [];
22
+ this.dismountKeys = [];
21
23
  this.watches = [];
22
24
  this.dynamicElements = [];
23
25
  this.lookups = new Map();
@@ -31,10 +33,6 @@ class ComponentDefinitionData {
31
33
  this.dynamicElements.push((0, utils_1.buildFindElementCall)(this.component.module, address));
32
34
  return this.dynamicElements.length - 1;
33
35
  }
34
- saveNestedAsDynamicElement(address, componentCls) {
35
- this.dynamicElements.push((0, utils_1.buildNestedClassCall)(this.component.module, address, componentCls));
36
- return this.dynamicElements.length - 1;
37
- }
38
36
  addLookup(expression) {
39
37
  const hashExpression = expr => {
40
38
  const copy = JSON.parse(JSON.stringify(expr));
@@ -46,7 +44,9 @@ class ComponentDefinitionData {
46
44
  __classPrivateFieldGet(this, _ComponentDefinitionData_lookupKeys, "f").push(hash);
47
45
  }
48
46
  const key = __classPrivateFieldGet(this, _ComponentDefinitionData_lookupKeys, "f").indexOf(hash);
49
- this.lookups.set(key, (0, types_1.arrowFunctionExpression)(this.getLookupCallBackParams(), (0, types_1.blockStatement)([(0, types_1.returnStatement)(expression)])));
47
+ this.lookups.set(key, (0, types_1.arrowFunctionExpression)(this.getLookupCallBackParams(), expression
48
+ // blockStatement([expressionStatement(expression)])
49
+ ));
50
50
  return key;
51
51
  }
52
52
  getFunctionIdentifier(name) {
@@ -61,14 +61,16 @@ class ComponentDefinitionData {
61
61
  }
62
62
  stashItem(expression) {
63
63
  this.stash.push(expression);
64
- return this.stash.length - 1;
64
+ this.stashKey++;
65
+ return this.stashKey;
65
66
  }
66
- createDetacher(expression) {
67
- this.detachers.push(expression);
68
- return this.getDetacherId(this.detachers.length - 1);
69
- }
70
- getDetacherId(index) {
71
- return `detacher${index}`;
67
+ addDeclaration(expression) {
68
+ const declarationId = this.component.scope.generateUidIdentifier("tmp");
69
+ this.additionalDeclarations.push({
70
+ id: declarationId,
71
+ expression
72
+ });
73
+ return declarationId;
72
74
  }
73
75
  }
74
76
  exports.ComponentDefinitionData = ComponentDefinitionData;
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentDefinitionData.js","sourceRoot":"","sources":["../../src/consolidation/ComponentDefinitionData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ComponentDefinitionData.js","sourceRoot":"","sources":["../../src/consolidation/ComponentDefinitionData.ts"],"names":[],"mappings":"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"}