UNPKG

@wix/cli

Version:

CLI tool for building Wix sites and applications

71 lines (67 loc) 1.99 kB
import { createRequire as _createRequire } from 'node:module'; const require = _createRequire(import.meta.url); import { envSchema, getEnvFilePath } from "./chunk-KCDAY54L.js"; import { require_react } from "./chunk-QNHANFRW.js"; import { readEnvFile } from "./chunk-TLLAD5LU.js"; import { __toESM, init_esm_shims } from "./chunk-EXLZF52D.js"; // ../cli-astro-commands/src/model.tsx init_esm_shims(); var import_react = __toESM(require_react(), 1); import { ok } from "node:assert/strict"; // ../cli-astro-commands/src/files/env.ts init_esm_shims(); async function readEnv(projectFolder) { const raw = await readEnvFile(getEnvFilePath(projectFolder)); const result = envSchema.safeParse(raw); return result.success ? result.data : {}; } // ../cli-astro-commands/src/model.tsx async function loadProjectModel(projectFolder, definedWixConfig) { const env = await readEnv(projectFolder); const { config, pluginsInterface } = definedWixConfig; return { projectFolder, config, env, releaseAppId: config.projectType === "App" && config.projectId ? config.projectId : config.appId, pluginsInterface }; } var ProjectModelContext = (0, import_react.createContext)(null); var ProjectModelProvider = (props) => { const [model] = (0, import_react.useState)(props.value); return /* @__PURE__ */ import_react.default.createElement(ProjectModelContext.Provider, { value: { model } }, props.children); }; function useProjectModel() { const context = (0, import_react.useContext)(ProjectModelContext); if (context == null) { throw new Error( "useProjectModel() cannot be used without a <ProjectModelProvider>" ); } return context; } function useSiteConfig() { const { model: { config } } = useProjectModel(); ok(config.projectType === "Site", "Project is not a Site"); return config; } export { loadProjectModel, ProjectModelProvider, useProjectModel, useSiteConfig }; //# sourceMappingURL=chunk-OQJA5FSX.js.map