@builder.io/mitosis 0.0.75 → 0.0.77-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/src/generators/alpine/generate.d.ts +20 -0
- package/dist/src/generators/alpine/generate.js +207 -0
- package/dist/src/generators/alpine/index.d.ts +1 -0
- package/dist/src/generators/alpine/index.js +17 -0
- package/dist/src/generators/alpine/render-mount-hook.d.ts +2 -0
- package/dist/src/generators/alpine/render-mount-hook.js +14 -0
- package/dist/src/generators/alpine/render-update-hooks.d.ts +5 -0
- package/dist/src/generators/alpine/render-update-hooks.js +44 -0
- package/dist/src/generators/angular.d.ts +2 -3
- package/dist/src/generators/angular.js +89 -97
- package/dist/src/generators/helpers/functions.js +2 -1
- package/dist/src/generators/html.js +1 -1
- package/dist/src/generators/qwik/component-generator.js +8 -1
- package/dist/src/generators/svelte/blocks.js +19 -21
- package/dist/src/generators/svelte/helpers.d.ts +5 -1
- package/dist/src/generators/svelte/helpers.js +8 -5
- package/dist/src/generators/svelte/svelte.js +34 -31
- package/dist/src/generators/swift-ui.js +1 -1
- package/dist/src/generators/vue/blocks.js +4 -2
- package/dist/src/generators/vue/compositionApi.js +3 -1
- package/dist/src/generators/vue/helpers.d.ts +2 -2
- package/dist/src/generators/vue/helpers.js +13 -5
- package/dist/src/generators/vue/optionsApi.js +0 -5
- package/dist/src/generators/vue/vue.js +4 -26
- package/dist/src/helpers/babel-transform.d.ts +2 -1
- package/dist/src/helpers/babel-transform.js +16 -19
- package/dist/src/helpers/get-state-object-string.d.ts +1 -1
- package/dist/src/helpers/get-state-object-string.js +5 -5
- package/dist/src/helpers/has-bindings-text.js +1 -1
- package/dist/src/helpers/is-children.d.ts +4 -1
- package/dist/src/helpers/is-children.js +5 -4
- package/dist/src/helpers/patterns.d.ts +1 -0
- package/dist/src/helpers/patterns.js +3 -1
- package/dist/src/helpers/plugins/process-code.js +1 -1
- package/dist/src/helpers/render-imports.d.ts +11 -3
- package/dist/src/helpers/render-imports.js +18 -4
- package/dist/src/helpers/styles/helpers.d.ts +0 -1
- package/dist/src/helpers/traverse-nodes.d.ts +1 -1
- package/dist/src/helpers/traverse-nodes.js +3 -3
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +2 -3
- package/dist/src/parsers/builder.d.ts +4 -4
- package/dist/src/parsers/jsx/function-parser.js +8 -0
- package/dist/src/parsers/jsx/metadata.js +17 -1
- package/dist/src/parsers/jsx/state.js +6 -1
- package/dist/src/plugins/map-styles.js +1 -1
- package/dist/src/targets.d.ts +1 -0
- package/dist/src/targets.js +2 -0
- package/dist/src/types/mitosis-component.d.ts +4 -8
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/jsx-runtime.d.ts +2 -0
- package/package.json +9 -10
|
@@ -95,7 +95,7 @@ var getImportValue = function (_a) {
|
|
|
95
95
|
}
|
|
96
96
|
};
|
|
97
97
|
var renderImport = function (_a) {
|
|
98
|
-
var theImport = _a.theImport, target = _a.target, asyncComponentImports = _a.asyncComponentImports, _b = _a.preserveFileExtensions, preserveFileExtensions = _b === void 0 ? false : _b;
|
|
98
|
+
var theImport = _a.theImport, target = _a.target, asyncComponentImports = _a.asyncComponentImports, _b = _a.preserveFileExtensions, preserveFileExtensions = _b === void 0 ? false : _b, _c = _a.component, component = _c === void 0 ? undefined : _c, _d = _a.componentsUsed, componentsUsed = _d === void 0 ? [] : _d, importMapper = _a.importMapper;
|
|
99
99
|
var importedValues = getImportedValues({ theImport: theImport });
|
|
100
100
|
var path = transformImportPath(theImport, target, preserveFileExtensions);
|
|
101
101
|
var importValue = getImportValue(importedValues);
|
|
@@ -115,11 +115,14 @@ var renderImport = function (_a) {
|
|
|
115
115
|
return "const ".concat(importValue, " = () => import('").concat(path, "')\n .then(x => x.default)\n .catch(err => { \n console.error('Error while attempting to dynamically import component ").concat(importValue, " at ").concat(path, "', err);\n throw err;\n });");
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
|
+
if (importMapper) {
|
|
119
|
+
return importMapper(component, theImport, importedValues, componentsUsed);
|
|
120
|
+
}
|
|
118
121
|
return importValue ? "import ".concat(importValue, " from '").concat(path, "';") : "import '".concat(path, "';");
|
|
119
122
|
};
|
|
120
123
|
exports.renderImport = renderImport;
|
|
121
124
|
var renderImports = function (_a) {
|
|
122
|
-
var imports = _a.imports, target = _a.target, asyncComponentImports = _a.asyncComponentImports, excludeMitosisComponents = _a.excludeMitosisComponents, _b = _a.preserveFileExtensions, preserveFileExtensions = _b === void 0 ? false : _b;
|
|
125
|
+
var imports = _a.imports, target = _a.target, asyncComponentImports = _a.asyncComponentImports, excludeMitosisComponents = _a.excludeMitosisComponents, _b = _a.preserveFileExtensions, preserveFileExtensions = _b === void 0 ? false : _b, component = _a.component, componentsUsed = _a.componentsUsed, importMapper = _a.importMapper;
|
|
123
126
|
return imports
|
|
124
127
|
.filter(function (theImport) {
|
|
125
128
|
if (
|
|
@@ -137,20 +140,31 @@ var renderImports = function (_a) {
|
|
|
137
140
|
}
|
|
138
141
|
})
|
|
139
142
|
.map(function (theImport) {
|
|
140
|
-
return (0, exports.renderImport)({
|
|
143
|
+
return (0, exports.renderImport)({
|
|
144
|
+
theImport: theImport,
|
|
145
|
+
target: target,
|
|
146
|
+
asyncComponentImports: asyncComponentImports,
|
|
147
|
+
preserveFileExtensions: preserveFileExtensions,
|
|
148
|
+
component: component,
|
|
149
|
+
componentsUsed: componentsUsed,
|
|
150
|
+
importMapper: importMapper,
|
|
151
|
+
});
|
|
141
152
|
})
|
|
142
153
|
.join('\n');
|
|
143
154
|
};
|
|
144
155
|
exports.renderImports = renderImports;
|
|
145
156
|
var renderPreComponent = function (_a) {
|
|
146
157
|
var _b;
|
|
147
|
-
var component = _a.component, target = _a.target, excludeMitosisComponents = _a.excludeMitosisComponents, _c = _a.asyncComponentImports, asyncComponentImports = _c === void 0 ? false : _c, _d = _a.preserveFileExtensions, preserveFileExtensions = _d === void 0 ? false : _d;
|
|
158
|
+
var component = _a.component, target = _a.target, excludeMitosisComponents = _a.excludeMitosisComponents, _c = _a.asyncComponentImports, asyncComponentImports = _c === void 0 ? false : _c, _d = _a.preserveFileExtensions, preserveFileExtensions = _d === void 0 ? false : _d, _e = _a.componentsUsed, componentsUsed = _e === void 0 ? [] : _e, importMapper = _a.importMapper;
|
|
148
159
|
return "\n ".concat((0, exports.renderImports)({
|
|
149
160
|
imports: component.imports,
|
|
150
161
|
target: target,
|
|
151
162
|
asyncComponentImports: asyncComponentImports,
|
|
152
163
|
excludeMitosisComponents: excludeMitosisComponents,
|
|
153
164
|
preserveFileExtensions: preserveFileExtensions,
|
|
165
|
+
component: component,
|
|
166
|
+
componentsUsed: componentsUsed,
|
|
167
|
+
importMapper: importMapper,
|
|
154
168
|
}), "\n ").concat((0, exports.renderExportAndLocal)(component), "\n ").concat(((_b = component.hooks.preComponent) === null || _b === void 0 ? void 0 : _b.code) || '', "\n ");
|
|
155
169
|
};
|
|
156
170
|
exports.renderPreComponent = renderPreComponent;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { MitosisComponent } from '../types/mitosis-component';
|
|
2
2
|
import { MitosisNode } from '../types/mitosis-node';
|
|
3
3
|
import { TraverseContext } from 'traverse';
|
|
4
|
-
export declare function
|
|
4
|
+
export declare function traverseNodes(component: MitosisComponent | MitosisNode, cb: (node: MitosisNode, context: TraverseContext) => void): void;
|
|
@@ -3,14 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.traverseNodes = void 0;
|
|
7
7
|
var traverse_1 = __importDefault(require("traverse"));
|
|
8
8
|
var is_mitosis_node_1 = require("./is-mitosis-node");
|
|
9
|
-
function
|
|
9
|
+
function traverseNodes(component, cb) {
|
|
10
10
|
(0, traverse_1.default)(component).forEach(function (item) {
|
|
11
11
|
if ((0, is_mitosis_node_1.isMitosisNode)(item)) {
|
|
12
12
|
cb(item, this);
|
|
13
13
|
}
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
|
-
exports.
|
|
16
|
+
exports.traverseNodes = traverseNodes;
|
package/dist/src/index.d.ts
CHANGED
|
@@ -21,7 +21,6 @@ export declare const setContext: <T = {
|
|
|
21
21
|
}>(key: Context<T>, value: Partial<T>) => void;
|
|
22
22
|
export declare const onMount: (fn: () => any) => any;
|
|
23
23
|
export declare const onUpdate: (fn: () => any, deps?: any[]) => any;
|
|
24
|
-
export declare const onCreate: (fn: () => any) => any;
|
|
25
24
|
export declare const onInit: (fn: () => any) => any;
|
|
26
25
|
export declare const onUnMount: (fn: () => any) => any;
|
|
27
26
|
export declare const useDynamicTag: (fn: () => any) => any;
|
|
@@ -36,6 +35,7 @@ export * from './parsers/builder';
|
|
|
36
35
|
export * from './parsers/angular';
|
|
37
36
|
export * from './parsers/context';
|
|
38
37
|
export * from './generators/vue';
|
|
38
|
+
export * from './generators/alpine';
|
|
39
39
|
export * from './generators/angular';
|
|
40
40
|
export * from './generators/context/react';
|
|
41
41
|
export * from './generators/context/qwik';
|
package/dist/src/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.useStyle = exports.useDefaultProps = exports.useMetadata = exports.onError = exports.useDynamicTag = exports.onUnMount = exports.onInit = exports.
|
|
17
|
+
exports.useStyle = exports.useDefaultProps = exports.useMetadata = exports.onError = exports.useDynamicTag = exports.onUnMount = exports.onInit = exports.onUpdate = exports.onMount = exports.setContext = exports.createContext = exports.useContext = exports.useRef = exports.useState = exports.useStore = void 0;
|
|
18
18
|
__exportStar(require("./flow"), exports);
|
|
19
19
|
function Provider(props) {
|
|
20
20
|
return null;
|
|
@@ -50,8 +50,6 @@ var onMount = function (fn) {
|
|
|
50
50
|
exports.onMount = onMount;
|
|
51
51
|
var onUpdate = function (fn, deps) { return null; };
|
|
52
52
|
exports.onUpdate = onUpdate;
|
|
53
|
-
var onCreate = function (fn) { return null; };
|
|
54
|
-
exports.onCreate = onCreate;
|
|
55
53
|
var onInit = function (fn) { return null; };
|
|
56
54
|
exports.onInit = onInit;
|
|
57
55
|
var onUnMount = function (fn) { return null; };
|
|
@@ -74,6 +72,7 @@ __exportStar(require("./parsers/builder"), exports);
|
|
|
74
72
|
__exportStar(require("./parsers/angular"), exports);
|
|
75
73
|
__exportStar(require("./parsers/context"), exports);
|
|
76
74
|
__exportStar(require("./generators/vue"), exports);
|
|
75
|
+
__exportStar(require("./generators/alpine"), exports);
|
|
77
76
|
__exportStar(require("./generators/angular"), exports);
|
|
78
77
|
__exportStar(require("./generators/context/react"), exports);
|
|
79
78
|
__exportStar(require("./generators/context/qwik"), exports);
|
|
@@ -42,8 +42,8 @@ export declare const builderContentToMitosisComponent: (builderContent: BuilderC
|
|
|
42
42
|
inputs: import("..").MitosisComponentInput[];
|
|
43
43
|
state: import("..").MitosisState;
|
|
44
44
|
context: {
|
|
45
|
-
get: import("..").
|
|
46
|
-
set: import("..").
|
|
45
|
+
get: import("../helpers/typescript").Dictionary<import("..").ContextGetInfo>;
|
|
46
|
+
set: import("../helpers/typescript").Dictionary<import("..").ContextSetInfo>;
|
|
47
47
|
};
|
|
48
48
|
refs: {
|
|
49
49
|
[useRef: string]: {
|
|
@@ -77,8 +77,8 @@ export declare const builderContentToMitosisComponent: (builderContent: BuilderC
|
|
|
77
77
|
inputs: import("..").MitosisComponentInput[];
|
|
78
78
|
state: import("..").MitosisState;
|
|
79
79
|
context: {
|
|
80
|
-
get: import("..").
|
|
81
|
-
set: import("..").
|
|
80
|
+
get: import("../helpers/typescript").Dictionary<import("..").ContextGetInfo>;
|
|
81
|
+
set: import("../helpers/typescript").Dictionary<import("..").ContextSetInfo>;
|
|
82
82
|
};
|
|
83
83
|
refs: {
|
|
84
84
|
[useRef: string]: {
|
|
@@ -57,6 +57,7 @@ var state_1 = require("./state");
|
|
|
57
57
|
var helpers_1 = require("./helpers");
|
|
58
58
|
var component_types_1 = require("./component-types");
|
|
59
59
|
var element_parser_1 = require("./element-parser");
|
|
60
|
+
var metadata_1 = require("./metadata");
|
|
60
61
|
var types = babel.types;
|
|
61
62
|
function generateUseStyleCode(expression) {
|
|
62
63
|
return (0, generator_1.default)(expression.arguments[0]).code.replace(/(^("|'|`)|("|'|`)$)/g, '');
|
|
@@ -196,6 +197,9 @@ var componentFunctionToJson = function (node, context) {
|
|
|
196
197
|
else if (expression.callee.name === hooks_1.HOOKS.STYLE) {
|
|
197
198
|
context.builder.component.style = generateUseStyleCode(expression);
|
|
198
199
|
}
|
|
200
|
+
else if (expression.callee.name === metadata_1.METADATA_HOOK_NAME) {
|
|
201
|
+
context.builder.component.meta[metadata_1.METADATA_HOOK_NAME] = __assign(__assign({}, context.builder.component.meta[metadata_1.METADATA_HOOK_NAME]), (0, helpers_1.parseCodeJson)(expression.arguments[0]));
|
|
202
|
+
}
|
|
199
203
|
}
|
|
200
204
|
}
|
|
201
205
|
}
|
|
@@ -233,6 +237,10 @@ var componentFunctionToJson = function (node, context) {
|
|
|
233
237
|
type: 'property',
|
|
234
238
|
};
|
|
235
239
|
}
|
|
240
|
+
// Typescript Parameter
|
|
241
|
+
if (types.isTSTypeParameterInstantiation(init.typeParameters)) {
|
|
242
|
+
state[varName].typeParameter = (0, generator_1.default)(init.typeParameters.params[0]).code;
|
|
243
|
+
}
|
|
236
244
|
}
|
|
237
245
|
}
|
|
238
246
|
// Legacy format, like:
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
14
|
if (k2 === undefined) k2 = k;
|
|
4
15
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -59,7 +70,12 @@ var collectMetadata = function (nodes, component, options) {
|
|
|
59
70
|
if (types.isIdentifier(hook.callee)) {
|
|
60
71
|
if (hookNames.has(hook.callee.name)) {
|
|
61
72
|
try {
|
|
62
|
-
component.meta[hook.callee.name]
|
|
73
|
+
if (component.meta[hook.callee.name]) {
|
|
74
|
+
component.meta[hook.callee.name] = __assign(__assign({}, component.meta[hook.callee.name]), (0, helpers_1.parseCodeJson)(hook.arguments[0]));
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
component.meta[hook.callee.name] = (0, helpers_1.parseCodeJson)(hook.arguments[0]);
|
|
78
|
+
}
|
|
63
79
|
return false;
|
|
64
80
|
}
|
|
65
81
|
catch (e) {
|
|
@@ -132,9 +132,14 @@ var createFunctionStringLiteralObjectProperty = function (key, node) {
|
|
|
132
132
|
};
|
|
133
133
|
var parseStateValue = function (item) {
|
|
134
134
|
if (types.isObjectProperty(item)) {
|
|
135
|
-
if (types.isFunctionExpression(item.value)
|
|
135
|
+
if (types.isFunctionExpression(item.value)) {
|
|
136
136
|
return createFunctionStringLiteralObjectProperty(item.key, item.value);
|
|
137
137
|
}
|
|
138
|
+
else if (types.isArrowFunctionExpression(item.value)) {
|
|
139
|
+
// convert this to an object method instead
|
|
140
|
+
var n = babel.types.objectMethod('method', item.key, item.value.params, item.value.body);
|
|
141
|
+
return types.objectProperty(item.key, types.stringLiteral("".concat(outdated_prefixes_1.__DO_NOT_USE_METHOD_LITERAL_PREFIX).concat((0, generator_1.default)(n).code)));
|
|
142
|
+
}
|
|
138
143
|
}
|
|
139
144
|
if (types.isObjectMethod(item)) {
|
|
140
145
|
return types.objectProperty(item.key, types.stringLiteral("".concat(outdated_prefixes_1.__DO_NOT_USE_METHOD_LITERAL_PREFIX).concat((0, generator_1.default)(__assign(__assign({}, item), { returnType: null })).code)));
|
|
@@ -6,7 +6,7 @@ var traverse_nodes_1 = require("../helpers/traverse-nodes");
|
|
|
6
6
|
var mapStyles = function (pluginOptions) { return function (options) { return ({
|
|
7
7
|
json: {
|
|
8
8
|
pre: function (json) {
|
|
9
|
-
(0, traverse_nodes_1.
|
|
9
|
+
(0, traverse_nodes_1.traverseNodes)(json, function (node, context) {
|
|
10
10
|
var styles = (0, get_styles_1.getStyles)(node);
|
|
11
11
|
(0, get_styles_1.setStyles)(node, pluginOptions.map(styles || {}, context));
|
|
12
12
|
});
|
package/dist/src/targets.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export declare const builder: (options?: import("./generators/builder").ToBuilderOptions) => ({ component }: import(".").TranspilerArgs) => import("@builder.io/sdk").BuilderContent;
|
|
2
2
|
export declare const targets: {
|
|
3
|
+
readonly alpine: import(".").TranspilerGenerator<import("./generators/alpine").ToAlpineOptions, string>;
|
|
3
4
|
readonly angular: import(".").TranspilerGenerator<import("./generators/angular").ToAngularOptions, string>;
|
|
4
5
|
readonly customElement: import(".").TranspilerGenerator<import("./generators/html").ToHtmlOptions, string>;
|
|
5
6
|
readonly html: import(".").TranspilerGenerator<import("./generators/html").ToHtmlOptions, string>;
|
package/dist/src/targets.js
CHANGED
|
@@ -4,6 +4,7 @@ exports.targets = exports.builder = void 0;
|
|
|
4
4
|
var angular_1 = require("./generators/angular");
|
|
5
5
|
var builder_1 = require("./generators/builder");
|
|
6
6
|
var html_1 = require("./generators/html");
|
|
7
|
+
var alpine_1 = require("./generators/alpine");
|
|
7
8
|
var mitosis_1 = require("./generators/mitosis");
|
|
8
9
|
var liquid_1 = require("./generators/liquid");
|
|
9
10
|
var react_1 = require("./generators/react");
|
|
@@ -21,6 +22,7 @@ var lit_1 = require("./generators/lit");
|
|
|
21
22
|
var rsc_1 = require("./generators/rsc");
|
|
22
23
|
exports.builder = builder_1.componentToBuilder;
|
|
23
24
|
exports.targets = {
|
|
25
|
+
alpine: alpine_1.componentToAlpine,
|
|
24
26
|
angular: angular_1.componentToAngular,
|
|
25
27
|
customElement: html_1.componentToCustomElement,
|
|
26
28
|
html: html_1.componentToHtml,
|
|
@@ -37,12 +37,6 @@ export interface ContextSetInfo {
|
|
|
37
37
|
value?: MitosisState;
|
|
38
38
|
ref?: string;
|
|
39
39
|
}
|
|
40
|
-
export declare type ContextGet = {
|
|
41
|
-
[key: string]: ContextGetInfo;
|
|
42
|
-
};
|
|
43
|
-
export declare type ContextSet = {
|
|
44
|
-
[key: string]: ContextSetInfo;
|
|
45
|
-
};
|
|
46
40
|
export declare type extendedHook = {
|
|
47
41
|
code: string;
|
|
48
42
|
deps?: string;
|
|
@@ -64,11 +58,13 @@ export declare type StateCode = _JSON;
|
|
|
64
58
|
declare type CodeValue = {
|
|
65
59
|
code: string;
|
|
66
60
|
type: Exclude<StateValueType, 'property'>;
|
|
61
|
+
typeParameter?: string;
|
|
67
62
|
};
|
|
68
63
|
export declare const checkIsCodeValue: (value: unknown) => value is CodeValue;
|
|
69
64
|
export declare type StateValue = CodeValue | {
|
|
70
65
|
code: StateCode;
|
|
71
66
|
type: Extract<StateValueType, 'property'>;
|
|
67
|
+
typeParameter?: string;
|
|
72
68
|
};
|
|
73
69
|
export declare type MitosisState = Dictionary<StateValue | undefined>;
|
|
74
70
|
export declare type MitosisComponent = {
|
|
@@ -82,8 +78,8 @@ export declare type MitosisComponent = {
|
|
|
82
78
|
inputs: MitosisComponentInput[];
|
|
83
79
|
state: MitosisState;
|
|
84
80
|
context: {
|
|
85
|
-
get:
|
|
86
|
-
set:
|
|
81
|
+
get: Dictionary<ContextGetInfo>;
|
|
82
|
+
set: Dictionary<ContextSetInfo>;
|
|
87
83
|
};
|
|
88
84
|
refs: {
|
|
89
85
|
[useRef: string]: {
|