eddev 2.3.16 → 2.3.18

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.
@@ -1,5 +1,5 @@
1
- import { ContentBlock } from "./ContentBlocks.js";
2
1
  import { PropsWithChildren } from "react";
2
+ import { ContentBlock } from "./ContentBlocks.js";
3
3
  type Attributes = Record<string, any>;
4
4
  export type InlineValueStore<T> = [value: T, setValue: (value: T) => void];
5
5
  export type BlockInstance = {
@@ -1 +1 @@
1
- {"version":3,"file":"inline-editing.d.ts","sourceRoot":"","sources":["../../../../src/app/lib/blocks/inline-editing.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAiB,iBAAiB,EAA8B,MAAM,OAAO,CAAA;AAKpF,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAErC,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,CAAA;AAE1E,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,GAAG,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,aAAa,EAAE,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACpC,KAAK,CAAC,EAAE,GAAG,CAAA;CACZ,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;AAE5B,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,UAAU,CAAA;IAClB,WAAW,EAAE,YAAY,EAAE,CAAA;IAC3B,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAA;IAC/B,KAAK,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC3B,WAAW,CAAC,EAAE,aAAa,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,CAAA;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;IAC1B,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,oBAAoB,2DAA6D,CAAA;AAE9F,KAAK,aAAa,GAAG,iBAAiB,CAAC;IACrC,MAAM,EAAE,UAAU,CAAA;IAClB,WAAW,EAAE,YAAY,EAAE,CAAA;IAC3B,KAAK,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC3B,WAAW,CAAC,EAAE,aAAa,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACtC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAC,CAAA;AAEF,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,aAAa,+BAwChE;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,CAAC,EAAE,CAAC,+BAazE;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAQ5F;AAED;;;IAGI;AACJ,wBAAgB,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAexG;AAED,wBAAgB,gBAAgB,aApHF,GAAG,KAAK,IAAI,cAuHzC;AAED,wBAAgB,cAAc,IAAI,YAAY,EAAE,CAM/C;AAED,wBAAgB,eAAe,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAGxD;AAED,wBAAgB,eAAe,qCAE9B;AAED,wBAAgB,iBAAiB,QAOhC;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,IAAI,MAAM,SAAS,CAa7C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,UAAU,EAAE,SAAS,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAYvG"}
1
+ {"version":3,"file":"inline-editing.d.ts","sourceRoot":"","sources":["../../../../src/app/lib/blocks/inline-editing.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { createContext, useContext, useId, useMemo } from "react";
3
- import { usePostEditor } from "./editor/usePostEditor.js";
4
3
  import { useRoute } from "../routing/index.js";
5
4
  import { addBlockMetadata } from "./block-utils.js";
5
+ import { usePostEditor } from "./editor/usePostEditor.js";
6
6
  export const InlineEditingContext = createContext(undefined);
7
7
  export function InlineEditingContextProvider(props) {
8
8
  const parentContext = useContext(InlineEditingContext);
@@ -365,7 +365,7 @@ export class ServerContext {
365
365
  });
366
366
  const preferredCacheDuration = parseInt(result.headers.get("x-ed-cache-duration") ?? "");
367
367
  let resultStatus = result.status;
368
- let resultHeaders = result.headers;
368
+ let resultHeaders = new Headers(result.headers);
369
369
  let resultData = await result.json();
370
370
  if (resultData && typeof resultData === "object") {
371
371
  resultData.__generated = new Date().toISOString();
@@ -1,5 +1,5 @@
1
1
  import { Worker } from "node:worker_threads";
2
- import { StatefulLog } from "../utils/stateful-log.js";
2
+ import type { StatefulLog } from "../utils/stateful-log.js";
3
3
  type WorkerMode = "admin" | "frontend" | "graphql" | "serverless";
4
4
  export declare class CLIWorker {
5
5
  worker: Worker;
@@ -1 +1 @@
1
- {"version":3,"file":"cli-worker.d.ts","sourceRoot":"","sources":["../../../src/node/cli/cli-worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAwC,MAAM,qBAAqB,CAAA;AAKlF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAGtD,KAAK,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,CAAA;AAEjE,qBAAa,SAAS;IACpB,MAAM,EAAE,MAAM,CAAA;gBACF,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QAAE,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAkC3F,QAAQ;CAGf"}
1
+ {"version":3,"file":"cli-worker.d.ts","sourceRoot":"","sources":["../../../src/node/cli/cli-worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAwC,MAAM,qBAAqB,CAAA;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAG3D,KAAK,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,CAAA;AAEjE,qBAAa,SAAS;IACpB,MAAM,EAAE,MAAM,CAAA;gBACF,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QAAE,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAkC3F,QAAQ;CAGf"}
@@ -1,8 +1,4 @@
1
1
  import { Worker, isMainThread, parentPort, workerData } from "node:worker_threads";
2
- import { AdminBundler, adminLog } from "../compiler/bundler.admin.js";
3
- import { FrontendBundler, frontendLog } from "../compiler/bundler.frontend.js";
4
- import { GraphQLGenerator, graphqlLog } from "../graphql/graphql-codegen.js";
5
- import { Project } from "../project/project.js";
6
2
  import { configureCliMode } from "./cli-mode.js";
7
3
  export class CLIWorker {
8
4
  worker;
@@ -58,6 +54,7 @@ if (!isMainThread) {
58
54
  rootDir: process.cwd(),
59
55
  });
60
56
  // Load the project info
57
+ const { Project } = await import("../project/project.js");
61
58
  const project = await Project.create({
62
59
  rootDir: process.cwd(),
63
60
  reportPluginCompatibility: false,
@@ -90,6 +87,7 @@ if (!isMainThread) {
90
87
  });
91
88
  }
92
89
  if (mode === "admin") {
90
+ const { AdminBundler, adminLog } = await import("../compiler/bundler.admin.js");
93
91
  const bundler = new AdminBundler(project, {
94
92
  mode: "development",
95
93
  watch: true,
@@ -98,6 +96,7 @@ if (!isMainThread) {
98
96
  pipeLog(adminLog);
99
97
  }
100
98
  else if (mode === "frontend") {
99
+ const { FrontendBundler, frontendLog } = await import("../compiler/bundler.frontend.js");
101
100
  const bundler = new FrontendBundler(project, {
102
101
  mode: "development",
103
102
  watch: true,
@@ -106,6 +105,7 @@ if (!isMainThread) {
106
105
  pipeLog(frontendLog);
107
106
  }
108
107
  else if (mode === "graphql") {
108
+ const { GraphQLGenerator, graphqlLog } = await import("../graphql/graphql-codegen.js");
109
109
  const codegen = new GraphQLGenerator(project, {
110
110
  generate: true,
111
111
  optimize: true,
@@ -126,7 +126,7 @@ program
126
126
  serverless: false,
127
127
  endpoint: "",
128
128
  });
129
- spaStaging.runAndWatch();
129
+ await spaStaging.runAndWatch();
130
130
  }
131
131
  // Boot up admin in a worker
132
132
  if (tasks.admin) {
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "2.3.16";
1
+ export declare const VERSION = "2.3.18";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- export const VERSION = "2.3.16";
1
+ export const VERSION = "2.3.18";
@@ -1 +1 @@
1
- {"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../../src/node/compiler/dev-server.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAO/C,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAID,eAAO,MAAM,aAAa,qEAAU,CAAA;AAEpC,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED,qBAAa,SAAS;IAOX,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,OAAO;IAPtB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,SAAO;gBAGF,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,OAAO;IAUhB,KAAK;CAyGZ"}
1
+ {"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../../src/node/compiler/dev-server.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAM/C,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAID,eAAO,MAAM,aAAa,qEAAU,CAAA;AAEpC,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED,qBAAa,SAAS;IAOX,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,OAAO;IAPtB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,SAAO;gBAGF,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,OAAO;IAUhB,KAAK;CA+FZ"}
@@ -4,7 +4,6 @@ import { ProjectEnvUtils } from "../project/env.js";
4
4
  import { ensureSelfSignedCert, isCertificateTrusted } from "../utils/self-signed-cert.js";
5
5
  import { createConsole } from "../utils/stateful-log.js";
6
6
  import { createVinxiApp } from "./vinxi-app.js";
7
- import { createVinxiCodegen } from "./vinxi-codegen.js";
8
7
  import chalk from "chalk";
9
8
  const console = createConsole("Dev Server", "dev");
10
9
  export const serverlessLog = console;
@@ -18,22 +17,14 @@ export class DevServer {
18
17
  constructor(project, opts) {
19
18
  this.project = project;
20
19
  this.opts = opts;
21
- this.start();
22
20
  this.origin = ProjectEnvUtils.get("SITE_URL");
23
21
  const parsedSiteURL = parseURL(this.origin);
24
22
  this.hostname = !!parsedSiteURL.host ? parsedSiteURL.host : "localhost";
25
23
  this.hostOrigin = (opts.https ? "https" : "http") + "://" + this.hostname + ":" + this.port;
24
+ this.start();
26
25
  }
27
26
  async start() {
28
27
  console.setWorking(true);
29
- // console.log("Setting up vinxi codegen")
30
- const codegen = createVinxiCodegen({
31
- mode: "development",
32
- project: this.project,
33
- serverless: true,
34
- });
35
- await codegen.runAndWatch();
36
- // console.log("Has run once")
37
28
  const app = createVinxiApp({
38
29
  mode: "development",
39
30
  origin: this.origin,
@@ -25,6 +25,7 @@ export declare function storybookVitePlugins(args: Args): PluginOption[];
25
25
  export declare function ignoreRollupErrorsPlugin(): PluginOption;
26
26
  export declare function loggerPlugin(args: {
27
27
  console: StatefulLog<any>;
28
+ completeOnError?: boolean;
28
29
  }): PluginOption;
29
30
  export declare function getViteConfig(args: Args): InlineConfig;
30
31
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"get-vite-config.d.ts","sourceRoot":"","sources":["../../../src/node/compiler/get-vite-config.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,YAAY,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAEtD,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAA;IAClC,UAAU,EAAE,OAAO,CAAA;IACnB,MAAM,EAAE,UAAU,GAAG,KAAK,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;IACzB,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAqDlD;AAED,KAAK,eAAe,GAAG;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,wBAAgB,WAAW,CAAC,IAAI,GAAE,eAAoB,kBA4FrD;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,YAAY,CA6CxC;AAwBD,wBAAgB,aAAa,IAAI,YAAY,CAW5C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,EAAE,CAatD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,EAAE,CAE/D;AAED,wBAAgB,wBAAwB,IAAI,YAAY,CA8BvD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,YAAY,CA4B9E;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAmEtD"}
1
+ {"version":3,"file":"get-vite-config.d.ts","sourceRoot":"","sources":["../../../src/node/compiler/get-vite-config.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,YAAY,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAEtD,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAA;IAClC,UAAU,EAAE,OAAO,CAAA;IACnB,MAAM,EAAE,UAAU,GAAG,KAAK,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;IACzB,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAqDlD;AAED,KAAK,eAAe,GAAG;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,wBAAgB,WAAW,CAAC,IAAI,GAAE,eAAoB,kBA4FrD;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,YAAY,CA6CxC;AA4BD,wBAAgB,aAAa,IAAI,YAAY,CAW5C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,EAAE,CAatD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,EAAE,CAE/D;AAED,wBAAgB,wBAAwB,IAAI,YAAY,CA8BvD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,YAAY,CA6BzG;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAmEtD"}
@@ -185,23 +185,29 @@ export function ssrPlugin() {
185
185
  };
186
186
  }
187
187
  function buildStatusPlugin(console) {
188
- let timer = 0;
188
+ let hasStarted = false;
189
189
  return {
190
190
  name: "eddev:logging",
191
191
  enforce: "post",
192
- watchChange() {
193
- console.resetLog();
194
- clearTimeout(timer);
195
- },
196
192
  buildStart() {
197
- clearTimeout(timer);
193
+ if (hasStarted) {
194
+ console.resetLog();
195
+ }
196
+ else {
197
+ hasStarted = true;
198
+ console.startTimer();
199
+ }
198
200
  console.setWorking(true);
199
201
  },
200
- buildEnd() {
201
- clearTimeout(timer);
202
- timer = setTimeout(() => {
203
- console.setWorking(false);
204
- }, 0);
202
+ buildEnd(error) {
203
+ if (error)
204
+ console.setWorking(false, "error");
205
+ },
206
+ renderError() {
207
+ console.setWorking(false, "error");
208
+ },
209
+ writeBundle() {
210
+ console.setWorking(false);
205
211
  },
206
212
  };
207
213
  }
@@ -283,6 +289,8 @@ export function loggerPlugin(args) {
283
289
  };
284
290
  logger.error = (msg) => {
285
291
  args.console.fail(msg.replace(/\n/, ""));
292
+ if (args.completeOnError)
293
+ args.console.setWorking(false, "error");
286
294
  };
287
295
  logger.warnOnce = (msg) => {
288
296
  args.console.warn(msg.replace(/\n/, ""));
@@ -320,7 +328,7 @@ export function getViteConfig(args) {
320
328
  }),
321
329
  buildStatusPlugin(console),
322
330
  ignoreRollupErrorsPlugin(),
323
- loggerPlugin({ console }),
331
+ loggerPlugin({ console, completeOnError: true }),
324
332
  workersPlugin(),
325
333
  ],
326
334
  build: {
@@ -1 +1 @@
1
- {"version":3,"file":"vinxi-app.d.ts","sourceRoot":"","sources":["../../../src/node/compiler/vinxi-app.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAKtD,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAA;IAClC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,EAAE,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,MAAM,EAAE,QAAQ,CAAA;CACjB,CAAA;AAED,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,MAAM,CAAA;AAC7D,KAAK,mBAAmB,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,CAAA;AACrD,KAAK,iBAAiB,GAAG,MAAM,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAA;AAEhE,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAA;CAC1C,CAAA;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,OA6P3C"}
1
+ {"version":3,"file":"vinxi-app.d.ts","sourceRoot":"","sources":["../../../src/node/compiler/vinxi-app.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAKtD,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,EAAE,aAAa,GAAG,YAAY,CAAA;IAClC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,EAAE,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,MAAM,EAAE,QAAQ,CAAA;CACjB,CAAA;AAED,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,MAAM,CAAA;AAC7D,KAAK,mBAAmB,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,CAAA;AACrD,KAAK,iBAAiB,GAAG,MAAM,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAA;AAEhE,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAA;CAC1C,CAAA;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,OA4P3C"}
@@ -19,7 +19,6 @@ export function createVinxiApp(args) {
19
19
  expiration,
20
20
  allowQuery: [],
21
21
  passQuery: false,
22
- group: 32,
23
22
  },
24
23
  headers: {
25
24
  "Vercel-Cache-Tag": "data",
@@ -38,7 +37,6 @@ export function createVinxiApp(args) {
38
37
  expiration,
39
38
  allowQuery: [],
40
39
  passQuery: false,
41
- group: 32,
42
40
  },
43
41
  headers: {
44
42
  "Vercel-Cache-Tag": "data",
@@ -123,6 +121,7 @@ export function createVinxiApp(args) {
123
121
  },
124
122
  };
125
123
  }, {}),
124
+ "/": serverlessPageRoute(cacheConfig.pageDataTTL ?? 0),
126
125
  "/**/*": serverlessPageRoute(cacheConfig.pageDataTTL ?? 0),
127
126
  },
128
127
  vercel: {
@@ -1 +1 @@
1
- {"version":3,"file":"vinxi-codegen.d.ts","sourceRoot":"","sources":["../../../src/node/compiler/vinxi-codegen.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAGlD,KAAK,OAAO,GAAG;IACb,IAAI,EAAE,aAAa,GAAG,YAAY,CAAA;IAClC,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAAC,UAExE;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,OAAO,iBAIlD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,aAivB/C"}
1
+ {"version":3,"file":"vinxi-codegen.d.ts","sourceRoot":"","sources":["../../../src/node/compiler/vinxi-codegen.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAGlD,KAAK,OAAO,GAAG;IACb,IAAI,EAAE,aAAa,GAAG,YAAY,CAAA;IAClC,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAAC,UAExE;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,OAAO,iBAIlD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,aA+vB/C"}
@@ -313,7 +313,10 @@ export function createVinxiCodegen(opts) {
313
313
  eventHandler(async (event) => {
314
314
  const url = getRequestURL(event)
315
315
 
316
- const [id, paramString] = event.path.replace("/_data/query", "").split("=", 2)
316
+ const queryPath = event.path.replace("/_data/query", "")
317
+ const paramSeparator = queryPath.indexOf("=")
318
+ const id = paramSeparator === -1 ? queryPath : queryPath.slice(0, paramSeparator)
319
+ const paramString = paramSeparator === -1 ? undefined : queryPath.slice(paramSeparator + 1)
317
320
 
318
321
  let params = {}
319
322
  try {
@@ -404,6 +407,17 @@ export function createVinxiCodegen(opts) {
404
407
  const serverContext = ServerContext.main
405
408
  const url = getRequestURL(event)
406
409
 
410
+ // Vercel invokes ISR functions through an internal bracket route. Nitro normally
411
+ // restores the public pathname before this handler runs, but it is not guaranteed
412
+ // for every stale/revalidation request, so resolve it before any route checks.
413
+ const vercelRouteMatches = getRequestHeaders(event)["x-now-route-matches"]
414
+ const isrRoute = vercelRouteMatches
415
+ ? new URLSearchParams(vercelRouteMatches).get("__isr_route")
416
+ : url.searchParams.get("__isr_route")
417
+ if (isrRoute) {
418
+ url.pathname = isrRoute
419
+ }
420
+
407
421
  await Promise.allSettled([viewManifestReader.preloadAll(), blockManifestReader.preloadAll()])
408
422
 
409
423
  // RPC
@@ -428,7 +442,7 @@ export function createVinxiCodegen(opts) {
428
442
  }
429
443
 
430
444
  // Proxy WordPress
431
- if (url.pathname.includes(".") || url.pathname.startsWith("/graphql") || url.pathname.startsWith("/wp-")) {
445
+ if ((url.pathname.includes(".") && !url.pathname.includes("[")) || url.pathname.startsWith("/graphql") || url.pathname.startsWith("/wp-")) {
432
446
  return proxyWpAdmin(event)
433
447
  }
434
448
 
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../../src/node/project/manifest/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA8B,MAAM,gCAAgC,CAAA;AAGtF,KAAK,aAAa,CAAC,UAAU,IAAI;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,UAAU,CAAA;CAClB,CAAA;AAED,KAAK,qBAAqB,CAAC,UAAU,EAAE,SAAS,IAAI;IAClD,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,KAAK,EAAE,OAAO,CAAA;IACd,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;IAC7D,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;IACvC,gBAAgB,EAAE,CAAC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,SAAS,CAAC,CAAA;IAC/F,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,iBAAiB,CAAC,UAAU,EAAE,SAAS,IAAI;IACrD,2DAA2D;IAC3D,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,+FAA+F;IAC/F,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,IAAI,KAAK,MAAM,IAAI,CAAA;IACxF,kCAAkC;IAClC,eAAe,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,IAAI,KAAK,MAAM,IAAI,CAAA;IAC9F,qFAAqF;IACrF,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAA;CAC1B,CAAA;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,qBAAqB,CAAC,UAAU,EAAE,SAAS,CAAC,GAkH1G,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC,CAC9C"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../../src/node/project/manifest/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA8B,MAAM,gCAAgC,CAAA;AAGtF,KAAK,aAAa,CAAC,UAAU,IAAI;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,UAAU,CAAA;CAClB,CAAA;AAED,KAAK,qBAAqB,CAAC,UAAU,EAAE,SAAS,IAAI;IAClD,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,KAAK,EAAE,OAAO,CAAA;IACd,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;IAC7D,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;IACvC,gBAAgB,EAAE,CAAC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,SAAS,CAAC,CAAA;IAC/F,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,iBAAiB,CAAC,UAAU,EAAE,SAAS,IAAI;IACrD,2DAA2D;IAC3D,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,+FAA+F;IAC/F,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,IAAI,KAAK,MAAM,IAAI,CAAA;IACxF,kCAAkC;IAClC,eAAe,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,IAAI,KAAK,MAAM,IAAI,CAAA;IAC9F,qFAAqF;IACrF,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAA;CAC1B,CAAA;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,qBAAqB,CAAC,UAAU,EAAE,SAAS,CAAC,GAgI1G,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC,CAC9C"}
@@ -16,8 +16,9 @@ export function createManifestGenerator(args) {
16
16
  return new Promise(async (resolve) => {
17
17
  files = [];
18
18
  let events = [];
19
- const update = async () => {
20
- value = await generate(files);
19
+ let updateQueue = Promise.resolve();
20
+ const runUpdate = async () => {
21
+ value = await generate([...files]);
21
22
  clearTimeout(debouncer);
22
23
  debouncer = setTimeout(() => {
23
24
  if (!disposed)
@@ -30,19 +31,29 @@ export function createManifestGenerator(args) {
30
31
  events = [];
31
32
  }
32
33
  };
34
+ const update = () => {
35
+ updateQueue = updateQueue.then(runUpdate, runUpdate);
36
+ return updateQueue;
37
+ };
33
38
  if (args.watch) {
34
39
  const disposer = await watchFileTree({
35
40
  pattern: args.pattern,
36
41
  ignore: args.ignore,
37
42
  callback: (fileList, event) => {
38
43
  files = fileList;
39
- cache = new Map();
40
- if (args.onFileChange)
41
- fileList.forEach(args.onFileChange);
42
- update();
44
+ if (event) {
45
+ cache.delete(event.file);
46
+ args.onFileChange?.(event.file);
47
+ }
48
+ else {
49
+ cache.clear();
50
+ if (args.onFileChange)
51
+ fileList.forEach(args.onFileChange);
52
+ }
43
53
  if (event) {
44
54
  events.push(event);
45
55
  }
56
+ void update();
46
57
  },
47
58
  });
48
59
  disposers.push(disposer);
@@ -59,12 +70,16 @@ export function createManifestGenerator(args) {
59
70
  const key = args.getKey(file);
60
71
  if (key === null)
61
72
  return;
62
- const value = await args.loadValue(file, key);
73
+ let value = cache.get(file);
74
+ if (!cache.has(file)) {
75
+ value = await args.loadValue(file, key);
76
+ cache.set(file, value);
77
+ }
63
78
  entries[key] = {
64
79
  key,
65
80
  relativePath: relative(args.baseDir, file),
66
81
  fullPath: file,
67
- value,
82
+ value: value,
68
83
  };
69
84
  }));
70
85
  return args.generateManifest(entries);
@@ -23,6 +23,7 @@ export declare class FSCodegen {
23
23
  private unsubscribers;
24
24
  private writtenContent;
25
25
  private flushScheduled;
26
+ private flushTimer?;
26
27
  constructor(project: Project, opts: {
27
28
  outDir: string;
28
29
  onWritten?: (opts: Set<string>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"fs-codegen.d.ts","sourceRoot":"","sources":["../../../src/node/utils/fs-codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAK/C,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB,CAAA;AAED,KAAK,aAAa,GAAG;IACnB,QAAQ,IAAI,OAAO,CAAC,WAAW,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,CAAA;IACvD,SAAS,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAA;CAC7C,CAAA;AAED;;GAEG;AACH,qBAAa,SAAS;IAWX,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE;QACX,MAAM,EAAE,MAAM,CAAA;QACd,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;KACxC;IAdI,MAAM,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,cAAc,CAA0C;IAChE,OAAO,CAAC,aAAa,CAAwB;IAE7C,OAAO,CAAC,cAAc,CAA4B;IAElD,OAAO,CAAC,cAAc,CAAQ;gBAGrB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE;QACX,MAAM,EAAE,MAAM,CAAA;QACd,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;KACxC;IAKH,QAAQ,CAAC,SAAS,EAAE,aAAa;IAIjC,YAAY,CAAC,EACX,IAAI,EACJ,QAAQ,EACR,SAAS,GACV,EAAE;QACD,IAAI,EAAE,MAAM,CAAA;QACZ,QAAQ,EAAE,CAAC,MAAM,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAAA;QACxE,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAA;KACjD;YAaa,YAAY;IAM1B,aAAa;IAWP,WAAW;IA2BX,GAAG;YAKK,KAAK;IA2BnB,IAAI;CAIL"}
1
+ {"version":3,"file":"fs-codegen.d.ts","sourceRoot":"","sources":["../../../src/node/utils/fs-codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAK/C,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB,CAAA;AAED,KAAK,aAAa,GAAG;IACnB,QAAQ,IAAI,OAAO,CAAC,WAAW,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,CAAA;IACvD,SAAS,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAA;CAC7C,CAAA;AAED;;GAEG;AACH,qBAAa,SAAS;IAYX,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE;QACX,MAAM,EAAE,MAAM,CAAA;QACd,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;KACxC;IAfI,MAAM,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,cAAc,CAA0C;IAChE,OAAO,CAAC,aAAa,CAAwB;IAE7C,OAAO,CAAC,cAAc,CAA4B;IAElD,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,UAAU,CAAC,CAA+B;gBAGzC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE;QACX,MAAM,EAAE,MAAM,CAAA;QACd,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;KACxC;IAKH,QAAQ,CAAC,SAAS,EAAE,aAAa;IAIjC,YAAY,CAAC,EACX,IAAI,EACJ,QAAQ,EACR,SAAS,GACV,EAAE;QACD,IAAI,EAAE,MAAM,CAAA;QACZ,QAAQ,EAAE,CAAC,MAAM,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAAA;QACxE,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAA;KACjD;YAaa,YAAY;IAM1B,aAAa;IAYP,WAAW;IA2BX,GAAG;YAKK,KAAK;IA+BnB,IAAI;CAOL"}
@@ -14,6 +14,7 @@ export class FSCodegen {
14
14
  unsubscribers = new Set();
15
15
  writtenContent = new Map();
16
16
  flushScheduled = false;
17
+ flushTimer;
17
18
  constructor(project, opts) {
18
19
  this.project = project;
19
20
  this.opts = opts;
@@ -43,9 +44,10 @@ export class FSCodegen {
43
44
  return;
44
45
  }
45
46
  this.flushScheduled = true;
46
- setTimeout(() => {
47
+ this.flushTimer = setTimeout(() => {
47
48
  this.flushScheduled = false;
48
- this.flush();
49
+ this.flushTimer = undefined;
50
+ void this.flush();
49
51
  }, 100);
50
52
  }
51
53
  async runAndWatch() {
@@ -77,6 +79,10 @@ export class FSCodegen {
77
79
  await this.flush();
78
80
  }
79
81
  async flush() {
82
+ if (this.flushTimer)
83
+ clearTimeout(this.flushTimer);
84
+ this.flushTimer = undefined;
85
+ this.flushScheduled = false;
80
86
  const files = Array.from(this.generatorFiles.values()).flat();
81
87
  const existing = (await globby(join(this.outDir, "/**/*"))).map((path) => resolve(this.project.rootDir, path));
82
88
  const written = new Set();
@@ -99,6 +105,10 @@ export class FSCodegen {
99
105
  this.opts.onWritten?.(written);
100
106
  }
101
107
  stop() {
108
+ if (this.flushTimer)
109
+ clearTimeout(this.flushTimer);
110
+ this.flushTimer = undefined;
111
+ this.flushScheduled = false;
102
112
  this.unsubscribers.forEach((unsub) => unsub());
103
113
  this.unsubscribers.clear();
104
114
  }
@@ -24,6 +24,7 @@ export declare class StatefulLog<TState> {
24
24
  hasWarnings: boolean;
25
25
  hasErrors: boolean;
26
26
  startTime: number;
27
+ endTime?: number;
27
28
  label: string;
28
29
  shortName: string;
29
30
  status: LogStatus;
@@ -39,6 +40,7 @@ export declare class StatefulLog<TState> {
39
40
  copy(log: StatefulLog<any>): void;
40
41
  flush(): void;
41
42
  getDuration(): number;
43
+ startTimer(): void;
42
44
  captureLog(): LogGroupOrEntry[];
43
45
  subscribe(fn: (self: StatefulLog<TState>) => void): () => void;
44
46
  setState(state: TState): void;
@@ -1 +1 @@
1
- {"version":3,"file":"stateful-log.d.ts","sourceRoot":"","sources":["../../../src/node/utils/stateful-log.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stateful-log.d.ts","sourceRoot":"","sources":["../../../src/node/utils/stateful-log.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export class StatefulLog {
10
10
  hasWarnings = false;
11
11
  hasErrors = false;
12
12
  startTime = Date.now();
13
+ endTime;
13
14
  label;
14
15
  shortName;
15
16
  status = "working";
@@ -27,6 +28,7 @@ export class StatefulLog {
27
28
  this.hasErrors = false;
28
29
  this.hasWarnings = false;
29
30
  this.startTime = Date.now();
31
+ this.endTime = undefined;
30
32
  this.notifySubscribers();
31
33
  }
32
34
  clear() {
@@ -35,6 +37,7 @@ export class StatefulLog {
35
37
  this.currentGroup = undefined;
36
38
  this.hasErrors = false;
37
39
  this.hasWarnings = false;
40
+ this.endTime = undefined;
38
41
  this.notifySubscribers();
39
42
  }
40
43
  copy(log) {
@@ -44,6 +47,7 @@ export class StatefulLog {
44
47
  this.hasErrors = log.hasErrors;
45
48
  this.hasWarnings = log.hasWarnings;
46
49
  this.startTime = log.startTime;
50
+ this.endTime = log.endTime;
47
51
  this.status = log.status;
48
52
  this.state = log.state;
49
53
  this.notifySubscribers();
@@ -53,11 +57,17 @@ export class StatefulLog {
53
57
  this.notifySubscribers();
54
58
  }
55
59
  getDuration() {
60
+ if (this.endTime !== undefined)
61
+ return this.endTime - this.startTime;
56
62
  const last = this.entries[this.entries.length - 1];
57
63
  if (!last)
58
64
  return 0;
59
65
  return last.time - this.startTime;
60
66
  }
67
+ startTimer() {
68
+ this.startTime = Date.now();
69
+ this.endTime = undefined;
70
+ }
61
71
  captureLog() {
62
72
  const entries = this.entries;
63
73
  return [...entries];
@@ -73,15 +83,13 @@ export class StatefulLog {
73
83
  this.notifySubscribers();
74
84
  }
75
85
  setWorking(working, status) {
76
- if (status) {
77
- this.setStatus(status);
78
- }
79
86
  if (working) {
80
- this.setStatus("working");
87
+ this.endTime = undefined;
81
88
  }
82
89
  else {
83
- this.setStatus(this.hasErrors ? "error" : this.hasWarnings ? "warn" : "success");
90
+ this.endTime = Date.now();
84
91
  }
92
+ this.setStatus(working ? "working" : (status ?? (this.hasErrors ? "error" : this.hasWarnings ? "warn" : "success")));
85
93
  }
86
94
  setStatus(status) {
87
95
  this.status = status;
@@ -95,9 +103,9 @@ export class StatefulLog {
95
103
  this.notifySubscribers();
96
104
  }
97
105
  verbose(...messages) {
98
- if (cliMode.verbose) {
99
- this.addLogEntry("verbose", ...messages);
100
- }
106
+ if (!cliMode.verbose)
107
+ return;
108
+ this.addLogEntry("verbose", ...messages);
101
109
  this.notifySubscribers();
102
110
  }
103
111
  info(...messages) {
@@ -119,7 +127,7 @@ export class StatefulLog {
119
127
  }
120
128
  fail(...messages) {
121
129
  this.addLogEntry("fail", ...messages);
122
- this.hasWarnings = true;
130
+ this.hasErrors = true;
123
131
  this.notifySubscribers();
124
132
  }
125
133
  success(...messages) {
@@ -255,7 +263,6 @@ export class StatefulLog {
255
263
  else {
256
264
  this.entries.push(entry);
257
265
  }
258
- this.notifySubscribers();
259
266
  }
260
267
  else {
261
268
  console.log(chalk.grey(`[${this.shortName}]`), ...messages);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eddev",
3
- "version": "2.3.16",
3
+ "version": "2.3.18",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "type": "module",