@farm.js/cli 0.1.0-beta.35 → 0.1.0-beta.37
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/bin/farm.js +84 -1
- package/dist/{add-integration-D5mff3xX.js → add-integration-Bz7WjUfh.js} +3 -30
- package/dist/{add-integration-D5mff3xX.js.map → add-integration-Bz7WjUfh.js.map} +1 -1
- package/dist/add-integration.js +1 -1
- package/dist/build.js +5 -2
- package/dist/build.js.map +1 -1
- package/dist/build.mjs +5 -2
- package/dist/build.mjs.map +1 -1
- package/dist/index.js +21 -6
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +11 -4
- package/dist/index.mjs.map +1 -1
- package/dist/rolldown-runtime-VH7oDXx4.js +28 -0
- package/dist/telemetry.js +338 -0
- package/dist/telemetry.js.map +1 -0
- package/dist/telemetry.mjs +328 -0
- package/dist/telemetry.mjs.map +1 -0
- package/package.json +2 -2
package/dist/add-integration.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_add_integration = require("./add-integration-
|
|
2
|
+
const require_add_integration = require("./add-integration-Bz7WjUfh.js");
|
|
3
3
|
exports.addFarmIntegration = require_add_integration.addFarmIntegration;
|
|
4
4
|
exports.listFarmIntegrationProviders = require_add_integration.listFarmIntegrationProviders;
|
package/dist/build.js
CHANGED
|
@@ -22,8 +22,11 @@ async function buildFarm(options = {}) {
|
|
|
22
22
|
const userConfig = userConfigResult.value;
|
|
23
23
|
if (!userConfig) throw new Error("No Farm config found. Please create farm.config.ts or config.ts.");
|
|
24
24
|
const config = await (0, _farm_js_core_internal_config_runtime.resolveConfig)(userConfig, mode);
|
|
25
|
-
if (options.preset) {
|
|
26
|
-
const deploy = (0, _farm_js_core_internal_config_runtime.resolveDeployConfig)(userConfig, {
|
|
25
|
+
if (options.preset || options.target) {
|
|
26
|
+
const deploy = (0, _farm_js_core_internal_config_runtime.resolveDeployConfig)(userConfig, {
|
|
27
|
+
preset: options.preset,
|
|
28
|
+
target: options.target
|
|
29
|
+
});
|
|
27
30
|
config.preset = deploy.preset;
|
|
28
31
|
config.deploy = deploy;
|
|
29
32
|
}
|
package/dist/build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","names":["withProductionNodeEnv","loadFarmProductionVite","loadConfig","resolveConfig","resolveDeployConfig"],"sources":["../src/build.ts"],"sourcesContent":["import {\n loadConfig,\n loadFarmProductionVite,\n logger,\n resolveConfig,\n resolveDeployConfig,\n} from \"@farm.js/core/internal/config-runtime\";\nimport { withProductionNodeEnv } from \"@farm.js/core/internal/production-node-env\";\n\nexport { withProductionNodeEnv };\n\nexport interface BuildFarmOptions {\n root?: string;\n preset?: string;\n}\n\n/**\n * Build Farm.js application\n */\nexport async function buildFarm(options: BuildFarmOptions = {}) {\n const root = options.root || process.cwd();\n\n try {\n await withProductionNodeEnv(async () => {\n const mode = \"production\";\n const productionVitePromise = loadFarmProductionVite();\n const [userConfigResult, buildRuntimeResult, productionViteResult] = await Promise.allSettled(\n [\n productionVitePromise.then((runtime) =>\n loadConfig(root, undefined, mode, runtime.loadEnv),\n ),\n import(\"@farm.js/core/internal/build-runtime\"),\n productionVitePromise,\n ],\n );\n\n if (userConfigResult.status === \"rejected\") throw userConfigResult.reason;\n if (buildRuntimeResult.status === \"rejected\") throw buildRuntimeResult.reason;\n if (productionViteResult.status === \"rejected\") throw productionViteResult.reason;\n\n const userConfig = userConfigResult.value;\n\n if (!userConfig) {\n throw new Error(\"No Farm config found. Please create farm.config.ts or config.ts.\");\n }\n\n const config = await resolveConfig(userConfig, mode);\n\n // Override preset if provided via CLI\n if (options.preset) {\n const deploy = resolveDeployConfig(userConfig, {
|
|
1
|
+
{"version":3,"file":"build.js","names":["withProductionNodeEnv","loadFarmProductionVite","loadConfig","resolveConfig","resolveDeployConfig"],"sources":["../src/build.ts"],"sourcesContent":["import {\n loadConfig,\n loadFarmProductionVite,\n logger,\n resolveConfig,\n resolveDeployConfig,\n} from \"@farm.js/core/internal/config-runtime\";\nimport { withProductionNodeEnv } from \"@farm.js/core/internal/production-node-env\";\n\nexport { withProductionNodeEnv };\n\nexport interface BuildFarmOptions {\n root?: string;\n preset?: string;\n /** Deployment platform the build serves. Wins over the preset-derived target. */\n target?: string;\n}\n\n/**\n * Build Farm.js application\n */\nexport async function buildFarm(options: BuildFarmOptions = {}) {\n const root = options.root || process.cwd();\n\n try {\n await withProductionNodeEnv(async () => {\n const mode = \"production\";\n const productionVitePromise = loadFarmProductionVite();\n const [userConfigResult, buildRuntimeResult, productionViteResult] = await Promise.allSettled(\n [\n productionVitePromise.then((runtime) =>\n loadConfig(root, undefined, mode, runtime.loadEnv),\n ),\n import(\"@farm.js/core/internal/build-runtime\"),\n productionVitePromise,\n ],\n );\n\n if (userConfigResult.status === \"rejected\") throw userConfigResult.reason;\n if (buildRuntimeResult.status === \"rejected\") throw buildRuntimeResult.reason;\n if (productionViteResult.status === \"rejected\") throw productionViteResult.reason;\n\n const userConfig = userConfigResult.value;\n\n if (!userConfig) {\n throw new Error(\"No Farm config found. Please create farm.config.ts or config.ts.\");\n }\n\n const config = await resolveConfig(userConfig, mode);\n\n // Override preset/target if provided via CLI\n if (options.preset || options.target) {\n const deploy = resolveDeployConfig(userConfig, {\n preset: options.preset as any,\n target: options.target,\n });\n config.preset = deploy.preset;\n config.deploy = deploy;\n }\n\n // Build. Completion is reported by the build pipeline itself, which\n // also knows the preset and output directory; a second banner here\n // would only repeat it.\n await buildRuntimeResult.value.build(config, {\n preset: config.preset,\n root,\n productionVite: productionViteResult.value,\n });\n });\n } catch (error: any) {\n logger.error(`❌ Build failed: ${error.message}`);\n if (error.stack) {\n console.error(error.stack);\n }\n process.exit(1);\n }\n}\n"],"mappings":";;;;;;;AAqBA,eAAsB,UAAU,UAA4B,CAAC,GAAG;CAC9D,MAAM,OAAO,QAAQ,QAAQ,QAAQ,IAAI;CAEzC,IAAI;EACF,OAAA,GAAMA,2CAAAA,sBAAAA,CAAsB,YAAY;GACtC,MAAM,OAAO;GACb,MAAM,yBAAA,GAAwBC,sCAAAA,uBAAAA,CAAuB;GACrD,MAAM,CAAC,kBAAkB,oBAAoB,wBAAwB,MAAM,QAAQ,WACjF;IACE,sBAAsB,MAAM,aAAA,GAC1BC,sCAAAA,WAAAA,CAAW,MAAM,KAAA,GAAW,MAAM,QAAQ,OAAO,CACnD;IACA,OAAO;IACP;GACF,CACF;GAEA,IAAI,iBAAiB,WAAW,YAAY,MAAM,iBAAiB;GACnE,IAAI,mBAAmB,WAAW,YAAY,MAAM,mBAAmB;GACvE,IAAI,qBAAqB,WAAW,YAAY,MAAM,qBAAqB;GAE3E,MAAM,aAAa,iBAAiB;GAEpC,IAAI,CAAC,YACH,MAAM,IAAI,MAAM,kEAAkE;GAGpF,MAAM,SAAS,OAAA,GAAMC,sCAAAA,cAAAA,CAAc,YAAY,IAAI;GAGnD,IAAI,QAAQ,UAAU,QAAQ,QAAQ;IACpC,MAAM,UAAA,GAASC,sCAAAA,oBAAAA,CAAoB,YAAY;KAC7C,QAAQ,QAAQ;KAChB,QAAQ,QAAQ;IAClB,CAAC;IACD,OAAO,SAAS,OAAO;IACvB,OAAO,SAAS;GAClB;GAKA,MAAM,mBAAmB,MAAM,MAAM,QAAQ;IAC3C,QAAQ,OAAO;IACf;IACA,gBAAgB,qBAAqB;GACvC,CAAC;EACH,CAAC;CACH,SAAS,OAAY;EACnB,sCAAA,OAAO,MAAM,mBAAmB,MAAM,SAAS;EAC/C,IAAI,MAAM,OACR,QAAQ,MAAM,MAAM,KAAK;EAE3B,QAAQ,KAAK,CAAC;CAChB;AACF"}
|
package/dist/build.mjs
CHANGED
|
@@ -21,8 +21,11 @@ async function buildFarm(options = {}) {
|
|
|
21
21
|
const userConfig = userConfigResult.value;
|
|
22
22
|
if (!userConfig) throw new Error("No Farm config found. Please create farm.config.ts or config.ts.");
|
|
23
23
|
const config = await resolveConfig(userConfig, mode);
|
|
24
|
-
if (options.preset) {
|
|
25
|
-
const deploy = resolveDeployConfig(userConfig, {
|
|
24
|
+
if (options.preset || options.target) {
|
|
25
|
+
const deploy = resolveDeployConfig(userConfig, {
|
|
26
|
+
preset: options.preset,
|
|
27
|
+
target: options.target
|
|
28
|
+
});
|
|
26
29
|
config.preset = deploy.preset;
|
|
27
30
|
config.deploy = deploy;
|
|
28
31
|
}
|
package/dist/build.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.mjs","names":[],"sources":["../src/build.ts"],"sourcesContent":["import {\n loadConfig,\n loadFarmProductionVite,\n logger,\n resolveConfig,\n resolveDeployConfig,\n} from \"@farm.js/core/internal/config-runtime\";\nimport { withProductionNodeEnv } from \"@farm.js/core/internal/production-node-env\";\n\nexport { withProductionNodeEnv };\n\nexport interface BuildFarmOptions {\n root?: string;\n preset?: string;\n}\n\n/**\n * Build Farm.js application\n */\nexport async function buildFarm(options: BuildFarmOptions = {}) {\n const root = options.root || process.cwd();\n\n try {\n await withProductionNodeEnv(async () => {\n const mode = \"production\";\n const productionVitePromise = loadFarmProductionVite();\n const [userConfigResult, buildRuntimeResult, productionViteResult] = await Promise.allSettled(\n [\n productionVitePromise.then((runtime) =>\n loadConfig(root, undefined, mode, runtime.loadEnv),\n ),\n import(\"@farm.js/core/internal/build-runtime\"),\n productionVitePromise,\n ],\n );\n\n if (userConfigResult.status === \"rejected\") throw userConfigResult.reason;\n if (buildRuntimeResult.status === \"rejected\") throw buildRuntimeResult.reason;\n if (productionViteResult.status === \"rejected\") throw productionViteResult.reason;\n\n const userConfig = userConfigResult.value;\n\n if (!userConfig) {\n throw new Error(\"No Farm config found. Please create farm.config.ts or config.ts.\");\n }\n\n const config = await resolveConfig(userConfig, mode);\n\n // Override preset if provided via CLI\n if (options.preset) {\n const deploy = resolveDeployConfig(userConfig, {
|
|
1
|
+
{"version":3,"file":"build.mjs","names":[],"sources":["../src/build.ts"],"sourcesContent":["import {\n loadConfig,\n loadFarmProductionVite,\n logger,\n resolveConfig,\n resolveDeployConfig,\n} from \"@farm.js/core/internal/config-runtime\";\nimport { withProductionNodeEnv } from \"@farm.js/core/internal/production-node-env\";\n\nexport { withProductionNodeEnv };\n\nexport interface BuildFarmOptions {\n root?: string;\n preset?: string;\n /** Deployment platform the build serves. Wins over the preset-derived target. */\n target?: string;\n}\n\n/**\n * Build Farm.js application\n */\nexport async function buildFarm(options: BuildFarmOptions = {}) {\n const root = options.root || process.cwd();\n\n try {\n await withProductionNodeEnv(async () => {\n const mode = \"production\";\n const productionVitePromise = loadFarmProductionVite();\n const [userConfigResult, buildRuntimeResult, productionViteResult] = await Promise.allSettled(\n [\n productionVitePromise.then((runtime) =>\n loadConfig(root, undefined, mode, runtime.loadEnv),\n ),\n import(\"@farm.js/core/internal/build-runtime\"),\n productionVitePromise,\n ],\n );\n\n if (userConfigResult.status === \"rejected\") throw userConfigResult.reason;\n if (buildRuntimeResult.status === \"rejected\") throw buildRuntimeResult.reason;\n if (productionViteResult.status === \"rejected\") throw productionViteResult.reason;\n\n const userConfig = userConfigResult.value;\n\n if (!userConfig) {\n throw new Error(\"No Farm config found. Please create farm.config.ts or config.ts.\");\n }\n\n const config = await resolveConfig(userConfig, mode);\n\n // Override preset/target if provided via CLI\n if (options.preset || options.target) {\n const deploy = resolveDeployConfig(userConfig, {\n preset: options.preset as any,\n target: options.target,\n });\n config.preset = deploy.preset;\n config.deploy = deploy;\n }\n\n // Build. Completion is reported by the build pipeline itself, which\n // also knows the preset and output directory; a second banner here\n // would only repeat it.\n await buildRuntimeResult.value.build(config, {\n preset: config.preset,\n root,\n productionVite: productionViteResult.value,\n });\n });\n } catch (error: any) {\n logger.error(`❌ Build failed: ${error.message}`);\n if (error.stack) {\n console.error(error.stack);\n }\n process.exit(1);\n }\n}\n"],"mappings":";;;;;;AAqBA,eAAsB,UAAU,UAA4B,CAAC,GAAG;CAC9D,MAAM,OAAO,QAAQ,QAAQ,QAAQ,IAAI;CAEzC,IAAI;EACF,MAAM,sBAAsB,YAAY;GACtC,MAAM,OAAO;GACb,MAAM,wBAAwB,uBAAuB;GACrD,MAAM,CAAC,kBAAkB,oBAAoB,wBAAwB,MAAM,QAAQ,WACjF;IACE,sBAAsB,MAAM,YAC1B,WAAW,MAAM,KAAA,GAAW,MAAM,QAAQ,OAAO,CACnD;IACA,OAAO;IACP;GACF,CACF;GAEA,IAAI,iBAAiB,WAAW,YAAY,MAAM,iBAAiB;GACnE,IAAI,mBAAmB,WAAW,YAAY,MAAM,mBAAmB;GACvE,IAAI,qBAAqB,WAAW,YAAY,MAAM,qBAAqB;GAE3E,MAAM,aAAa,iBAAiB;GAEpC,IAAI,CAAC,YACH,MAAM,IAAI,MAAM,kEAAkE;GAGpF,MAAM,SAAS,MAAM,cAAc,YAAY,IAAI;GAGnD,IAAI,QAAQ,UAAU,QAAQ,QAAQ;IACpC,MAAM,SAAS,oBAAoB,YAAY;KAC7C,QAAQ,QAAQ;KAChB,QAAQ,QAAQ;IAClB,CAAC;IACD,OAAO,SAAS,OAAO;IACvB,OAAO,SAAS;GAClB;GAKA,MAAM,mBAAmB,MAAM,MAAM,QAAQ;IAC3C,QAAQ,OAAO;IACf;IACA,gBAAgB,qBAAqB;GACvC,CAAC;EACH,CAAC;CACH,SAAS,OAAY;EACnB,OAAO,MAAM,mBAAmB,MAAM,SAAS;EAC/C,IAAI,MAAM,OACR,QAAQ,MAAM,MAAM,KAAK;EAE3B,QAAQ,KAAK,CAAC;CAChB;AACF"}
|
package/dist/index.js
CHANGED
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const
|
|
2
|
+
const require_rolldown_runtime = require("./rolldown-runtime-VH7oDXx4.js");
|
|
3
|
+
const require_add_integration = require("./add-integration-Bz7WjUfh.js");
|
|
3
4
|
const require_build = require("./build.js");
|
|
5
|
+
const require_telemetry = require("./telemetry.js");
|
|
4
6
|
let _farm_js_core_server = require("@farm.js/core/server");
|
|
5
7
|
let node_fs = require("node:fs");
|
|
6
8
|
let node_fs_promises = require("node:fs/promises");
|
|
7
9
|
let node_path = require("node:path");
|
|
8
|
-
node_path =
|
|
10
|
+
node_path = require_rolldown_runtime.__toESM(node_path);
|
|
9
11
|
let child_process = require("child_process");
|
|
10
12
|
let fs = require("fs");
|
|
11
13
|
let path = require("path");
|
|
12
|
-
path =
|
|
14
|
+
path = require_rolldown_runtime.__toESM(path);
|
|
13
15
|
let _farm_js_core = require("@farm.js/core");
|
|
14
16
|
let node_child_process = require("node:child_process");
|
|
15
17
|
let node_timers_promises = require("node:timers/promises");
|
|
16
18
|
let picocolors = require("picocolors");
|
|
17
|
-
picocolors =
|
|
19
|
+
picocolors = require_rolldown_runtime.__toESM(picocolors);
|
|
18
20
|
let croner = require("croner");
|
|
19
21
|
let node_module = require("node:module");
|
|
20
22
|
let node_url = require("node:url");
|
|
@@ -40,7 +42,8 @@ async function deployFarm(options = {}) {
|
|
|
40
42
|
_farm_js_core.logger.info(`🚀 Building with ${plan.preset} preset...`);
|
|
41
43
|
await require_build.buildFarm({
|
|
42
44
|
root: plan.root,
|
|
43
|
-
preset: plan.preset
|
|
45
|
+
preset: plan.preset,
|
|
46
|
+
target: plan.target
|
|
44
47
|
});
|
|
45
48
|
if (!(0, fs.existsSync)(plan.outputDir)) throw new FarmDeployError("INVALID_BUILD_OUTPUT", plan.target, `Build output not found at ${plan.outputDir}. Please run 'farm build' first.`);
|
|
46
49
|
await deployPlatform(plan.target, plan.root, plan.outputDir, deployConfig, options.prod);
|
|
@@ -77,9 +80,14 @@ async function resolveFarmDeployContext(options) {
|
|
|
77
80
|
const cliTarget = options.vercel ? "vercel" : options.cloudflare ? "cloudflare" : options.netlify ? "netlify" : void 0;
|
|
78
81
|
const platform = (0, _farm_js_core.normalizeDeployTarget)(cliTarget || config.deploy.target);
|
|
79
82
|
if (platform !== "vercel" && platform !== "cloudflare" && platform !== "netlify") throw new Error("Please specify a deployment target with --vercel, --cloudflare, --netlify, or farm.config deploy.target.");
|
|
83
|
+
const configuredPreset = userConfig?.deploy?.preset || userConfig?.preset;
|
|
84
|
+
const configuredPresetTarget = (0, _farm_js_core.getDeployTargetForPreset)(configuredPreset);
|
|
85
|
+
const configuredTarget = (0, _farm_js_core.normalizeDeployTarget)(userConfig?.deploy?.target);
|
|
86
|
+
const presetMatchesPlatform = Boolean(configuredPreset) && (configuredPresetTarget === platform || !configuredPresetTarget && configuredTarget === platform);
|
|
87
|
+
if (cliTarget && configuredPreset && !presetMatchesPlatform) _farm_js_core.logger.warn(`Configured preset "${configuredPreset}" targets ${configuredPresetTarget || "an unknown platform"}; using the "${(0, _farm_js_core.getPresetForDeployTarget)(platform)}" preset because --${cliTarget} was passed.`);
|
|
80
88
|
const deployConfig = (0, _farm_js_core.resolveDeployConfig)(userConfig || {}, {
|
|
81
89
|
target: platform,
|
|
82
|
-
preset: cliTarget ?
|
|
90
|
+
preset: cliTarget ? presetMatchesPlatform ? configuredPreset : (0, _farm_js_core.getPresetForDeployTarget)(platform) : void 0
|
|
83
91
|
});
|
|
84
92
|
const preset = deployConfig.preset || (0, _farm_js_core.getPresetForDeployTarget)(platform) || "node-server";
|
|
85
93
|
const nitroOutput = (0, _farm_js_core.resolveDeployOutputPath)(root, deployConfig.outputDir);
|
|
@@ -3298,6 +3306,8 @@ exports.formatFarmRouteExplanation = formatFarmRouteExplanation;
|
|
|
3298
3306
|
exports.formatFarmUpgradePlan = formatFarmUpgradePlan;
|
|
3299
3307
|
exports.forwardGatewayRequest = forwardGatewayRequest;
|
|
3300
3308
|
exports.generateFarmArtifacts = generateFarmArtifacts;
|
|
3309
|
+
exports.getFarmTelemetryConfigFile = require_telemetry.getFarmTelemetryConfigFile;
|
|
3310
|
+
exports.getFarmTelemetryStatus = require_telemetry.getFarmTelemetryStatus;
|
|
3301
3311
|
exports.inspectFrameworkMigrations = inspectFrameworkMigrations;
|
|
3302
3312
|
exports.listFarmCronJobs = listFarmCronJobs;
|
|
3303
3313
|
exports.listFarmIntegrationProviders = require_add_integration.listFarmIntegrationProviders;
|
|
@@ -3307,11 +3317,14 @@ exports.migrateFarmAuth = migrateFarmAuth;
|
|
|
3307
3317
|
exports.parsePreviewPublicUrl = parsePreviewPublicUrl;
|
|
3308
3318
|
exports.previewFarm = previewFarm;
|
|
3309
3319
|
exports.resolveCloudflareAgentDeployPlan = resolveCloudflareAgentDeployPlan;
|
|
3320
|
+
exports.resolveFarmTelemetryCommand = require_telemetry.resolveFarmTelemetryCommand;
|
|
3310
3321
|
exports.resolvePreviewTarget = resolvePreviewTarget;
|
|
3311
3322
|
exports.runFarmCronJob = runFarmCronJob;
|
|
3312
3323
|
exports.runFarmDoctor = runFarmDoctor;
|
|
3313
3324
|
exports.runNativePreviewTunnel = runNativePreviewTunnel;
|
|
3314
3325
|
exports.runPreviewGateway = runPreviewGateway;
|
|
3326
|
+
exports.setFarmTelemetryEnabled = require_telemetry.setFarmTelemetryEnabled;
|
|
3327
|
+
exports.showFarmTelemetryNotice = require_telemetry.showFarmTelemetryNotice;
|
|
3315
3328
|
Object.defineProperty(exports, "startDevServer", {
|
|
3316
3329
|
enumerable: true,
|
|
3317
3330
|
get: function() {
|
|
@@ -3319,6 +3332,8 @@ Object.defineProperty(exports, "startDevServer", {
|
|
|
3319
3332
|
}
|
|
3320
3333
|
});
|
|
3321
3334
|
exports.startFarmCronScheduler = startFarmCronScheduler;
|
|
3335
|
+
exports.trackFarmCommand = require_telemetry.trackFarmCommand;
|
|
3336
|
+
exports.trackFarmProjectCreated = require_telemetry.trackFarmProjectCreated;
|
|
3322
3337
|
exports.upgradeFarm = upgradeFarm;
|
|
3323
3338
|
|
|
3324
3339
|
//# sourceMappingURL=index.js.map
|