@hs-x/cli 0.4.11 → 0.4.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -7
- package/dist/cloudflare-workers-logs.d.ts +1 -0
- package/dist/cloudflare-workers-logs.d.ts.map +1 -1
- package/dist/cloudflare-workers-logs.js +14 -3
- package/dist/cloudflare-workers-logs.js.map +1 -1
- package/dist/commands/completion.d.ts.map +1 -1
- package/dist/commands/completion.js +3 -0
- package/dist/commands/completion.js.map +1 -1
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +2 -1
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/deploy.d.ts +16 -0
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +95 -13
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/dev.d.ts +1 -0
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +368 -16
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/help-command.d.ts.map +1 -1
- package/dist/commands/help-command.js +22 -6
- package/dist/commands/help-command.js.map +1 -1
- package/dist/commands/project-lifecycle.d.ts +10 -0
- package/dist/commands/project-lifecycle.d.ts.map +1 -1
- package/dist/commands/project-lifecycle.js +120 -33
- package/dist/commands/project-lifecycle.js.map +1 -1
- package/dist/commands/project.d.ts +3 -0
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +2 -0
- package/dist/commands/project.js.map +1 -1
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/dist/dev/account-selection.d.ts +55 -0
- package/dist/dev/account-selection.d.ts.map +1 -1
- package/dist/dev/account-selection.js +120 -0
- package/dist/dev/account-selection.js.map +1 -1
- package/dist/dev/browser-log-bridge.d.ts +13 -8
- package/dist/dev/browser-log-bridge.d.ts.map +1 -1
- package/dist/dev/browser-log-bridge.js +37 -17
- package/dist/dev/browser-log-bridge.js.map +1 -1
- package/dist/dev/clipboard.d.ts +9 -0
- package/dist/dev/clipboard.d.ts.map +1 -0
- package/dist/dev/clipboard.js +42 -0
- package/dist/dev/clipboard.js.map +1 -0
- package/dist/dev/compat-shim.d.ts +19 -4
- package/dist/dev/compat-shim.d.ts.map +1 -1
- package/dist/dev/compat-shim.js +31 -4
- package/dist/dev/compat-shim.js.map +1 -1
- package/dist/dev/component-selection.d.ts +11 -0
- package/dist/dev/component-selection.d.ts.map +1 -1
- package/dist/dev/component-selection.js +23 -0
- package/dist/dev/component-selection.js.map +1 -1
- package/dist/dev/frontend-log-relay.d.ts +12 -0
- package/dist/dev/frontend-log-relay.d.ts.map +1 -1
- package/dist/dev/frontend-log-relay.js +31 -20
- package/dist/dev/frontend-log-relay.js.map +1 -1
- package/dist/dev/hubspot-logs-poller.d.ts +7 -1
- package/dist/dev/hubspot-logs-poller.d.ts.map +1 -1
- package/dist/dev/hubspot-logs-poller.js +28 -1
- package/dist/dev/hubspot-logs-poller.js.map +1 -1
- package/dist/dev/keyboard.d.ts +21 -3
- package/dist/dev/keyboard.d.ts.map +1 -1
- package/dist/dev/keyboard.js +96 -4
- package/dist/dev/keyboard.js.map +1 -1
- package/dist/dev/local-proxy.d.ts +90 -0
- package/dist/dev/local-proxy.d.ts.map +1 -0
- package/dist/dev/local-proxy.js +186 -0
- package/dist/dev/local-proxy.js.map +1 -0
- package/dist/dev/log-server.d.ts +9 -0
- package/dist/dev/log-server.d.ts.map +1 -1
- package/dist/dev/log-server.js +46 -3
- package/dist/dev/log-server.js.map +1 -1
- package/dist/dev/production-app-check.d.ts +23 -0
- package/dist/dev/production-app-check.d.ts.map +1 -0
- package/dist/dev/production-app-check.js +28 -0
- package/dist/dev/production-app-check.js.map +1 -0
- package/dist/dev/session-manager.d.ts +49 -1
- package/dist/dev/session-manager.d.ts.map +1 -1
- package/dist/dev/session-manager.js +152 -12
- package/dist/dev/session-manager.js.map +1 -1
- package/dist/dev/stream-event-format.d.ts +10 -1
- package/dist/dev/stream-event-format.d.ts.map +1 -1
- package/dist/dev/stream-event-format.js +157 -5
- package/dist/dev/stream-event-format.js.map +1 -1
- package/dist/dev/stream-renderer.d.ts +34 -1
- package/dist/dev/stream-renderer.d.ts.map +1 -1
- package/dist/dev/stream-renderer.js +371 -60
- package/dist/dev/stream-renderer.js.map +1 -1
- package/dist/dev/trace-markdown.d.ts +25 -0
- package/dist/dev/trace-markdown.d.ts.map +1 -0
- package/dist/dev/trace-markdown.js +159 -0
- package/dist/dev/trace-markdown.js.map +1 -0
- package/dist/errors-registry.d.ts.map +1 -1
- package/dist/errors-registry.js +15 -0
- package/dist/errors-registry.js.map +1 -1
- package/dist/hubspot-app-logs.d.ts +9 -0
- package/dist/hubspot-app-logs.d.ts.map +1 -1
- package/dist/hubspot-app-logs.js +6 -4
- package/dist/hubspot-app-logs.js.map +1 -1
- package/dist/hubspot-auth.d.ts.map +1 -1
- package/dist/hubspot-auth.js +15 -4
- package/dist/hubspot-auth.js.map +1 -1
- package/dist/hubspot-developer-client.js +3 -0
- package/dist/hubspot-developer-client.js.map +1 -1
- package/dist/hubspot-project.d.ts +2 -0
- package/dist/hubspot-project.d.ts.map +1 -1
- package/dist/hubspot-project.js +13 -1
- package/dist/hubspot-project.js.map +1 -1
- package/dist/prompt.d.ts +6 -0
- package/dist/prompt.d.ts.map +1 -1
- package/dist/prompt.js +20 -0
- package/dist/prompt.js.map +1 -1
- package/dist/reporter/human.d.ts.map +1 -1
- package/dist/reporter/human.js +6 -1
- package/dist/reporter/human.js.map +1 -1
- package/dist/reporter/style.d.ts +10 -0
- package/dist/reporter/style.d.ts.map +1 -1
- package/dist/reporter/style.js +39 -0
- package/dist/reporter/style.js.map +1 -1
- package/dist/services/hubspot-dev-client.js +3 -0
- package/dist/services/hubspot-dev-client.js.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAGL,KAAK,cAAc,EASpB,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EACV,sBAAsB,EACtB,6BAA6B,EAC7B,mBAAmB,EAEnB,uBAAuB,EACvB,+BAA+B,EAC/B,oBAAoB,EACpB,yBAAyB,EACzB,cAAc,EACd,6BAA6B,EAC7B,mBAAmB,EACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAqB,MAAM,EAAE,OAAO,EAAkC,MAAM,aAAa,CAAC;AACjG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/deploy.js
CHANGED
|
@@ -9,7 +9,9 @@ import * as Options from '@effect/cli/Options';
|
|
|
9
9
|
import { cloudflareResourceName, generateHubSpotRuntimeProject, generateProjectArtifacts, planPortalSchemaManagement, planWorkerCronTriggers, renderAlchemyProgram, renderCloudflareWorkerEntrypoint, stampMigratedRunServerlessShimOrigin, } from '@hs-x/codegen';
|
|
10
10
|
import { HttpClientRequest, Schema, schemas, signDeploymentAttestationGrant } from '@hs-x/types';
|
|
11
11
|
import { validateProject } from '@hs-x/validator';
|
|
12
|
+
import { APP_KEY, APP_OBJECT_KEY, Components } from '@hubspot/project-parsing-lib/constants';
|
|
12
13
|
import { isLegacyProject } from '@hubspot/project-parsing-lib/projects';
|
|
14
|
+
import { mapToInternalType } from '@hubspot/project-parsing-lib/transform';
|
|
13
15
|
import { translate as translateHubSpotProject } from '@hubspot/project-parsing-lib/translate';
|
|
14
16
|
import { Effect, Option } from 'effect';
|
|
15
17
|
import { isLinked } from '../account-store.js';
|
|
@@ -1252,6 +1254,22 @@ async function runDeploy({ argv, root, json, failureSink, }) {
|
|
|
1252
1254
|
explicitCloudflareDeploy: explicitCloudflareDeployRequested,
|
|
1253
1255
|
cloudflareDryRun,
|
|
1254
1256
|
});
|
|
1257
|
+
if (cloudflareDeployRequested && !planOnly && validation.ok) {
|
|
1258
|
+
const bunVersion = await detectBunVersion();
|
|
1259
|
+
if (!bunVersion || !isSupportedBunVersion(bunVersion)) {
|
|
1260
|
+
return inputValidationError({
|
|
1261
|
+
argv,
|
|
1262
|
+
command: 'deploy',
|
|
1263
|
+
json,
|
|
1264
|
+
code: 'HSX_E_INPUT_BUN_REQUIRED',
|
|
1265
|
+
message: bunVersion
|
|
1266
|
+
? `Cloudflare deploys require Bun 1.1 or newer; found ${bunVersion}.`
|
|
1267
|
+
: 'Cloudflare deploys require Bun 1.1 or newer, but `bun` is not available on PATH.',
|
|
1268
|
+
hint: 'Install Bun from https://bun.sh/docs/installation, verify `bun --version`, then rerun the same deploy.',
|
|
1269
|
+
detail: 'Preflight stopped before HubSpot or Cloudflare was mutated, so the providers remain in their previous state.',
|
|
1270
|
+
});
|
|
1271
|
+
}
|
|
1272
|
+
}
|
|
1255
1273
|
if (echo) {
|
|
1256
1274
|
echo.info(`Runtime: ${needsRuntime ? 'Cloudflare Worker required' : 'HubSpot-only compatible'}`);
|
|
1257
1275
|
if (hubspotOnly && needsRuntime) {
|
|
@@ -1938,6 +1956,48 @@ async function runDeploy({ argv, root, json, failureSink, }) {
|
|
|
1938
1956
|
// automation doesn't treat a serving worker as a total failure), 1 = failure.
|
|
1939
1957
|
return { exitCode: plan.ok ? 0 : plan.partial ? 20 : 1 };
|
|
1940
1958
|
}
|
|
1959
|
+
/** Detect the external Bun used by `bun x wrangler` before any provider write. */
|
|
1960
|
+
export async function detectBunVersion(options = {}) {
|
|
1961
|
+
const embeddedVersion = options.ignoreEmbedded
|
|
1962
|
+
? undefined
|
|
1963
|
+
: process.versions.bun;
|
|
1964
|
+
if (embeddedVersion)
|
|
1965
|
+
return embeddedVersion;
|
|
1966
|
+
return new Promise((resolveVersion) => {
|
|
1967
|
+
let settled = false;
|
|
1968
|
+
let stdout = '';
|
|
1969
|
+
const finish = (value) => {
|
|
1970
|
+
if (settled)
|
|
1971
|
+
return;
|
|
1972
|
+
settled = true;
|
|
1973
|
+
resolveVersion(value);
|
|
1974
|
+
};
|
|
1975
|
+
let child;
|
|
1976
|
+
try {
|
|
1977
|
+
child = spawn(options.command ?? 'bun', ['--version'], {
|
|
1978
|
+
stdio: ['ignore', 'pipe', 'ignore'],
|
|
1979
|
+
});
|
|
1980
|
+
}
|
|
1981
|
+
catch {
|
|
1982
|
+
finish(undefined);
|
|
1983
|
+
return;
|
|
1984
|
+
}
|
|
1985
|
+
child.stdout?.setEncoding('utf8');
|
|
1986
|
+
child.stdout?.on('data', (chunk) => {
|
|
1987
|
+
stdout += chunk;
|
|
1988
|
+
});
|
|
1989
|
+
child.once('error', () => finish(undefined));
|
|
1990
|
+
child.once('close', (code) => finish(code === 0 ? stdout.trim() || undefined : undefined));
|
|
1991
|
+
});
|
|
1992
|
+
}
|
|
1993
|
+
export function isSupportedBunVersion(version) {
|
|
1994
|
+
const match = /^(\d+)\.(\d+)(?:\.|$)/.exec(version.trim());
|
|
1995
|
+
if (!match)
|
|
1996
|
+
return false;
|
|
1997
|
+
const major = Number(match[1]);
|
|
1998
|
+
const minor = Number(match[2]);
|
|
1999
|
+
return major > 1 || (major === 1 && minor >= 1);
|
|
2000
|
+
}
|
|
1941
2001
|
/** @internal Exported for the linked-default deploy regression suite. */
|
|
1942
2002
|
export function resolveDeployControlPlaneUrl(input) {
|
|
1943
2003
|
if (input.explicitControlPlaneUrl)
|
|
@@ -5020,6 +5080,7 @@ async function readHubSpotProjectIntermediateRepresentation(root) {
|
|
|
5020
5080
|
const metaFiles = await collectHubSpotMetaFiles(sourceRoot);
|
|
5021
5081
|
const nodes = {};
|
|
5022
5082
|
let appUid;
|
|
5083
|
+
const appObjectUids = [];
|
|
5023
5084
|
for (const file of metaFiles) {
|
|
5024
5085
|
const raw = await readFile(file, 'utf8');
|
|
5025
5086
|
const parsed = JSON.parse(raw);
|
|
@@ -5029,6 +5090,9 @@ async function readHubSpotProjectIntermediateRepresentation(root) {
|
|
|
5029
5090
|
if (parsed.type === 'app') {
|
|
5030
5091
|
appUid = parsed.uid;
|
|
5031
5092
|
}
|
|
5093
|
+
if (parsed.type === APP_OBJECT_KEY) {
|
|
5094
|
+
appObjectUids.push(parsed.uid);
|
|
5095
|
+
}
|
|
5032
5096
|
}
|
|
5033
5097
|
for (const file of metaFiles) {
|
|
5034
5098
|
const raw = await readFile(file, 'utf8');
|
|
@@ -5036,24 +5100,18 @@ async function readHubSpotProjectIntermediateRepresentation(root) {
|
|
|
5036
5100
|
if (!isRecord(parsed) ||
|
|
5037
5101
|
typeof parsed.uid !== 'string' ||
|
|
5038
5102
|
typeof parsed.type !== 'string' ||
|
|
5039
|
-
!
|
|
5103
|
+
!Object.hasOwn(parsed, 'config')) {
|
|
5040
5104
|
continue;
|
|
5041
5105
|
}
|
|
5042
|
-
|
|
5043
|
-
// exactly as @hubspot/project-parsing-lib's mapToInternalType does:
|
|
5044
|
-
// `app` -> APPLICATION, otherwise upper-snake-case (card -> CARD,
|
|
5045
|
-
// workflow-action -> WORKFLOW_ACTION). The previous app/card-only switch
|
|
5046
|
-
// silently dropped workflow actions, so the IR sent to upload/new-api had
|
|
5047
|
-
// no child components and HubSpot rejected the build with NO_COMPONENTS.
|
|
5048
|
-
const componentType = parsed.type === 'app' ? 'APPLICATION' : parsed.type.toUpperCase().replace(/-/g, '_');
|
|
5049
|
-
nodes[parsed.uid] = {
|
|
5106
|
+
nodes[parsed.uid] = hubSpotProjectComponentNode({
|
|
5050
5107
|
uid: parsed.uid,
|
|
5108
|
+
type: parsed.type,
|
|
5051
5109
|
config: parsed.config,
|
|
5052
|
-
|
|
5053
|
-
componentDeps: componentType !== 'APPLICATION' && appUid ? { app: appUid, allAppObjects: [] } : {},
|
|
5110
|
+
dependencies: parsed.dependencies,
|
|
5054
5111
|
metaFilePath: file.slice(sourceRoot.length + 1),
|
|
5055
|
-
|
|
5056
|
-
|
|
5112
|
+
...(appUid ? { appUid } : {}),
|
|
5113
|
+
appObjectUids,
|
|
5114
|
+
});
|
|
5057
5115
|
}
|
|
5058
5116
|
if (Object.keys(nodes).length === 0) {
|
|
5059
5117
|
return undefined;
|
|
@@ -5063,6 +5121,30 @@ async function readHubSpotProjectIntermediateRepresentation(root) {
|
|
|
5063
5121
|
profileData: { vars: { profileVariables: {} } },
|
|
5064
5122
|
};
|
|
5065
5123
|
}
|
|
5124
|
+
function readHubSpotComponentDependencies(value) {
|
|
5125
|
+
if (!isRecord(value))
|
|
5126
|
+
return {};
|
|
5127
|
+
return Object.fromEntries(Object.entries(value).filter((entry) => typeof entry[1] === 'string' ||
|
|
5128
|
+
(Array.isArray(entry[1]) && entry[1].every((item) => typeof item === 'string'))));
|
|
5129
|
+
}
|
|
5130
|
+
/** @internal Exported for the generated HubSpot component compatibility matrix. */
|
|
5131
|
+
export function hubSpotProjectComponentNode(input) {
|
|
5132
|
+
const componentDeps = readHubSpotComponentDependencies(input.dependencies);
|
|
5133
|
+
if (Components[input.type]?.parentComponent === APP_KEY && input.appUid) {
|
|
5134
|
+
componentDeps.app = input.appUid;
|
|
5135
|
+
if (input.type !== APP_OBJECT_KEY) {
|
|
5136
|
+
componentDeps.allAppObjects = [...(input.appObjectUids ?? [])];
|
|
5137
|
+
}
|
|
5138
|
+
}
|
|
5139
|
+
return {
|
|
5140
|
+
uid: input.uid,
|
|
5141
|
+
config: input.config,
|
|
5142
|
+
componentType: mapToInternalType(input.type),
|
|
5143
|
+
componentDeps,
|
|
5144
|
+
metaFilePath: input.metaFilePath,
|
|
5145
|
+
files: {},
|
|
5146
|
+
};
|
|
5147
|
+
}
|
|
5066
5148
|
function readAppUidFromIntermediateRepresentation(value) {
|
|
5067
5149
|
if (!isRecord(value) || !isRecord(value.intermediateNodesIndexedByUid)) {
|
|
5068
5150
|
return undefined;
|