UNPKG

@wix/cli

Version:

CLI tool for building Wix sites and applications

179 lines (168 loc) 5.32 kB
import { createRequire as _createRequire } from 'node:module'; const require = _createRequire(import.meta.url); import { useProjectModel } from "./chunk-V5SXQDM7.js"; import { syncLatestTypes } from "./chunk-GQE6PKJU.js"; import { useVeloClient } from "./chunk-N3R4KOEH.js"; import "./chunk-IZ7XSGRJ.js"; import "./chunk-WYTLYOOV.js"; import "./chunk-6RDHKDZ4.js"; import "./chunk-3TTSPNEN.js"; import "./chunk-W54PG6O5.js"; import "./chunk-NPIBHDAX.js"; import { pRetry, useAuth } from "./chunk-PLPLA7N3.js"; import "./chunk-EH3J5VW4.js"; import "./chunk-CCOOZLEQ.js"; import { Trans, useTranslation } from "./chunk-75K4NCRA.js"; import "./chunk-KJ37XZQA.js"; import { Spinner, useAsync } from "./chunk-OAVLQEAG.js"; import { require_react } from "./chunk-5A5B2WR4.js"; import "./chunk-SQ3KPTIH.js"; import "./chunk-Z4MHKCET.js"; import "./chunk-C4SUTB4O.js"; import "./chunk-TKDDSH55.js"; import "./chunk-62BYZXT7.js"; import { getTestOverrides } from "./chunk-WYHHEOWO.js"; import { outputDir, outputFile } from "./chunk-P4ZPHTFX.js"; import "./chunk-ZXYGJZOO.js"; import { CliError, CliErrorCode, require_lib } from "./chunk-D5VYILRO.js"; import { __toESM, init_esm_shims } from "./chunk-4EFJZ3GQ.js"; // ../cli-site-live/src/components/DevCommand/DevCommand.tsx init_esm_shims(); var import_react5 = __toESM(require_react(), 1); // ../cli-site-live/src/components/DevCommand/InitializingState.tsx init_esm_shims(); var import_react3 = __toESM(require_react(), 1); var import_variant = __toESM(require_lib(), 1); // ../cli-site-live/src/velo-types-sync-client/useVeloTypesSyncClient.ts init_esm_shims(); var import_react = __toESM(require_react(), 1); // ../cli-site-live/src/velo-types-sync-client/velo-types-sync-client.ts init_esm_shims(); var VeloTypesSyncClient = class { constructor(projectFolder, getToken) { this.projectFolder = projectFolder; this.getToken = getToken; const { minRetryTimeout } = getTestOverrides(); this.retryOptions = { retries: 3, minTimeout: minRetryTimeout, maxTimeout: 3 * 1e3 }; } retryOptions; syncLatestTypes = async () => { const token = await this.getToken(); try { await pRetry( () => syncLatestTypes(this.projectFolder, { getAppToken: () => token }), this.retryOptions ); } catch (e) { throw new CliError({ code: CliErrorCode.FailedToSyncPagesTypes(), cause: e }); } }; }; // ../cli-site-live/src/velo-types-sync-client/useVeloTypesSyncClient.ts function useVeloTypesSyncClient(projectFolder) { const { getAccessToken } = useAuth(); return (0, import_react.useMemo)( () => new VeloTypesSyncClient(projectFolder, getAccessToken), [projectFolder, getAccessToken] ); } // ../cli-site-live/src/project-files-service/useProjectFilesService.ts init_esm_shims(); var import_react2 = __toESM(require_react(), 1); // ../cli-site-live/src/project-files-service/project-files-service.ts init_esm_shims(); import { join } from "node:path"; var ProjectFilesService = class { constructor(projectFolder) { this.projectFolder = projectFolder; } addDir = async (file) => { const filePath = this.getFullPath(file); await outputDir(filePath); }; saveFile = async (file) => { const filePath = this.getFullPath(file); await outputFile(filePath, file.content); }; getFullPath = (file) => join(this.projectFolder, file.path); }; // ../cli-site-live/src/project-files-service/useProjectFilesService.ts var useProjectFilesService = () => { const { projectFolder } = useProjectModel(); return (0, import_react2.useMemo)(() => new ProjectFilesService(projectFolder), [projectFolder]); }; // ../cli-site-live/src/components/DevCommand/InitializingState.tsx var InitializingState = ({ children }) => { const { t } = useTranslation(); const veloClient = useVeloClient(); const projectFilesService = useProjectFilesService(); const { veloAppId, projectFolder } = useProjectModel(); const veloTypeSyncer = useVeloTypesSyncClient(projectFolder); const { status } = useAsync(async () => { async function initProjectFiles() { const { files, directories } = await veloClient.listAppFiles(veloAppId); await Promise.all([ ...directories.map(projectFilesService.addDir), ...files.map(projectFilesService.saveFile) ]); } await Promise.all([initProjectFiles(), veloTypeSyncer.syncLatestTypes()]); }, []); return (0, import_variant.match)(status, { Success: () => children, Error: () => null, Loading: () => /* @__PURE__ */ import_react3.default.createElement(Spinner, { text: t("dev_command.init.fetching_files") }) }); }; // ../cli-site-live/src/components/DevCommand/ReadyState.tsx init_esm_shims(); var import_react4 = __toESM(require_react(), 1); var ReadyState = () => { return /* @__PURE__ */ import_react4.default.createElement(Trans, { i18nKey: "dev_command.welcome" }); }; // ../cli-site-live/src/components/DevCommand/DevCommand.tsx var DevCommand = () => { return /* @__PURE__ */ import_react5.default.createElement(InitializingState, null, /* @__PURE__ */ import_react5.default.createElement(ReadyState, null)); }; export { DevCommand }; //# sourceMappingURL=DevCommand-QLBINRRO.js.map