@wix/cli 1.1.87 → 1.1.89
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/build/{DevCommand-LK2J4SHX.js → DevCommand-6PR5SHFL.js} +21 -18
- package/build/{DevCommand-LK2J4SHX.js.map → DevCommand-6PR5SHFL.js.map} +1 -1
- package/build/DevCommand-DSJBVCXP.js +103980 -0
- package/build/DevCommand-DSJBVCXP.js.map +1 -0
- package/build/{DevCommand-NPY7LRXR.js → DevCommand-SU6KLMXH.js} +31 -26
- package/build/{DevCommand-NPY7LRXR.js.map → DevCommand-SU6KLMXH.js.map} +1 -1
- package/build/EnvPullCommand-VA3TPRQO.js +467 -0
- package/build/EnvPullCommand-VA3TPRQO.js.map +1 -0
- package/build/EnvRemoveCommand-CKMRMF7J.js +83 -0
- package/build/EnvRemoveCommand-CKMRMF7J.js.map +1 -0
- package/build/EnvSetCommand-CLLES2MM.js +85 -0
- package/build/EnvSetCommand-CLLES2MM.js.map +1 -0
- package/build/{InstallCommand-HETKQTOF.js → InstallCommand-62NSOPA4.js} +24 -21
- package/build/{InstallCommand-HETKQTOF.js.map → InstallCommand-62NSOPA4.js.map} +1 -1
- package/build/{LoginCommand-6L33EWLY.js → LoginCommand-ZBVQG3GI.js} +14 -12
- package/build/{LoginCommand-6L33EWLY.js.map → LoginCommand-ZBVQG3GI.js.map} +1 -1
- package/build/{LogoutCommand-LKLIYJ4J.js → LogoutCommand-UFO55NX7.js} +10 -8
- package/build/{LogoutCommand-LKLIYJ4J.js.map → LogoutCommand-UFO55NX7.js.map} +1 -1
- package/build/{PreviewCommand-3BMR7D7L.js → PreviewCommand-57ESGZBQ.js} +28 -25
- package/build/{PreviewCommand-3BMR7D7L.js.map → PreviewCommand-57ESGZBQ.js.map} +1 -1
- package/build/{PreviewCommand-C4T25Z3E.js → PreviewCommand-7HPGH2OP.js} +22 -19
- package/build/{PreviewCommand-C4T25Z3E.js.map → PreviewCommand-7HPGH2OP.js.map} +1 -1
- package/build/PreviewCommand-ZJB3SZSN.js +31 -0
- package/build/{PublishCommand-O5NP2HRQ.js → PublishCommand-VC5MNHC5.js} +22 -19
- package/build/{PublishCommand-O5NP2HRQ.js.map → PublishCommand-VC5MNHC5.js.map} +1 -1
- package/build/ReleaseCommand-SBNT2ETF.js +4529 -0
- package/build/ReleaseCommand-SBNT2ETF.js.map +1 -0
- package/build/{UninstallCommand-CBFAJV2F.js → UninstallCommand-DW3T2JFF.js} +24 -21
- package/build/{UninstallCommand-CBFAJV2F.js.map → UninstallCommand-DW3T2JFF.js.map} +1 -1
- package/build/{WhoamiCommand-LPJGYXSP.js → WhoamiCommand-SHJAH27B.js} +5 -4
- package/build/{WhoamiCommand-LPJGYXSP.js.map → WhoamiCommand-SHJAH27B.js.map} +1 -1
- package/build/{chunk-Z4YQ7YWC.js → chunk-2H6EDYVV.js} +4 -4
- package/build/{chunk-E2POOOG2.js → chunk-3OG3PDAA.js} +51 -2
- package/build/{chunk-E2POOOG2.js.map → chunk-3OG3PDAA.js.map} +1 -1
- package/build/chunk-3VVLHRNT.js +92 -0
- package/build/chunk-3VVLHRNT.js.map +1 -0
- package/build/{chunk-6VFQIFXS.js → chunk-4D7HUJOJ.js} +5 -5
- package/build/{chunk-NOH6CVSC.js → chunk-4MGIAJ3I.js} +8 -8
- package/build/{chunk-4EBW6Y52.js → chunk-5RMA3ZDH.js} +4 -4
- package/build/{chunk-4EBW6Y52.js.map → chunk-5RMA3ZDH.js.map} +1 -1
- package/build/chunk-65JTHDMM.js +3782 -0
- package/build/chunk-65JTHDMM.js.map +1 -0
- package/build/chunk-7ICFZQAL.js +14 -0
- package/build/chunk-7ICFZQAL.js.map +1 -0
- package/build/chunk-7T7SLCFH.js +3454 -0
- package/build/chunk-7T7SLCFH.js.map +1 -0
- package/build/{chunk-YLK75XXM.js → chunk-7ZP5YH44.js} +2 -2
- package/build/{chunk-T5F7W3A3.js → chunk-AEDM4QQI.js} +11 -11
- package/build/{chunk-UF2OSZ32.js → chunk-AGLQGPAD.js} +16 -12
- package/build/{chunk-UF2OSZ32.js.map → chunk-AGLQGPAD.js.map} +1 -1
- package/build/{chunk-YMJB5UO3.js → chunk-AYTF4CUT.js} +6 -6
- package/build/chunk-COXRYL76.js +21 -0
- package/build/chunk-COXRYL76.js.map +1 -0
- package/build/{chunk-UTFSE4KU.js → chunk-DFC24E3J.js} +3 -3
- package/build/{chunk-RVMEYUY7.js → chunk-E4DQ4CV7.js} +2 -2
- package/build/{chunk-JUZMIMAT.js → chunk-F64BUTC2.js} +6 -4
- package/build/{chunk-JUZMIMAT.js.map → chunk-F64BUTC2.js.map} +1 -1
- package/build/{chunk-46OKYX3T.js → chunk-F6EKHXGO.js} +6 -6
- package/build/{chunk-P5ZYMUV4.js → chunk-GRTL4S3Y.js} +5 -5
- package/build/{chunk-QQCYRUA6.js → chunk-I5OLIQ4U.js} +49 -7
- package/build/{chunk-QQCYRUA6.js.map → chunk-I5OLIQ4U.js.map} +1 -1
- package/build/{chunk-LUAAKCVP.js → chunk-IBSXCOMX.js} +13 -13
- package/build/{chunk-XBFMXGMY.js → chunk-J2QEZEUE.js} +192 -142
- package/build/chunk-J2QEZEUE.js.map +1 -0
- package/build/{chunk-JHHGNLIV.js → chunk-JTAS7UOW.js} +3 -13
- package/build/chunk-JTAS7UOW.js.map +1 -0
- package/build/{chunk-CJHPYBMK.js → chunk-K2VIIDEO.js} +2 -2
- package/build/{chunk-RA6PTMIG.js → chunk-KK7IN3VX.js} +5 -5
- package/build/{chunk-UIA2B5XZ.js → chunk-KRH7ULXP.js} +4 -4
- package/build/{chunk-Z7JQD6EN.js → chunk-L2ALAYPX.js} +61 -20
- package/build/chunk-L2ALAYPX.js.map +1 -0
- package/build/chunk-L6ABBZNR.js +1753 -0
- package/build/chunk-L6ABBZNR.js.map +1 -0
- package/build/chunk-LG6PBN72.js +602 -0
- package/build/chunk-LG6PBN72.js.map +1 -0
- package/build/{chunk-K4AB7LGX.js → chunk-MOWGYB6X.js} +2 -2
- package/build/chunk-MWHZITF4.js +59 -0
- package/build/chunk-MWHZITF4.js.map +1 -0
- package/build/{chunk-RVGOK65D.js → chunk-NNJ3SLG4.js} +13 -9
- package/build/{chunk-RVGOK65D.js.map → chunk-NNJ3SLG4.js.map} +1 -1
- package/build/{chunk-OVWRYWLC.js → chunk-OVPU5FXS.js} +5 -5
- package/build/{chunk-7Y2EFSBJ.js → chunk-OXWNDWBN.js} +9 -7
- package/build/{chunk-7Y2EFSBJ.js.map → chunk-OXWNDWBN.js.map} +1 -1
- package/build/{chunk-GYIDIRSX.js → chunk-P7ZNMQUM.js} +2 -2
- package/build/{chunk-FTL2KYZQ.js → chunk-QEYQKR6R.js} +2 -2
- package/build/{chunk-KT2FHEZR.js → chunk-RIBACKJC.js} +3 -3
- package/build/{chunk-GO2GZJCK.js → chunk-SF2XPDVG.js} +2 -51
- package/build/chunk-SF2XPDVG.js.map +1 -0
- package/build/{chunk-74KZJOZH.js → chunk-SICO3I76.js} +15 -15
- package/build/chunk-U7RM5FAW.js +916 -0
- package/build/chunk-U7RM5FAW.js.map +1 -0
- package/build/{chunk-M3K72MEX.js → chunk-ULCE6HIP.js} +11 -3
- package/build/{chunk-M3K72MEX.js.map → chunk-ULCE6HIP.js.map} +1 -1
- package/build/chunk-VCVYBKDN.js +34 -0
- package/build/chunk-VCVYBKDN.js.map +1 -0
- package/build/chunk-WFKMTTHE.js +124 -0
- package/build/chunk-WFKMTTHE.js.map +1 -0
- package/build/{chunk-APJVRHWV.js → chunk-XMBDVE2N.js} +2 -2
- package/build/{chunk-J3OSZVAR.js → chunk-Y6LAXAGE.js} +4 -4
- package/build/{chunk-MXAPWPGN.js → chunk-YEJSNYOF.js} +2 -2
- package/build/{chunk-Q35JN7B7.js → chunk-YPV2HLJD.js} +4 -4
- package/build/{chunk-QEBMMR2W.js → chunk-YQSC6PKB.js} +3 -3
- package/build/{chunk-O2XYQA7P.js → chunk-YSJHY6MU.js} +95 -991
- package/build/chunk-YSJHY6MU.js.map +1 -0
- package/build/{chunk-6RXRVNVZ.js → chunk-ZU656JEZ.js} +2 -1
- package/build/{chunk-N4QBC52K.js → chunk-ZYOXKXUX.js} +4 -27
- package/build/chunk-ZYOXKXUX.js.map +1 -0
- package/build/{dev-XNYFRZT2.js → dev-HHXXZE7J.js} +41 -36
- package/build/{dev-XNYFRZT2.js.map → dev-HHXXZE7J.js.map} +1 -1
- package/build/execa-KAGZAUR3.js +21 -0
- package/build/index.js +411 -4174
- package/build/index.js.map +1 -1
- package/build/{install-T2VL2EW7.js → install-WET72ZAZ.js} +25 -23
- package/build/{install-T2VL2EW7.js.map → install-WET72ZAZ.js.map} +1 -1
- package/build/preview-6FKRNMCF.js +110 -0
- package/build/preview-6FKRNMCF.js.map +1 -0
- package/build/{publish-X4C2MV4G.js → publish-BHMYVPLP.js} +33 -31
- package/build/{publish-X4C2MV4G.js.map → publish-BHMYVPLP.js.map} +1 -1
- package/build/{render-command-6ZOFWK7J.js → render-command-2NWXXSWT.js} +19 -17
- package/build/{render-command-6ZOFWK7J.js.map → render-command-2NWXXSWT.js.map} +1 -1
- package/build/{render-command-3IKISL4W.js → render-command-HURH3IOZ.js} +14 -12
- package/build/{render-command-3IKISL4W.js.map → render-command-HURH3IOZ.js.map} +1 -1
- package/build/render-command-IPOJHSMF.js +31 -0
- package/build/{render-command-XJNWHPDB.js → render-command-OTA4NOXM.js} +17 -15
- package/build/{render-command-XJNWHPDB.js.map → render-command-OTA4NOXM.js.map} +1 -1
- package/build/{render-command-UIJELJ22.js → render-command-TBKSDNTA.js} +13 -11
- package/build/{render-command-UIJELJ22.js.map → render-command-TBKSDNTA.js.map} +1 -1
- package/build/run-command-FZKBF6U3.js +23 -0
- package/build/{src-OISHTUJS.js → src-E6BLP72K.js} +9 -8
- package/build/{src-OISHTUJS.js.map → src-E6BLP72K.js.map} +1 -1
- package/build/src-EPMGYHK6.js +18 -0
- package/build/{src-XPBBV4BR.js → src-GM36T6CH.js} +20 -19
- package/build/{src-XPBBV4BR.js.map → src-GM36T6CH.js.map} +1 -1
- package/build/src-QDMUFOW4.js +29 -0
- package/build/src-QDMUFOW4.js.map +1 -0
- package/build/src-TNW4DUIK.js +222 -0
- package/build/src-TNW4DUIK.js.map +1 -0
- package/build/{src-BTBURERG.js → src-V5FS522J.js} +17 -16
- package/build/{src-BTBURERG.js.map → src-V5FS522J.js.map} +1 -1
- package/build/{src-IM374B5V.js → src-X7PFNAOL.js} +10 -8
- package/build/src-X7PFNAOL.js.map +1 -0
- package/build/{src-SRRWPZCM.js → src-ZWUNO6IW.js} +2 -2
- package/build/src-ZWUNO6IW.js.map +1 -0
- package/build/sync-types-TCCFEAQO.js +34 -0
- package/build/sync-types-TCCFEAQO.js.map +1 -0
- package/build/{uninstall-TTKVW5BW.js → uninstall-T3GGTNCX.js} +25 -23
- package/build/{uninstall-TTKVW5BW.js.map → uninstall-T3GGTNCX.js.map} +1 -1
- package/package.json +2 -2
- package/build/chunk-GO2GZJCK.js.map +0 -1
- package/build/chunk-JHHGNLIV.js.map +0 -1
- package/build/chunk-N4QBC52K.js.map +0 -1
- package/build/chunk-O2XYQA7P.js.map +0 -1
- package/build/chunk-XBFMXGMY.js.map +0 -1
- package/build/chunk-Z7JQD6EN.js.map +0 -1
- package/build/run-command-3YWR7KR7.js +0 -21
- package/build/src-5V4GOPPO.js +0 -21
- package/build/src-5V4GOPPO.js.map +0 -1
- package/build/src-WA6BLDHT.js +0 -16
- package/build/sync-types-KIFWC5MO.js +0 -32
- /package/build/{run-command-3YWR7KR7.js.map → PreviewCommand-ZJB3SZSN.js.map} +0 -0
- /package/build/{chunk-Z4YQ7YWC.js.map → chunk-2H6EDYVV.js.map} +0 -0
- /package/build/{chunk-6VFQIFXS.js.map → chunk-4D7HUJOJ.js.map} +0 -0
- /package/build/{chunk-NOH6CVSC.js.map → chunk-4MGIAJ3I.js.map} +0 -0
- /package/build/{chunk-YLK75XXM.js.map → chunk-7ZP5YH44.js.map} +0 -0
- /package/build/{chunk-T5F7W3A3.js.map → chunk-AEDM4QQI.js.map} +0 -0
- /package/build/{chunk-YMJB5UO3.js.map → chunk-AYTF4CUT.js.map} +0 -0
- /package/build/{chunk-UTFSE4KU.js.map → chunk-DFC24E3J.js.map} +0 -0
- /package/build/{chunk-RVMEYUY7.js.map → chunk-E4DQ4CV7.js.map} +0 -0
- /package/build/{chunk-46OKYX3T.js.map → chunk-F6EKHXGO.js.map} +0 -0
- /package/build/{chunk-P5ZYMUV4.js.map → chunk-GRTL4S3Y.js.map} +0 -0
- /package/build/{chunk-LUAAKCVP.js.map → chunk-IBSXCOMX.js.map} +0 -0
- /package/build/{chunk-CJHPYBMK.js.map → chunk-K2VIIDEO.js.map} +0 -0
- /package/build/{chunk-RA6PTMIG.js.map → chunk-KK7IN3VX.js.map} +0 -0
- /package/build/{chunk-UIA2B5XZ.js.map → chunk-KRH7ULXP.js.map} +0 -0
- /package/build/{chunk-K4AB7LGX.js.map → chunk-MOWGYB6X.js.map} +0 -0
- /package/build/{chunk-OVWRYWLC.js.map → chunk-OVPU5FXS.js.map} +0 -0
- /package/build/{chunk-GYIDIRSX.js.map → chunk-P7ZNMQUM.js.map} +0 -0
- /package/build/{chunk-FTL2KYZQ.js.map → chunk-QEYQKR6R.js.map} +0 -0
- /package/build/{chunk-KT2FHEZR.js.map → chunk-RIBACKJC.js.map} +0 -0
- /package/build/{chunk-74KZJOZH.js.map → chunk-SICO3I76.js.map} +0 -0
- /package/build/{chunk-APJVRHWV.js.map → chunk-XMBDVE2N.js.map} +0 -0
- /package/build/{chunk-J3OSZVAR.js.map → chunk-Y6LAXAGE.js.map} +0 -0
- /package/build/{chunk-MXAPWPGN.js.map → chunk-YEJSNYOF.js.map} +0 -0
- /package/build/{chunk-Q35JN7B7.js.map → chunk-YPV2HLJD.js.map} +0 -0
- /package/build/{chunk-QEBMMR2W.js.map → chunk-YQSC6PKB.js.map} +0 -0
- /package/build/{chunk-6RXRVNVZ.js.map → chunk-ZU656JEZ.js.map} +0 -0
- /package/build/{src-IM374B5V.js.map → execa-KAGZAUR3.js.map} +0 -0
- /package/build/{src-SRRWPZCM.js.map → render-command-IPOJHSMF.js.map} +0 -0
- /package/build/{src-WA6BLDHT.js.map → run-command-FZKBF6U3.js.map} +0 -0
- /package/build/{sync-types-KIFWC5MO.js.map → src-EPMGYHK6.js.map} +0 -0
|
@@ -1,25 +1,16 @@
|
|
|
1
1
|
import { createRequire as _createRequire } from 'node:module';
|
|
2
2
|
const require = _createRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
|
-
getTestOverrides,
|
|
5
4
|
z
|
|
6
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-SF2XPDVG.js";
|
|
7
6
|
import {
|
|
8
7
|
CliError,
|
|
9
8
|
CliErrorCode
|
|
10
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-ULCE6HIP.js";
|
|
11
10
|
import {
|
|
12
11
|
init_esm_shims
|
|
13
12
|
} from "./chunk-PYIAC2GK.js";
|
|
14
13
|
|
|
15
|
-
// ../cli-data-dir/src/index.ts
|
|
16
|
-
init_esm_shims();
|
|
17
|
-
import { resolve } from "node:path";
|
|
18
|
-
import { homedir } from "node:os";
|
|
19
|
-
function getDataDirPath() {
|
|
20
|
-
return getTestOverrides().dataDir ?? resolve(homedir(), ".wix");
|
|
21
|
-
}
|
|
22
|
-
|
|
23
14
|
// ../cli-fs/src/index.ts
|
|
24
15
|
init_esm_shims();
|
|
25
16
|
import {
|
|
@@ -128,7 +119,6 @@ function readPackageJsonContent(projectFolder) {
|
|
|
128
119
|
}
|
|
129
120
|
|
|
130
121
|
export {
|
|
131
|
-
getDataDirPath,
|
|
132
122
|
writeJson,
|
|
133
123
|
readJson,
|
|
134
124
|
readFile,
|
|
@@ -138,4 +128,4 @@ export {
|
|
|
138
128
|
readPackageJson,
|
|
139
129
|
readPackageJsonContent
|
|
140
130
|
};
|
|
141
|
-
//# sourceMappingURL=chunk-
|
|
131
|
+
//# sourceMappingURL=chunk-JTAS7UOW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../cli-fs/src/index.ts","../../cli-fs/src/schemas.ts"],"sourcesContent":["import {\n access,\n readFile as fsReadFile,\n writeFile,\n mkdir,\n} from 'node:fs/promises';\nimport { dirname, join, relative } from 'node:path';\nimport { EOL } from 'node:os';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { packageJsonSchema } from './schemas.js';\nimport type { PackageJson } from './schemas.js';\n\nexport function toJsonString(object: unknown, opts?: { spaces: number }) {\n return JSON.stringify(object, null, opts?.spaces).concat(EOL);\n}\n\nexport async function writeJson(\n filePath: string,\n object: unknown,\n opts?: { spaces: number }\n) {\n const str = toJsonString(object, opts);\n await outputDir(dirname(filePath));\n\n try {\n await writeFile(filePath, str, 'utf-8');\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToWriteJson({ filePath }),\n cause: e,\n });\n }\n}\n\nexport async function readJson(file: string): Promise<unknown> {\n let content = null;\n try {\n content = await fsReadFile(file, 'utf-8');\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToReadJson({ filePath: file }),\n cause: e,\n });\n }\n\n try {\n return JSON.parse(content);\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.InvalidJsonFile({ filePath: file }),\n cause: e,\n });\n }\n}\n\nexport async function readFile(file: string): Promise<Buffer>;\nexport async function readFile(\n file: string,\n encoding: 'utf-8'\n): Promise<string>;\nexport async function readFile(file: string, encoding?: 'utf-8') {\n try {\n return await fsReadFile(file, encoding);\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToReadFile({ filePath: file }),\n cause: e,\n });\n }\n}\n\nexport function pathExists(path: string) {\n return access(path)\n .then(() => true)\n .catch(() => false);\n}\n\nexport async function outputFile(file: string, content: string) {\n await outputDir(dirname(file));\n\n try {\n await writeFile(file, content, 'utf-8');\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToWriteFile({ filePath: file }),\n cause: e,\n });\n }\n}\n\nexport async function outputDir(dir: string) {\n try {\n await mkdir(dir, { recursive: true });\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToCreateDir({ dirPath: dir }),\n cause: e,\n });\n }\n}\n\nexport async function readPackageJson(projectFolder: string) {\n const packageJsonPath = join(projectFolder, 'package.json');\n\n const json = await readJson(packageJsonPath);\n const parsedPackageJson = await packageJsonSchema.safeParseAsync(json);\n\n if (!parsedPackageJson.success) {\n throw new CliError({\n code: CliErrorCode.InvalidConfigSchemaError({\n configPath: packageJsonPath,\n zodError: parsedPackageJson.error,\n }),\n cause: parsedPackageJson.error,\n });\n }\n\n /**\n * Returning original json because zod clone object and change the order of keys.\n * It's safe to return the original json because we already validated it.\n */\n return json as PackageJson;\n}\n\nexport function readPackageJsonContent(projectFolder: string) {\n return readFile(join(projectFolder, 'package.json'), 'utf-8');\n}\n\nexport async function writePackageJson(\n projectFolder: string,\n packageJson: PackageJson\n) {\n const packageJsonPath = join(projectFolder, 'package.json');\n\n await writeJson(packageJsonPath, packageJson, { spaces: 2 });\n}\n\nexport function relativeFolderName(rootFolder: string, filePath: string) {\n return relative(rootFolder, dirname(filePath));\n}\n\nexport { type PackageJson } from './schemas.js';\n","import { z } from 'zod';\n\nexport const packageJsonSchema = z.object({\n dependencies: z.record(z.string()).optional(),\n devDependencies: z.record(z.string()).optional(),\n peerDependencies: z.record(z.string()).optional(),\n});\n\nexport type PackageJson = z.infer<typeof packageJsonSchema>;\n"],"mappings":"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","names":[]}
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
resolveUrl,
|
|
5
5
|
serializer,
|
|
6
6
|
toURLSearchParams
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-NNJ3SLG4.js";
|
|
8
8
|
import {
|
|
9
9
|
init_esm_shims
|
|
10
10
|
} from "./chunk-PYIAC2GK.js";
|
|
@@ -132,4 +132,4 @@ export {
|
|
|
132
132
|
publishDeployment,
|
|
133
133
|
getDeploymentPipelineDescription
|
|
134
134
|
};
|
|
135
|
-
//# sourceMappingURL=chunk-
|
|
135
|
+
//# sourceMappingURL=chunk-K2VIIDEO.js.map
|
|
@@ -2,17 +2,17 @@ import { createRequire as _createRequire } from 'node:module';
|
|
|
2
2
|
const require = _createRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
authenticate
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-RIBACKJC.js";
|
|
6
6
|
import {
|
|
7
7
|
syncRevisionTypes
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-4MGIAJ3I.js";
|
|
9
9
|
import {
|
|
10
10
|
writeJson
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-JTAS7UOW.js";
|
|
12
12
|
import {
|
|
13
13
|
CliError,
|
|
14
14
|
CliErrorCode
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-ULCE6HIP.js";
|
|
16
16
|
import {
|
|
17
17
|
init_esm_shims
|
|
18
18
|
} from "./chunk-PYIAC2GK.js";
|
|
@@ -58,4 +58,4 @@ export {
|
|
|
58
58
|
syncTypesWithAuth,
|
|
59
59
|
syncTypes
|
|
60
60
|
};
|
|
61
|
-
//# sourceMappingURL=chunk-
|
|
61
|
+
//# sourceMappingURL=chunk-KK7IN3VX.js.map
|
|
@@ -2,20 +2,20 @@ import { createRequire as _createRequire } from 'node:module';
|
|
|
2
2
|
const require = _createRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
VELO_DEPENDENCIES_CONFIG_FILENAME
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-E4DQ4CV7.js";
|
|
6
6
|
import {
|
|
7
7
|
createLogger
|
|
8
8
|
} from "./chunk-CNXKF7E3.js";
|
|
9
9
|
import {
|
|
10
10
|
terminalLink
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-J2QEZEUE.js";
|
|
12
12
|
import {
|
|
13
13
|
source_default
|
|
14
14
|
} from "./chunk-2K5KKUL3.js";
|
|
15
15
|
import {
|
|
16
16
|
WIX_CONFIG_FILENAME,
|
|
17
17
|
WIX_LOCK_FILENAME
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-7ZP5YH44.js";
|
|
19
19
|
import {
|
|
20
20
|
init_esm_shims
|
|
21
21
|
} from "./chunk-PYIAC2GK.js";
|
|
@@ -370,4 +370,4 @@ function getErrorMessage(cause) {
|
|
|
370
370
|
export {
|
|
371
371
|
createLogger2 as createLogger
|
|
372
372
|
};
|
|
373
|
-
//# sourceMappingURL=chunk-
|
|
373
|
+
//# sourceMappingURL=chunk-KRH7ULXP.js.map
|
|
@@ -2,32 +2,37 @@ import { createRequire as _createRequire } from 'node:module';
|
|
|
2
2
|
const require = _createRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
execaCommand
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-3OG3PDAA.js";
|
|
6
6
|
import {
|
|
7
7
|
pathExists,
|
|
8
8
|
readJson,
|
|
9
9
|
writeJson
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-JTAS7UOW.js";
|
|
11
11
|
import {
|
|
12
12
|
z
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-SF2XPDVG.js";
|
|
14
14
|
import {
|
|
15
15
|
CliError,
|
|
16
16
|
CliErrorCode,
|
|
17
17
|
require_lib
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-ULCE6HIP.js";
|
|
19
19
|
import {
|
|
20
20
|
__toESM,
|
|
21
21
|
init_esm_shims
|
|
22
22
|
} from "./chunk-PYIAC2GK.js";
|
|
23
23
|
|
|
24
|
-
// ../package-manager/src/
|
|
24
|
+
// ../package-manager/src/index.ts
|
|
25
25
|
init_esm_shims();
|
|
26
|
-
var import_variant = __toESM(require_lib(), 1);
|
|
27
|
-
import { join } from "node:path";
|
|
28
26
|
|
|
29
|
-
// ../package-manager/src/
|
|
27
|
+
// ../package-manager/src/package-manager.ts
|
|
28
|
+
init_esm_shims();
|
|
29
|
+
import { env } from "node:process";
|
|
30
|
+
import { join as join3 } from "node:path";
|
|
31
|
+
var import_variant4 = __toESM(require_lib(), 1);
|
|
32
|
+
|
|
33
|
+
// ../package-manager/src/adapters/npm.ts
|
|
30
34
|
init_esm_shims();
|
|
35
|
+
var import_variant2 = __toESM(require_lib(), 1);
|
|
31
36
|
|
|
32
37
|
// ../package-manager/src/shell/index.ts
|
|
33
38
|
init_esm_shims();
|
|
@@ -52,13 +57,44 @@ async function runCommand(command, opts) {
|
|
|
52
57
|
return stdout;
|
|
53
58
|
}
|
|
54
59
|
|
|
60
|
+
// ../package-manager/src/repo-type.ts
|
|
61
|
+
init_esm_shims();
|
|
62
|
+
var import_variant = __toESM(require_lib(), 1);
|
|
63
|
+
import { join } from "node:path";
|
|
64
|
+
|
|
55
65
|
// ../package-manager/src/git-service.ts
|
|
66
|
+
init_esm_shims();
|
|
56
67
|
function isInsideGitRepo(cwd) {
|
|
57
68
|
return runCommand("git rev-parse --is-inside-work-tree", { cwd }).then(() => true).catch(() => false);
|
|
58
69
|
}
|
|
59
70
|
async function getGitRoot(cwd) {
|
|
60
71
|
return runCommand("git rev-parse --show-toplevel", { cwd });
|
|
61
72
|
}
|
|
73
|
+
async function gitInit(cwd) {
|
|
74
|
+
await runCommand("git init", { cwd });
|
|
75
|
+
}
|
|
76
|
+
async function gitCommit(cwd) {
|
|
77
|
+
await runCommand("git add -A", { cwd });
|
|
78
|
+
await runCommand(
|
|
79
|
+
`git commit -m Initial\\ commit\\ from\\ Create\\ Wix\\ App --no-verify`,
|
|
80
|
+
{ cwd }
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
async function gitClone(url, path) {
|
|
84
|
+
await runCommand(`git clone --depth 1 ${url} ${path}`, {
|
|
85
|
+
env: {
|
|
86
|
+
/*
|
|
87
|
+
* This is to prevent git from prompting for credentials.
|
|
88
|
+
* `git clone` uses a subprocess for the authentication, so we can't attach the main process to its stdio.
|
|
89
|
+
* This leads to:
|
|
90
|
+
* - the spinners "swallow" its output.
|
|
91
|
+
* - after answering with the username and pressing "Enter", the first line of the output is being duplicated.
|
|
92
|
+
* That's why we're disabling the prompt, so user should be pre-authenticated.
|
|
93
|
+
*/
|
|
94
|
+
GIT_TERMINAL_PROMPT: "0"
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
62
98
|
|
|
63
99
|
// ../package-manager/src/repo-type.ts
|
|
64
100
|
var RepoType = (0, import_variant.variant)({
|
|
@@ -84,15 +120,7 @@ async function isUsingWorkspaces(rootDir) {
|
|
|
84
120
|
return readJson(join(rootDir, "package.json")).then((pkgJson) => Boolean(pkgJson.workspaces)).catch(() => false);
|
|
85
121
|
}
|
|
86
122
|
|
|
87
|
-
// ../package-manager/src/package-manager.ts
|
|
88
|
-
init_esm_shims();
|
|
89
|
-
import { env } from "node:process";
|
|
90
|
-
import { join as join3 } from "node:path";
|
|
91
|
-
var import_variant4 = __toESM(require_lib(), 1);
|
|
92
|
-
|
|
93
123
|
// ../package-manager/src/adapters/npm.ts
|
|
94
|
-
init_esm_shims();
|
|
95
|
-
var import_variant2 = __toESM(require_lib(), 1);
|
|
96
124
|
var NPM = class {
|
|
97
125
|
constructor(repoType) {
|
|
98
126
|
this.repoType = repoType;
|
|
@@ -107,6 +135,12 @@ var NPM = class {
|
|
|
107
135
|
getRunCmd() {
|
|
108
136
|
return "npm run";
|
|
109
137
|
}
|
|
138
|
+
getRunBinaryCmd(args) {
|
|
139
|
+
return {
|
|
140
|
+
file: "npx",
|
|
141
|
+
args: ["--no-install"].concat(args)
|
|
142
|
+
};
|
|
143
|
+
}
|
|
110
144
|
async setup(_cwd) {
|
|
111
145
|
if ((0, import_variant2.isType)(this.repoType, RepoType.Monorepo)) {
|
|
112
146
|
throw new CliError({
|
|
@@ -176,6 +210,12 @@ var Yarn = class {
|
|
|
176
210
|
getRunCmd() {
|
|
177
211
|
return "yarn";
|
|
178
212
|
}
|
|
213
|
+
getRunBinaryCmd(args) {
|
|
214
|
+
return {
|
|
215
|
+
file: "yarn",
|
|
216
|
+
args: ["run"].concat(args)
|
|
217
|
+
};
|
|
218
|
+
}
|
|
179
219
|
async setup(packageFolder) {
|
|
180
220
|
return (0, import_variant3.matcher)(this.repoType).when(["None", "Polyrepo"], async () => {
|
|
181
221
|
if (this.name === "yarn-berry") {
|
|
@@ -336,13 +376,14 @@ async function getPackageManagerName(repoType) {
|
|
|
336
376
|
).complete();
|
|
337
377
|
}
|
|
338
378
|
|
|
339
|
-
// ../package-manager/src/index.ts
|
|
340
|
-
init_esm_shims();
|
|
341
|
-
|
|
342
379
|
export {
|
|
380
|
+
gitInit,
|
|
381
|
+
gitCommit,
|
|
382
|
+
gitClone,
|
|
383
|
+
RepoType,
|
|
343
384
|
getRepoType,
|
|
344
385
|
NPM,
|
|
345
386
|
Yarn,
|
|
346
387
|
createPackageManager
|
|
347
388
|
};
|
|
348
|
-
//# sourceMappingURL=chunk-
|
|
389
|
+
//# sourceMappingURL=chunk-L2ALAYPX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../package-manager/src/index.ts","../../package-manager/src/package-manager.ts","../../package-manager/src/adapters/npm.ts","../../package-manager/src/shell/index.ts","../../package-manager/src/shell/shell-client.ts","../../package-manager/src/repo-type.ts","../../package-manager/src/git-service.ts","../../package-manager/src/adapters/yarn.ts"],"sourcesContent":["export { createPackageManager } from './package-manager.js';\nexport { NPM } from './adapters/npm.js';\nexport { Yarn } from './adapters/yarn.js';\nexport type { IPackageManager } from './types.js';\nexport { getRepoType, RepoType } from './repo-type.js';\nexport { gitClone, gitCommit, gitInit } from './git-service.js';\n","import { env } from 'node:process';\nimport { pathExists } from '@wix/cli-fs';\nimport { join } from 'node:path';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { matcher } from 'variant';\nimport { NPM } from './adapters/npm.js';\nimport { Yarn, resolveYarnVersion } from './adapters/yarn.js';\nimport type { IPackageManager, PackageManagerName } from './types.js';\nimport { RepoType } from './repo-type.js';\n\nexport async function createPackageManager(\n repoType: RepoType\n): Promise<IPackageManager> {\n const packageManagerName = await getPackageManagerName(repoType);\n\n switch (packageManagerName) {\n case 'yarn-berry':\n return new Yarn(repoType, 'yarn-berry');\n case 'yarn':\n return new Yarn(repoType, 'yarn');\n case 'npm':\n return new NPM(repoType);\n }\n}\n\nasync function getPackageManagerName(\n repoType: RepoType\n): Promise<PackageManagerName> {\n // In case of an existing repo we first check for relevant package manager files.\n // this is an extra layer of identification that should prevent errors when the\n // user runs create-app using a package manager other than the one used in the project\n\n const getByEnv = (): PackageManagerName => {\n if (env.npm_config_user_agent?.startsWith('yarn/1')) {\n return 'yarn';\n }\n\n // yarn v2+\n if (env.npm_config_user_agent?.startsWith('yarn')) {\n return 'yarn-berry';\n }\n\n if (env.npm_config_user_agent?.startsWith('npm')) {\n return 'npm';\n }\n\n throw new CliError({\n code: CliErrorCode.UnsupportedPackageManager({\n packageManagerName: env.npm_config_user_agent,\n }),\n cause: null,\n });\n };\n\n return matcher(repoType)\n .when(RepoType.None, getByEnv)\n .when(\n [RepoType.Polyrepo, RepoType.Monorepo],\n async ({ rootDir }): Promise<PackageManagerName> => {\n const [hasYarnRc, hasYarnLock, hasPackageLock] = await Promise.all([\n pathExists(join(rootDir, '.yarnrc.yml')),\n pathExists(join(rootDir, 'yarn.lock')),\n pathExists(join(rootDir, 'package-lock.json')),\n ]);\n\n if (hasYarnRc || hasYarnLock) {\n const yarnVersion = await resolveYarnVersion(rootDir);\n return yarnVersion.startsWith('1') ? 'yarn' : 'yarn-berry';\n }\n\n if (hasPackageLock) {\n return 'npm';\n }\n\n return getByEnv();\n }\n )\n .complete();\n}\n","import { CliError, CliErrorCode } from '@wix/cli-error';\nimport { isType } from 'variant';\nimport { runCommand } from '../shell/index.js';\nimport type { IPackageManager } from '../types.js';\nimport { RepoType } from '../repo-type.js';\n\nexport class NPM implements IPackageManager {\n readonly name = 'npm';\n\n constructor(private readonly repoType: RepoType) {}\n\n getUsage(name: string): string {\n return `npm init ${name.replace('create-', '')}`;\n }\n\n getInstallCmd(): string {\n return 'npm install';\n }\n\n getRunCmd(): string {\n return 'npm run';\n }\n\n getRunBinaryCmd(args: string[]): { file: string; args: string[] } {\n return {\n file: 'npx',\n args: ['--no-install'].concat(args),\n };\n }\n\n async setup(_cwd: string): Promise<void> {\n if (isType(this.repoType, RepoType.Monorepo)) {\n throw new CliError({\n code: CliErrorCode.UnsupportedPackageManagerWorkspaces({\n packageManagerName: this.name,\n }),\n cause: null,\n });\n }\n }\n\n async runInstall(cwd: string): Promise<void> {\n try {\n await runCommand(this.getInstallCmd(), { cwd });\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToInstallPackages(),\n info: { packageManager: this.name },\n cause: e,\n });\n }\n }\n\n async runInstallPackage(cwd: string, packageName: string): Promise<void> {\n try {\n await runCommand(`npm install ${packageName}`, { cwd });\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToInstallPackage({ packageName }),\n info: { packageManager: this.name },\n cause: e,\n });\n }\n }\n\n async runUninstallPackage(cwd: string, packageName: string): Promise<void> {\n try {\n await runCommand(`npm uninstall ${packageName}`, { cwd });\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToUninstallPackage({ packageName }),\n info: { packageManager: this.name },\n cause: e,\n });\n }\n }\n}\n","export { runCommand } from './shell-client.js';\n","import { execaCommand } from 'execa';\nimport type { Options } from './types.js';\n\nexport async function runCommand(command: string, opts?: Options) {\n const commandProcess = execaCommand(command, {\n /**\n * DO NOT USE `shell: true`!\n * It's a security risk that leads to injections and should be avoided.\n * ref: https://github.com/sindresorhus/execa/tree/main#shell\n */\n shell: false,\n cwd: opts?.cwd,\n env: opts?.env,\n });\n\n if (opts?.output) {\n commandProcess.stdout?.pipe(opts.output);\n }\n\n const { stdout } = await commandProcess;\n\n return stdout;\n}\n","import { readJson } from '@wix/cli-fs';\nimport { join } from 'node:path';\nimport { variant, fields } from 'variant';\nimport type { VariantOf } from 'variant';\nimport type { PackageJson } from 'type-fest';\nimport { getGitRoot, isInsideGitRepo } from './git-service.js';\n\nexport const RepoType = variant({\n None: {},\n Polyrepo: fields<{ rootDir: string }>(),\n Monorepo: fields<{ rootDir: string }>(),\n});\n\nexport type RepoType = VariantOf<typeof RepoType>;\n\nexport async function getRepoType(\n targetParentFolder: string\n): Promise<RepoType> {\n if (!(await isInsideGitRepo(targetParentFolder))) {\n return RepoType.None();\n }\n\n const rootDir = await getGitRoot(targetParentFolder);\n\n if (await isUsingWorkspaces(rootDir)) {\n return RepoType.Monorepo({\n rootDir,\n });\n }\n\n return RepoType.Polyrepo({\n rootDir,\n });\n}\n\nasync function isUsingWorkspaces(rootDir: string) {\n return readJson(join(rootDir, 'package.json'))\n .then((pkgJson) => Boolean((pkgJson as PackageJson).workspaces))\n .catch(() => false);\n}\n","import { runCommand } from './shell/index.js';\n\nexport function isInsideGitRepo(cwd: string) {\n return runCommand('git rev-parse --is-inside-work-tree', { cwd })\n .then(() => true)\n .catch(() => false);\n}\n\nexport async function getGitRoot(cwd: string) {\n return runCommand('git rev-parse --show-toplevel', { cwd });\n}\n\nexport async function gitInit(cwd: string) {\n await runCommand('git init', { cwd });\n}\n\nexport async function gitCommit(cwd: string) {\n await runCommand('git add -A', { cwd });\n await runCommand(\n `git commit -m Initial\\\\ commit\\\\ from\\\\ Create\\\\ Wix\\\\ App --no-verify`,\n { cwd }\n );\n}\n\nexport async function gitClone(url: string, path: string) {\n await runCommand(`git clone --depth 1 ${url} ${path}`, {\n env: {\n /*\n * This is to prevent git from prompting for credentials.\n * `git clone` uses a subprocess for the authentication, so we can't attach the main process to its stdio.\n * This leads to:\n * - the spinners \"swallow\" its output.\n * - after answering with the username and pressing \"Enter\", the first line of the output is being duplicated.\n * That's why we're disabling the prompt, so user should be pre-authenticated.\n */\n GIT_TERMINAL_PROMPT: '0',\n },\n });\n}\n","import { CliError, CliErrorCode } from '@wix/cli-error';\nimport { readJson, writeJson } from '@wix/cli-fs';\nimport { join, relative } from 'node:path';\nimport { matcher } from 'variant';\nimport { EOL } from 'node:os';\nimport { z } from 'zod';\nimport { writeFile } from 'node:fs/promises';\nimport type { PackageJson } from 'type-fest';\nimport { runCommand } from '../shell/index.js';\nimport type { IPackageManager } from '../types.js';\nimport type { RepoType } from '../repo-type.js';\n\ntype YarnVersion = 'yarn' | 'yarn-berry';\n\nexport async function resolveYarnVersion(cwd: string) {\n const stdout = await runCommand('yarn --version', { cwd });\n return stdout.trim();\n}\n\nexport class Yarn implements IPackageManager {\n constructor(\n private readonly repoType: RepoType,\n readonly name: YarnVersion\n ) {}\n\n getUsage(name: string): string {\n return `yarn create ${name.replace('create-', '')}`;\n }\n\n getInstallCmd(): string {\n return 'yarn install';\n }\n\n getRunCmd(): string {\n return 'yarn';\n }\n\n getRunBinaryCmd(args: string[]): { file: string; args: string[] } {\n return {\n file: 'yarn',\n args: ['run'].concat(args),\n };\n }\n\n async setup(packageFolder: string): Promise<void> {\n return matcher(this.repoType)\n .when(['None', 'Polyrepo'], async () => {\n if (this.name === 'yarn-berry') {\n // if yarn berry encounters a package.json in a parent folder, it\n // complains that our project needs to be part of that parent project.\n // An official way to tell yarn that this is a standalone project is\n // to create an empty lockfile.\n // A similar thing was done in create-astro: https://github.com/withastro/astro/pull/8028\n await writeFile(join(packageFolder, 'yarn.lock'), '');\n }\n })\n .when('Monorepo', async ({ rootDir }) => {\n try {\n await addPackageToWorkspaces({\n rootDir,\n packageFolder,\n yarnVersion: this.name,\n });\n } catch (error) {\n throw new CliError({\n code: CliErrorCode.FailedAddingPackageToWorkspace(),\n cause: error,\n });\n }\n })\n .complete();\n }\n\n async runInstall(cwd: string): Promise<void> {\n try {\n await runCommand(this.getInstallCmd(), { cwd });\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToInstallPackages(),\n info: { packageManager: this.name },\n cause: e,\n });\n }\n }\n\n async runInstallPackage(cwd: string, packageName: string): Promise<void> {\n try {\n await runCommand(`yarn add ${packageName}`, { cwd });\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToInstallPackage({ packageName }),\n info: { packageManager: this.name },\n cause: e,\n });\n }\n }\n\n async runUninstallPackage(cwd: string, packageName: string): Promise<void> {\n try {\n await runCommand(`yarn remove ${packageName}`, { cwd });\n } catch (e) {\n throw new CliError({\n code: CliErrorCode.FailedToUninstallPackage({ packageName }),\n info: { packageManager: this.name },\n cause: e,\n });\n }\n }\n}\n\nasync function getPackagesRelativePaths(\n rootDir: string,\n yarnVersion: YarnVersion\n): Promise<string[]> {\n const workspacesSchema = z.array(\n z.object({\n location: z.string(),\n })\n );\n\n if (yarnVersion === 'yarn-berry') {\n const packages = await runCommand('yarn workspaces list --json', {\n cwd: rootDir,\n });\n\n const parsedPackages = workspacesSchema.parse(\n packages\n .split(EOL)\n .filter(Boolean)\n .map((pkg) => JSON.parse(pkg))\n );\n\n return parsedPackages.map((pkg) => pkg.location);\n }\n\n const packages = await runCommand('yarn --json workspaces info', {\n cwd: rootDir,\n });\n\n const parsedPackages = workspacesSchema.parse(\n Object.values(JSON.parse(JSON.parse(packages).data))\n );\n return parsedPackages.map((pkg) => pkg.location);\n}\n\nasync function addPackageToWorkspaces({\n rootDir,\n packageFolder,\n yarnVersion,\n}: {\n rootDir: string;\n packageFolder: string;\n yarnVersion: YarnVersion;\n}) {\n const relativePackagePath = relative(rootDir, packageFolder);\n const packages = await getPackagesRelativePaths(rootDir, yarnVersion);\n\n if (packages.includes(relativePackagePath)) {\n return;\n }\n\n const packageJson = (await readJson(\n join(rootDir, 'package.json')\n )) as PackageJson;\n\n if (Array.isArray(packageJson.workspaces)) {\n packageJson.workspaces.push(relativePackagePath);\n } else if (typeof packageJson.workspaces === 'object') {\n packageJson.workspaces = {\n ...packageJson.workspaces,\n packages: [\n ...(packageJson.workspaces.packages ?? []),\n relativePackagePath,\n ],\n };\n } else {\n throw new Error(\n `Failed to read workspaces structure. Expected an array or object but got ${JSON.stringify(\n packageJson.workspaces\n )}`\n );\n }\n\n await writeJson(join(rootDir, 'package.json'), packageJson, { spaces: 2 });\n}\n"],"mappings":"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","names":["join","import_variant","import_variant","import_variant","join","join","packages","parsedPackages","join"]}
|