everything-dev 1.27.0 → 1.28.0
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/dist/cli/infra.cjs +1 -1
- package/dist/cli/infra.mjs +1 -1
- package/dist/cli/init.cjs +7 -9
- package/dist/cli/init.cjs.map +1 -1
- package/dist/cli/init.d.cts +1 -1
- package/dist/cli/init.d.cts.map +1 -1
- package/dist/cli/init.d.mts +1 -1
- package/dist/cli/init.d.mts.map +1 -1
- package/dist/cli/init.mjs +7 -9
- package/dist/cli/init.mjs.map +1 -1
- package/dist/cli/prompts.cjs +28 -24
- package/dist/cli/prompts.cjs.map +1 -1
- package/dist/cli/prompts.mjs +27 -24
- package/dist/cli/prompts.mjs.map +1 -1
- package/dist/cli/sync.cjs +4 -1
- package/dist/cli/sync.cjs.map +1 -1
- package/dist/cli/sync.mjs +4 -1
- package/dist/cli/sync.mjs.map +1 -1
- package/dist/cli.cjs +187 -12
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.mjs +186 -11
- package/dist/cli.mjs.map +1 -1
- package/dist/contract.cjs +1 -1
- package/dist/contract.cjs.map +1 -1
- package/dist/contract.d.cts +38 -34
- package/dist/contract.d.cts.map +1 -1
- package/dist/contract.d.mts +38 -34
- package/dist/contract.d.mts.map +1 -1
- package/dist/contract.mjs +1 -0
- package/dist/contract.mjs.map +1 -1
- package/dist/dev-session.cjs +0 -1
- package/dist/dev-session.mjs +1 -1
- package/dist/index.cjs +0 -2
- package/dist/index.d.cts +2 -2
- package/dist/index.d.mts +2 -2
- package/dist/index.mjs +0 -1
- package/dist/near-cli.cjs +1 -1
- package/dist/near-cli.mjs +1 -1
- package/dist/orchestrator.cjs +1 -1
- package/dist/orchestrator.mjs +1 -1
- package/dist/plugin.cjs +163 -139
- package/dist/plugin.cjs.map +1 -1
- package/dist/plugin.d.cts +67 -34
- package/dist/plugin.d.cts.map +1 -1
- package/dist/plugin.d.mts +66 -34
- package/dist/plugin.d.mts.map +1 -1
- package/dist/plugin.mjs +153 -130
- package/dist/plugin.mjs.map +1 -1
- package/dist/service-descriptor.d.cts +34 -0
- package/dist/service-descriptor.d.cts.map +1 -0
- package/dist/service-descriptor.d.mts +36 -0
- package/dist/service-descriptor.d.mts.map +1 -0
- package/dist/types.d.cts +2 -2
- package/dist/types.d.mts +2 -2
- package/package.json +2 -2
- package/src/api-contract.ts +0 -623
- package/src/app.ts +0 -193
- package/src/cli/catalog.ts +0 -49
- package/src/cli/framework-version.ts +0 -61
- package/src/cli/help.ts +0 -13
- package/src/cli/infra.ts +0 -190
- package/src/cli/init.ts +0 -1145
- package/src/cli/parse.ts +0 -147
- package/src/cli/prompts.ts +0 -135
- package/src/cli/snapshot.ts +0 -46
- package/src/cli/status.ts +0 -99
- package/src/cli/sync.ts +0 -429
- package/src/cli/timing.ts +0 -63
- package/src/cli/upgrade.ts +0 -869
- package/src/cli.ts +0 -516
- package/src/components/dev-view.tsx +0 -352
- package/src/components/streaming-view.ts +0 -177
- package/src/config.ts +0 -893
- package/src/contract.meta.ts +0 -140
- package/src/contract.ts +0 -326
- package/src/dev-logs.ts +0 -92
- package/src/dev-session.ts +0 -283
- package/src/fastkv.ts +0 -181
- package/src/index.ts +0 -8
- package/src/integrity.ts +0 -138
- package/src/internal/manifest-normalizer.ts +0 -290
- package/src/merge.ts +0 -187
- package/src/mf.ts +0 -147
- package/src/near-cli.ts +0 -259
- package/src/network.ts +0 -3
- package/src/orchestrator.ts +0 -493
- package/src/plugin.ts +0 -1799
- package/src/sdk.ts +0 -14
- package/src/service-descriptor.ts +0 -281
- package/src/shared.ts +0 -249
- package/src/sidebar.ts +0 -140
- package/src/types.ts +0 -330
- package/src/ui/head.ts +0 -83
- package/src/ui/index.ts +0 -5
- package/src/ui/metadata.ts +0 -95
- package/src/ui/router.ts +0 -88
- package/src/ui/runtime.ts +0 -42
- package/src/ui/types.ts +0 -65
- package/src/utils/banner.ts +0 -21
- package/src/utils/linkify.ts +0 -11
- package/src/utils/path-match.ts +0 -16
- package/src/utils/run.ts +0 -31
- package/src/utils/save-config.ts +0 -20
- package/src/utils/theme.ts +0 -39
package/dist/plugin.cjs
CHANGED
|
@@ -1,39 +1,73 @@
|
|
|
1
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
|
|
1
2
|
const require_runtime = require('./_virtual/_rolldown/runtime.cjs');
|
|
2
3
|
const require_fastkv = require('./fastkv.cjs');
|
|
3
4
|
const require_network = require('./network.cjs');
|
|
4
5
|
const require_config = require('./config.cjs');
|
|
5
|
-
require('./sdk.cjs');
|
|
6
6
|
const require_contract = require('./contract.cjs');
|
|
7
|
+
const require_sidebar = require('./sidebar.cjs');
|
|
8
|
+
const require_integrity = require('./integrity.cjs');
|
|
7
9
|
const require_api_contract = require('./api-contract.cjs');
|
|
8
10
|
const require_app = require('./app.cjs');
|
|
9
11
|
const require_infra = require('./cli/infra.cjs');
|
|
10
12
|
const require_save_config = require('./utils/save-config.cjs');
|
|
11
13
|
const require_cli_init = require('./cli/init.cjs');
|
|
12
|
-
const require_prompts = require('./cli/prompts.cjs');
|
|
13
14
|
const require_status = require('./cli/status.cjs');
|
|
14
15
|
const require_sync = require('./cli/sync.cjs');
|
|
15
|
-
const require_timing = require('./cli/timing.cjs');
|
|
16
16
|
const require_upgrade = require('./cli/upgrade.cjs');
|
|
17
|
-
const require_integrity = require('./integrity.cjs');
|
|
18
17
|
const require_near_cli = require('./near-cli.cjs');
|
|
19
18
|
const require_service_descriptor = require('./service-descriptor.cjs');
|
|
20
19
|
const require_shared = require('./shared.cjs');
|
|
21
|
-
const require_sidebar = require('./sidebar.cjs');
|
|
22
20
|
const require_run = require('./utils/run.cjs');
|
|
23
|
-
const require_theme = require('./utils/theme.cjs');
|
|
24
21
|
let node_fs = require("node:fs");
|
|
25
22
|
let node_path = require("node:path");
|
|
23
|
+
let node_events = require("node:events");
|
|
26
24
|
let node_process = require("node:process");
|
|
27
25
|
node_process = require_runtime.__toESM(node_process, 1);
|
|
28
|
-
let _clack_prompts = require("@clack/prompts");
|
|
29
|
-
_clack_prompts = require_runtime.__toESM(_clack_prompts, 1);
|
|
30
26
|
let effect = require("effect");
|
|
31
27
|
let every_plugin = require("every-plugin");
|
|
32
28
|
let zod = require("zod");
|
|
33
29
|
|
|
34
30
|
//#region src/plugin.ts
|
|
35
|
-
|
|
36
|
-
|
|
31
|
+
const pluginEvents = new node_events.EventEmitter();
|
|
32
|
+
let pendingSession = null;
|
|
33
|
+
let pendingStartSummary = null;
|
|
34
|
+
function consumeDevSession() {
|
|
35
|
+
const data = pendingSession;
|
|
36
|
+
const summary = pendingStartSummary;
|
|
37
|
+
pendingSession = null;
|
|
38
|
+
pendingStartSummary = null;
|
|
39
|
+
if (!data) return null;
|
|
40
|
+
return summary ? {
|
|
41
|
+
...data,
|
|
42
|
+
summary
|
|
43
|
+
} : data;
|
|
44
|
+
}
|
|
45
|
+
async function timePhase(timings, name, fn) {
|
|
46
|
+
pluginEvents.emit("progress", {
|
|
47
|
+
phase: name,
|
|
48
|
+
status: "running"
|
|
49
|
+
});
|
|
50
|
+
const startedAt = Date.now();
|
|
51
|
+
try {
|
|
52
|
+
const result = await fn();
|
|
53
|
+
timings.push({
|
|
54
|
+
name,
|
|
55
|
+
durationMs: Date.now() - startedAt
|
|
56
|
+
});
|
|
57
|
+
pluginEvents.emit("progress", {
|
|
58
|
+
phase: name,
|
|
59
|
+
status: "done",
|
|
60
|
+
durationMs: Date.now() - startedAt
|
|
61
|
+
});
|
|
62
|
+
return result;
|
|
63
|
+
} catch (error) {
|
|
64
|
+
pluginEvents.emit("progress", {
|
|
65
|
+
phase: name,
|
|
66
|
+
status: "error",
|
|
67
|
+
durationMs: Date.now() - startedAt
|
|
68
|
+
});
|
|
69
|
+
throw error;
|
|
70
|
+
}
|
|
37
71
|
}
|
|
38
72
|
const buildCommands = {
|
|
39
73
|
host: {
|
|
@@ -440,6 +474,10 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
440
474
|
}),
|
|
441
475
|
dev: builder.dev.handler(async ({ input }) => {
|
|
442
476
|
require_infra.ensureEnvFile(deps.configDir);
|
|
477
|
+
pluginEvents.emit("progress", {
|
|
478
|
+
phase: "config",
|
|
479
|
+
status: "running"
|
|
480
|
+
});
|
|
443
481
|
const localPackages = require_app.detectLocalPackages(deps.bosConfig ?? void 0, deps.runtimeConfig ?? void 0);
|
|
444
482
|
const hostSource = localPackages.includes("host") ? parseSourceMode(input.host, "local") : "remote";
|
|
445
483
|
const uiSource = localPackages.includes("ui") ? parseSourceMode(input.ui, "local") : "remote";
|
|
@@ -452,9 +490,41 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
452
490
|
hostMode: hostSource,
|
|
453
491
|
bosConfig: deps.bosConfig ?? void 0,
|
|
454
492
|
extendsChain: []
|
|
455
|
-
})).catalogChanged)
|
|
456
|
-
|
|
493
|
+
})).catalogChanged) {
|
|
494
|
+
pluginEvents.emit("progress", {
|
|
495
|
+
phase: "install",
|
|
496
|
+
status: "running"
|
|
497
|
+
});
|
|
498
|
+
await require_run.run("bun", ["install"], { cwd: deps.configDir });
|
|
499
|
+
pluginEvents.emit("progress", {
|
|
500
|
+
phase: "install",
|
|
501
|
+
status: "done"
|
|
502
|
+
});
|
|
503
|
+
}
|
|
504
|
+
if (apiSource === "local" && !proxy || localPackages.some((pkg) => pkg.startsWith("plugin:"))) {
|
|
505
|
+
pluginEvents.emit("progress", {
|
|
506
|
+
phase: "build plugin",
|
|
507
|
+
status: "running"
|
|
508
|
+
});
|
|
509
|
+
await buildEveryPluginQuietly(deps.configDir);
|
|
510
|
+
pluginEvents.emit("progress", {
|
|
511
|
+
phase: "build plugin",
|
|
512
|
+
status: "done"
|
|
513
|
+
});
|
|
514
|
+
}
|
|
515
|
+
pluginEvents.emit("progress", {
|
|
516
|
+
phase: "build",
|
|
517
|
+
status: "running"
|
|
518
|
+
});
|
|
457
519
|
await buildEverythingDevQuietly(deps.configDir);
|
|
520
|
+
pluginEvents.emit("progress", {
|
|
521
|
+
phase: "build",
|
|
522
|
+
status: "done"
|
|
523
|
+
});
|
|
524
|
+
pluginEvents.emit("progress", {
|
|
525
|
+
phase: "config",
|
|
526
|
+
status: "done"
|
|
527
|
+
});
|
|
458
528
|
const refreshed = await require_config.loadConfig({ cwd: deps.configDir });
|
|
459
529
|
deps.bosConfig = refreshed?.config ?? deps.bosConfig;
|
|
460
530
|
deps.runtimeConfig = refreshed?.runtime ?? deps.runtimeConfig;
|
|
@@ -502,8 +572,11 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
502
572
|
port: runtimeConfig.host.port,
|
|
503
573
|
interactive: input.interactive
|
|
504
574
|
};
|
|
505
|
-
|
|
506
|
-
|
|
575
|
+
pendingSession = {
|
|
576
|
+
orchestrator,
|
|
577
|
+
services,
|
|
578
|
+
runtimeConfig
|
|
579
|
+
};
|
|
507
580
|
return {
|
|
508
581
|
status: "started",
|
|
509
582
|
description: orchestrator.description,
|
|
@@ -512,6 +585,10 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
512
585
|
}),
|
|
513
586
|
start: builder.start.handler(async ({ input }) => {
|
|
514
587
|
require_infra.ensureEnvFile(deps.configDir);
|
|
588
|
+
pluginEvents.emit("progress", {
|
|
589
|
+
phase: "config",
|
|
590
|
+
status: "running"
|
|
591
|
+
});
|
|
515
592
|
const account = input.account ?? node_process.default.env.BOS_ACCOUNT;
|
|
516
593
|
const domain = input.domain ?? node_process.default.env.BOS_GATEWAY;
|
|
517
594
|
let config = null;
|
|
@@ -546,10 +623,18 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
546
623
|
env: "production",
|
|
547
624
|
plugins: runtimePlugins
|
|
548
625
|
});
|
|
626
|
+
pluginEvents.emit("progress", {
|
|
627
|
+
phase: "generate artifacts",
|
|
628
|
+
status: "running"
|
|
629
|
+
});
|
|
549
630
|
await generateCodeArtifacts(deps.configDir, config, {
|
|
550
631
|
env: "production",
|
|
551
632
|
runtimeConfig
|
|
552
633
|
});
|
|
634
|
+
pluginEvents.emit("progress", {
|
|
635
|
+
phase: "generate artifacts",
|
|
636
|
+
status: "done"
|
|
637
|
+
});
|
|
553
638
|
const productionEnv = {};
|
|
554
639
|
const warnings = [];
|
|
555
640
|
if (!node_process.default.env.CORS_ORIGIN && config.domain) {
|
|
@@ -569,32 +654,40 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
569
654
|
if (missingSecrets.length > 0) warnings.push(`Missing ${missingSecrets.length} secret(s): ${missingSecrets.join(", ")}`);
|
|
570
655
|
const services = require_service_descriptor.buildServiceDescriptorMap(runtimeConfig);
|
|
571
656
|
const stagingEnvVars = isStaging ? { BOS_GATEWAY: config.staging?.domain ?? config.domain ?? "" } : {};
|
|
572
|
-
const
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
summaryLines.push("");
|
|
583
|
-
console.log(summaryLines.join("\n"));
|
|
584
|
-
const orchestrator = {
|
|
585
|
-
packages: ["host"],
|
|
586
|
-
env: {
|
|
587
|
-
NODE_ENV: "production",
|
|
588
|
-
...productionEnv,
|
|
589
|
-
...stagingEnvVars
|
|
657
|
+
const summary = {
|
|
658
|
+
configSource: remoteConfig ? `bos://${account}/${domain}` : require_config.findConfigPath() ?? "bos.config.json",
|
|
659
|
+
configSourceHttp: remoteConfig && account && domain ? require_fastkv.buildRegistryConfigUrl(account, domain) : void 0,
|
|
660
|
+
account: config.account,
|
|
661
|
+
domain: config.domain ?? void 0,
|
|
662
|
+
modules: {
|
|
663
|
+
host: runtimeConfig.host.remoteUrl ?? runtimeConfig.host.url ?? "local",
|
|
664
|
+
ui: runtimeConfig.ui.url ?? "local",
|
|
665
|
+
api: runtimeConfig.api.url ?? "local",
|
|
666
|
+
auth: runtimeConfig.auth?.url ?? void 0
|
|
590
667
|
},
|
|
591
|
-
|
|
592
|
-
port,
|
|
593
|
-
interactive: input.interactive,
|
|
594
|
-
noLogs: true
|
|
668
|
+
warnings
|
|
595
669
|
};
|
|
596
|
-
|
|
597
|
-
|
|
670
|
+
pendingSession = {
|
|
671
|
+
orchestrator: {
|
|
672
|
+
packages: ["host"],
|
|
673
|
+
env: {
|
|
674
|
+
NODE_ENV: "production",
|
|
675
|
+
...productionEnv,
|
|
676
|
+
...stagingEnvVars
|
|
677
|
+
},
|
|
678
|
+
description: `${isStaging ? "Staging" : "Production"} Mode (${config.account})`,
|
|
679
|
+
port,
|
|
680
|
+
interactive: input.interactive,
|
|
681
|
+
noLogs: true
|
|
682
|
+
},
|
|
683
|
+
services,
|
|
684
|
+
runtimeConfig
|
|
685
|
+
};
|
|
686
|
+
pendingStartSummary = summary;
|
|
687
|
+
pluginEvents.emit("progress", {
|
|
688
|
+
phase: "config",
|
|
689
|
+
status: "done"
|
|
690
|
+
});
|
|
598
691
|
return {
|
|
599
692
|
status: "running",
|
|
600
693
|
url: `http://localhost:${port}`
|
|
@@ -784,8 +877,8 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
784
877
|
let extendsAccount = "";
|
|
785
878
|
let extendsGateway = "";
|
|
786
879
|
let directory = input.directory;
|
|
787
|
-
|
|
788
|
-
|
|
880
|
+
const account = input.account;
|
|
881
|
+
const domain = input.domain;
|
|
789
882
|
let overrides = input.overrides;
|
|
790
883
|
let plugins = input.plugins;
|
|
791
884
|
if (input.extends) {
|
|
@@ -797,77 +890,22 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
797
890
|
}
|
|
798
891
|
extendsAccount = extendsAccount || "dev.everything.near";
|
|
799
892
|
extendsGateway = extendsGateway || "everything.dev";
|
|
800
|
-
const s = _clack_prompts.spinner();
|
|
801
|
-
s.start("Initializing project");
|
|
802
893
|
let parentPluginKeys = [];
|
|
803
894
|
let parentConfig = null;
|
|
804
895
|
try {
|
|
805
|
-
parentConfig = await
|
|
896
|
+
parentConfig = await timePhase(timings, "parent config", () => require_cli_init.fetchParentConfig(extendsAccount, extendsGateway));
|
|
806
897
|
if (parentConfig?.plugins && typeof parentConfig.plugins === "object") parentPluginKeys = Object.keys(parentConfig.plugins);
|
|
807
898
|
} catch {}
|
|
808
|
-
if (!input.noInteractive) {
|
|
809
|
-
s.stop("Config fetched");
|
|
810
|
-
const initialExtendsAccount = extendsAccount;
|
|
811
|
-
const initialExtendsGateway = extendsGateway;
|
|
812
|
-
const prompted = await require_prompts.promptInitOptions({
|
|
813
|
-
extends: `bos://${extendsAccount}/${extendsGateway}`,
|
|
814
|
-
directory,
|
|
815
|
-
account,
|
|
816
|
-
domain,
|
|
817
|
-
plugins,
|
|
818
|
-
overrides,
|
|
819
|
-
parentPluginKeys
|
|
820
|
-
});
|
|
821
|
-
extendsAccount = prompted.extendsAccount;
|
|
822
|
-
extendsGateway = prompted.extendsGateway;
|
|
823
|
-
directory = prompted.directory;
|
|
824
|
-
account = prompted.account;
|
|
825
|
-
domain = prompted.domain;
|
|
826
|
-
plugins = prompted.plugins;
|
|
827
|
-
overrides = prompted.overrides;
|
|
828
|
-
if (!parentConfig || prompted.extendsAccount !== initialExtendsAccount || prompted.extendsGateway !== initialExtendsGateway) {
|
|
829
|
-
try {
|
|
830
|
-
parentConfig = await require_timing.timePhase(timings, "parent config", () => require_cli_init.fetchParentConfig(prompted.extendsAccount, prompted.extendsGateway), s);
|
|
831
|
-
if (parentConfig?.plugins && typeof parentConfig.plugins === "object") parentPluginKeys = Object.keys(parentConfig.plugins);
|
|
832
|
-
else parentPluginKeys = [];
|
|
833
|
-
} catch {
|
|
834
|
-
return {
|
|
835
|
-
status: "error",
|
|
836
|
-
directory,
|
|
837
|
-
extendsRef: `bos://${prompted.extendsAccount}/${prompted.extendsGateway}`,
|
|
838
|
-
account,
|
|
839
|
-
domain,
|
|
840
|
-
extends: `bos://${prompted.extendsAccount}/${prompted.extendsGateway}`,
|
|
841
|
-
plugins,
|
|
842
|
-
overrides,
|
|
843
|
-
filesCopied: 0,
|
|
844
|
-
timings,
|
|
845
|
-
error: `No config found at bos://${prompted.extendsAccount}/${prompted.extendsGateway} — are you sure this is the right parent?`
|
|
846
|
-
};
|
|
847
|
-
}
|
|
848
|
-
s.stop("Config fetched");
|
|
849
|
-
}
|
|
850
|
-
if (typeof parentConfig?.title === "string" && parentConfig.title.trim() && typeof parentConfig.description === "string" && parentConfig.description.trim()) {
|
|
851
|
-
const shouldContinue = await _clack_prompts.confirm({
|
|
852
|
-
message: `You will be extending ${parentConfig.title} - ${parentConfig.description}. Continue?`,
|
|
853
|
-
initialValue: true
|
|
854
|
-
});
|
|
855
|
-
if (_clack_prompts.isCancel(shouldContinue) || !shouldContinue) node_process.default.exit(0);
|
|
856
|
-
}
|
|
857
|
-
s.start("Setting up project");
|
|
858
|
-
}
|
|
859
899
|
overrides = overrides?.length ? overrides : ["ui", "api"];
|
|
860
|
-
if (overrides.includes("plugins") &&
|
|
900
|
+
if (overrides.includes("plugins") && plugins === void 0) plugins = parentPluginKeys;
|
|
861
901
|
plugins = plugins ?? [];
|
|
862
902
|
directory = directory || domain || extendsGateway;
|
|
863
903
|
const targetDir = (0, node_path.resolve)(directory);
|
|
864
904
|
const extendsRef = `bos://${extendsAccount}/${extendsGateway}`;
|
|
865
|
-
if (overrides.includes("plugins") && !plugins.length) {}
|
|
866
905
|
const repository = await require_cli_init.detectGitRemoteUrl(node_process.default.cwd()).catch(() => void 0) ?? parentConfig?.repository;
|
|
867
906
|
if (!parentConfig) try {
|
|
868
|
-
parentConfig = await
|
|
907
|
+
parentConfig = await timePhase(timings, "parent config", () => require_cli_init.fetchParentConfig(extendsAccount, extendsGateway));
|
|
869
908
|
} catch {
|
|
870
|
-
s.stop("Failed");
|
|
871
909
|
return {
|
|
872
910
|
status: "error",
|
|
873
911
|
directory,
|
|
@@ -882,17 +920,17 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
882
920
|
error: `No config found at ${extendsRef} — are you sure this is the right parent?`
|
|
883
921
|
};
|
|
884
922
|
}
|
|
885
|
-
const { sourceDir, parentConfig: resolvedParentConfig, cleanup } = await
|
|
923
|
+
const { sourceDir, parentConfig: resolvedParentConfig, cleanup } = await timePhase(timings, "template source", () => require_cli_init.resolveSourceDir({
|
|
886
924
|
extendsAccount,
|
|
887
925
|
extendsGateway,
|
|
888
926
|
source: input.source
|
|
889
|
-
})
|
|
927
|
+
}));
|
|
890
928
|
parentConfig = resolvedParentConfig;
|
|
891
929
|
const isMinimalScaffold = sourceDir === "";
|
|
892
930
|
try {
|
|
893
931
|
let filesCopied;
|
|
894
932
|
if (isMinimalScaffold) {
|
|
895
|
-
filesCopied = await
|
|
933
|
+
filesCopied = await timePhase(timings, "scaffold project", () => require_cli_init.scaffoldMinimalProject(targetDir, parentConfig, {
|
|
896
934
|
extendsAccount,
|
|
897
935
|
extendsGateway,
|
|
898
936
|
account: account || extendsAccount,
|
|
@@ -902,8 +940,8 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
902
940
|
repository,
|
|
903
941
|
title: parentConfig?.title,
|
|
904
942
|
description: parentConfig?.description
|
|
905
|
-
})
|
|
906
|
-
await
|
|
943
|
+
}));
|
|
944
|
+
await timePhase(timings, "personalize config", () => require_cli_init.personalizeConfig(targetDir, {
|
|
907
945
|
extendsAccount,
|
|
908
946
|
extendsGateway,
|
|
909
947
|
account: account || extendsAccount,
|
|
@@ -916,14 +954,14 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
916
954
|
description: parentConfig?.description,
|
|
917
955
|
testnet: parentConfig?.testnet,
|
|
918
956
|
staging: parentConfig?.staging
|
|
919
|
-
})
|
|
957
|
+
}));
|
|
920
958
|
} else {
|
|
921
959
|
const patterns = require_cli_init.buildInitPatterns(overrides, plugins);
|
|
922
|
-
filesCopied = await
|
|
960
|
+
filesCopied = await timePhase(timings, "copy files", () => require_cli_init.copyFilteredFiles(sourceDir, targetDir, patterns, {
|
|
923
961
|
overrides,
|
|
924
962
|
plugins
|
|
925
|
-
})
|
|
926
|
-
await
|
|
963
|
+
}));
|
|
964
|
+
await timePhase(timings, "personalize config", () => require_cli_init.personalizeConfig(targetDir, {
|
|
927
965
|
extendsAccount,
|
|
928
966
|
extendsGateway,
|
|
929
967
|
account: account || extendsAccount,
|
|
@@ -936,45 +974,28 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
936
974
|
description: parentConfig?.description,
|
|
937
975
|
testnet: parentConfig?.testnet,
|
|
938
976
|
staging: parentConfig?.staging
|
|
939
|
-
})
|
|
940
|
-
await
|
|
977
|
+
}));
|
|
978
|
+
await timePhase(timings, "write snapshot", () => require_cli_init.writeInitSnapshot(targetDir, extendsAccount, extendsGateway, sourceDir, patterns, {
|
|
941
979
|
overrides,
|
|
942
980
|
plugins
|
|
943
|
-
})
|
|
981
|
+
}));
|
|
944
982
|
}
|
|
945
983
|
const lockfilePath = (0, node_path.join)(targetDir, "bun.lock");
|
|
946
984
|
require_cli_init.stripOrphanedWorkspacesFromLockfile(lockfilePath, computeAllowedWorkspaces(overrides, plugins));
|
|
947
985
|
require_cli_init.removeInitLockfile(lockfilePath);
|
|
948
|
-
const initConfig = await
|
|
949
|
-
if (initConfig?.runtime) await
|
|
986
|
+
const initConfig = await timePhase(timings, "resolve config", () => require_config.loadConfig({ cwd: targetDir }));
|
|
987
|
+
if (initConfig?.runtime) await timePhase(timings, "generate env/docker", async () => {
|
|
950
988
|
require_infra.writeGeneratedInfra(targetDir, initConfig.runtime);
|
|
951
|
-
}
|
|
952
|
-
await
|
|
989
|
+
});
|
|
990
|
+
await timePhase(timings, "create env file", async () => {
|
|
953
991
|
require_infra.ensureEnvFile(targetDir);
|
|
954
|
-
}
|
|
992
|
+
});
|
|
955
993
|
if (!input.noInstall) {
|
|
956
|
-
await
|
|
957
|
-
await
|
|
958
|
-
await
|
|
959
|
-
}
|
|
960
|
-
if (input.noInstall && initConfig?.config) await require_timing.timePhase(timings, "generate code artifacts", () => generateCodeArtifacts(targetDir, initConfig.config), s);
|
|
961
|
-
s.stop("Project initialized");
|
|
962
|
-
if (!input.noInteractive) {
|
|
963
|
-
if (await _clack_prompts.confirm({
|
|
964
|
-
message: "Run docker compose up -d --wait?",
|
|
965
|
-
initialValue: true
|
|
966
|
-
}) === true) {
|
|
967
|
-
const dockerSpinner = _clack_prompts.spinner();
|
|
968
|
-
dockerSpinner.start("Starting Docker services");
|
|
969
|
-
try {
|
|
970
|
-
await require_timing.timePhase(timings, "docker compose up", () => require_cli_init.runDockerComposeUp(targetDir));
|
|
971
|
-
dockerSpinner.stop("Docker services ready");
|
|
972
|
-
} catch (error) {
|
|
973
|
-
dockerSpinner.stop("Docker services not started");
|
|
974
|
-
_clack_prompts.log.warn(`docker compose up -d --wait failed: ${error instanceof Error ? error.message : error}`);
|
|
975
|
-
}
|
|
976
|
-
}
|
|
994
|
+
await timePhase(timings, "install dependencies", () => require_cli_init.runBunInstall(targetDir));
|
|
995
|
+
await timePhase(timings, "generate types", () => require_cli_init.runTypesGen(targetDir));
|
|
996
|
+
await timePhase(timings, "generate migrations", () => require_cli_init.generateDatabaseMigrations(targetDir));
|
|
977
997
|
}
|
|
998
|
+
if (input.noInstall && initConfig?.config) await timePhase(timings, "generate code artifacts", () => generateCodeArtifacts(targetDir, initConfig.config));
|
|
978
999
|
return {
|
|
979
1000
|
status: "initialized",
|
|
980
1001
|
directory,
|
|
@@ -985,7 +1006,8 @@ var plugin_default = (0, every_plugin.createPlugin)({
|
|
|
985
1006
|
plugins,
|
|
986
1007
|
overrides,
|
|
987
1008
|
filesCopied,
|
|
988
|
-
timings
|
|
1009
|
+
timings,
|
|
1010
|
+
targetDir
|
|
989
1011
|
};
|
|
990
1012
|
} finally {
|
|
991
1013
|
await cleanup();
|
|
@@ -1160,10 +1182,12 @@ function computeAllowedWorkspaces(overrides, plugins) {
|
|
|
1160
1182
|
if (section === "ui") workspaces.push("ui");
|
|
1161
1183
|
if (section === "api") workspaces.push("api");
|
|
1162
1184
|
}
|
|
1163
|
-
if (plugins
|
|
1185
|
+
if (plugins && plugins.length > 0) workspaces.push("plugins/*");
|
|
1164
1186
|
return workspaces;
|
|
1165
1187
|
}
|
|
1166
1188
|
|
|
1167
1189
|
//#endregion
|
|
1168
|
-
|
|
1190
|
+
exports.consumeDevSession = consumeDevSession;
|
|
1191
|
+
exports.default = plugin_default;
|
|
1192
|
+
exports.pluginEvents = pluginEvents;
|
|
1169
1193
|
//# sourceMappingURL=plugin.cjs.map
|