@plumix/core 0.1.4 → 0.2.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/admin-bar/collect.d.ts.map +1 -1
- package/dist/admin-bar/collect.js +1 -15
- package/dist/admin-bar/collect.js.map +1 -1
- package/dist/admin-bar/styles.d.ts.map +1 -1
- package/dist/admin-bar/styles.js +1 -11
- package/dist/admin-bar/styles.js.map +1 -1
- package/dist/cli/worker-codegen.d.ts.map +1 -1
- package/dist/cli/worker-codegen.js +3 -5
- package/dist/cli/worker-codegen.js.map +1 -1
- package/dist/context/app.d.ts +8 -0
- package/dist/context/app.d.ts.map +1 -1
- package/dist/context/app.js +7 -0
- package/dist/context/app.js.map +1 -1
- package/dist/context/debug.d.ts +25 -0
- package/dist/context/debug.d.ts.map +1 -0
- package/dist/context/debug.js +13 -0
- package/dist/context/debug.js.map +1 -0
- package/dist/context/stores.d.ts +2 -0
- package/dist/context/stores.d.ts.map +1 -1
- package/dist/context/stores.js.map +1 -1
- package/dist/css-tag.d.ts +2 -0
- package/dist/css-tag.d.ts.map +1 -0
- package/dist/css-tag.js +13 -0
- package/dist/css-tag.js.map +1 -0
- package/dist/db/libsql.d.ts.map +1 -1
- package/dist/db/libsql.js +13 -2
- package/dist/db/libsql.js.map +1 -1
- package/dist/debug-bar/collect.d.ts.map +1 -1
- package/dist/debug-bar/collect.js +1 -15
- package/dist/debug-bar/collect.js.map +1 -1
- package/dist/debug-bar/collector.d.ts +9 -0
- package/dist/debug-bar/collector.d.ts.map +1 -0
- package/dist/debug-bar/collector.js +80 -0
- package/dist/debug-bar/collector.js.map +1 -0
- package/dist/debug-bar/component.d.ts.map +1 -1
- package/dist/debug-bar/component.js +15 -2
- package/dist/debug-bar/component.js.map +1 -1
- package/dist/debug-bar/core-panels.d.ts.map +1 -1
- package/dist/debug-bar/core-panels.js +12 -1
- package/dist/debug-bar/core-panels.js.map +1 -1
- package/dist/debug-bar/db-query.d.ts +21 -0
- package/dist/debug-bar/db-query.d.ts.map +1 -0
- package/dist/debug-bar/db-query.js +23 -0
- package/dist/debug-bar/db-query.js.map +1 -0
- package/dist/debug-bar/format-param.d.ts +14 -0
- package/dist/debug-bar/format-param.d.ts.map +1 -0
- package/dist/debug-bar/format-param.js +27 -0
- package/dist/debug-bar/format-param.js.map +1 -0
- package/dist/debug-bar/highlight-sql.d.ts +11 -0
- package/dist/debug-bar/highlight-sql.d.ts.map +1 -0
- package/dist/debug-bar/highlight-sql.js +82 -0
- package/dist/debug-bar/highlight-sql.js.map +1 -0
- package/dist/debug-bar/panels/app.d.ts +8 -0
- package/dist/debug-bar/panels/app.d.ts.map +1 -0
- package/dist/debug-bar/panels/app.js +32 -0
- package/dist/debug-bar/panels/app.js.map +1 -0
- package/dist/debug-bar/panels/database.d.ts +9 -0
- package/dist/debug-bar/panels/database.d.ts.map +1 -0
- package/dist/debug-bar/panels/database.js +33 -0
- package/dist/debug-bar/panels/database.js.map +1 -0
- package/dist/debug-bar/panels/request.d.ts +2 -2
- package/dist/debug-bar/panels/request.d.ts.map +1 -1
- package/dist/debug-bar/panels/request.js +24 -11
- package/dist/debug-bar/panels/request.js.map +1 -1
- package/dist/debug-bar/panels/template.d.ts +17 -0
- package/dist/debug-bar/panels/template.d.ts.map +1 -0
- package/dist/debug-bar/panels/template.js +26 -0
- package/dist/debug-bar/panels/template.js.map +1 -0
- package/dist/debug-bar/panels/timeline.d.ts +11 -0
- package/dist/debug-bar/panels/timeline.d.ts.map +1 -0
- package/dist/debug-bar/panels/timeline.js +46 -0
- package/dist/debug-bar/panels/timeline.js.map +1 -0
- package/dist/debug-bar/primitives.d.ts +12 -3
- package/dist/debug-bar/primitives.d.ts.map +1 -1
- package/dist/debug-bar/primitives.js +17 -1
- package/dist/debug-bar/primitives.js.map +1 -1
- package/dist/debug-bar/styles.d.ts.map +1 -1
- package/dist/debug-bar/styles.js +234 -17
- package/dist/debug-bar/styles.js.map +1 -1
- package/dist/debug-bar/template-node-label.d.ts +6 -0
- package/dist/debug-bar/template-node-label.d.ts.map +1 -0
- package/dist/debug-bar/template-node-label.js +20 -0
- package/dist/debug-bar/template-node-label.js.map +1 -0
- package/dist/debug-bar/timeline-geometry.d.ts +30 -0
- package/dist/debug-bar/timeline-geometry.d.ts.map +1 -0
- package/dist/debug-bar/timeline-geometry.js +26 -0
- package/dist/debug-bar/timeline-geometry.js.map +1 -0
- package/dist/debug-bar/timeline-model.d.ts +23 -0
- package/dist/debug-bar/timeline-model.d.ts.map +1 -0
- package/dist/debug-bar/timeline-model.js +34 -0
- package/dist/debug-bar/timeline-model.js.map +1 -0
- package/dist/debug-bar/trace-libsql.d.ts +18 -0
- package/dist/debug-bar/trace-libsql.d.ts.map +1 -0
- package/dist/debug-bar/trace-libsql.js +42 -0
- package/dist/debug-bar/trace-libsql.js.map +1 -0
- package/dist/debug-bar/types.d.ts +6 -0
- package/dist/debug-bar/types.d.ts.map +1 -1
- package/dist/hooks/registry.d.ts +14 -3
- package/dist/hooks/registry.d.ts.map +1 -1
- package/dist/hooks/registry.js +22 -0
- package/dist/hooks/registry.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/plugin/manifest.d.ts +3 -0
- package/dist/plugin/manifest.d.ts.map +1 -1
- package/dist/plugin/manifest.js +1 -0
- package/dist/plugin/manifest.js.map +1 -1
- package/dist/plugin/register.d.ts.map +1 -1
- package/dist/plugin/register.js +1 -0
- package/dist/plugin/register.js.map +1 -1
- package/dist/route/render/render-template.d.ts +1 -1
- package/dist/route/render/render-template.d.ts.map +1 -1
- package/dist/route/render/render-template.js +17 -1
- package/dist/route/render/render-template.js.map +1 -1
- package/dist/runtime/app.d.ts +8 -5
- package/dist/runtime/app.d.ts.map +1 -1
- package/dist/runtime/app.js +1 -1
- package/dist/runtime/app.js.map +1 -1
- package/dist/runtime/dispatcher.d.ts.map +1 -1
- package/dist/runtime/dispatcher.js +4 -2
- package/dist/runtime/dispatcher.js.map +1 -1
- package/dist/test/dispatcher.d.ts +3 -0
- package/dist/test/dispatcher.d.ts.map +1 -1
- package/dist/test/dispatcher.js +8 -2
- package/dist/test/dispatcher.js.map +1 -1
- package/dist/test/harness.d.ts.map +1 -1
- package/dist/test/harness.js +12 -2
- package/dist/test/harness.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collect.d.ts","sourceRoot":"","sources":["../../src/admin-bar/collect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjE,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,gBAAgB,GACpB,SAAS,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"collect.d.ts","sourceRoot":"","sources":["../../src/admin-bar/collect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjE,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,gBAAgB,GACpB,SAAS,YAAY,EAAE,CAGzB"}
|
|
@@ -1,19 +1,5 @@
|
|
|
1
1
|
export function collectAdminBarNodes(hooks, ctx) {
|
|
2
|
-
|
|
3
|
-
for (const { fn, plugin } of hooks.getFilterHandlers("admin_bar:nodes")) {
|
|
4
|
-
try {
|
|
5
|
-
const next = fn(nodes, ctx);
|
|
6
|
-
if (Array.isArray(next)) {
|
|
7
|
-
nodes = next;
|
|
8
|
-
}
|
|
9
|
-
else {
|
|
10
|
-
console.error(`[plumix] admin_bar:nodes handler returned non-array plugin=${plugin ?? "core"}; contribution discarded`);
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
catch (error) {
|
|
14
|
-
console.error(`[plumix] admin_bar:nodes handler failed plugin=${plugin ?? "core"}`, error);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
2
|
+
const nodes = hooks.applyFilterIsolated("admin_bar:nodes", [], ctx);
|
|
17
3
|
return dedupeById(nodes);
|
|
18
4
|
}
|
|
19
5
|
function dedupeById(nodes) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collect.js","sourceRoot":"","sources":["../../src/admin-bar/collect.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,oBAAoB,CAClC,KAAmB,EACnB,GAAqB;IAErB,
|
|
1
|
+
{"version":3,"file":"collect.js","sourceRoot":"","sources":["../../src/admin-bar/collect.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,oBAAoB,CAClC,KAAmB,EACnB,GAAqB;IAErB,MAAM,KAAK,GAAG,KAAK,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACpE,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,UAAU,CAAC,KAA8B;IAChD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CACV,0CAA0C,IAAI,CAAC,EAAE,2BAA2B,CAC7E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AAC5B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/admin-bar/styles.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/admin-bar/styles.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,aAAa,QA+LzB,CAAC;AAEF,eAAO,MAAM,yBAAyB,QASrC,CAAC;AAOF,eAAO,MAAM,wBAAwB,8uBAsBpC,CAAC;AAIF,eAAO,MAAM,sBAAsB,wCAAwC,CAAC"}
|
package/dist/admin-bar/styles.js
CHANGED
|
@@ -5,17 +5,7 @@
|
|
|
5
5
|
// (see [[plumix-admin-bar/issue-668]] for rationale). Multi-script glyph
|
|
6
6
|
// rendering falls through `system-ui` to the OS UI font; missing-glyph
|
|
7
7
|
// fallback is the browser's responsibility.
|
|
8
|
-
|
|
9
|
-
// stylelint syntax-highlight + lint the CSS source. CSS Modules don't fit
|
|
10
|
-
// because the bar is built with tsc-only and emits its CSS inline in the
|
|
11
|
-
// SSR response, not as a separate stylesheet request.
|
|
12
|
-
function css(strings, ...values) {
|
|
13
|
-
let out = strings[0] ?? "";
|
|
14
|
-
for (let i = 0; i < values.length; i++) {
|
|
15
|
-
out += values[i] + (strings[i + 1] ?? "");
|
|
16
|
-
}
|
|
17
|
-
return out;
|
|
18
|
-
}
|
|
8
|
+
import { css } from "../css-tag.js";
|
|
19
9
|
export const ADMIN_BAR_CSS = css `
|
|
20
10
|
.plumix-admin-bar {
|
|
21
11
|
position: fixed;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/admin-bar/styles.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,2EAA2E;AAC3E,wEAAwE;AACxE,yEAAyE;AACzE,yEAAyE;AACzE,uEAAuE;AACvE,4CAA4C;AAE5C,
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/admin-bar/styles.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,2EAA2E;AAC3E,wEAAwE;AACxE,yEAAyE;AACzE,yEAAyE;AACzE,uEAAuE;AACvE,4CAA4C;AAE5C,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+L/B,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAA;;;;;;;;;CAS3C,CAAC;AAEF,uEAAuE;AACvE,0EAA0E;AAC1E,wEAAwE;AACxE,uEAAuE;AACvE,oEAAoE;AACpE,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;;CAsBvC,CAAC;AAEF,0EAA0E;AAC1E,yEAAyE;AACzE,MAAM,CAAC,MAAM,sBAAsB,GAAG,qCAAqC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-codegen.d.ts","sourceRoot":"","sources":["../../src/cli/worker-codegen.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,oBAAoB,CAAC,EACnC,YAAY,GACb,EAAE,mBAAmB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"worker-codegen.d.ts","sourceRoot":"","sources":["../../src/cli/worker-codegen.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,oBAAoB,CAAC,EACnC,YAAY,GACb,EAAE,mBAAmB,GAAG,MAAM,CA2C9B"}
|
|
@@ -17,13 +17,11 @@ export function generateWorkerSource({ configModule, }) {
|
|
|
17
17
|
// when nothing is contributed, so this line is inert for most sites.
|
|
18
18
|
'export * from "virtual:plumix/worker-exports";',
|
|
19
19
|
"",
|
|
20
|
-
//
|
|
21
|
-
//
|
|
22
|
-
//
|
|
23
|
-
// undefined, which buildApp coerces to false.
|
|
20
|
+
// buildApp derives the dev-CSRF opt-in from `process.env.PLUMIX_DEV` (the
|
|
21
|
+
// single dev signal the plumix Vite plugin statically replaces), so the
|
|
22
|
+
// worker no longer passes it — see RuntimeContext.devCsrfLocalhost.
|
|
24
23
|
"const appPromise = buildApp(config, {",
|
|
25
24
|
" assetManifest,",
|
|
26
|
-
" devCsrfLocalhost: import.meta.env.DEV,",
|
|
27
25
|
"});",
|
|
28
26
|
"let fetchHandler;",
|
|
29
27
|
"let scheduledHandler;",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-codegen.js","sourceRoot":"","sources":["../../src/cli/worker-codegen.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,oBAAoB,CAAC,EACnC,YAAY,GACQ;IACpB,MAAM,KAAK,GAAG;QACZ,uCAAuC;QACvC,qDAAqD;QACrD,EAAE;QACF,oCAAoC;QACpC,oEAAoE;QACpE,oEAAoE;QACpE,kEAAkE;QAClE,oEAAoE;QACpE,4DAA4D;QAC5D,sBAAsB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG;QACrD,EAAE;QACF,qEAAqE;QACrE,qEAAqE;QACrE,oEAAoE;QACpE,qEAAqE;QACrE,gDAAgD;QAChD,EAAE;QACF,
|
|
1
|
+
{"version":3,"file":"worker-codegen.js","sourceRoot":"","sources":["../../src/cli/worker-codegen.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,oBAAoB,CAAC,EACnC,YAAY,GACQ;IACpB,MAAM,KAAK,GAAG;QACZ,uCAAuC;QACvC,qDAAqD;QACrD,EAAE;QACF,oCAAoC;QACpC,oEAAoE;QACpE,oEAAoE;QACpE,kEAAkE;QAClE,oEAAoE;QACpE,4DAA4D;QAC5D,sBAAsB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG;QACrD,EAAE;QACF,qEAAqE;QACrE,qEAAqE;QACrE,oEAAoE;QACpE,qEAAqE;QACrE,gDAAgD;QAChD,EAAE;QACF,0EAA0E;QAC1E,wEAAwE;QACxE,oEAAoE;QACpE,uCAAuC;QACvC,kBAAkB;QAClB,KAAK;QACL,mBAAmB;QACnB,uBAAuB;QACvB,EAAE;QACF,kBAAkB;QAClB,oCAAoC;QACpC,mCAAmC;QACnC,6DAA6D;QAC7D,6CAA6C;QAC7C,MAAM;QACN,sCAAsC;QACtC,mCAAmC;QACnC,uEAAuE;QACvE,oEAAoE;QACpE,MAAM;QACN,IAAI;QACJ,EAAE;KACH,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
package/dist/context/app.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ import type { ResolvedEntity } from "../route/current.js";
|
|
|
15
15
|
import type { OAuthProviderSummary } from "../runtime/app.js";
|
|
16
16
|
import type { PlumixEnv } from "../runtime/bindings.js";
|
|
17
17
|
import type { AssetsBinding, ConnectedCache, ConnectedObjectStorage, ImageDelivery } from "../runtime/slots.js";
|
|
18
|
+
import type { DebugCollector } from "./debug.js";
|
|
18
19
|
export type CoreSchema = typeof coreSchema;
|
|
19
20
|
export type Db<TSchema extends Record<string, unknown> = CoreSchema> = BaseSQLiteDatabase<"async" | "sync", unknown, TSchema>;
|
|
20
21
|
export interface AuthenticatedUser {
|
|
@@ -96,6 +97,13 @@ export interface AppContextBase<TSchema extends Record<string, unknown> = CoreSc
|
|
|
96
97
|
*/
|
|
97
98
|
readonly shortcodes: ShortcodeRegistry;
|
|
98
99
|
readonly logger: Logger;
|
|
100
|
+
/**
|
|
101
|
+
* Request-scoped debug collector. Core and plugins record per-request data
|
|
102
|
+
* for the dev debug bar via `ctx.debug.record`/`span`. Always present: the
|
|
103
|
+
* real collector in dev, {@link NOOP_DEBUG} in prod (so call sites are safe
|
|
104
|
+
* and the debug-bar module tree-shakes out of prod builds).
|
|
105
|
+
*/
|
|
106
|
+
readonly debug: DebugCollector;
|
|
99
107
|
readonly auth: AuthNamespace;
|
|
100
108
|
/**
|
|
101
109
|
* Resolved request authenticator — same instance the dispatcher
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/context/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,KAAK,UAAU,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,aAAa,EACd,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/context/app.ts"],"names":[],"mappings":"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"}
|
package/dist/context/app.js
CHANGED
|
@@ -2,8 +2,10 @@ import { createBlockRegistry } from "@plumix/blocks";
|
|
|
2
2
|
import { defaultAuthenticator } from "../auth/authenticator.js";
|
|
3
3
|
import { resolveMailer } from "../auth/mailer/resolve.js";
|
|
4
4
|
import { createCapabilityResolver } from "../auth/rbac.js";
|
|
5
|
+
import { createDebugCollector } from "../debug-bar/collector.js";
|
|
5
6
|
import { resolveLocales } from "../i18n/locale-registry.js";
|
|
6
7
|
import { resolveLocale } from "../i18n/resolve-locale.js";
|
|
8
|
+
import { NOOP_DEBUG } from "./debug.js";
|
|
7
9
|
import { ContextError } from "./errors.js";
|
|
8
10
|
const EMPTY_BLOCK_REGISTRY = createBlockRegistry([]);
|
|
9
11
|
const EMPTY_MARK_LIST = Object.freeze([]);
|
|
@@ -106,6 +108,11 @@ export function createAppContext(args) {
|
|
|
106
108
|
origin: args.origin ?? new URL(args.request.url).origin,
|
|
107
109
|
basePath: args.basePath ?? "",
|
|
108
110
|
debugBar: args.debugBar,
|
|
111
|
+
// Real collector only in dev; `process.env.PLUMIX_DEV` is Vite-empty in a
|
|
112
|
+
// build, so the prod branch keeps NOOP_DEBUG and tree-shakes the rest.
|
|
113
|
+
debug: process.env.PLUMIX_DEV
|
|
114
|
+
? createDebugCollector(args.debugBar)
|
|
115
|
+
: NOOP_DEBUG,
|
|
109
116
|
siteName: args.siteName,
|
|
110
117
|
};
|
|
111
118
|
// Spread plugin-contributed entries onto the base. The cast is the
|
package/dist/context/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/context/app.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/context/app.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { TraceSpan } from "./stores.js";
|
|
2
|
+
/**
|
|
3
|
+
* Request-scoped debug collector. Core and plugins record per-request data
|
|
4
|
+
* under a namespace (a panel id) and read it back when their panel renders.
|
|
5
|
+
* Two implementations: {@link NOOP_DEBUG} (always present in core, prod-safe)
|
|
6
|
+
* and the real accumulating collector in the dev-gated debug-bar module.
|
|
7
|
+
*/
|
|
8
|
+
export interface DebugCollector {
|
|
9
|
+
/** Append an entry under `namespace` (the recording panel's id). */
|
|
10
|
+
record(namespace: string, entry: unknown): void;
|
|
11
|
+
/** Time `fn`, record a span, and return `fn`'s result unchanged. */
|
|
12
|
+
span<T>(name: string, fn: () => T): T;
|
|
13
|
+
/** Entries recorded under `namespace`, in record order. */
|
|
14
|
+
get(namespace: string): readonly unknown[];
|
|
15
|
+
/** The collected span tree (the Timeline panel consumes this). */
|
|
16
|
+
getSpans(): readonly TraceSpan[];
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* The permanent no-op collector. Lives in core proper so plugin `ctx.debug`
|
|
20
|
+
* call sites stay safe in production: `record` drops the entry, `span` calls
|
|
21
|
+
* through and returns the result, reads are empty. The real collector is
|
|
22
|
+
* swapped in only under the dev gate.
|
|
23
|
+
*/
|
|
24
|
+
export declare const NOOP_DEBUG: DebugCollector;
|
|
25
|
+
//# sourceMappingURL=debug.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../src/context/debug.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,oEAAoE;IACpE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAChD,oEAAoE;IACpE,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IACtC,2DAA2D;IAC3D,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,OAAO,EAAE,CAAC;IAC3C,kEAAkE;IAClE,QAAQ,IAAI,SAAS,SAAS,EAAE,CAAC;CAClC;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE,cAKxB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The permanent no-op collector. Lives in core proper so plugin `ctx.debug`
|
|
3
|
+
* call sites stay safe in production: `record` drops the entry, `span` calls
|
|
4
|
+
* through and returns the result, reads are empty. The real collector is
|
|
5
|
+
* swapped in only under the dev gate.
|
|
6
|
+
*/
|
|
7
|
+
export const NOOP_DEBUG = {
|
|
8
|
+
record: () => undefined,
|
|
9
|
+
span: (_name, fn) => fn(),
|
|
10
|
+
get: () => [],
|
|
11
|
+
getSpans: () => [],
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=debug.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug.js","sourceRoot":"","sources":["../../src/context/debug.ts"],"names":[],"mappings":"AAmBA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAmB;IACxC,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS;IACvB,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;IACzB,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE;IACb,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;CACnB,CAAC"}
|
package/dist/context/stores.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ export declare const hookStore: AsyncLocalStorage<HookFrame>;
|
|
|
9
9
|
export interface TraceSpan {
|
|
10
10
|
readonly name: string;
|
|
11
11
|
readonly startedAt: number;
|
|
12
|
+
/** Wall-clock duration; set when the span's work completes. */
|
|
13
|
+
durationMs: number;
|
|
12
14
|
readonly children: TraceSpan[];
|
|
13
15
|
readonly annotations: Record<string, unknown>;
|
|
14
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stores.d.ts","sourceRoot":"","sources":["../../src/context/stores.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C,eAAO,MAAM,YAAY,+BAAsC,CAAC;AAEhE,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,eAAO,MAAM,SAAS,8BAAqC,CAAC;AAE5D,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/C;AAED,eAAO,MAAM,UAAU,8BAAqC,CAAC;AAE7D,eAAO,MAAM,OAAO,4BAAmC,CAAC;AAExD,wBAAgB,UAAU,IAAI,UAAU,CAIvC;AAED,wBAAgB,aAAa,IAAI,UAAU,GAAG,IAAI,CAEjD"}
|
|
1
|
+
{"version":3,"file":"stores.d.ts","sourceRoot":"","sources":["../../src/context/stores.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C,eAAO,MAAM,YAAY,+BAAsC,CAAC;AAEhE,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,eAAO,MAAM,SAAS,8BAAqC,CAAC;AAE5D,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/C;AAED,eAAO,MAAM,UAAU,8BAAqC,CAAC;AAE7D,eAAO,MAAM,OAAO,4BAAmC,CAAC;AAExD,wBAAgB,UAAU,IAAI,UAAU,CAIvC;AAED,wBAAgB,aAAa,IAAI,UAAU,GAAG,IAAI,CAEjD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stores.js","sourceRoot":"","sources":["../../src/context/stores.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,0EAA0E;AAC1E,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,iBAAiB,EAAc,CAAC;AAOhE,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"stores.js","sourceRoot":"","sources":["../../src/context/stores.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,0EAA0E;AAC1E,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,iBAAiB,EAAc,CAAC;AAOhE,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAa,CAAC;AAW5D,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,iBAAiB,EAAa,CAAC;AAE7D,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAW,CAAC;AAExD,MAAM,UAAU,UAAU;IACxB,MAAM,GAAG,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;IACpC,IAAI,CAAC,GAAG;QAAE,MAAM,YAAY,CAAC,gBAAgB,EAAE,CAAC;IAChD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,YAAY,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC;AACzC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-tag.d.ts","sourceRoot":"","sources":["../src/css-tag.ts"],"names":[],"mappings":"AAKA,wBAAgB,GAAG,CACjB,OAAO,EAAE,oBAAoB,EAC7B,GAAG,MAAM,EAAE,SAAS,MAAM,EAAE,GAC3B,MAAM,CAMR"}
|
package/dist/css-tag.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// No-op tagged-template marker: returns the interpolated string verbatim. Its
|
|
2
|
+
// only job is to let vscode-styled-components + stylelint syntax-highlight and
|
|
3
|
+
// lint the inline CSS the tsc-only bars (admin bar, debug bar) emit — those
|
|
4
|
+
// surfaces have no bundler CSS pipeline, so their styles live as template
|
|
5
|
+
// strings rather than a separate stylesheet request.
|
|
6
|
+
export function css(strings, ...values) {
|
|
7
|
+
let out = strings[0] ?? "";
|
|
8
|
+
for (let i = 0; i < values.length; i++) {
|
|
9
|
+
out += values[i] + (strings[i + 1] ?? "");
|
|
10
|
+
}
|
|
11
|
+
return out;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=css-tag.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-tag.js","sourceRoot":"","sources":["../src/css-tag.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,+EAA+E;AAC/E,4EAA4E;AAC5E,0EAA0E;AAC1E,qDAAqD;AACrD,MAAM,UAAU,GAAG,CACjB,OAA6B,EAC7B,GAAG,MAAyB;IAE5B,IAAI,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/dist/db/libsql.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libsql.d.ts","sourceRoot":"","sources":["../../src/db/libsql.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"libsql.d.ts","sourceRoot":"","sources":["../../src/db/libsql.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAK3D,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;AAEvD,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,qBAAqB,CA4BvE"}
|
package/dist/db/libsql.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { createClient } from "@libsql/client";
|
|
2
2
|
import { drizzle } from "drizzle-orm/libsql";
|
|
3
|
+
import { createDebugSqlLogger } from "../debug-bar/db-query.js";
|
|
4
|
+
import { traceSqlClient } from "../debug-bar/trace-libsql.js";
|
|
3
5
|
import { resolveEnvInput } from "../runtime/env-input.js";
|
|
4
6
|
/**
|
|
5
7
|
* Database adapter for any libSQL-compatible SQLite endpoint. Lives behind
|
|
@@ -21,12 +23,21 @@ export function libsql(config) {
|
|
|
21
23
|
connect: (env, _request, schema) => {
|
|
22
24
|
if (!client) {
|
|
23
25
|
const resolved = resolveEnvInput(config, env);
|
|
24
|
-
|
|
26
|
+
const raw = createClient({
|
|
25
27
|
url: resolved.url,
|
|
26
28
|
authToken: resolved.authToken,
|
|
27
29
|
});
|
|
30
|
+
// Dev-only: time each query as a span for the Timeline panel.
|
|
31
|
+
client = process.env.PLUMIX_DEV ? traceSqlClient(raw) : raw;
|
|
28
32
|
}
|
|
29
|
-
return {
|
|
33
|
+
return {
|
|
34
|
+
db: drizzle(client, {
|
|
35
|
+
schema,
|
|
36
|
+
casing: "snake_case",
|
|
37
|
+
// Dev-only: feed the debug bar's Database panel. Tree-shaken in prod.
|
|
38
|
+
logger: process.env.PLUMIX_DEV ? createDebugSqlLogger() : undefined,
|
|
39
|
+
}),
|
|
40
|
+
};
|
|
30
41
|
},
|
|
31
42
|
};
|
|
32
43
|
}
|
package/dist/db/libsql.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libsql.js","sourceRoot":"","sources":["../../src/db/libsql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAK7C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAsB1D;;;;;;;;GAQG;AACH,MAAM,UAAU,MAAM,CAAC,MAAyB;IAC9C,2EAA2E;IAC3E,qEAAqE;IACrE,0EAA0E;IAC1E,IAAI,MAAmD,CAAC;IACxD,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;YACjC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,EAAE,GAAgB,CAAC,CAAC;gBAC3D,MAAM,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"libsql.js","sourceRoot":"","sources":["../../src/db/libsql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAK7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAsB1D;;;;;;;;GAQG;AACH,MAAM,UAAU,MAAM,CAAC,MAAyB;IAC9C,2EAA2E;IAC3E,qEAAqE;IACrE,0EAA0E;IAC1E,IAAI,MAAmD,CAAC;IACxD,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;YACjC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,EAAE,GAAgB,CAAC,CAAC;gBAC3D,MAAM,GAAG,GAAG,YAAY,CAAC;oBACvB,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,SAAS,EAAE,QAAQ,CAAC,SAAS;iBAC9B,CAAC,CAAC;gBACH,8DAA8D;gBAC9D,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9D,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE;oBAClB,MAAM;oBACN,MAAM,EAAE,YAAY;oBACpB,sEAAsE;oBACtE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,SAAS;iBACpE,CAAC;aACH,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collect.d.ts","sourceRoot":"","sources":["../../src/debug-bar/collect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7C;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,UAAU,EACf,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,GAC5B,SAAS,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"collect.d.ts","sourceRoot":"","sources":["../../src/debug-bar/collect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7C;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,UAAU,EACf,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,GAC5B,SAAS,UAAU,EAAE,CAavB"}
|
|
@@ -10,21 +10,7 @@ const DEFAULT_PANEL_ORDER = Number.MAX_SAFE_INTEGER;
|
|
|
10
10
|
* collector can't see.
|
|
11
11
|
*/
|
|
12
12
|
export function collectDebugPanels(hooks, ctx, disabled) {
|
|
13
|
-
|
|
14
|
-
for (const { fn, plugin } of hooks.getFilterHandlers("debug_bar:panels")) {
|
|
15
|
-
try {
|
|
16
|
-
const next = fn(panels, ctx);
|
|
17
|
-
if (Array.isArray(next)) {
|
|
18
|
-
panels = next;
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
console.error(`[plumix] debug_bar:panels handler returned non-array plugin=${plugin ?? "core"}; contribution discarded`);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
catch (error) {
|
|
25
|
-
console.error(`[plumix] debug_bar:panels handler failed plugin=${plugin ?? "core"}`, error);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
13
|
+
const panels = hooks.applyFilterIsolated("debug_bar:panels", [], ctx);
|
|
28
14
|
const byId = new Map();
|
|
29
15
|
for (const p of panels) {
|
|
30
16
|
if (disabled.has(p.id))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collect.js","sourceRoot":"","sources":["../../src/debug-bar/collect.ts"],"names":[],"mappings":"AAIA,wEAAwE;AACxE,2DAA2D;AAC3D,MAAM,mBAAmB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAEpD;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAmB,EACnB,GAAe,EACf,QAA6B;IAE7B,
|
|
1
|
+
{"version":3,"file":"collect.js","sourceRoot":"","sources":["../../src/debug-bar/collect.ts"],"names":[],"mappings":"AAIA,wEAAwE;AACxE,2DAA2D;AAC3D,MAAM,mBAAmB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAEpD;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAmB,EACnB,GAAe,EACf,QAA6B;IAE7B,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAEtE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,SAAS;QACjC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAC5B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,CAAC,CAAC,CAAC,KAAK,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,mBAAmB,CAAC,CACtE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DebugCollector } from "../context/debug.js";
|
|
2
|
+
import type { DebugBarInput } from "./config.js";
|
|
3
|
+
/**
|
|
4
|
+
* The real, dev-only debug collector. Accumulates per-namespace entries and a
|
|
5
|
+
* span tree for the request. Created only under the dev gate; production uses
|
|
6
|
+
* {@link NOOP_DEBUG} instead, so this module tree-shakes out of prod builds.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createDebugCollector(debugBar: DebugBarInput | undefined): DebugCollector;
|
|
9
|
+
//# sourceMappingURL=collector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/debug-bar/collector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAWjD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAClC,cAAc,CAiEhB"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { NOOP_DEBUG } from "../context/debug.js";
|
|
2
|
+
import { traceStore } from "../context/stores.js";
|
|
3
|
+
import { normalizeDebugBar } from "./config.js";
|
|
4
|
+
function isThenable(value) {
|
|
5
|
+
return (value != null && typeof value.then === "function");
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* The real, dev-only debug collector. Accumulates per-namespace entries and a
|
|
9
|
+
* span tree for the request. Created only under the dev gate; production uses
|
|
10
|
+
* {@link NOOP_DEBUG} instead, so this module tree-shakes out of prod builds.
|
|
11
|
+
*/
|
|
12
|
+
export function createDebugCollector(debugBar) {
|
|
13
|
+
const { enabled, disabled } = normalizeDebugBar(debugBar);
|
|
14
|
+
// Globally disabled in dev: skip all collection overhead, not just render.
|
|
15
|
+
if (!enabled)
|
|
16
|
+
return NOOP_DEBUG;
|
|
17
|
+
const entries = new Map();
|
|
18
|
+
const roots = [];
|
|
19
|
+
return {
|
|
20
|
+
record(namespace, entry) {
|
|
21
|
+
// A disabled panel stops collecting too (not just rendering): its
|
|
22
|
+
// namespace is its panel id, so denylisted namespaces drop at the source.
|
|
23
|
+
if (disabled.has(namespace))
|
|
24
|
+
return;
|
|
25
|
+
const bucket = entries.get(namespace);
|
|
26
|
+
if (bucket)
|
|
27
|
+
bucket.push(entry);
|
|
28
|
+
else
|
|
29
|
+
entries.set(namespace, [entry]);
|
|
30
|
+
},
|
|
31
|
+
span(name, fn) {
|
|
32
|
+
const startedAt = Date.now();
|
|
33
|
+
const span = {
|
|
34
|
+
name,
|
|
35
|
+
startedAt,
|
|
36
|
+
durationMs: 0,
|
|
37
|
+
children: [],
|
|
38
|
+
annotations: {},
|
|
39
|
+
};
|
|
40
|
+
// Attach to the enclosing span (via AsyncLocalStorage) so nesting
|
|
41
|
+
// reflects call structure; top-level spans become roots.
|
|
42
|
+
const parent = traceStore.getStore();
|
|
43
|
+
if (parent)
|
|
44
|
+
parent.children.push(span);
|
|
45
|
+
else
|
|
46
|
+
roots.push(span);
|
|
47
|
+
const stamp = () => {
|
|
48
|
+
span.durationMs = Date.now() - startedAt;
|
|
49
|
+
};
|
|
50
|
+
let result;
|
|
51
|
+
try {
|
|
52
|
+
result = traceStore.run(span, fn);
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
stamp();
|
|
56
|
+
throw error;
|
|
57
|
+
}
|
|
58
|
+
// Await async work before stamping so I/O time is measured, not just the
|
|
59
|
+
// synchronous prelude. Nesting already survives awaits via ALS.
|
|
60
|
+
if (isThenable(result)) {
|
|
61
|
+
return result.then((value) => {
|
|
62
|
+
stamp();
|
|
63
|
+
return value;
|
|
64
|
+
}, (error) => {
|
|
65
|
+
stamp();
|
|
66
|
+
throw error;
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
stamp();
|
|
70
|
+
return result;
|
|
71
|
+
},
|
|
72
|
+
get(namespace) {
|
|
73
|
+
return entries.get(namespace) ?? [];
|
|
74
|
+
},
|
|
75
|
+
getSpans() {
|
|
76
|
+
return roots;
|
|
77
|
+
},
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=collector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collector.js","sourceRoot":"","sources":["../../src/debug-bar/collector.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,CACL,KAAK,IAAI,IAAI,IAAI,OAAQ,KAA8B,CAAC,IAAI,KAAK,UAAU,CAC5E,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAAmC;IAEnC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC1D,2EAA2E;IAC3E,IAAI,CAAC,OAAO;QAAE,OAAO,UAAU,CAAC;IAEhC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC7C,MAAM,KAAK,GAAgB,EAAE,CAAC;IAE9B,OAAO;QACL,MAAM,CAAC,SAAS,EAAE,KAAK;YACrB,kEAAkE;YAClE,0EAA0E;YAC1E,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;gBAAE,OAAO;YACpC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACtC,IAAI,MAAM;gBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;gBAC1B,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,EAAE;YACX,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAc;gBACtB,IAAI;gBACJ,SAAS;gBACT,UAAU,EAAE,CAAC;gBACb,QAAQ,EAAE,EAAE;gBACZ,WAAW,EAAE,EAAE;aAChB,CAAC;YACF,kEAAkE;YAClE,yDAAyD;YACzD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,MAAM;gBAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;gBAClC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,MAAM,KAAK,GAAG,GAAS,EAAE;gBACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC3C,CAAC,CAAC;YACF,IAAI,MAA6B,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,KAAK,EAAE,CAAC;gBACR,MAAM,KAAK,CAAC;YACd,CAAC;YACD,yEAAyE;YACzE,gEAAgE;YAChE,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvB,OAAO,MAAM,CAAC,IAAI,CAChB,CAAC,KAAK,EAAE,EAAE;oBACR,KAAK,EAAE,CAAC;oBACR,OAAO,KAAK,CAAC;gBACf,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;oBACR,KAAK,EAAE,CAAC;oBACR,MAAM,KAAK,CAAC;gBACd,CAAC,CACuB,CAAC;YAC7B,CAAC;YACD,KAAK,EAAE,CAAC;YACR,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,GAAG,CAAC,SAAS;YACX,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;QACD,QAAQ;YACN,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/debug-bar/component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/debug-bar/component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAuBpD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,EAC7B,GAAG,GACJ,EAAE;IACD,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;CAC1B,GAAG,SAAS,CAkDZ"}
|
|
@@ -1,8 +1,21 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { renderToStaticMarkup } from "react-dom/server";
|
|
2
3
|
import { labelSourceText } from "../i18n/label.js";
|
|
3
4
|
import { collectDebugPanels } from "./collect.js";
|
|
4
5
|
import { normalizeDebugBar } from "./config.js";
|
|
5
6
|
import { DEBUG_BAR_CSS } from "./styles.js";
|
|
7
|
+
// Render each panel in isolation: a panel that throws (author logic or a child
|
|
8
|
+
// component during SSR) yields a fallback instead of crashing the host page —
|
|
9
|
+
// exactly the page the bar is meant to help debug.
|
|
10
|
+
function renderPaneHtml(panel, ctx) {
|
|
11
|
+
try {
|
|
12
|
+
return renderToStaticMarkup(_jsx(_Fragment, { children: panel.render(ctx) }));
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
console.error(`[plumix] debug panel "${panel.id}" failed to render`, error);
|
|
16
|
+
return renderToStaticMarkup(_jsxs("p", { className: "plumix-debug-bar__error", children: ["Panel \u201C", panel.id, "\u201D failed to render."] }));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
6
19
|
/**
|
|
7
20
|
* The development-only debug bar. Standalone and auth-independent (unlike the
|
|
8
21
|
* admin bar it does not gate on a user), fully server-rendered and zero-JS:
|
|
@@ -18,6 +31,6 @@ export function PlumixDebugBar({ ctx, }) {
|
|
|
18
31
|
if (panels.length === 0)
|
|
19
32
|
return null;
|
|
20
33
|
const name = "plumix-debug-tab";
|
|
21
|
-
return (_jsxs(_Fragment, { children: [_jsx("style", { "data-testid": "plumix-debug-bar-style", children: DEBUG_BAR_CSS }), _jsx("div", { className: "plumix-debug-bar", "data-testid": "plumix-debug-bar", "data-position": config.position, dir: "ltr", children: _jsxs("details", { open: config.defaultOpen, children: [_jsx("summary", { children: "Debug" }), panels.map((panel, index) => (_jsx("input", { className: "plumix-debug-bar__radio", type: "radio", name: name, id: `${name}-${panel.id}`, defaultChecked: index === 0 }, panel.id))), _jsx("nav", { className: "plumix-debug-bar__labels", children: panels.map((panel) => (_jsx("label", { htmlFor: `${name}-${panel.id}`, children: labelSourceText(panel.title) }, panel.id))) }), _jsx("div", { className: "plumix-debug-bar__panes", children: panels.map((panel) => (_jsx("section", { className: "plumix-debug-bar__pane", "data-testid": `plumix-debug-panel-${panel.id}`,
|
|
34
|
+
return (_jsxs(_Fragment, { children: [_jsx("style", { "data-testid": "plumix-debug-bar-style", children: DEBUG_BAR_CSS }), _jsx("div", { className: "plumix-debug-bar", "data-testid": "plumix-debug-bar", "data-position": config.position, dir: "ltr", children: _jsxs("details", { open: config.defaultOpen, children: [_jsx("summary", { children: "Debug" }), panels.map((panel, index) => (_jsx("input", { className: "plumix-debug-bar__radio", type: "radio", name: name, id: `${name}-${panel.id}`, defaultChecked: index === 0 }, panel.id))), _jsx("nav", { className: "plumix-debug-bar__labels", children: panels.map((panel) => (_jsx("label", { htmlFor: `${name}-${panel.id}`, children: labelSourceText(panel.title) }, panel.id))) }), _jsx("div", { className: "plumix-debug-bar__panes", children: panels.map((panel) => (_jsx("section", { className: "plumix-debug-bar__pane", "data-testid": `plumix-debug-panel-${panel.id}`, dangerouslySetInnerHTML: { __html: renderPaneHtml(panel, ctx) } }, panel.id))) })] }) })] }));
|
|
22
35
|
}
|
|
23
36
|
//# sourceMappingURL=component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/debug-bar/component.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/debug-bar/component.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAIxD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,+EAA+E;AAC/E,8EAA8E;AAC9E,mDAAmD;AACnD,SAAS,cAAc,CAAC,KAAiB,EAAE,GAAe;IACxD,IAAI,CAAC;QACH,OAAO,oBAAoB,CAAC,4BAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAI,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,KAAK,CAAC,EAAE,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC5E,OAAO,oBAAoB,CACzB,aAAG,SAAS,EAAC,yBAAyB,6BAC5B,KAAK,CAAC,EAAE,gCACd,CACL,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,EAC7B,GAAG,GAGJ;IACC,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAEjC,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAErC,MAAM,IAAI,GAAG,kBAAkB,CAAC;IAChC,OAAO,CACL,8BACE,+BAAmB,wBAAwB,YAAE,aAAa,GAAS,EACnE,cACE,SAAS,EAAC,kBAAkB,iBAChB,kBAAkB,mBACf,MAAM,CAAC,QAAQ,EAC9B,GAAG,EAAC,KAAK,YAET,mBAAS,IAAI,EAAE,MAAM,CAAC,WAAW,aAC/B,sCAAwB,EACvB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAC5B,gBAEE,SAAS,EAAC,yBAAyB,EACnC,IAAI,EAAC,OAAO,EACZ,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,EACzB,cAAc,EAAE,KAAK,KAAK,CAAC,IALtB,KAAK,CAAC,EAAE,CAMb,CACH,CAAC,EACF,cAAK,SAAS,EAAC,0BAA0B,YACtC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACrB,gBAAsB,OAAO,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,YACjD,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,IADnB,KAAK,CAAC,EAAE,CAEZ,CACT,CAAC,GACE,EACN,cAAK,SAAS,EAAC,yBAAyB,YACrC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACrB,kBAEE,SAAS,EAAC,wBAAwB,iBACrB,sBAAsB,KAAK,CAAC,EAAE,EAAE,EAC7C,uBAAuB,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,IAH1D,KAAK,CAAC,EAAE,CAIb,CACH,CAAC,GACE,IACE,GACN,IACL,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-panels.d.ts","sourceRoot":"","sources":["../../src/debug-bar/core-panels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"core-panels.d.ts","sourceRoot":"","sources":["../../src/debug-bar/core-panels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAQzD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAajE"}
|
|
@@ -1,10 +1,21 @@
|
|
|
1
|
+
import { appPanel } from "./panels/app.js";
|
|
2
|
+
import { databasePanel } from "./panels/database.js";
|
|
1
3
|
import { requestPanel } from "./panels/request.js";
|
|
4
|
+
import { templatePanel } from "./panels/template.js";
|
|
5
|
+
import { timelinePanel } from "./panels/timeline.js";
|
|
2
6
|
/**
|
|
3
7
|
* Registers core's built-in debug panels. Wired at `buildApp` time behind
|
|
4
8
|
* the dev gate, at low priority so plugin panels (default priority 100)
|
|
5
9
|
* sort after core's. Mirrors `registerCoreAdminBarContributors`.
|
|
6
10
|
*/
|
|
7
11
|
export function registerCoreDebugPanels(hooks) {
|
|
8
|
-
hooks.addFilter("debug_bar:panels", (panels) => [
|
|
12
|
+
hooks.addFilter("debug_bar:panels", (panels) => [
|
|
13
|
+
...panels,
|
|
14
|
+
requestPanel,
|
|
15
|
+
templatePanel,
|
|
16
|
+
databasePanel,
|
|
17
|
+
timelinePanel,
|
|
18
|
+
appPanel,
|
|
19
|
+
], { plugin: "core", priority: 10 });
|
|
9
20
|
}
|
|
10
21
|
//# sourceMappingURL=core-panels.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-panels.js","sourceRoot":"","sources":["../../src/debug-bar/core-panels.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"core-panels.js","sourceRoot":"","sources":["../../src/debug-bar/core-panels.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAmB;IACzD,KAAK,CAAC,SAAS,CACb,kBAAkB,EAClB,CAAC,MAA6B,EAAE,EAAE,CAAC;QACjC,GAAG,MAAM;QACT,YAAY;QACZ,aAAa;QACb,aAAa;QACb,aAAa;QACb,QAAQ;KACT,EACD,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CACjC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Logger } from "drizzle-orm";
|
|
2
|
+
/** Panel id + collector namespace for database queries. */
|
|
3
|
+
export declare const DB_PANEL_ID = "database";
|
|
4
|
+
export interface DbQueryEntry {
|
|
5
|
+
readonly sql: string;
|
|
6
|
+
readonly params: readonly unknown[];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* A drizzle `Logger` that feeds the Database panel. Pass it as the `logger`
|
|
10
|
+
* option to `drizzle(...)` (dev-gated) — one uniform mechanism across every
|
|
11
|
+
* driver, giving the `?`-form SQL plus the bound params. It reaches the
|
|
12
|
+
* request's collector via the request-store ALS, so it's a no-op outside a
|
|
13
|
+
* request (and in prod, where `ctx.debug` is the no-op collector). Per-query
|
|
14
|
+
* timing is not part of drizzle's logger contract; the Timeline panel measures
|
|
15
|
+
* it via spans instead.
|
|
16
|
+
*
|
|
17
|
+
* Driver-agnostic and free of any driver type import, so it can be shared with
|
|
18
|
+
* runtime adapters (D1) over a narrow subpath without dragging libsql types in.
|
|
19
|
+
*/
|
|
20
|
+
export declare function createDebugSqlLogger(): Logger;
|
|
21
|
+
//# sourceMappingURL=db-query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"db-query.d.ts","sourceRoot":"","sources":["../../src/debug-bar/db-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI1C,2DAA2D;AAC3D,eAAO,MAAM,WAAW,aAAa,CAAC;AAEtC,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAC;CACrC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAM7C"}
|