|
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/core/index.ts
-
-
-
-
-
-
-
-
-
-
-
- var _common = require('@vue-macros/common');
- function transformDefinePropsRefs(code, id) {
- if (!code.includes(_common.DEFINE_PROPS_REFS))
- return;
- const { scriptSetup, getSetupAst } = _common.parseSFC.call(void 0, code, id);
- if (!scriptSetup)
- return;
- const offset = scriptSetup.loc.start.offset;
- const s = new (0, _common.MagicString)(code);
- const setupAst = getSetupAst();
- let changed = false;
- _common.walkAST.call(void 0, setupAst, {
- enter(node) {
- if (_common.isCallOf.call(void 0, node, _common.WITH_DEFAULTS) && node.arguments) {
- processDefinePropsRefs(node.arguments[0], node);
- this.skip();
- } else if (_common.isCallOf.call(void 0, node, _common.DEFINE_PROPS_REFS)) {
- processDefinePropsRefs(node);
- }
- }
- });
- if (changed) {
- _common.importHelperFn.call(void 0, s, offset, "toRefs", "vue");
- }
- return _common.getTransformResult.call(void 0, s, id);
- function processDefinePropsRefs(propsCall, defaultsCall) {
- let code2 = `${_common.DEFINE_PROPS}${s.slice(
- offset + propsCall.callee.end,
- offset + propsCall.end
- )}`;
- if (defaultsCall) {
- code2 = `${_common.WITH_DEFAULTS}(${code2}, ${s.sliceNode(
- defaultsCall.arguments[1],
- {
- offset
- }
- )})`;
- }
- s.prependLeft(offset, `
- const ${_common.HELPER_PREFIX}props = ${code2}`);
- s.overwriteNode(
- defaultsCall || propsCall,
- `${_common.HELPER_PREFIX}toRefs(${_common.HELPER_PREFIX}props)`,
- {
- offset
- }
- );
- changed = true;
- }
- }
-
-
-
- exports.transformDefinePropsRefs = transformDefinePropsRefs;
|