@wix/cli
Version:
CLI tool for building Wix sites and applications
192 lines (188 loc) • 6.42 kB
JavaScript
import { createRequire as _createRequire } from 'node:module';
const require = _createRequire(import.meta.url);
import {
useProjectModel
} from "./chunk-P7YKQHOD.js";
import {
DeploymentSource,
getDefaultBranch,
getDeploymentSourceData
} from "./chunk-Y47UNA4P.js";
import "./chunk-QV3RCD44.js";
import "./chunk-KB3GWH37.js";
import "./chunk-LU4JUEPY.js";
import "./chunk-4BLGYECY.js";
import "./chunk-ICJSZGEK.js";
import {
DeploymentStatus,
useDocumentManagementClient
} from "./chunk-KE2Z2XVZ.js";
import "./chunk-HEAQRI3A.js";
import "./chunk-MYWHJYA3.js";
import "./chunk-DZ3U3XXP.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-NMCF7XG5.js";
import "./chunk-MHV22UIU.js";
import "./chunk-FYLO6WOU.js";
import "./chunk-3B6VL2WO.js";
import "./chunk-7QTVQZAE.js";
import {
ErrorViewer,
writeCrashReport
} from "./chunk-CCWE4DS6.js";
import "./chunk-U5H3SP3I.js";
import {
Trans,
useTranslation
} from "./chunk-TIVTYCB2.js";
import "./chunk-RPTAJN5Y.js";
import {
Alert,
Box_default,
Link,
SelectInput,
Spinner,
useAsync,
useAsyncCallback
} 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 {
getDebugLogFilePath
} from "./chunk-4UTFAKA5.js";
import "./chunk-LU3R3EBR.js";
import "./chunk-XZUGLEBK.js";
import "./chunk-TLLAD5LU.js";
import "./chunk-SDLCFZRL.js";
import {
require_lib
} from "./chunk-CO5A7CZG.js";
import {
__toESM,
init_esm_shims
} from "./chunk-EXLZF52D.js";
// ../cli-site-old/src/preview/PreviewCommand.tsx
init_esm_shims();
var import_react3 = __toESM(require_react(), 1);
var import_variant2 = __toESM(require_lib(), 1);
// ../cli-site-old/src/preview/SelectPreviewSource.tsx
init_esm_shims();
var import_react = __toESM(require_react(), 1);
var import_variant = __toESM(require_lib(), 1);
var SelectPreviewSource = ({
projectFolder,
onSubmit
}) => {
const { t } = useTranslation();
const { status } = useAsync(
() => getDefaultBranch(
(e) => writeCrashReport(getDebugLogFilePath(projectFolder), e, /* @__PURE__ */ new Date())
),
[]
);
return (0, import_variant.match)(status, {
Error: () => null,
Loading: () => /* @__PURE__ */ import_react.default.createElement(Spinner, null),
Success: ({ result: defaultBranchName }) => /* @__PURE__ */ import_react.default.createElement(
SelectInput,
{
label: t("preview_command.prompt_what_to_preview"),
options: [
{
key: "remote",
value: DeploymentSource.remote(),
title: defaultBranchName ? t("preview_command.prompt_what_to_preview_choice_latest", {
branchName: defaultBranchName
}) : t(
"preview_command.prompt_what_to_preview_choice_latest_fallback"
)
},
{
key: "local",
value: DeploymentSource.local(),
title: t("preview_command.prompt_what_to_preview_choice_local")
}
],
onSubmit
}
)
});
};
// ../cli-site-old/src/preview/useCreatePreview.ts
init_esm_shims();
var import_react2 = __toESM(require_react(), 1);
function useCreatePreview() {
const { model } = useProjectModel();
const veloClient = useVeloClient();
const dmClient = useDocumentManagementClient();
return (0, import_react2.useCallback)(
async (previewSource) => {
const deploymentSourceData = await getDeploymentSourceData(
model,
previewSource === "local" ? DeploymentSource.local() : DeploymentSource.remote()
);
const preview = await veloClient.deploySitePreview(deploymentSourceData);
return {
deploymentId: preview.deploymentId,
previewUrl: preview.deploymentShortUrl ?? preview.deploymentUrl,
deploymentStatus: preview.isPublishPipelineDeployment ? await dmClient.getDeploymentDetails(preview.deploymentId) : DeploymentStatus.Success()
};
},
[dmClient, model, veloClient]
);
}
// ../cli-site-old/src/preview/PreviewCommand.tsx
var PreviewCommand = (options) => {
const { t } = useTranslation();
const { model } = useProjectModel();
const createPreview = useCreatePreview();
const { status, execute: handleCreatingPreview } = useAsyncCallback(
async (_, previewSource) => {
const { previewUrl, deploymentStatus } = await createPreview(previewSource);
if (!options.force && (0, import_variant2.isType)(deploymentStatus, DeploymentStatus.Error)) {
throw deploymentStatus.deploymentError;
}
return { previewUrl, deploymentStatus };
}
);
useAsync(async () => {
if (options.source) {
void handleCreatingPreview(options.source);
}
}, []);
return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, !options.source && /* @__PURE__ */ import_react3.default.createElement(
SelectPreviewSource,
{
projectFolder: model.projectFolder,
onSubmit: ({ value }) => handleCreatingPreview(value.type)
}
), (0, import_variant2.match)(status, {
NotRequested: () => null,
Error: () => null,
Loading: () => /* @__PURE__ */ import_react3.default.createElement(Spinner, { text: t("preview_command.creating_preview") }),
Success: ({ result: { previewUrl, deploymentStatus } }) => /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, (0, import_variant2.isType)(deploymentStatus, DeploymentStatus.Error) ? /* @__PURE__ */ import_react3.default.createElement(Box_default, { marginBottom: 1, flexDirection: "column" }, /* @__PURE__ */ import_react3.default.createElement(ErrorViewer, { error: deploymentStatus.deploymentError })) : null, /* @__PURE__ */ import_react3.default.createElement(Alert, { type: "success" }, /* @__PURE__ */ import_react3.default.createElement(
Trans,
{
i18nKey: "preview_command.preview_created",
components: [/* @__PURE__ */ import_react3.default.createElement(Link, { url: previewUrl })]
}
)))
}));
};
export {
PreviewCommand
};
//# sourceMappingURL=PreviewCommand-UVB6YH57.js.map