UNPKG

@wix/cli

Version:

CLI tool for building Wix sites and applications

110 lines (107 loc) 2.97 kB
import { createRequire as _createRequire } from 'node:module'; const require = _createRequire(import.meta.url); import { require_normalize_path } from "./chunk-V23RKBE2.js"; import { GridAppLayout } from "./chunk-WYTLYOOV.js"; import { extractHttpError } from "./chunk-EH3J5VW4.js"; import { WIX_LOCK_FILENAME, getSourceFolder } from "./chunk-TKDDSH55.js"; import { pathExists } from "./chunk-P4ZPHTFX.js"; import { CliError, CliErrorCode } from "./chunk-D5VYILRO.js"; import { __toESM, init_esm_shims } from "./chunk-4EFJZ3GQ.js"; // ../cli-site-old/src/utils.ts init_esm_shims(); import { readdir, readFile, stat } from "node:fs/promises"; import { join } from "node:path"; async function readFiles(dir, subPath = "") { return (await Promise.all( (await readdir(join(dir, subPath))).map(async (file) => { const path = join(subPath, file); if ((await stat(join(dir, path))).isDirectory()) { return readFiles(dir, path); } return { path, content: await readFile(join(dir, path), "utf-8") }; }) )).flat(); } function isSiteNotPublishedError(err) { if (err instanceof Error) { const httpError = extractHttpError(err); const errorCode = httpError?.response?.data?.details?.applicationError?.code; if (errorCode === "SITE_NOT_PUBLISHED") { return true; } } return false; } // ../cli-site-old/src/gridapp/loadProjectGridAppContent.ts init_esm_shims(); import { join as join2 } from "node:path"; import { readFile as readFile2 } from "node:fs/promises"; var import_normalize_path = __toESM(require_normalize_path(), 1); async function readFileOrThrow(path) { try { return await readFile2(path, "utf-8"); } catch (e) { throw new CliError({ code: CliErrorCode.FailedToReadProjectFiles(), cause: e }); } } async function readFilesOrThrow(root) { try { return await readFiles(root); } catch (e) { throw new CliError({ code: CliErrorCode.FailedToReadProjectFiles(), cause: e }); } } async function loadProjectRootFiles(projectFolder) { if (await pathExists(join2(projectFolder, WIX_LOCK_FILENAME))) { return Promise.all( ["package.json", WIX_LOCK_FILENAME].map(async (path) => { const content = await readFileOrThrow(join2(projectFolder, path)); return { path, content }; }) ); } return []; } async function loadProjectGridAppContent(projectFolder) { const sourceFiles = (await readFilesOrThrow(getSourceFolder(projectFolder))).map((file) => ({ content: file.content, path: (0, import_normalize_path.default)(join2(getSourceFolder(""), file.path)) })); const rootFiles = await loadProjectRootFiles(projectFolder); return { ignoreForbiddenPaths: true, layout: GridAppLayout.GITHUB, files: sourceFiles.concat(rootFiles) }; } export { isSiteNotPublishedError, loadProjectGridAppContent }; //# sourceMappingURL=chunk-P2RXCVYQ.js.map