vsn 0.1.78 → 0.1.81
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/demo/vsn.js +2 -2
- package/dist/AST/ClassNode.js +31 -28
- package/dist/AST/ClassNode.js.map +1 -1
- package/dist/DOM.js +9 -19
- package/dist/DOM.js.map +1 -1
- package/dist/attributes/ComponentAttribute.js +9 -4
- package/dist/attributes/ComponentAttribute.js.map +1 -1
- package/dist/attributes/Name.js +1 -1
- package/dist/attributes/Name.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/vsn.min.js +2 -2
- package/package.json +2 -2
- package/src/AST/ClassNode.ts +5 -3
- package/src/DOM.ts +0 -1
- package/src/attributes/ComponentAttribute.ts +3 -4
- package/src/attributes/Name.ts +1 -1
- package/src/version.ts +2 -1
- package/test/AST/ClassNode.spec.ts +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vsn",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.81",
|
|
4
4
|
"description": "SEO Friendly Javascript/Typescript Framework",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"framework",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"main": "./dist/vsn.js",
|
|
15
15
|
"scripts": {
|
|
16
16
|
"build": "rm -rf ./dist/ && npm run-script version && tsc",
|
|
17
|
-
"version": "echo
|
|
17
|
+
"version": "echo \"export const VERSION = '${npm_package_version}';\n\" > src/version.ts",
|
|
18
18
|
"build_dev": "rm -rf ./dist/ && webpack --env BUILD=development BENCHMARK=1",
|
|
19
19
|
"demo": "webpack --env BUILD=production BENCHMARK=1 && cp ./dist/vsn.min.js ./demo/vsn.js",
|
|
20
20
|
"test": "karma start --single-run",
|
package/src/AST/ClassNode.ts
CHANGED
|
@@ -147,9 +147,11 @@ export class ClassNode extends Node implements TreeNode {
|
|
|
147
147
|
if (element.id)
|
|
148
148
|
localSelectors.push(`#${element.id}`);
|
|
149
149
|
|
|
150
|
-
for (const selector
|
|
151
|
-
|
|
152
|
-
|
|
150
|
+
for (const selector of localSelectors) {
|
|
151
|
+
const parentSelectors = ClassNode.classParents[selector];
|
|
152
|
+
if (parentSelectors) {
|
|
153
|
+
fullSelectors.push(...parentSelectors.filter(s => !fullSelectors.includes(s)));
|
|
154
|
+
}
|
|
153
155
|
}
|
|
154
156
|
|
|
155
157
|
if (!tag) {
|
package/src/DOM.ts
CHANGED
|
@@ -11,13 +11,12 @@ export class ComponentAttribute extends TemplateAttribute {
|
|
|
11
11
|
if (!Registry.instance.components.has(name)) {
|
|
12
12
|
await super.extract();
|
|
13
13
|
const clsName = this.getAttributeValue();
|
|
14
|
-
let cls
|
|
14
|
+
let cls;
|
|
15
15
|
if (clsName) {
|
|
16
16
|
cls = await Registry.instance.components.get(clsName);
|
|
17
|
-
if (!cls) {
|
|
18
|
-
throw new Error(`Component ${clsName} not found`);
|
|
19
|
-
}
|
|
20
17
|
}
|
|
18
|
+
if (!cls)
|
|
19
|
+
cls = class extends Component {};
|
|
21
20
|
Registry.instance.components.register(name, cls);
|
|
22
21
|
}
|
|
23
22
|
}
|
package/src/attributes/Name.ts
CHANGED
|
@@ -10,7 +10,7 @@ export class Name extends Attribute {
|
|
|
10
10
|
public async setup() {
|
|
11
11
|
const parentScope: Scope = this.tag.scope.parentScope;
|
|
12
12
|
if (parentScope) {
|
|
13
|
-
parentScope.set(this.
|
|
13
|
+
parentScope.set(this.getAttributeValue(), this.tag.scope);
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
}
|
package/src/version.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export const VERSION = '0.1.
|
|
1
|
+
export const VERSION = '0.1.81';
|
|
2
|
+
|