babel-plugin-wallace 0.5.0 → 0.6.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.
- package/dist/consolidation/ComponentDefinitionData.d.ts +4 -4
- package/dist/consolidation/ComponentDefinitionData.js +2 -5
- package/dist/consolidation/ComponentDefinitionData.js.map +1 -1
- package/dist/consolidation/consolidateComponent.js +2 -2
- package/dist/consolidation/consolidateComponent.js.map +1 -1
- package/dist/consolidation/postProcessing.d.ts +7 -0
- package/dist/consolidation/postProcessing.js +32 -0
- package/dist/consolidation/postProcessing.js.map +1 -0
- package/dist/consolidation/processNodes.js +36 -19
- package/dist/consolidation/processNodes.js.map +1 -1
- package/dist/consolidation/types.d.ts +6 -1
- package/dist/constants.d.ts +10 -13
- package/dist/constants.js +9 -13
- package/dist/constants.js.map +1 -1
- package/dist/contexts/parameters.js +1 -13
- package/dist/contexts/parameters.js.map +1 -1
- package/dist/directives.d.ts +6 -3
- package/dist/directives.js +5 -13
- package/dist/directives.js.map +1 -1
- package/dist/errors.d.ts +0 -1
- package/dist/errors.js +0 -3
- package/dist/errors.js.map +1 -1
- package/dist/models/directive.d.ts +3 -2
- package/dist/models/directive.js +60 -15
- package/dist/models/directive.js.map +1 -1
- package/dist/utils.js +6 -2
- package/dist/utils.js.map +1 -1
- package/dist/writers/define-component.js +9 -7
- package/dist/writers/define-component.js.map +1 -1
- package/package.json +2 -2
- package/dist/consolidation/visibility.d.ts +0 -2
- package/dist/consolidation/visibility.js +0 -22
- package/dist/consolidation/visibility.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Expression, FunctionExpression, Identifier } from "@babel/types";
|
|
1
|
+
import type { Expression, CallExpression, FunctionExpression, Identifier } from "@babel/types";
|
|
2
2
|
import { Component } from "../models";
|
|
3
3
|
import { IMPORTABLES } from "../constants";
|
|
4
|
-
import { ComponentWatch, NodeAddress } from "./types";
|
|
4
|
+
import { ComponentWatch, NodeAddress, Ref } from "./types";
|
|
5
5
|
/**
|
|
6
6
|
* An object with all the consolidated data for writing.
|
|
7
7
|
*/
|
|
@@ -17,13 +17,13 @@ export declare class ComponentDefinitionData {
|
|
|
17
17
|
lookups: {
|
|
18
18
|
[key: string]: FunctionExpression;
|
|
19
19
|
};
|
|
20
|
-
|
|
20
|
+
refs: Array<Ref>;
|
|
21
21
|
constructor(component: Component);
|
|
22
22
|
saveDynamicElement(address: NodeAddress): number;
|
|
23
23
|
saveNestedAsDynamicElement(address: NodeAddress, componentCls: Expression): number;
|
|
24
24
|
addLookup(expression: Expression): number;
|
|
25
25
|
getFunctionIdentifier(name: IMPORTABLES): Identifier;
|
|
26
26
|
getLookupCallBackParams(): Array<Identifier>;
|
|
27
|
-
wrapDynamicElementCall(key: number, functionName: IMPORTABLES, remainingArgs: Expression[]):
|
|
27
|
+
wrapDynamicElementCall(key: number, functionName: IMPORTABLES, remainingArgs: Expression[]): CallExpression;
|
|
28
28
|
getNextmiscStashKey(): number;
|
|
29
29
|
}
|
|
@@ -23,7 +23,7 @@ class ComponentDefinitionData {
|
|
|
23
23
|
this.watches = [];
|
|
24
24
|
this.dynamicElements = {};
|
|
25
25
|
this.lookups = {};
|
|
26
|
-
this.
|
|
26
|
+
this.refs = [];
|
|
27
27
|
_ComponentDefinitionData_dynamicElementKey.set(this, -1);
|
|
28
28
|
_ComponentDefinitionData_miscStashKey.set(this, 0);
|
|
29
29
|
_ComponentDefinitionData_lookupKeys.set(this, []);
|
|
@@ -64,10 +64,7 @@ class ComponentDefinitionData {
|
|
|
64
64
|
return [this.component.propsIdentifier, this.component.componentIdentifier];
|
|
65
65
|
}
|
|
66
66
|
wrapDynamicElementCall(key, functionName, remainingArgs) {
|
|
67
|
-
this.dynamicElements[key] = (0, types_1.callExpression)(this.getFunctionIdentifier(functionName), [
|
|
68
|
-
this.dynamicElements[key],
|
|
69
|
-
...remainingArgs
|
|
70
|
-
]);
|
|
67
|
+
return (this.dynamicElements[key] = (0, types_1.callExpression)(this.getFunctionIdentifier(functionName), [this.dynamicElements[key], ...remainingArgs]));
|
|
71
68
|
}
|
|
72
69
|
getNextmiscStashKey() {
|
|
73
70
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentDefinitionData.js","sourceRoot":"","sources":["../../src/consolidation/ComponentDefinitionData.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ComponentDefinitionData.js","sourceRoot":"","sources":["../../src/consolidation/ComponentDefinitionData.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.consolidateComponent = consolidateComponent;
|
|
4
4
|
const models_1 = require("../models");
|
|
5
|
-
const
|
|
5
|
+
const postProcessing_1 = require("./postProcessing");
|
|
6
6
|
const ComponentDefinitionData_1 = require("./ComponentDefinitionData");
|
|
7
7
|
const processNodes_1 = require("./processNodes");
|
|
8
8
|
const utils_1 = require("./utils");
|
|
@@ -33,7 +33,7 @@ function consolidateComponent(component) {
|
|
|
33
33
|
const componentDefinition = new ComponentDefinitionData_1.ComponentDefinitionData(component);
|
|
34
34
|
hoistTextNodes(component);
|
|
35
35
|
(0, processNodes_1.processNodes)(component, componentDefinition);
|
|
36
|
-
(0,
|
|
36
|
+
(0, postProcessing_1.postProcessing)(componentDefinition);
|
|
37
37
|
// This must be done after all the processing, as DOM may have changed.
|
|
38
38
|
componentDefinition.html = component.buildHTMLString();
|
|
39
39
|
return componentDefinition;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consolidateComponent.js","sourceRoot":"","sources":["../../src/consolidation/consolidateComponent.ts"],"names":[],"mappings":";;AA8BA,oDAQC;AAtCD,sCAAuD;AACvD,
|
|
1
|
+
{"version":3,"file":"consolidateComponent.js","sourceRoot":"","sources":["../../src/consolidation/consolidateComponent.ts"],"names":[],"mappings":";;AA8BA,oDAQC;AAtCD,sCAAuD;AACvD,qDAAkD;AAClD,uEAAoE;AACpE,iDAA8C;AAC9C,mCAAsC;AAEtC;;;GAGG;AACH,SAAS,cAAc,CAAC,SAAoB;IAC1C,MAAM,aAAa,GAAG,EAAE,CAAC;IACzB,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACtC,IAAI,IAAI,YAAY,wBAAe,EAAE,CAAC;YACpC,IAAI,IAAA,mBAAW,EAAC,IAAI,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAC3B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAC3B,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,SAAoB;IACvD,MAAM,mBAAmB,GAAG,IAAI,iDAAuB,CAAC,SAAS,CAAC,CAAC;IACnE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC1B,IAAA,2BAAY,EAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAC7C,IAAA,+BAAc,EAAC,mBAAmB,CAAC,CAAC;IACpC,uEAAuE;IACvE,mBAAmB,CAAC,IAAI,GAAG,SAAS,CAAC,eAAe,EAAE,CAAC;IACvD,OAAO,mBAAmB,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ComponentDefinitionData } from "./ComponentDefinitionData";
|
|
2
|
+
/**
|
|
3
|
+
* Sets the skipCount of each watch's shieldInfo.
|
|
4
|
+
* This indicates how many watches to skip if that element is hidden.
|
|
5
|
+
* Must be done after processing watches as we need to know how many watches to skip.
|
|
6
|
+
*/
|
|
7
|
+
export declare function postProcessing(componentDefinition: ComponentDefinitionData): void;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.postProcessing = postProcessing;
|
|
4
|
+
const t = require("@babel/types");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
/**
|
|
7
|
+
* Sets the skipCount of each watch's shieldInfo.
|
|
8
|
+
* This indicates how many watches to skip if that element is hidden.
|
|
9
|
+
* Must be done after processing watches as we need to know how many watches to skip.
|
|
10
|
+
*/
|
|
11
|
+
function postProcessing(componentDefinition) {
|
|
12
|
+
const { watches, refs } = componentDefinition;
|
|
13
|
+
const nestedCounts = {};
|
|
14
|
+
watches.forEach((watch, index) => {
|
|
15
|
+
nestedCounts[index] = watches
|
|
16
|
+
.slice(index)
|
|
17
|
+
.filter(w => (0, utils_1.arrayStartsWith)(watch.address, w.address)).length;
|
|
18
|
+
});
|
|
19
|
+
watches.forEach((watch, index) => {
|
|
20
|
+
if (watch.shieldInfo) {
|
|
21
|
+
watch.shieldInfo.skipCount = nestedCounts[index];
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
refs.forEach(ref => {
|
|
25
|
+
// need to find start and end, bearing in mind the ref may not have a watch.
|
|
26
|
+
const covered = w => ref.address == w.address || (0, utils_1.arrayStartsWith)(ref.address, w.address);
|
|
27
|
+
const start = watches.findIndex(covered) || 0;
|
|
28
|
+
const end = watches.filter(covered).length + start;
|
|
29
|
+
ref.callExpression.arguments.push(t.numericLiteral(start), t.numericLiteral(end));
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=postProcessing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postProcessing.js","sourceRoot":"","sources":["../../src/consolidation/postProcessing.ts"],"names":[],"mappings":";;AASA,wCAqBC;AA9BD,kCAAkC;AAClC,oCAA2C;AAG3C;;;;GAIG;AACH,SAAgB,cAAc,CAAC,mBAA4C;IACzE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,mBAAmB,CAAC;IAC9C,MAAM,YAAY,GAAG,EAAE,CAAC;IACxB,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC/B,YAAY,CAAC,KAAK,CAAC,GAAG,OAAO;aAC1B,KAAK,CAAC,KAAK,CAAC;aACZ,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,uBAAe,EAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACnE,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC/B,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,KAAK,CAAC,UAAU,CAAC,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACjB,4EAA4E;QAC5E,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,CAClB,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,IAAA,uBAAe,EAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QACnD,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -64,6 +64,20 @@ function addToggleCallbackStatement(componentDefinition, node, addCallbackStatem
|
|
|
64
64
|
]);
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
|
+
function processRef(componentDefinition, node, name) {
|
|
68
|
+
const otherRefs = componentDefinition.refs.map(r => r.name);
|
|
69
|
+
if (otherRefs.includes(name)) {
|
|
70
|
+
(0, errors_1.error)(node.path, errors_1.ERROR_MESSAGES.REFS_MUST_BE_UNIQUE_WITHIN_EACH_COMPONENT);
|
|
71
|
+
}
|
|
72
|
+
// Note: we modify this call expression in post processing.
|
|
73
|
+
const callExpression = componentDefinition.wrapDynamicElementCall(node.elementKey, constants_1.IMPORTABLES.saveRef, [
|
|
74
|
+
(0, types_1.identifier)(constants_1.COMPONENT_BUILD_PARAMS.component),
|
|
75
|
+
(0, types_1.identifier)(constants_1.COMPONENT_BUILD_PARAMS.refs),
|
|
76
|
+
t.stringLiteral(name)
|
|
77
|
+
]);
|
|
78
|
+
const ref = { name, callExpression, address: node.address };
|
|
79
|
+
componentDefinition.refs.push(ref);
|
|
80
|
+
}
|
|
67
81
|
// TODO: break this up.
|
|
68
82
|
function processNodes(component, componentDefinition) {
|
|
69
83
|
component.extractedNodes.forEach(node => {
|
|
@@ -81,9 +95,14 @@ function processNodes(component, componentDefinition) {
|
|
|
81
95
|
return;
|
|
82
96
|
}
|
|
83
97
|
const stubName = node.getStub();
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
98
|
+
let stubExpression;
|
|
99
|
+
if (stubName) {
|
|
100
|
+
componentDefinition.component.module.requireImport(constants_1.IMPORTABLES.getStub);
|
|
101
|
+
stubExpression = t.callExpression(t.identifier(constants_1.IMPORTABLES.getStub), [
|
|
102
|
+
t.identifier(constants_1.COMPONENT_BUILD_PARAMS.component),
|
|
103
|
+
t.stringLiteral(stubName)
|
|
104
|
+
]);
|
|
105
|
+
}
|
|
87
106
|
const visibilityToggle = node.getVisibilityToggle();
|
|
88
107
|
const ref = node.getRef();
|
|
89
108
|
const repeatInstruction = node.getRepeatInstruction();
|
|
@@ -94,13 +113,14 @@ function processNodes(component, componentDefinition) {
|
|
|
94
113
|
node.isNestedComponent ||
|
|
95
114
|
repeatInstruction || // This is NOT the same as .isRepeatedComponent, which is on parent!
|
|
96
115
|
stubName;
|
|
97
|
-
// TODO: should
|
|
116
|
+
// TODO: some of these should not save the element...
|
|
117
|
+
// restructure.
|
|
98
118
|
const shouldSaveElement = createWatch || ref || node.eventListeners.length > 0 || node.hasConditionalChildren;
|
|
99
119
|
ensureToggleTargetsHaveTriggers(node);
|
|
100
120
|
if (shouldSaveElement) {
|
|
101
121
|
const nestedComponentCls = node.isNestedComponent || node.isRepeatedComponent
|
|
102
122
|
? t.identifier(node.tagName)
|
|
103
|
-
:
|
|
123
|
+
: stubExpression;
|
|
104
124
|
node.elementKey = nestedComponentCls
|
|
105
125
|
? componentDefinition.saveNestedAsDynamicElement(node.address, nestedComponentCls)
|
|
106
126
|
: componentDefinition.saveDynamicElement(node.address);
|
|
@@ -109,7 +129,7 @@ function processNodes(component, componentDefinition) {
|
|
|
109
129
|
}
|
|
110
130
|
if (node.hasConditionalChildren) {
|
|
111
131
|
node.detacherStashKey = componentDefinition.getNextmiscStashKey();
|
|
112
|
-
componentDefinition.wrapDynamicElementCall(node.elementKey, constants_1.IMPORTABLES.stashMisc, [(0, types_1.identifier)(constants_1.COMPONENT_BUILD_PARAMS.
|
|
132
|
+
componentDefinition.wrapDynamicElementCall(node.elementKey, constants_1.IMPORTABLES.stashMisc, [(0, types_1.identifier)(constants_1.COMPONENT_BUILD_PARAMS.stash), t.objectExpression([])]);
|
|
113
133
|
}
|
|
114
134
|
if (createWatch) {
|
|
115
135
|
const _callbacks = {};
|
|
@@ -175,6 +195,7 @@ function processNodes(component, componentDefinition) {
|
|
|
175
195
|
}
|
|
176
196
|
if (repeatInstruction) {
|
|
177
197
|
componentDefinition.component.module.requireImport(constants_1.IMPORTABLES.SequentialRepeater);
|
|
198
|
+
componentDefinition.component.module.requireImport(constants_1.IMPORTABLES.stashMisc);
|
|
178
199
|
const poolInstance = repeatInstruction.poolExpression ||
|
|
179
200
|
(0, types_1.newExpression)((0, types_1.identifier)(constants_1.IMPORTABLES.SequentialRepeater), [
|
|
180
201
|
(0, types_1.identifier)(repeatInstruction.componentCls)
|
|
@@ -182,7 +203,7 @@ function processNodes(component, componentDefinition) {
|
|
|
182
203
|
// TODO: couple the stash index with the call to save - if possible?
|
|
183
204
|
// Or make it an object and pass the key when saving.
|
|
184
205
|
const miscStashKey = componentDefinition.getNextmiscStashKey();
|
|
185
|
-
componentDefinition.wrapDynamicElementCall(node.elementKey, constants_1.IMPORTABLES.stashMisc, [(0, types_1.identifier)(constants_1.COMPONENT_BUILD_PARAMS.
|
|
206
|
+
componentDefinition.wrapDynamicElementCall(node.elementKey, constants_1.IMPORTABLES.stashMisc, [(0, types_1.identifier)(constants_1.COMPONENT_BUILD_PARAMS.stash), poolInstance]);
|
|
186
207
|
addCallbackStatement(constants_1.SPECIAL_SYMBOLS.noLookup, [
|
|
187
208
|
(0, types_1.expressionStatement)((0, types_1.callExpression)((0, types_1.memberExpression)((0, types_1.memberExpression)((0, types_1.memberExpression)(component.componentIdentifier, (0, types_1.identifier)(constants_1.SPECIAL_SYMBOLS.objectStash)), (0, types_1.numericLiteral)(miscStashKey), true), (0, types_1.identifier)(constants_1.SPECIAL_SYMBOLS.patch)), [
|
|
188
209
|
(0, types_1.identifier)(constants_1.WATCH_AlWAYS_CALLBACK_ARGS.element),
|
|
@@ -196,16 +217,8 @@ function processNodes(component, componentDefinition) {
|
|
|
196
217
|
componentWatch.callbacks[key] = (0, types_1.functionExpression)(null, args, (0, types_1.blockStatement)(_callbacks[key]));
|
|
197
218
|
}
|
|
198
219
|
}
|
|
199
|
-
if (ref)
|
|
200
|
-
|
|
201
|
-
(0, errors_1.error)(node.path, errors_1.ERROR_MESSAGES.REFS_MUST_BE_UNIQUE_WITHIN_EACH_COMPONENT);
|
|
202
|
-
}
|
|
203
|
-
componentDefinition.collectedRefs.push(ref);
|
|
204
|
-
componentDefinition.wrapDynamicElementCall(node.elementKey, constants_1.IMPORTABLES.saveRef, [
|
|
205
|
-
(0, types_1.identifier)(constants_1.COMPONENT_BUILD_PARAMS.component),
|
|
206
|
-
(0, types_1.stringLiteral)(ref)
|
|
207
|
-
]);
|
|
208
|
-
}
|
|
220
|
+
if (ref)
|
|
221
|
+
processRef(componentDefinition, node, ref);
|
|
209
222
|
// TODO: improve this, as we are basically renaming things specifically for the
|
|
210
223
|
// build function that have already been renamed, which can get confusing.
|
|
211
224
|
// It also needs to rename ctrl and props explicitly as it doesn't seem to
|
|
@@ -213,9 +226,13 @@ function processNodes(component, componentDefinition) {
|
|
|
213
226
|
const eventVariableMapping = {
|
|
214
227
|
[component.componentIdentifier.name]: constants_1.COMPONENT_BUILD_PARAMS.component,
|
|
215
228
|
[component.componentIdentifier.name + "." + constants_1.SPECIAL_SYMBOLS.ctrl]: `${constants_1.COMPONENT_BUILD_PARAMS.component}.${constants_1.SPECIAL_SYMBOLS.ctrl}`,
|
|
216
|
-
[component.propsIdentifier.name]: `${constants_1.COMPONENT_BUILD_PARAMS.component}.props
|
|
217
|
-
[
|
|
229
|
+
[component.propsIdentifier.name]: `${constants_1.COMPONENT_BUILD_PARAMS.component}.props`
|
|
230
|
+
// [EVENT_CALLBACK_ARGS.element]: `${EVENT_CALLBACK_ARGS.event}.target`
|
|
218
231
|
};
|
|
232
|
+
if (component.xargMapping.hasOwnProperty(constants_1.XARGS.element)) {
|
|
233
|
+
eventVariableMapping[constants_1.EVENT_CALLBACK_ARGS.element] =
|
|
234
|
+
`${constants_1.EVENT_CALLBACK_ARGS.event}.target`;
|
|
235
|
+
}
|
|
219
236
|
node.eventListeners.forEach(listener => {
|
|
220
237
|
const updatedExpression = (0, utils_2.renameVariablesInExpression)(listener.callback, eventVariableMapping);
|
|
221
238
|
componentDefinition.wrapDynamicElementCall(node.elementKey, constants_1.IMPORTABLES.onEvent, [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processNodes.js","sourceRoot":"","sources":["../../src/consolidation/processNodes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"processNodes.js","sourceRoot":"","sources":["../../src/consolidation/processNodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { FunctionExpression } from "@babel/types";
|
|
1
|
+
import type { CallExpression, FunctionExpression } from "@babel/types";
|
|
2
2
|
export type NodeAddress = Array<number>;
|
|
3
3
|
export interface Detacher {
|
|
4
4
|
index: number;
|
|
@@ -19,3 +19,8 @@ export interface ComponentWatch {
|
|
|
19
19
|
};
|
|
20
20
|
address: NodeAddress;
|
|
21
21
|
}
|
|
22
|
+
export interface Ref {
|
|
23
|
+
callExpression: CallExpression;
|
|
24
|
+
address: NodeAddress;
|
|
25
|
+
name: string;
|
|
26
|
+
}
|
package/dist/constants.d.ts
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
export declare enum COMPONENT_BUILD_PARAMS {
|
|
2
2
|
component = "component",
|
|
3
|
-
rootElement = "root"
|
|
3
|
+
rootElement = "root",
|
|
4
|
+
elements = "elements",
|
|
5
|
+
stash = "stash",
|
|
6
|
+
previous = "previous",
|
|
7
|
+
refs = "refs"
|
|
4
8
|
}
|
|
5
9
|
export declare enum COMPONENT_METHODS {
|
|
6
|
-
render = "render"
|
|
7
|
-
getStub = "_gs"
|
|
10
|
+
render = "render"
|
|
8
11
|
}
|
|
9
12
|
export declare const HTML_SPLITTER = "____split____";
|
|
10
13
|
export declare enum IMPORTABLES {
|
|
11
14
|
defineComponent = "defineComponent",
|
|
12
15
|
extendComponent = "extendComponent",
|
|
13
16
|
findElement = "findElement",
|
|
17
|
+
getStub = "getStub",
|
|
14
18
|
nestComponent = "nestComponent",
|
|
15
19
|
saveRef = "saveRef",
|
|
16
20
|
stashMisc = "stashMisc",
|
|
@@ -24,19 +28,10 @@ export declare enum IMPORTABLES {
|
|
|
24
28
|
export declare enum XARGS {
|
|
25
29
|
controller = "ctrl",
|
|
26
30
|
component = "self",
|
|
31
|
+
props = "props",
|
|
27
32
|
event = "event",
|
|
28
33
|
element = "element"
|
|
29
34
|
}
|
|
30
|
-
/**
|
|
31
|
-
* The scope variables that might be allowed in directive expressions.
|
|
32
|
-
* The value is not indicative of the final variable name.
|
|
33
|
-
*/
|
|
34
|
-
export declare enum EXPRESSION_SCOPE_VARIABLES {
|
|
35
|
-
component = "self",
|
|
36
|
-
props = "props",
|
|
37
|
-
element = "element",
|
|
38
|
-
event = "event"
|
|
39
|
-
}
|
|
40
35
|
export declare enum WATCH_CALLBACK_ARGS {
|
|
41
36
|
newValue = "n",
|
|
42
37
|
oldValue = "o",
|
|
@@ -54,7 +49,9 @@ export declare enum EVENT_CALLBACK_ARGS {
|
|
|
54
49
|
element = "element"
|
|
55
50
|
}
|
|
56
51
|
export declare enum SPECIAL_SYMBOLS {
|
|
52
|
+
elementStash = "_e",
|
|
57
53
|
objectStash = "_s",
|
|
54
|
+
refs = "refs",
|
|
58
55
|
noLookup = "__",
|
|
59
56
|
patch = "patch",
|
|
60
57
|
ctrl = "ctrl"
|
package/dist/constants.js
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DOM_EVENT_HANDLERS = exports.DOM_EVENTS_LOWERCASE = exports.DOM_EVENTS = exports.SPECIAL_SYMBOLS = exports.EVENT_CALLBACK_ARGS = exports.WATCH_AlWAYS_CALLBACK_ARGS = exports.WATCH_CALLBACK_ARGS = exports.
|
|
3
|
+
exports.DOM_EVENT_HANDLERS = exports.DOM_EVENTS_LOWERCASE = exports.DOM_EVENTS = exports.SPECIAL_SYMBOLS = exports.EVENT_CALLBACK_ARGS = exports.WATCH_AlWAYS_CALLBACK_ARGS = exports.WATCH_CALLBACK_ARGS = exports.XARGS = exports.IMPORTABLES = exports.HTML_SPLITTER = exports.COMPONENT_METHODS = exports.COMPONENT_BUILD_PARAMS = void 0;
|
|
4
4
|
var COMPONENT_BUILD_PARAMS;
|
|
5
5
|
(function (COMPONENT_BUILD_PARAMS) {
|
|
6
6
|
COMPONENT_BUILD_PARAMS["component"] = "component";
|
|
7
7
|
COMPONENT_BUILD_PARAMS["rootElement"] = "root";
|
|
8
|
+
COMPONENT_BUILD_PARAMS["elements"] = "elements";
|
|
9
|
+
COMPONENT_BUILD_PARAMS["stash"] = "stash";
|
|
10
|
+
COMPONENT_BUILD_PARAMS["previous"] = "previous";
|
|
11
|
+
COMPONENT_BUILD_PARAMS["refs"] = "refs";
|
|
8
12
|
})(COMPONENT_BUILD_PARAMS || (exports.COMPONENT_BUILD_PARAMS = COMPONENT_BUILD_PARAMS = {}));
|
|
9
13
|
var COMPONENT_METHODS;
|
|
10
14
|
(function (COMPONENT_METHODS) {
|
|
11
15
|
COMPONENT_METHODS["render"] = "render";
|
|
12
|
-
COMPONENT_METHODS["getStub"] = "_gs";
|
|
13
16
|
})(COMPONENT_METHODS || (exports.COMPONENT_METHODS = COMPONENT_METHODS = {}));
|
|
14
17
|
exports.HTML_SPLITTER = "____split____";
|
|
15
18
|
var IMPORTABLES;
|
|
@@ -17,6 +20,7 @@ var IMPORTABLES;
|
|
|
17
20
|
IMPORTABLES["defineComponent"] = "defineComponent";
|
|
18
21
|
IMPORTABLES["extendComponent"] = "extendComponent";
|
|
19
22
|
IMPORTABLES["findElement"] = "findElement";
|
|
23
|
+
IMPORTABLES["getStub"] = "getStub";
|
|
20
24
|
IMPORTABLES["nestComponent"] = "nestComponent";
|
|
21
25
|
IMPORTABLES["saveRef"] = "saveRef";
|
|
22
26
|
IMPORTABLES["stashMisc"] = "stashMisc";
|
|
@@ -31,20 +35,10 @@ var XARGS;
|
|
|
31
35
|
(function (XARGS) {
|
|
32
36
|
XARGS["controller"] = "ctrl";
|
|
33
37
|
XARGS["component"] = "self";
|
|
38
|
+
XARGS["props"] = "props";
|
|
34
39
|
XARGS["event"] = "event";
|
|
35
40
|
XARGS["element"] = "element";
|
|
36
41
|
})(XARGS || (exports.XARGS = XARGS = {}));
|
|
37
|
-
/**
|
|
38
|
-
* The scope variables that might be allowed in directive expressions.
|
|
39
|
-
* The value is not indicative of the final variable name.
|
|
40
|
-
*/
|
|
41
|
-
var EXPRESSION_SCOPE_VARIABLES;
|
|
42
|
-
(function (EXPRESSION_SCOPE_VARIABLES) {
|
|
43
|
-
EXPRESSION_SCOPE_VARIABLES["component"] = "self";
|
|
44
|
-
EXPRESSION_SCOPE_VARIABLES["props"] = "props";
|
|
45
|
-
EXPRESSION_SCOPE_VARIABLES["element"] = "element";
|
|
46
|
-
EXPRESSION_SCOPE_VARIABLES["event"] = "event";
|
|
47
|
-
})(EXPRESSION_SCOPE_VARIABLES || (exports.EXPRESSION_SCOPE_VARIABLES = EXPRESSION_SCOPE_VARIABLES = {}));
|
|
48
42
|
var WATCH_CALLBACK_ARGS;
|
|
49
43
|
(function (WATCH_CALLBACK_ARGS) {
|
|
50
44
|
WATCH_CALLBACK_ARGS["newValue"] = "n";
|
|
@@ -66,7 +60,9 @@ var EVENT_CALLBACK_ARGS;
|
|
|
66
60
|
})(EVENT_CALLBACK_ARGS || (exports.EVENT_CALLBACK_ARGS = EVENT_CALLBACK_ARGS = {}));
|
|
67
61
|
var SPECIAL_SYMBOLS;
|
|
68
62
|
(function (SPECIAL_SYMBOLS) {
|
|
63
|
+
SPECIAL_SYMBOLS["elementStash"] = "_e";
|
|
69
64
|
SPECIAL_SYMBOLS["objectStash"] = "_s";
|
|
65
|
+
SPECIAL_SYMBOLS["refs"] = "refs";
|
|
70
66
|
SPECIAL_SYMBOLS["noLookup"] = "__";
|
|
71
67
|
SPECIAL_SYMBOLS["patch"] = "patch";
|
|
72
68
|
SPECIAL_SYMBOLS["ctrl"] = "ctrl";
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,18 +22,6 @@ function expandNameToMemberExpression(name) {
|
|
|
22
22
|
}
|
|
23
23
|
return t.memberExpression(expandNameToMemberExpression(rest), t.identifier(end));
|
|
24
24
|
}
|
|
25
|
-
function checkForIllegalNamesInProps(path, propVariableMap) {
|
|
26
|
-
const illegalNamesFound = [];
|
|
27
|
-
for (let name in constants_1.XARGS) {
|
|
28
|
-
const variable = constants_1.XARGS[name];
|
|
29
|
-
if (propVariableMap.hasOwnProperty(variable)) {
|
|
30
|
-
illegalNamesFound.push(variable);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
if (illegalNamesFound.length > 0) {
|
|
34
|
-
(0, errors_1.error)(path, errors_1.ERROR_MESSAGES.ILLEGAL_NAMES_IN_PROPS(illegalNamesFound));
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
25
|
function checkForIllegalNamesInExtraArgs(path) {
|
|
38
26
|
const extraArg = path.node.params[1];
|
|
39
27
|
if (extraArg === undefined) {
|
|
@@ -114,6 +102,7 @@ function mapAndRenameXargs(path, component) {
|
|
|
114
102
|
const renameMapping = {};
|
|
115
103
|
renameMapping[constants_1.XARGS.event] = constants_1.XARGS.event;
|
|
116
104
|
renameMapping[constants_1.XARGS.element] = constants_1.XARGS.element;
|
|
105
|
+
renameMapping[constants_1.XARGS.props] = component.propsIdentifier.name;
|
|
117
106
|
renameMapping[constants_1.XARGS.component] = component.componentIdentifier.name;
|
|
118
107
|
renameMapping[constants_1.XARGS.controller] =
|
|
119
108
|
`${component.componentIdentifier.name}.${constants_1.SPECIAL_SYMBOLS.ctrl}`;
|
|
@@ -133,7 +122,6 @@ function processFunctionParameters(path, component) {
|
|
|
133
122
|
return;
|
|
134
123
|
}
|
|
135
124
|
const propVariableMap = extractFinalPropsName(path);
|
|
136
|
-
checkForIllegalNamesInProps(path, propVariableMap);
|
|
137
125
|
checkForIllegalNamesInExtraArgs(path);
|
|
138
126
|
renamePropKeysInsideFunction(path, propVariableMap, component.propsIdentifier.name);
|
|
139
127
|
mapAndRenameXargs(path, component);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/contexts/parameters.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/contexts/parameters.ts"],"names":[],"mappings":"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"}
|
package/dist/directives.d.ts
CHANGED
|
@@ -7,10 +7,13 @@
|
|
|
7
7
|
* changes here be sure to update that file.
|
|
8
8
|
*/
|
|
9
9
|
import { Directive, TagNode, NodeValue, Qualifier } from "./models";
|
|
10
|
-
declare class
|
|
10
|
+
declare class ApplyDirective extends Directive {
|
|
11
11
|
static attributeName: string;
|
|
12
|
-
static
|
|
12
|
+
static allowNull: boolean;
|
|
13
|
+
static allowString: boolean;
|
|
14
|
+
static allowQualifier: boolean;
|
|
15
|
+
static mayAccessElement: boolean;
|
|
13
16
|
apply(node: TagNode, value: NodeValue, _qualifier: Qualifier, _base: string): void;
|
|
14
17
|
}
|
|
15
|
-
export declare const builtinDirectives: (typeof
|
|
18
|
+
export declare const builtinDirectives: (typeof ApplyDirective)[];
|
|
16
19
|
export {};
|
package/dist/directives.js
CHANGED
|
@@ -21,11 +21,7 @@ ApplyDirective.attributeName = "apply";
|
|
|
21
21
|
ApplyDirective.allowNull = true;
|
|
22
22
|
ApplyDirective.allowString = false;
|
|
23
23
|
ApplyDirective.allowQualifier = false;
|
|
24
|
-
ApplyDirective.
|
|
25
|
-
constants_1.EXPRESSION_SCOPE_VARIABLES.component,
|
|
26
|
-
constants_1.EXPRESSION_SCOPE_VARIABLES.props,
|
|
27
|
-
constants_1.EXPRESSION_SCOPE_VARIABLES.element
|
|
28
|
-
];
|
|
24
|
+
ApplyDirective.mayAccessElement = true;
|
|
29
25
|
class BindDirective extends models_1.Directive {
|
|
30
26
|
apply(node, value, qualifier, _base) {
|
|
31
27
|
const eventName = qualifier || "change";
|
|
@@ -79,7 +75,7 @@ class CssDirective extends models_1.Directive {
|
|
|
79
75
|
}
|
|
80
76
|
}
|
|
81
77
|
CssDirective.attributeName = "css";
|
|
82
|
-
CssDirective.
|
|
78
|
+
CssDirective.mayAccessComponent = false;
|
|
83
79
|
class FixedDirective extends models_1.Directive {
|
|
84
80
|
apply(node, value, qualifier, _base) {
|
|
85
81
|
node.addStaticAttribute(qualifier, value.expression);
|
|
@@ -87,7 +83,7 @@ class FixedDirective extends models_1.Directive {
|
|
|
87
83
|
}
|
|
88
84
|
FixedDirective.attributeName = "fixed";
|
|
89
85
|
FixedDirective.requireQualifier = true;
|
|
90
|
-
FixedDirective.
|
|
86
|
+
FixedDirective.mayAccessComponent = false;
|
|
91
87
|
class HideDirective extends models_1.Directive {
|
|
92
88
|
apply(node, value, _qualifier, _base) {
|
|
93
89
|
node.setVisibilityToggle(value.expression, false, false);
|
|
@@ -142,12 +138,8 @@ class OnEventDirective extends models_1.Directive {
|
|
|
142
138
|
}
|
|
143
139
|
OnEventDirective.attributeName = "on*";
|
|
144
140
|
OnEventDirective.allowString = true;
|
|
145
|
-
OnEventDirective.
|
|
146
|
-
|
|
147
|
-
constants_1.EXPRESSION_SCOPE_VARIABLES.props,
|
|
148
|
-
constants_1.EXPRESSION_SCOPE_VARIABLES.element,
|
|
149
|
-
constants_1.EXPRESSION_SCOPE_VARIABLES.event
|
|
150
|
-
];
|
|
141
|
+
OnEventDirective.mayAccessElement = true;
|
|
142
|
+
OnEventDirective.mayAccessEvent = true;
|
|
151
143
|
OnEventDirective.help = `
|
|
152
144
|
Creates an event handler:
|
|
153
145
|
|
package/dist/directives.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directives.js","sourceRoot":"","sources":["../src/directives.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,qCAAiD;AACjD,qCAAoE;AACpE,
|
|
1
|
+
{"version":3,"file":"directives.js","sourceRoot":"","sources":["../src/directives.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -36,7 +36,6 @@ export declare const ERROR_MESSAGES: {
|
|
|
36
36
|
REPEAT_DIRECTIVE_WITH_CHILDREN: string;
|
|
37
37
|
TOGGLE_TARGETS_WITHOUT_TOGGLE_TRIGGERS: string;
|
|
38
38
|
UNSUPPORTED_NAMESPACE: string;
|
|
39
|
-
ILLEGAL_NAMES_IN_PROPS: (names: string[]) => string;
|
|
40
39
|
XARGS_MUST_BE_OBJECT: string;
|
|
41
40
|
ILLEGAL_XARG: (name: string) => string;
|
|
42
41
|
};
|
package/dist/errors.js
CHANGED
|
@@ -58,9 +58,6 @@ exports.ERROR_MESSAGES = {
|
|
|
58
58
|
REPEAT_DIRECTIVE_WITH_CHILDREN: "Repeat may not have child nodes.",
|
|
59
59
|
TOGGLE_TARGETS_WITHOUT_TOGGLE_TRIGGERS: "Toggle targets must have toggle triggers.",
|
|
60
60
|
UNSUPPORTED_NAMESPACE: "Unsupported namespace, may only use 'stub'.",
|
|
61
|
-
ILLEGAL_NAMES_IN_PROPS: (names) => `Illegal names in props: ${names
|
|
62
|
-
.map(name => `"${name}"`)
|
|
63
|
-
.join(", ")} - these are reserved for extra args.`,
|
|
64
61
|
XARGS_MUST_BE_OBJECT: "Extra args must be a destructured object.",
|
|
65
62
|
ILLEGAL_XARG: (name) => `Illegal parameter in extra args: "${name}". You are only allowed ${ALLOWED_XARGS.join(", ")}.`
|
|
66
63
|
};
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@ import type { NodePath } from "@babel/core";
|
|
|
2
2
|
import type { Expression } from "@babel/types";
|
|
3
3
|
import { TagNode } from "./node";
|
|
4
4
|
import { Component } from "../models";
|
|
5
|
-
import { EXPRESSION_SCOPE_VARIABLES } from "../constants";
|
|
6
5
|
export interface NodeValue {
|
|
7
6
|
type: "string" | "expression" | "null";
|
|
8
7
|
value?: string;
|
|
@@ -21,7 +20,9 @@ export declare class Directive {
|
|
|
21
20
|
static allowOnNested: boolean;
|
|
22
21
|
static allowOnRepeated: boolean;
|
|
23
22
|
static allowOnNormalElement: boolean;
|
|
24
|
-
static
|
|
23
|
+
static mayAccessComponent: boolean;
|
|
24
|
+
static mayAccessElement: boolean;
|
|
25
|
+
static mayAccessEvent: boolean;
|
|
25
26
|
static allowedTypes: {
|
|
26
27
|
[key: string]: NodeValue["type"];
|
|
27
28
|
};
|
package/dist/models/directive.js
CHANGED
|
@@ -46,17 +46,61 @@ class Directive {
|
|
|
46
46
|
}
|
|
47
47
|
/*
|
|
48
48
|
Ensures the expression only accesses the scope variables it is allowed to.
|
|
49
|
+
|
|
50
|
+
In code like this:
|
|
51
|
+
|
|
52
|
+
const Foo = ({ age }, { ctrl, self, element, event, props }) => (
|
|
53
|
+
<div
|
|
54
|
+
onClick={doXYZ(element, event)}
|
|
55
|
+
class={[ctrl, self, age, props.foo, self.bar]}>
|
|
56
|
+
</div>
|
|
57
|
+
);
|
|
58
|
+
|
|
59
|
+
The component.xargMapping would be this:
|
|
60
|
+
|
|
61
|
+
{
|
|
62
|
+
event: 'event',
|
|
63
|
+
element: 'element',
|
|
64
|
+
_props: 'props',
|
|
65
|
+
_component: 'self',
|
|
66
|
+
'_component.ctrl': 'ctrl'
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
And logging (idPath.node.name, ">>", name) in getReferencedScopedVariables prints:
|
|
70
|
+
|
|
71
|
+
element >> element
|
|
72
|
+
event >> event
|
|
73
|
+
_component.ctrl >> ctrl
|
|
74
|
+
_component >> self
|
|
75
|
+
_props >> props
|
|
76
|
+
_props >> props
|
|
77
|
+
_component >> self
|
|
78
|
+
|
|
79
|
+
Note that `doXYZ` is excluded, as the function scope doesn't have its own binding.
|
|
80
|
+
|
|
81
|
+
The error message must mention the original variable name used.
|
|
82
|
+
We must also ignore variables that are not in scope.
|
|
49
83
|
*/
|
|
50
84
|
validateScopeVariablAccess(node, value, constructor, component) {
|
|
51
85
|
if (value.type !== "expression")
|
|
52
86
|
return;
|
|
53
|
-
const { attributeName,
|
|
87
|
+
const { attributeName, mayAccessComponent, mayAccessElement, mayAccessEvent } = constructor;
|
|
88
|
+
const accesError = (name) => (0, errors_1.error)(node.path, errors_1.ERROR_MESSAGES.DIRECTIVE_MAY_NOT_ACCESS_SCOPE_VAR(attributeName, name));
|
|
54
89
|
const refs = getReferencedScopedVariables(value.path, component);
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
90
|
+
if (!mayAccessElement && refs.includes(constants_1.XARGS.element)) {
|
|
91
|
+
accesError(constants_1.XARGS.element);
|
|
92
|
+
}
|
|
93
|
+
if (!mayAccessEvent && refs.includes(constants_1.XARGS.event)) {
|
|
94
|
+
accesError(constants_1.XARGS.event);
|
|
95
|
+
}
|
|
96
|
+
if (!mayAccessComponent) {
|
|
97
|
+
const componentRefs = [constants_1.XARGS.props, constants_1.XARGS.component, constants_1.XARGS.controller];
|
|
98
|
+
componentRefs.forEach(name => {
|
|
99
|
+
if (refs.includes(name)) {
|
|
100
|
+
accesError(name);
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
}
|
|
60
104
|
}
|
|
61
105
|
}
|
|
62
106
|
exports.Directive = Directive;
|
|
@@ -68,21 +112,22 @@ Directive.requireQualifier = false;
|
|
|
68
112
|
Directive.allowOnNested = false;
|
|
69
113
|
Directive.allowOnRepeated = false;
|
|
70
114
|
Directive.allowOnNormalElement = true;
|
|
71
|
-
Directive.
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
];
|
|
115
|
+
Directive.mayAccessComponent = true;
|
|
116
|
+
Directive.mayAccessElement = false;
|
|
117
|
+
Directive.mayAccessEvent = false;
|
|
75
118
|
function getReferencedScopedVariables(path, component) {
|
|
76
119
|
const refs = new Set();
|
|
77
120
|
path.traverse({
|
|
78
121
|
Identifier(idPath) {
|
|
79
|
-
if (idPath.isReferencedIdentifier()) {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
122
|
+
if (idPath.isReferencedIdentifier() && idPath.scope.hasBinding(idPath.node.name)) {
|
|
123
|
+
// An identifier doesn't normally need to be split, as it's just the fist part,
|
|
124
|
+
// but we have renamed some to things like `_component.ctrl` so be mindful.
|
|
125
|
+
let name = idPath.node.name;
|
|
126
|
+
if (component.xargMapping[idPath.node.name]) {
|
|
127
|
+
name = component.xargMapping[idPath.node.name];
|
|
83
128
|
}
|
|
84
129
|
else if (name === component.propsIdentifier.name) {
|
|
85
|
-
name = constants_1.
|
|
130
|
+
name = constants_1.XARGS.props;
|
|
86
131
|
}
|
|
87
132
|
refs.add(name);
|
|
88
133
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directive.js","sourceRoot":"","sources":["../../src/models/directive.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"directive.js","sourceRoot":"","sources":["../../src/models/directive.ts"],"names":[],"mappings":";;;AAEA,4CAAqC;AAGrC,sCAAkD;AAWlD,MAAa,SAAS;IAepB,KAAK,CAAC,IAAa,EAAE,KAAgB,EAAE,SAAoB,EAAE,IAAY,IAAG,CAAC;IAC7E,QAAQ,CACN,IAAa,EACb,KAAgB,EAChB,SAAoB,EACpB,IAAY,EACZ,SAAoB;QAEpB,MAAM,WAAW,GAAG,IAAI,CAAC,WAA+B,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACrD,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACvE,CAAC;IACD,YAAY,CAAC,IAAa,EAAE,KAAgB,EAAE,WAA6B;QACzE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,WAAW,CAAC;QAC/E,MAAM,YAAY,GAAG;YACnB,eAAe,IAAI,YAAY;YAC/B,WAAW,IAAI,QAAQ;YACvB,SAAS,IAAI,MAAM;SACpB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,IAAA,cAAK,EACH,IAAI,CAAC,IAAI,EACT,uBAAc,CAAC,sBAAsB,CAAC,aAAa,EAAE,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAC/E,CAAC;QACJ,CAAC;IACH,CAAC;IACD,uBAAuB,CAAC,IAAa,EAAE,WAA6B;QAClE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,WAAW,CAAC;QACtE,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACjD,IAAA,cAAK,EACH,IAAI,CAAC,IAAI,EACT,uBAAc,CAAC,wCAAwC,CAAC,aAAa,CAAC,CACvE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC7C,IAAA,cAAK,EACH,IAAI,CAAC,IAAI,EACT,uBAAc,CAAC,sCAAsC,CAAC,aAAa,CAAC,CACrE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,iBAAiB,CAAC,IAAa,EAAE,SAAoB,EAAE,WAA6B;QAClF,IAAI,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC;QACtE,IAAI,gBAAgB,EAAE,CAAC;YACrB,cAAc,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,gBAAgB,IAAI,CAAC,SAAS,EAAE,CAAC;YACnC,IAAA,cAAK,EACH,IAAI,CAAC,IAAI,EACT,uBAAc,CAAC,sCAAsC,CAAC,aAAa,CAAC,CACrE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,IAAI,SAAS,EAAE,CAAC;YACjC,IAAA,cAAK,EAAC,IAAI,CAAC,IAAI,EAAE,uBAAc,CAAC,mCAAmC,CAAC,aAAa,CAAC,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAoCE;IACF,0BAA0B,CACxB,IAAa,EACb,KAAgB,EAChB,WAA6B,EAC7B,SAAoB;QAEpB,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;YAAE,OAAO;QAExC,MAAM,EAAE,aAAa,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,cAAc,EAAE,GAC3E,WAAW,CAAC;QACd,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE,CAClC,IAAA,cAAK,EACH,IAAI,CAAC,IAAI,EACT,uBAAc,CAAC,kCAAkC,CAAC,aAAa,EAAE,IAAI,CAAC,CACvE,CAAC;QAEJ,MAAM,IAAI,GAAG,4BAA4B,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAEjE,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACtD,UAAU,CAAC,iBAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAClD,UAAU,CAAC,iBAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,MAAM,aAAa,GAAG,CAAC,iBAAK,CAAC,KAAK,EAAE,iBAAK,CAAC,SAAS,EAAE,iBAAK,CAAC,UAAU,CAAC,CAAC;YACvE,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAC3B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,UAAU,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;;AA9IH,8BA+IC;AA5IQ,yBAAe,GAAG,IAAI,CAAC;AACvB,mBAAS,GAAG,KAAK,CAAC;AAClB,qBAAW,GAAG,KAAK,CAAC;AACpB,wBAAc,GAAG,KAAK,CAAC;AACvB,0BAAgB,GAAG,KAAK,CAAC;AACzB,uBAAa,GAAG,KAAK,CAAC;AACtB,yBAAe,GAAG,KAAK,CAAC;AACxB,8BAAoB,GAAG,IAAI,CAAC;AAC5B,4BAAkB,GAAG,IAAI,CAAC;AAC1B,0BAAgB,GAAG,KAAK,CAAC;AACzB,wBAAc,GAAG,KAAK,CAAC;AAoIhC,SAAS,4BAA4B,CAAC,IAAc,EAAE,SAAoB;IACxE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,CAAC,QAAQ,CAAC;QACZ,UAAU,CAAC,MAAM;YACf,IAAI,MAAM,CAAC,sBAAsB,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjF,+EAA+E;gBAC/E,2EAA2E;gBAC3E,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC5B,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5C,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjD,CAAC;qBAAM,IAAI,IAAI,KAAK,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;oBACnD,IAAI,GAAG,iBAAK,CAAC,KAAK,CAAC;gBACrB,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IACH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
package/dist/utils.js
CHANGED
|
@@ -20,10 +20,14 @@ function createElement(tagName) {
|
|
|
20
20
|
function createTextNode(text) {
|
|
21
21
|
return document.createTextNode(text);
|
|
22
22
|
}
|
|
23
|
+
function isValidPropertyName(str) {
|
|
24
|
+
return /^(?!\d)[\w$]+$/.test(str);
|
|
25
|
+
}
|
|
23
26
|
function setAttributeCallback(attName) {
|
|
24
27
|
attName = attName === "class" ? "className" : attName;
|
|
25
|
-
return
|
|
26
|
-
|
|
28
|
+
return isValidPropertyName(attName)
|
|
29
|
+
? `${constants_1.WATCH_CALLBACK_ARGS.element}.${attName} = ${constants_1.WATCH_CALLBACK_ARGS.newValue}`
|
|
30
|
+
: `${constants_1.WATCH_CALLBACK_ARGS.element}.setAttribute('${attName}', ${constants_1.WATCH_CALLBACK_ARGS.newValue})`;
|
|
27
31
|
}
|
|
28
32
|
const REGEX_CAPITALIZED = new RegExp(/^[A-Z].*/);
|
|
29
33
|
function isCapitalized(s) {
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;AASA,sCAEC;AAED,wCAEC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;AASA,sCAEC;AAED,wCAEC;AAMD,oDAKC;AAID,sCAEC;AAED,gDAEC;AAED,gDAEC;AAKD,8BAOC;AAED,0CAUC;AAED,gCAOC;AAzED,iCAA8B;AAE9B,kCAAkC;AAClC,qCAAqC;AAErC,2CAAkD;AAElD,MAAM,QAAQ,GAAG,IAAI,aAAK,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;AAE9D,SAAgB,aAAa,CAAC,OAAe;IAC3C,OAAO,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,SAAgB,cAAc,CAAC,IAAY;IACzC,OAAO,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAG;IAC9B,OAAO,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC;AAED,SAAgB,oBAAoB,CAAC,OAAe;IAClD,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;IACtD,OAAO,mBAAmB,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,GAAG,+BAAmB,CAAC,OAAO,IAAI,OAAO,MAAM,+BAAmB,CAAC,QAAQ,EAAE;QAC/E,CAAC,CAAC,GAAG,+BAAmB,CAAC,OAAO,kBAAkB,OAAO,MAAM,+BAAmB,CAAC,QAAQ,GAAG,CAAC;AACnG,CAAC;AAED,MAAM,iBAAiB,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC;AAEjD,SAAgB,aAAa,CAAC,CAAS;IACrC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,SAAgB,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,SAAgB,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,UAAkB;IAC1C,OAAO,UAAU;SACd,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;SAClB,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC;SAC1B,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC;SAC3B,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC;SAC5B,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,SAAgB,eAAe,CAAC,MAAkB,EAAE,IAAgB;IAClE,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,UAAU,CAAC,IAAyB;IAClD,MAAM,SAAS,GACb,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACpF,IAAI,SAAS,YAAY,KAAK,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,CAAC,SAAS,CAAC,CAAC;AACrB,CAAC"}
|
|
@@ -65,18 +65,20 @@ function buildLookupsArg(componentDefinition) {
|
|
|
65
65
|
return t.arrayExpression(values);
|
|
66
66
|
}
|
|
67
67
|
function buildComponentBuildFunction(componentDefinition) {
|
|
68
|
-
// const dynamicElementsValueObject = buildObjectExpression(
|
|
69
|
-
// componentDefinition.dynamicElements,
|
|
70
|
-
// );
|
|
71
68
|
// TODO: clean up temp code when original is an array too.
|
|
72
69
|
const keys = Object.keys(componentDefinition.dynamicElements).sort();
|
|
73
70
|
const values = keys.map(key => componentDefinition.dynamicElements[key]);
|
|
74
|
-
const
|
|
75
|
-
const
|
|
71
|
+
const pushToElementStash = t.callExpression(t.memberExpression(t.identifier(constants_1.COMPONENT_BUILD_PARAMS.elements), t.identifier("push")), values);
|
|
72
|
+
const setupPrevious = t.callExpression(t.memberExpression(t.identifier(constants_1.COMPONENT_BUILD_PARAMS.previous), t.identifier("push")), componentDefinition.watches.map(watch => t.objectExpression([])));
|
|
73
|
+
const statements = [pushToElementStash, setupPrevious];
|
|
76
74
|
return t.functionExpression(null, [
|
|
77
75
|
t.identifier(constants_1.COMPONENT_BUILD_PARAMS.component),
|
|
78
|
-
t.identifier(constants_1.COMPONENT_BUILD_PARAMS.rootElement)
|
|
79
|
-
|
|
76
|
+
t.identifier(constants_1.COMPONENT_BUILD_PARAMS.rootElement),
|
|
77
|
+
t.identifier(constants_1.COMPONENT_BUILD_PARAMS.elements),
|
|
78
|
+
t.identifier(constants_1.COMPONENT_BUILD_PARAMS.stash),
|
|
79
|
+
t.identifier(constants_1.COMPONENT_BUILD_PARAMS.previous),
|
|
80
|
+
t.identifier(constants_1.COMPONENT_BUILD_PARAMS.refs)
|
|
81
|
+
], t.blockStatement(statements.map(statement => t.expressionStatement(statement))));
|
|
80
82
|
}
|
|
81
83
|
function buildDefineComponentCall(component) {
|
|
82
84
|
const componentDefinition = (0, consolidation_1.consolidateComponent)(component);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define-component.js","sourceRoot":"","sources":["../../src/writers/define-component.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"define-component.js","sourceRoot":"","sources":["../../src/writers/define-component.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "babel-plugin-wallace",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"author": "Andrew Buchan",
|
|
5
5
|
"description": "The babel plugin for wallace",
|
|
6
6
|
"license": "ISC",
|
|
@@ -23,5 +23,5 @@
|
|
|
23
23
|
"source-map-support": "^0.5.21",
|
|
24
24
|
"typescript": "^5.6.3"
|
|
25
25
|
},
|
|
26
|
-
"gitHead": "
|
|
26
|
+
"gitHead": "451efab81055751fbda64eb80252ec150460e375"
|
|
27
27
|
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.processeVisibilityToggles = processeVisibilityToggles;
|
|
4
|
-
const utils_1 = require("../utils");
|
|
5
|
-
/**
|
|
6
|
-
* Sets the skipCount of each watch's shieldInfo.
|
|
7
|
-
* This indicates how many watches to skip if that element is hidden.
|
|
8
|
-
* Must be done after processing watches as we need to know how many watches to skip.
|
|
9
|
-
*/
|
|
10
|
-
function setSkipCounts(watch, index, watches) {
|
|
11
|
-
watch.shieldInfo.skipCount = watches
|
|
12
|
-
.slice(index)
|
|
13
|
-
.filter(w => (0, utils_1.arrayStartsWith)(watch.address, w.address)).length;
|
|
14
|
-
}
|
|
15
|
-
function processeVisibilityToggles(watches) {
|
|
16
|
-
watches.forEach((watch, index) => {
|
|
17
|
-
if (watch.shieldInfo) {
|
|
18
|
-
setSkipCounts(watch, index, watches);
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=visibility.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"visibility.js","sourceRoot":"","sources":["../../src/consolidation/visibility.ts"],"names":[],"mappings":";;AAkBA,8DAMC;AAxBD,oCAA2C;AAG3C;;;;GAIG;AACH,SAAS,aAAa,CACpB,KAAqB,EACrB,KAAa,EACb,OAA8B;IAE9B,KAAK,CAAC,UAAU,CAAC,SAAS,GAAG,OAAO;SACjC,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,uBAAe,EAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;AACnE,CAAC;AAED,SAAgB,yBAAyB,CAAC,OAA8B;IACtE,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC/B,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|