@builder.io/mitosis 0.0.56-13 → 0.0.56-16
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/src/__tests__/angular.test.js +2 -104
- package/dist/src/__tests__/builder.test.js +3 -3
- package/dist/src/__tests__/data/basic-child-component.raw.jsx +1 -2
- package/dist/src/__tests__/data/basic-context.raw.d.ts +1 -0
- package/dist/src/__tests__/data/basic-context.raw.jsx +29 -0
- package/dist/src/__tests__/data/basic-custom-mitosis-package.raw.d.ts +1 -0
- package/dist/src/__tests__/data/basic-custom-mitosis-package.raw.jsx +10 -0
- package/dist/src/__tests__/data/basic-for-show.raw.jsx +2 -3
- package/dist/src/__tests__/data/basic-for.raw.jsx +2 -3
- package/dist/src/__tests__/data/basic-forwardRef-metadata.raw.d.ts +5 -0
- package/dist/src/__tests__/data/basic-forwardRef-metadata.raw.jsx +17 -0
- package/dist/src/__tests__/data/basic-forwardRef.raw.d.ts +5 -0
- package/dist/src/__tests__/data/basic-forwardRef.raw.jsx +14 -0
- package/dist/src/__tests__/data/basic-onChange.raw.d.ts +1 -0
- package/dist/src/__tests__/data/basic-onChange.raw.jsx +17 -0
- package/dist/src/__tests__/data/basic-onMount-update.raw.jsx +1 -1
- package/dist/src/__tests__/data/basic-onUpdate-return.raw.d.ts +1 -0
- package/dist/src/__tests__/data/basic-onUpdate-return.raw.jsx +24 -0
- package/dist/src/__tests__/data/basic-outputs-meta.raw.jsx +1 -1
- package/dist/src/__tests__/data/basic-outputs.raw.jsx +1 -1
- package/dist/src/__tests__/data/basic-preserve-export-or-local-statement.raw.d.ts +6 -0
- package/dist/src/__tests__/data/basic-preserve-export-or-local-statement.raw.jsx +14 -0
- package/dist/src/__tests__/data/basic-props-destructure.raw.d.ts +6 -0
- package/dist/src/__tests__/data/basic-props-destructure.raw.jsx +14 -0
- package/dist/src/__tests__/data/basic-props.raw.d.ts +6 -0
- package/dist/src/__tests__/data/basic-props.raw.jsx +13 -0
- package/dist/src/__tests__/data/basic-ref-assignment.raw.d.ts +4 -0
- package/dist/src/__tests__/data/basic-ref-assignment.raw.jsx +15 -0
- package/dist/src/__tests__/data/basic-ref-usePrevious.raw.d.ts +5 -0
- package/dist/src/__tests__/data/basic-ref-usePrevious.raw.jsx +35 -0
- package/dist/src/__tests__/data/basic-ref.raw.d.ts +4 -0
- package/dist/src/__tests__/data/basic-ref.raw.jsx +36 -0
- package/dist/src/__tests__/data/basic.raw.d.ts +6 -1
- package/dist/src/__tests__/data/basic.raw.jsx +10 -3
- package/dist/src/__tests__/data/blocks/classname-jsx.raw.jsx +1 -1
- package/dist/src/__tests__/data/blocks/columns.raw.jsx +1 -1
- package/dist/src/__tests__/data/blocks/custom-code.raw.jsx +3 -7
- package/dist/src/__tests__/data/blocks/embed.raw.jsx +3 -7
- package/dist/src/__tests__/data/blocks/form.raw.jsx +3 -3
- package/dist/src/__tests__/data/blocks/image.raw.jsx +8 -9
- package/dist/src/__tests__/data/blocks/img-state.raw.jsx +1 -1
- package/dist/src/__tests__/data/blocks/input.raw.jsx +1 -3
- package/dist/src/__tests__/data/blocks/multiple-onUpdateWithDeps.raw.jsx +7 -1
- package/dist/src/__tests__/data/blocks/onInit.raw.d.ts +8 -1
- package/dist/src/__tests__/data/blocks/onInit.raw.jsx +13 -3
- package/dist/src/__tests__/data/blocks/onUpdateWithDeps.raw.jsx +1 -1
- package/dist/src/__tests__/data/blocks/section-state.raw.jsx +1 -1
- package/dist/src/__tests__/data/blocks/select.raw.jsx +1 -3
- package/dist/src/__tests__/data/blocks/shadow-dom.raw.jsx +2 -4
- package/dist/src/__tests__/data/blocks/stamped-io.raw.jsx +2 -4
- package/dist/src/__tests__/data/blocks/text.raw.jsx +2 -5
- package/dist/src/__tests__/data/styles/class-and-className.raw.jsx +1 -3
- package/dist/src/__tests__/data/styles/className.raw.jsx +1 -3
- package/dist/src/__tests__/data/styles/classState.raw.d.ts +1 -0
- package/dist/src/__tests__/data/styles/classState.raw.jsx +12 -0
- package/dist/src/__tests__/data/types/component-props-interface.raw.d.ts +6 -0
- package/dist/src/__tests__/data/types/component-props-interface.raw.jsx +6 -0
- package/dist/src/__tests__/data/types/component-props-type.raw.d.ts +6 -0
- package/dist/src/__tests__/data/types/component-props-type.raw.jsx +6 -0
- package/dist/src/__tests__/data/types/preserve-typing.raw.d.ts +8 -0
- package/dist/src/__tests__/data/types/preserve-typing.raw.jsx +6 -0
- package/dist/src/__tests__/html.test.js +2 -145
- package/dist/src/__tests__/liquid.test.js +2 -109
- package/dist/src/__tests__/parse-jsx.test.js +22 -0
- package/dist/src/__tests__/qwik/convertMethodToFunction.test.d.ts +1 -0
- package/dist/src/__tests__/qwik/convertMethodToFunction.test.js +34 -0
- package/dist/src/__tests__/qwik/src-generator.test.d.ts +1 -0
- package/dist/src/__tests__/qwik/src-generator.test.js +65 -0
- package/dist/src/__tests__/qwik.test.js +44 -21
- package/dist/src/__tests__/react-native.test.js +2 -135
- package/dist/src/__tests__/react.test.js +5 -177
- package/dist/src/__tests__/shared.d.ts +3 -0
- package/dist/src/__tests__/shared.js +224 -0
- package/dist/src/__tests__/solid.test.js +2 -103
- package/dist/src/__tests__/stencil.test.js +3 -98
- package/dist/src/__tests__/styles.test.js +9 -1
- package/dist/src/__tests__/svelte.test.js +6 -0
- package/dist/src/__tests__/vue.test.js +2 -134
- package/dist/src/__tests__/webcomponent.test.js +6 -165
- package/dist/src/constants/hooks.d.ts +6 -0
- package/dist/src/constants/hooks.js +9 -0
- package/dist/src/generators/angular.d.ts +1 -1
- package/dist/src/generators/angular.js +66 -34
- package/dist/src/generators/builder.d.ts +1 -1
- package/dist/src/generators/builder.js +6 -12
- package/dist/src/generators/context/{react copy.d.ts → qwik.d.ts} +2 -2
- package/dist/src/generators/context/{react copy.js → qwik.js} +4 -5
- package/dist/src/generators/context/svelte.d.ts +1 -1
- package/dist/src/generators/helpers/context.js +1 -2
- package/dist/src/generators/html.d.ts +1 -1
- package/dist/src/generators/html.js +206 -120
- package/dist/src/generators/liquid.d.ts +1 -1
- package/dist/src/generators/liquid.js +6 -14
- package/dist/src/generators/mitosis.d.ts +1 -1
- package/dist/src/generators/mitosis.js +30 -29
- package/dist/src/generators/qwik/component-generator.d.ts +4 -0
- package/dist/src/generators/qwik/component-generator.js +271 -0
- package/dist/src/generators/qwik/component.js +4 -5
- package/dist/src/generators/qwik/convertMethodToFunction.d.ts +1 -0
- package/dist/src/generators/qwik/convertMethodToFunction.js +161 -0
- package/dist/src/generators/qwik/directives.js +20 -18
- package/dist/src/generators/qwik/index.d.ts +3 -1
- package/dist/src/generators/qwik/index.js +3 -1
- package/dist/src/generators/qwik/jsx.js +10 -6
- package/dist/src/generators/qwik/src-generator.d.ts +19 -7
- package/dist/src/generators/qwik/src-generator.js +149 -31
- package/dist/src/generators/qwik/styles.js +1 -2
- package/dist/src/generators/react-native.d.ts +2 -2
- package/dist/src/generators/react-native.js +3 -6
- package/dist/src/generators/react.d.ts +4 -2
- package/dist/src/generators/react.js +88 -68
- package/dist/src/generators/solid.d.ts +1 -1
- package/dist/src/generators/solid.js +9 -12
- package/dist/src/generators/stencil/generate.d.ts +1 -1
- package/dist/src/generators/stencil/generate.js +5 -11
- package/dist/src/generators/svelte.d.ts +1 -1
- package/dist/src/generators/svelte.js +19 -26
- package/dist/src/generators/swift-ui.d.ts +1 -1
- package/dist/src/generators/swift-ui.js +6 -12
- package/dist/src/generators/template.d.ts +1 -1
- package/dist/src/generators/template.js +6 -14
- package/dist/src/generators/vue.d.ts +12 -6
- package/dist/src/generators/vue.js +62 -31
- package/dist/src/helpers/babel-transform.js +3 -8
- package/dist/src/helpers/create-mitosis-component.d.ts +1 -1
- package/dist/src/helpers/create-mitosis-component.js +1 -1
- package/dist/src/helpers/fast-clone.js +1 -3
- package/dist/src/helpers/filter-empty-text-nodes.js +1 -2
- package/dist/src/helpers/get-bindings.d.ts +2 -0
- package/dist/src/helpers/get-bindings.js +18 -0
- package/dist/src/helpers/get-props-ref.d.ts +2 -0
- package/dist/src/helpers/get-props-ref.js +32 -0
- package/dist/src/helpers/getters-to-functions.d.ts +1 -1
- package/dist/src/helpers/getters-to-functions.js +1 -1
- package/dist/src/helpers/has-bindings-text.d.ts +2 -0
- package/dist/src/helpers/has-bindings-text.js +21 -0
- package/dist/src/helpers/has-stateful-dom.d.ts +2 -0
- package/dist/src/helpers/has-stateful-dom.js +21 -0
- package/dist/src/helpers/is-children.js +1 -2
- package/dist/src/helpers/is-component.js +1 -3
- package/dist/src/helpers/is-html-attribute.d.ts +1 -1
- package/dist/src/helpers/is-html-attribute.js +4 -19
- package/dist/src/helpers/map-refs.js +4 -1
- package/dist/src/helpers/parsers.js +1 -2
- package/dist/src/helpers/render-imports.d.ts +18 -2
- package/dist/src/helpers/render-imports.js +86 -45
- package/dist/src/helpers/render-imports.test.d.ts +1 -0
- package/dist/src/helpers/render-imports.test.js +19 -0
- package/dist/src/helpers/replace-idenifiers.js +2 -5
- package/dist/src/helpers/strip-state-and-props-refs.d.ts +2 -1
- package/dist/src/helpers/strip-state-and-props-refs.js +5 -8
- package/dist/src/helpers/styles/collect-css.d.ts +6 -0
- package/dist/src/helpers/styles/collect-css.js +87 -0
- package/dist/src/helpers/styles/collect-css.test.d.ts +1 -0
- package/dist/src/helpers/styles/collect-css.test.js +18 -0
- package/dist/src/helpers/styles/collect-styled-components.d.ts +2 -0
- package/dist/src/helpers/styles/collect-styled-components.js +61 -0
- package/dist/src/helpers/styles/helpers.d.ts +30 -0
- package/dist/src/helpers/styles/helpers.js +61 -0
- package/dist/src/helpers/typescript.d.ts +2 -0
- package/dist/src/helpers/typescript.js +2 -0
- package/dist/src/index.d.ts +7 -4
- package/dist/src/index.js +24 -8
- package/dist/src/jsx-types.d.ts +1 -0
- package/dist/src/modules/plugins.d.ts +1 -1
- package/dist/src/parsers/angular.js +10 -28
- package/dist/src/parsers/builder.d.ts +23 -23
- package/dist/src/parsers/builder.js +15 -33
- package/dist/src/parsers/jsx.d.ts +2 -1
- package/dist/src/parsers/jsx.js +214 -64
- package/dist/src/parsers/liquid.js +51 -149
- package/dist/src/plugins/compile-away-builder-components.js +4 -10
- package/dist/src/symbols/symbol-processor.js +4 -6
- package/dist/src/targets.d.ts +5 -3
- package/dist/src/targets.js +7 -1
- package/dist/src/types/config.d.ts +37 -17
- package/dist/src/types/mitosis-component.d.ts +30 -10
- package/dist/src/types/transpiler.d.ts +14 -0
- package/dist/src/types/transpiler.js +2 -0
- package/dist/test/qwik/Accordion/low.jsx +1 -0
- package/dist/test/qwik/For/low.jsx +1 -0
- package/dist/test/qwik/Image/med.js +2 -1
- package/dist/test/qwik/Image.slow/med.js +2 -1
- package/dist/test/qwik/bindings/low.cjs +3 -2
- package/dist/test/qwik/button/low.js +1 -0
- package/dist/test/qwik/component/bindings/low.jsx +2 -1
- package/dist/test/qwik/component/component/inputs/med.cjsx +2 -1
- package/dist/test/qwik/for-loop.bindings/high.cjs +0 -0
- package/dist/test/qwik/for-loop.bindings/low.cjs +47 -0
- package/dist/test/qwik/for-loop.bindings/med.cjs +5 -0
- package/dist/test/qwik/hello_world/stylesheet/low.jsx +1 -0
- package/dist/test/qwik/mount/high.cjs +0 -0
- package/dist/test/qwik/mount/low.cjs +44 -0
- package/dist/test/qwik/mount/med.cjs +3 -0
- package/dist/test/qwik/page-with-symbol/low.js +1 -0
- package/dist/test/qwik/show-hide/med.jsx +2 -1
- package/dist/test/qwik/svg/low.js +1 -0
- package/dist/test/qwik/todo/Todo.cjs/med.cjs +1 -0
- package/dist/test/qwik/todo/Todo.js/med.js +1 -0
- package/dist/test/qwik/todo/Todo.tsx/med.tsx +1 -0
- package/dist/test/qwik/todos/Todo.tsx/low.tsx +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -3
- package/README.md +0 -239
- package/dist/src/__tests__/data/blocks/content-slot.raw.d.ts +0 -6
- package/dist/src/__tests__/data/blocks/content-slot.raw.jsx +0 -13
- package/dist/src/__tests__/data/blocks/onUpdate.raw copy.d.ts +0 -1
- package/dist/src/__tests__/data/blocks/onUpdate.raw copy.jsx +0 -10
- package/dist/src/__tests__/data/blocks/slot.raw.d.ts +0 -5
- package/dist/src/__tests__/data/blocks/slot.raw.jsx +0 -6
- package/dist/src/__tests__/data/blocks/styles.raw.d.ts +0 -1
- package/dist/src/__tests__/data/blocks/styles.raw.jsx +0 -10
- package/dist/src/helpers/babel-transform copy.d.ts +0 -8
- package/dist/src/helpers/babel-transform copy.js +0 -138
- package/dist/src/helpers/collect-styles.d.ts +0 -29
- package/dist/src/helpers/collect-styles.js +0 -176
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.renderPreComponent = void 0;
|
|
3
|
+
exports.renderExportAndLocal = exports.renderPreComponent = exports.renderImports = exports.renderImport = void 0;
|
|
4
|
+
var DEFAULT_IMPORT = 'default';
|
|
5
|
+
var STAR_IMPORT = '*';
|
|
4
6
|
var getStarImport = function (_a) {
|
|
5
7
|
var theImport = _a.theImport;
|
|
6
8
|
for (var key in theImport.imports) {
|
|
7
9
|
var value = theImport.imports[key];
|
|
8
|
-
if (value ===
|
|
10
|
+
if (value === STAR_IMPORT) {
|
|
9
11
|
return key;
|
|
10
12
|
}
|
|
11
13
|
}
|
|
@@ -15,7 +17,7 @@ var getDefaultImport = function (_a) {
|
|
|
15
17
|
var theImport = _a.theImport;
|
|
16
18
|
for (var key in theImport.imports) {
|
|
17
19
|
var value = theImport.imports[key];
|
|
18
|
-
if (value ===
|
|
20
|
+
if (value === DEFAULT_IMPORT) {
|
|
19
21
|
return key;
|
|
20
22
|
}
|
|
21
23
|
}
|
|
@@ -27,74 +29,113 @@ var getFileExtensionForTarget = function (target) {
|
|
|
27
29
|
return '.svelte';
|
|
28
30
|
case 'solid':
|
|
29
31
|
return '.jsx';
|
|
32
|
+
case 'vue':
|
|
33
|
+
case 'vue2':
|
|
34
|
+
case 'vue3':
|
|
35
|
+
return '.vue';
|
|
30
36
|
// these `.lite` extensions are handled in the `transpile` step of the CLI.
|
|
31
37
|
// TO-DO: consolidate file-extension renaming to one place.
|
|
32
38
|
default:
|
|
33
39
|
return '.lite';
|
|
34
40
|
}
|
|
35
41
|
};
|
|
42
|
+
var checkIsComponentImport = function (theImport) {
|
|
43
|
+
return theImport.path.endsWith('.lite') && !theImport.path.endsWith('.context.lite');
|
|
44
|
+
};
|
|
36
45
|
var transformImportPath = function (theImport, target) {
|
|
37
46
|
// We need to drop the `.lite` from context files, because the context generator does so as well.
|
|
38
47
|
if (theImport.path.endsWith('.context.lite')) {
|
|
39
48
|
return theImport.path.replace('.lite', '');
|
|
40
49
|
}
|
|
41
|
-
if (theImport
|
|
50
|
+
if (checkIsComponentImport(theImport)) {
|
|
42
51
|
return theImport.path.replace('.lite', getFileExtensionForTarget(target));
|
|
43
52
|
}
|
|
44
53
|
return theImport.path;
|
|
45
54
|
};
|
|
46
|
-
var
|
|
47
|
-
var theImport = _a.theImport
|
|
48
|
-
var
|
|
55
|
+
var getNamedImports = function (_a) {
|
|
56
|
+
var theImport = _a.theImport;
|
|
57
|
+
var namedImports = Object.entries(theImport.imports)
|
|
58
|
+
.filter(function (_a) {
|
|
59
|
+
var value = _a[1];
|
|
60
|
+
return ![DEFAULT_IMPORT, STAR_IMPORT].includes(value);
|
|
61
|
+
})
|
|
62
|
+
.map(function (_a) {
|
|
63
|
+
var key = _a[0], value = _a[1];
|
|
64
|
+
return key !== value ? "".concat(value, " as ").concat(key) : value;
|
|
65
|
+
});
|
|
66
|
+
if (namedImports.length > 0) {
|
|
67
|
+
return "{ ".concat(namedImports.join(', '), " }");
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
var getImportedValues = function (_a) {
|
|
74
|
+
var theImport = _a.theImport;
|
|
49
75
|
var starImport = getStarImport({ theImport: theImport });
|
|
76
|
+
var defaultImport = getDefaultImport({ theImport: theImport });
|
|
77
|
+
var namedImports = getNamedImports({ theImport: theImport });
|
|
78
|
+
return { starImport: starImport, defaultImport: defaultImport, namedImports: namedImports };
|
|
79
|
+
};
|
|
80
|
+
var getImportValue = function (_a) {
|
|
81
|
+
var defaultImport = _a.defaultImport, namedImports = _a.namedImports, starImport = _a.starImport;
|
|
50
82
|
if (starImport) {
|
|
51
|
-
|
|
83
|
+
return " * as ".concat(starImport, " ");
|
|
52
84
|
}
|
|
53
85
|
else {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
86
|
+
return [defaultImport, namedImports].filter(Boolean).join(', ');
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
var renderImport = function (_a) {
|
|
90
|
+
var theImport = _a.theImport, target = _a.target, asyncComponentImports = _a.asyncComponentImports;
|
|
91
|
+
var importedValues = getImportedValues({ theImport: theImport });
|
|
92
|
+
var path = transformImportPath(theImport, target);
|
|
93
|
+
var importValue = getImportValue(importedValues);
|
|
94
|
+
var isComponentImport = checkIsComponentImport(theImport);
|
|
95
|
+
var shouldBeAsyncImport = asyncComponentImports && isComponentImport;
|
|
96
|
+
if (shouldBeAsyncImport) {
|
|
97
|
+
var isVueImport = target === 'vue';
|
|
98
|
+
if (isVueImport && importedValues.namedImports) {
|
|
99
|
+
console.warn('Vue: Async Component imports cannot include named imports. Dropping async import. This might break your code.');
|
|
57
100
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
for (var key in theImport.imports) {
|
|
61
|
-
var value = theImport.imports[key];
|
|
62
|
-
if (['default', '*'].includes(value)) {
|
|
63
|
-
continue;
|
|
64
|
-
}
|
|
65
|
-
if (firstAdded) {
|
|
66
|
-
importString += ' , ';
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
firstAdded = true;
|
|
70
|
-
}
|
|
71
|
-
importString += " ".concat(value, " ");
|
|
72
|
-
if (key !== value) {
|
|
73
|
-
importString += " as ".concat(key, " ");
|
|
74
|
-
}
|
|
101
|
+
else {
|
|
102
|
+
return "const ".concat(importValue, " = () => import('").concat(path, "')");
|
|
75
103
|
}
|
|
76
|
-
importString += ' } ';
|
|
77
104
|
}
|
|
78
|
-
|
|
79
|
-
importString += " from '".concat(path, "';");
|
|
80
|
-
return importString;
|
|
105
|
+
return "import ".concat(importValue, " from '").concat(path, "';");
|
|
81
106
|
};
|
|
107
|
+
exports.renderImport = renderImport;
|
|
82
108
|
var renderImports = function (_a) {
|
|
83
|
-
var imports = _a.imports, target = _a.target;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
109
|
+
var imports = _a.imports, target = _a.target, asyncComponentImports = _a.asyncComponentImports;
|
|
110
|
+
return imports
|
|
111
|
+
.filter(function (theImport) {
|
|
112
|
+
if (
|
|
87
113
|
// Remove compile away components
|
|
88
|
-
|
|
89
|
-
|
|
114
|
+
theImport.path === '@builder.io/components' ||
|
|
115
|
+
// TODO: Mitosis output needs this
|
|
116
|
+
theImport.path.startsWith('@builder.io/mitosis')) {
|
|
117
|
+
return false;
|
|
90
118
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
continue;
|
|
119
|
+
else {
|
|
120
|
+
return true;
|
|
94
121
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
122
|
+
})
|
|
123
|
+
.map(function (theImport) { return (0, exports.renderImport)({ theImport: theImport, target: target, asyncComponentImports: asyncComponentImports }); })
|
|
124
|
+
.join('\n');
|
|
125
|
+
};
|
|
126
|
+
exports.renderImports = renderImports;
|
|
127
|
+
var renderPreComponent = function (_a) {
|
|
128
|
+
var component = _a.component, target = _a.target, _b = _a.asyncComponentImports, asyncComponentImports = _b === void 0 ? false : _b;
|
|
129
|
+
return "\n ".concat((0, exports.renderImports)({
|
|
130
|
+
imports: component.imports,
|
|
131
|
+
target: target,
|
|
132
|
+
asyncComponentImports: asyncComponentImports,
|
|
133
|
+
}), "\n ").concat((0, exports.renderExportAndLocal)(component), "\n ").concat(component.hooks.preComponent || '', "\n ");
|
|
98
134
|
};
|
|
99
|
-
var renderPreComponent = function (component, target) { return "\n ".concat(renderImports({ imports: component.imports, target: target }), "\n ").concat(component.hooks.preComponent || '', "\n "); };
|
|
100
135
|
exports.renderPreComponent = renderPreComponent;
|
|
136
|
+
var renderExportAndLocal = function (component) {
|
|
137
|
+
return Object.keys(component.exports || {})
|
|
138
|
+
.map(function (key) { return component.exports[key].code; })
|
|
139
|
+
.join('\n');
|
|
140
|
+
};
|
|
141
|
+
exports.renderExportAndLocal = renderExportAndLocal;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var render_imports_1 = require("./render-imports");
|
|
4
|
+
describe('renderImport', function () {
|
|
5
|
+
test('Adds correct extension to component import', function () {
|
|
6
|
+
var data = [
|
|
7
|
+
{
|
|
8
|
+
imports: { RenderBlocks: 'default' },
|
|
9
|
+
path: '../render-blocks.lite',
|
|
10
|
+
},
|
|
11
|
+
];
|
|
12
|
+
var output = (0, render_imports_1.renderImport)({
|
|
13
|
+
theImport: data[0],
|
|
14
|
+
target: 'vue',
|
|
15
|
+
asyncComponentImports: false,
|
|
16
|
+
});
|
|
17
|
+
expect(output).toMatchSnapshot();
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -12,11 +12,8 @@ var replaceIdentifiers = function (code, from, to) {
|
|
|
12
12
|
core_1.types.isOptionalMemberExpression(path.parent)) &&
|
|
13
13
|
path.parent.property === path.node) &&
|
|
14
14
|
// This is no the function name - like `foo` in `function foo() {}`
|
|
15
|
-
!(core_1.types.isFunctionDeclaration(path.parent) &&
|
|
16
|
-
|
|
17
|
-
(Array.isArray(from)
|
|
18
|
-
? from.includes(path.node.name)
|
|
19
|
-
: path.node.name === from)) {
|
|
15
|
+
!(core_1.types.isFunctionDeclaration(path.parent) && path.parent.id === path.node) &&
|
|
16
|
+
(Array.isArray(from) ? from.includes(path.node.name) : path.node.name === from)) {
|
|
20
17
|
path.replaceWith(core_1.types.identifier(typeof to === 'string' ? to : to(path.node.name)));
|
|
21
18
|
}
|
|
22
19
|
},
|
|
@@ -4,6 +4,7 @@ export declare type StripStateAndPropsRefsOptions = {
|
|
|
4
4
|
includeState?: boolean;
|
|
5
5
|
contextVars?: string[];
|
|
6
6
|
outputVars?: string[];
|
|
7
|
+
context?: string;
|
|
7
8
|
};
|
|
8
9
|
/**
|
|
9
10
|
* Remove state. and props. from expressions, e.g.
|
|
@@ -13,4 +14,4 @@ export declare type StripStateAndPropsRefsOptions = {
|
|
|
13
14
|
*
|
|
14
15
|
* @todo proper ref replacement with babel
|
|
15
16
|
*/
|
|
16
|
-
export declare const stripStateAndPropsRefs: (code?: string
|
|
17
|
+
export declare const stripStateAndPropsRefs: (code?: string, options?: StripStateAndPropsRefsOptions) => string;
|
|
@@ -15,18 +15,19 @@ var stripStateAndPropsRefs = function (code, options) {
|
|
|
15
15
|
var replacer = options.replaceWith || '';
|
|
16
16
|
var contextVars = (options === null || options === void 0 ? void 0 : options.contextVars) || [];
|
|
17
17
|
var outputVars = (options === null || options === void 0 ? void 0 : options.outputVars) || [];
|
|
18
|
+
var context = (options === null || options === void 0 ? void 0 : options.context) || 'this.';
|
|
18
19
|
if (contextVars.length) {
|
|
19
20
|
contextVars.forEach(function (_var) {
|
|
20
21
|
newCode = newCode.replace(
|
|
21
22
|
// determine expression edge cases
|
|
22
|
-
new RegExp('(
|
|
23
|
+
new RegExp('(^|\\n|\\r| |;|\\(|\\[|!)' + _var + '(\\?\\.|\\.|\\(| |;|\\)|$)', 'g'), '$1' + context + _var + '$2');
|
|
23
24
|
});
|
|
24
25
|
}
|
|
25
26
|
if (outputVars.length) {
|
|
26
27
|
outputVars.forEach(function (_var) {
|
|
27
28
|
// determine expression edge cases onMessage( to this.onMessage.emit(
|
|
28
29
|
var regexp = '( |;|\\()(props\\.?)' + _var + '\\(';
|
|
29
|
-
var replacer = '$
|
|
30
|
+
var replacer = '$1' + context + _var + '.emit(';
|
|
30
31
|
newCode = newCode.replace(new RegExp(regexp, 'g'), replacer);
|
|
31
32
|
});
|
|
32
33
|
}
|
|
@@ -35,9 +36,7 @@ var stripStateAndPropsRefs = function (code, options) {
|
|
|
35
36
|
newCode = newCode.replace(/props\./g, replacer);
|
|
36
37
|
}
|
|
37
38
|
else {
|
|
38
|
-
newCode = newCode.replace(/props\.([\$a-z0-9_]+)/gi, function (memo, name) {
|
|
39
|
-
return replacer(name);
|
|
40
|
-
});
|
|
39
|
+
newCode = newCode.replace(/props\.([\$a-z0-9_]+)/gi, function (memo, name) { return replacer(name); });
|
|
41
40
|
}
|
|
42
41
|
// TODO: webcomponent edge-case
|
|
43
42
|
if (/el\.this\.props/.test(newCode)) {
|
|
@@ -49,9 +48,7 @@ var stripStateAndPropsRefs = function (code, options) {
|
|
|
49
48
|
newCode = newCode.replace(/state\./g, replacer);
|
|
50
49
|
}
|
|
51
50
|
else {
|
|
52
|
-
newCode = newCode.replace(/state\.([\$a-z0-9_]+)/gi, function (memo, name) {
|
|
53
|
-
return replacer(name);
|
|
54
|
-
});
|
|
51
|
+
newCode = newCode.replace(/state\.([\$a-z0-9_]+)/gi, function (memo, name) { return replacer(name); });
|
|
55
52
|
}
|
|
56
53
|
}
|
|
57
54
|
return newCode;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.collectCss = void 0;
|
|
7
|
+
var traverse_1 = __importDefault(require("traverse"));
|
|
8
|
+
var dash_case_1 = require("../dash-case");
|
|
9
|
+
var is_mitosis_node_1 = require("../is-mitosis-node");
|
|
10
|
+
var object_hash_1 = __importDefault(require("object-hash"));
|
|
11
|
+
var helpers_1 = require("./helpers");
|
|
12
|
+
var trimClassStr = function (classStr) { return classStr.trim().replace(/\s{2,}/g, ' '); };
|
|
13
|
+
var updateClassForNode = function (item, className) {
|
|
14
|
+
if (item.bindings.class) {
|
|
15
|
+
// combine className with existing binding. We use single quotes because in Vue, bindings are wrapped in double quotes
|
|
16
|
+
// e.g. <div :class="_classStringToObject(this.className + 'div-21azgz5avex')" />
|
|
17
|
+
item.bindings.class.code = trimClassStr("".concat(item.bindings.class.code, " + '").concat(className, "'"));
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
item.properties.class = trimClassStr("".concat(item.properties.class || '', " ").concat(className));
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
var collectStyles = function (json, options) {
|
|
24
|
+
if (options === void 0) { options = {}; }
|
|
25
|
+
var styleMap = {};
|
|
26
|
+
var componentIndexes = {};
|
|
27
|
+
var componentHashes = {};
|
|
28
|
+
(0, traverse_1.default)(json).forEach(function (item) {
|
|
29
|
+
var _a;
|
|
30
|
+
if ((0, is_mitosis_node_1.isMitosisNode)(item)) {
|
|
31
|
+
if ((0, helpers_1.nodeHasStyles)(item)) {
|
|
32
|
+
var value = (0, helpers_1.parseCssObject)((_a = item.bindings.css) === null || _a === void 0 ? void 0 : _a.code);
|
|
33
|
+
delete item.bindings.css;
|
|
34
|
+
var componentName = item.properties.$name
|
|
35
|
+
? (0, dash_case_1.dashCase)(item.properties.$name)
|
|
36
|
+
: /^h\d$/.test(item.name || '') // don't dashcase h1 into h-1
|
|
37
|
+
? item.name
|
|
38
|
+
: (0, dash_case_1.dashCase)(item.name || 'div');
|
|
39
|
+
var classNameWPrefix = "".concat(componentName).concat(options.prefix ? "-".concat(options.prefix) : '');
|
|
40
|
+
var stylesHash = (0, object_hash_1.default)(value);
|
|
41
|
+
if (componentHashes[componentName] === stylesHash) {
|
|
42
|
+
var className_1 = classNameWPrefix;
|
|
43
|
+
updateClassForNode(item, className_1);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (!componentHashes[componentName]) {
|
|
47
|
+
componentHashes[componentName] = stylesHash;
|
|
48
|
+
}
|
|
49
|
+
var index = (componentIndexes[componentName] =
|
|
50
|
+
(componentIndexes[componentName] || 0) + 1);
|
|
51
|
+
var className = "".concat(classNameWPrefix).concat(index === 1 ? '' : "-".concat(index));
|
|
52
|
+
updateClassForNode(item, className);
|
|
53
|
+
styleMap[className] = value;
|
|
54
|
+
}
|
|
55
|
+
delete item.bindings.css;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
return styleMap;
|
|
59
|
+
};
|
|
60
|
+
var collectCss = function (json, options) {
|
|
61
|
+
if (options === void 0) { options = {}; }
|
|
62
|
+
var styles = collectStyles(json, options);
|
|
63
|
+
// TODO create and use a root selector
|
|
64
|
+
return classStyleMapToCss(styles);
|
|
65
|
+
};
|
|
66
|
+
exports.collectCss = collectCss;
|
|
67
|
+
var classStyleMapToCss = function (map) {
|
|
68
|
+
var str = '';
|
|
69
|
+
for (var key in map) {
|
|
70
|
+
var styles = (0, helpers_1.getStylesOnly)(map[key]);
|
|
71
|
+
str += ".".concat(key, " { ").concat((0, helpers_1.styleMapToCss)(styles), " }");
|
|
72
|
+
var nestedSelectors = (0, helpers_1.getNestedSelectors)(map[key]);
|
|
73
|
+
for (var nestedSelector in nestedSelectors) {
|
|
74
|
+
var value = nestedSelectors[nestedSelector];
|
|
75
|
+
if (nestedSelector.startsWith('@')) {
|
|
76
|
+
str += "".concat(nestedSelector, " { .").concat(key, " { ").concat((0, helpers_1.styleMapToCss)(value), " } }");
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
var useSelector = nestedSelector.includes('&')
|
|
80
|
+
? nestedSelector.replace(/&/g, ".".concat(key))
|
|
81
|
+
: ".".concat(key, " ").concat(nestedSelector);
|
|
82
|
+
str += "".concat(useSelector, " { ").concat((0, helpers_1.styleMapToCss)(value), " }");
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return str;
|
|
87
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var collect_css_1 = require("./collect-css");
|
|
4
|
+
var jsx_1 = require("../../parsers/jsx");
|
|
5
|
+
var classRaw = require('../../__tests__/data/styles/class.raw');
|
|
6
|
+
var classState = require('../../__tests__/data/styles/classState.raw');
|
|
7
|
+
describe('Styles', function () {
|
|
8
|
+
test('class property and CSS are merged', function () {
|
|
9
|
+
var component = (0, jsx_1.parseJsx)(classRaw);
|
|
10
|
+
var output = (0, collect_css_1.collectCss)(component);
|
|
11
|
+
expect({ component: component, output: output }).toMatchSnapshot();
|
|
12
|
+
});
|
|
13
|
+
test('class binding and CSS are merged', function () {
|
|
14
|
+
var component = (0, jsx_1.parseJsx)(classState);
|
|
15
|
+
var output = (0, collect_css_1.collectCss)(component);
|
|
16
|
+
expect({ component: component, output: output }).toMatchSnapshot();
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.collectStyledComponents = void 0;
|
|
7
|
+
var lodash_1 = require("lodash");
|
|
8
|
+
var traverse_1 = __importDefault(require("traverse"));
|
|
9
|
+
var capitalize_1 = require("../capitalize");
|
|
10
|
+
var is_mitosis_node_1 = require("../is-mitosis-node");
|
|
11
|
+
var is_upper_case_1 = require("../is-upper-case");
|
|
12
|
+
var object_hash_1 = __importDefault(require("object-hash"));
|
|
13
|
+
var helpers_1 = require("./helpers");
|
|
14
|
+
var collectStyledComponents = function (json) {
|
|
15
|
+
var styledComponentsCode = '';
|
|
16
|
+
var componentIndexes = {};
|
|
17
|
+
var componentHashes = {};
|
|
18
|
+
(0, traverse_1.default)(json).forEach(function (item) {
|
|
19
|
+
var _a;
|
|
20
|
+
if ((0, is_mitosis_node_1.isMitosisNode)(item)) {
|
|
21
|
+
if ((0, helpers_1.nodeHasStyles)(item)) {
|
|
22
|
+
var value = (0, helpers_1.parseCssObject)((_a = item.bindings.css) === null || _a === void 0 ? void 0 : _a.code);
|
|
23
|
+
delete item.bindings.css;
|
|
24
|
+
var normalizedNameProperty = item.properties.$name
|
|
25
|
+
? (0, capitalize_1.capitalize)((0, lodash_1.camelCase)(item.properties.$name.replace(/[^a-z]/gi, '')))
|
|
26
|
+
: null;
|
|
27
|
+
var componentName = normalizedNameProperty
|
|
28
|
+
? normalizedNameProperty
|
|
29
|
+
: /^h\d$/.test(item.name || '')
|
|
30
|
+
? item.name
|
|
31
|
+
: (0, capitalize_1.capitalize)((0, lodash_1.camelCase)(item.name || 'div'));
|
|
32
|
+
var index = (componentIndexes[componentName] =
|
|
33
|
+
(componentIndexes[componentName] || 0) + 1);
|
|
34
|
+
var className = "".concat(componentName).concat(componentName !== item.name && index === 1 ? '' : index);
|
|
35
|
+
var str = '';
|
|
36
|
+
var styles = (0, helpers_1.getStylesOnly)(value);
|
|
37
|
+
var stylesHash = (0, object_hash_1.default)(styles);
|
|
38
|
+
if (stylesHash === componentHashes[componentName]) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
if (!componentHashes[componentName]) {
|
|
42
|
+
componentHashes[componentName] = stylesHash;
|
|
43
|
+
}
|
|
44
|
+
str += "".concat((0, helpers_1.styleMapToCss)(styles), "\n");
|
|
45
|
+
var nestedSelectors = (0, helpers_1.getNestedSelectors)(value);
|
|
46
|
+
for (var nestedSelector in nestedSelectors) {
|
|
47
|
+
var value_1 = nestedSelectors[nestedSelector];
|
|
48
|
+
str += "".concat(nestedSelector, " { ").concat((0, helpers_1.styleMapToCss)(value_1), " }");
|
|
49
|
+
}
|
|
50
|
+
var prefix = (0, is_upper_case_1.isUpperCase)(item.name[0])
|
|
51
|
+
? "styled(".concat(item.name, ")`")
|
|
52
|
+
: "styled.".concat(item.name, "`");
|
|
53
|
+
item.name = className;
|
|
54
|
+
styledComponentsCode += "\n const ".concat(className, " = ").concat(prefix).concat(str, "`\n ");
|
|
55
|
+
}
|
|
56
|
+
delete item.bindings.css;
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
return styledComponentsCode;
|
|
60
|
+
};
|
|
61
|
+
exports.collectStyledComponents = collectStyledComponents;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/// <reference types="lodash" />
|
|
2
|
+
import * as CSS from 'csstype';
|
|
3
|
+
import { MitosisNode } from '../../types/mitosis-node';
|
|
4
|
+
import { MitosisComponent } from '../../types/mitosis-component';
|
|
5
|
+
export declare const nodeHasStyles: (node: MitosisNode) => boolean;
|
|
6
|
+
export declare const hasStyles: (component: MitosisComponent) => boolean;
|
|
7
|
+
/**
|
|
8
|
+
* e.g.:
|
|
9
|
+
* {
|
|
10
|
+
* display: 'none',
|
|
11
|
+
* '@media (max-width: 500px)': {
|
|
12
|
+
* '& .sub-class': {
|
|
13
|
+
* display: 'block'
|
|
14
|
+
* }
|
|
15
|
+
* }
|
|
16
|
+
* }
|
|
17
|
+
*/
|
|
18
|
+
export declare type StyleMap = {
|
|
19
|
+
[className: string]: CSS.Properties | StyleMap;
|
|
20
|
+
};
|
|
21
|
+
export declare const getNestedSelectors: (map: StyleMap) => import("lodash").Dictionary<CSS.Properties<0 | (string & {}), string & {}> | StyleMap>;
|
|
22
|
+
export declare const getStylesOnly: (map: StyleMap) => import("lodash").Dictionary<CSS.Properties<0 | (string & {}), string & {}> | StyleMap>;
|
|
23
|
+
/**
|
|
24
|
+
* { 'my-class': { display: 'block', '&.foo': { display: 'none' } }}
|
|
25
|
+
*/
|
|
26
|
+
export declare type ClassStyleMap = {
|
|
27
|
+
[key: string]: StyleMap;
|
|
28
|
+
};
|
|
29
|
+
export declare const parseCssObject: (css: string) => any;
|
|
30
|
+
export declare const styleMapToCss: (map: StyleMap) => string;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.styleMapToCss = exports.parseCssObject = exports.getStylesOnly = exports.getNestedSelectors = exports.hasStyles = exports.nodeHasStyles = void 0;
|
|
7
|
+
var traverse_1 = __importDefault(require("traverse"));
|
|
8
|
+
var is_mitosis_node_1 = require("../is-mitosis-node");
|
|
9
|
+
var json5_1 = __importDefault(require("json5"));
|
|
10
|
+
var lodash_1 = require("lodash");
|
|
11
|
+
var dash_case_1 = require("../dash-case");
|
|
12
|
+
var nodeHasStyles = function (node) {
|
|
13
|
+
var _a;
|
|
14
|
+
return Boolean(typeof ((_a = node.bindings.css) === null || _a === void 0 ? void 0 : _a.code) === 'string' && node.bindings.css.code.trim().length > 6);
|
|
15
|
+
};
|
|
16
|
+
exports.nodeHasStyles = nodeHasStyles;
|
|
17
|
+
var hasStyles = function (component) {
|
|
18
|
+
var hasStyles = false;
|
|
19
|
+
(0, traverse_1.default)(component).forEach(function (item) {
|
|
20
|
+
if ((0, is_mitosis_node_1.isMitosisNode)(item)) {
|
|
21
|
+
if ((0, exports.nodeHasStyles)(item)) {
|
|
22
|
+
hasStyles = true;
|
|
23
|
+
this.stop();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
return hasStyles;
|
|
28
|
+
};
|
|
29
|
+
exports.hasStyles = hasStyles;
|
|
30
|
+
var getNestedSelectors = function (map) {
|
|
31
|
+
return (0, lodash_1.pickBy)(map, function (value) { return typeof value === 'object'; });
|
|
32
|
+
};
|
|
33
|
+
exports.getNestedSelectors = getNestedSelectors;
|
|
34
|
+
var getStylesOnly = function (map) {
|
|
35
|
+
return (0, lodash_1.pickBy)(map, function (value) { return typeof value === 'string'; });
|
|
36
|
+
};
|
|
37
|
+
exports.getStylesOnly = getStylesOnly;
|
|
38
|
+
var parseCssObject = function (css) {
|
|
39
|
+
try {
|
|
40
|
+
return json5_1.default.parse(css);
|
|
41
|
+
}
|
|
42
|
+
catch (e) {
|
|
43
|
+
console.warn('Could not parse CSS object', css);
|
|
44
|
+
throw e;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
exports.parseCssObject = parseCssObject;
|
|
48
|
+
var styleMapToCss = function (map) {
|
|
49
|
+
var str = '';
|
|
50
|
+
for (var key in map) {
|
|
51
|
+
var value = map[key];
|
|
52
|
+
if (typeof value === 'string') {
|
|
53
|
+
str += "\n".concat((0, dash_case_1.dashCase)(key), ": ").concat(value, ";");
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
// TODO: do nothing
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return str;
|
|
60
|
+
};
|
|
61
|
+
exports.styleMapToCss = styleMapToCss;
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export * from './flow';
|
|
2
2
|
export declare type Context<T> = {};
|
|
3
|
-
export declare const
|
|
4
|
-
export declare const
|
|
3
|
+
export declare const useStore: <T>(obj: T) => T;
|
|
4
|
+
export declare const useState: <T>(obj: T) => [T, (value: T) => void];
|
|
5
|
+
export declare const useRef: <T>(obj?: void | T | null | undefined) => T;
|
|
5
6
|
export declare const useContext: <T = {
|
|
6
7
|
[key: string]: any;
|
|
7
8
|
}>(key: Context<T>) => T;
|
|
@@ -12,13 +13,13 @@ export declare const setContext: <T = {
|
|
|
12
13
|
[key: string]: any;
|
|
13
14
|
}>(key: Context<T>, value: Partial<T>) => void;
|
|
14
15
|
export declare const onMount: (fn: () => any) => any;
|
|
15
|
-
export declare const onUpdate: (fn: () => any, deps?: any[]
|
|
16
|
+
export declare const onUpdate: (fn: () => any, deps?: any[]) => any;
|
|
16
17
|
export declare const onCreate: (fn: () => any) => any;
|
|
17
18
|
export declare const onInit: (fn: () => any) => any;
|
|
18
19
|
export declare const onUnMount: (fn: () => any) => any;
|
|
19
20
|
export declare const useDynamicTag: (fn: () => any) => any;
|
|
20
21
|
export declare const onError: (fn: () => any) => any;
|
|
21
|
-
export declare const useMetadata: (obj: object) =>
|
|
22
|
+
export declare const useMetadata: (obj: object) => any;
|
|
22
23
|
export * from './parsers/jsx';
|
|
23
24
|
export * from './parsers/builder';
|
|
24
25
|
export * from './parsers/angular';
|
|
@@ -27,6 +28,7 @@ export * from './parsers/context';
|
|
|
27
28
|
export * from './generators/vue';
|
|
28
29
|
export * from './generators/angular';
|
|
29
30
|
export * from './generators/context/react';
|
|
31
|
+
export * from './generators/context/qwik';
|
|
30
32
|
export * from './generators/context/solid';
|
|
31
33
|
export * from './generators/context/vue';
|
|
32
34
|
export * from './generators/context/svelte';
|
|
@@ -48,6 +50,7 @@ export * from './helpers/is-mitosis-node';
|
|
|
48
50
|
export * from './types/mitosis-node';
|
|
49
51
|
export * from './types/mitosis-component';
|
|
50
52
|
export * from './types/config';
|
|
53
|
+
export * from './types/transpiler';
|
|
51
54
|
export * from './plugins/compile-away-builder-components';
|
|
52
55
|
export * from './plugins/compile-away-components';
|
|
53
56
|
export * from './plugins/map-styles';
|