UNPKG

@wix/cli

Version:

CLI tool for building Wix sites and applications

187 lines (176 loc) 5.55 kB
import { createRequire as _createRequire } from 'node:module'; const require = _createRequire(import.meta.url); import { syncLatestTypes } from "./chunk-ZNLMJ43G.js"; import { useProjectModel } from "./chunk-KWMRMKAV.js"; import "./chunk-SR7TTQEG.js"; import { useVeloClient } from "./chunk-ZJ4HTMFG.js"; import "./chunk-DGC6KEUB.js"; import "./chunk-QRGKMYDD.js"; import "./chunk-CKNI3TGO.js"; import "./chunk-YLCFL3QA.js"; import "./chunk-MHV22UIU.js"; import "./chunk-FYLO6WOU.js"; import { usePanoramaMethodLogger } from "./chunk-3B6VL2WO.js"; import "./chunk-7QTVQZAE.js"; import { pRetry, useAuth } from "./chunk-CCWE4DS6.js"; import "./chunk-U5H3SP3I.js"; import { Trans, useTranslation } from "./chunk-TIVTYCB2.js"; import "./chunk-RPTAJN5Y.js"; import { Spinner, useAsync } from "./chunk-UC5LTXTA.js"; import "./chunk-5VIJC5EU.js"; import "./chunk-MZDJNQLB.js"; import { require_react } from "./chunk-QNHANFRW.js"; import "./chunk-AFPDHQYI.js"; import "./chunk-HYKBBZLS.js"; import "./chunk-C5RTKQVL.js"; import "./chunk-4EJ5VQTT.js"; import "./chunk-4UTFAKA5.js"; import "./chunk-LU3R3EBR.js"; import { getTestOverrides } from "./chunk-XZUGLEBK.js"; import { outputDir, outputFile } from "./chunk-TLLAD5LU.js"; import "./chunk-SDLCFZRL.js"; import { CliError, CliErrorCode, require_lib } from "./chunk-CO5A7CZG.js"; import { __toESM, init_esm_shims } from "./chunk-EXLZF52D.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(); const client = (0, import_react.useMemo)( () => new VeloTypesSyncClient(projectFolder, getAccessToken), [projectFolder, getAccessToken] ); return usePanoramaMethodLogger(client); } // ../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-HSKUL4OP.js.map