-
{{ t("contextMenu.eventEditorTitle") }}
+
{{ t("contextMenu.eventEditorTitle") }}
{{ t("contextMenu.eventLoading") }}
diff --git a/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue b/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue
index a61dbd7bfe..a5d9c6fac2 100644
--- a/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue
+++ b/apps/desktop/src/components/sidebar/SidebarTreeRuntimeHost.vue
@@ -982,6 +982,10 @@ function runRowClickAction(clickDetail: number, requestId: number) {
return;
}
if (node.type === "event") {
+ void openObjectBrowser(false, true);
+ return;
+ }
+ if (node.type === "group-events") {
void openObjectBrowser();
return;
}
@@ -1343,7 +1347,7 @@ function requestDeleteSelectedNode(): boolean {
function onDoubleClick(event: MouseEvent) {
if (dataTabOpenModeFromTreeClick(activeNode.value.type, event, settingsStore.editorSettings.shortcuts.openDataInNewTab) === "new-tab") return;
if (activeNode.value.type === "event") {
- void openObjectBrowser();
+ void openObjectBrowser(false, true);
return;
}
if (activeNode.value.type === "group-events") {
diff --git a/apps/desktop/src/components/sidebar/TreeItem.vue b/apps/desktop/src/components/sidebar/TreeItem.vue
index 62500522f1..a842008b69 100644
--- a/apps/desktop/src/components/sidebar/TreeItem.vue
+++ b/apps/desktop/src/components/sidebar/TreeItem.vue
@@ -290,7 +290,7 @@ function getIconInfo(node: TreeNode): { icon: any; colorClass: string } | null {
case "trigger":
return { icon: Zap, colorClass: "text-orange-300" };
case "event":
- return { icon: Clock, colorClass: "text-orange-300" };
+ return { icon: Clock, colorClass: "text-orange-400" };
case "redis-db":
return { icon: Database, colorClass: "text-red-400" };
case "mq-tenant":
diff --git a/apps/desktop/src/lib/sidebar/treeNodeIcon.ts b/apps/desktop/src/lib/sidebar/treeNodeIcon.ts
index 25c2a22f78..dbd9136564 100644
--- a/apps/desktop/src/lib/sidebar/treeNodeIcon.ts
+++ b/apps/desktop/src/lib/sidebar/treeNodeIcon.ts
@@ -71,7 +71,7 @@ export function getTreeNodeIconInfo(node: TreeNode): TreeNodeIconInfo | null {
case "group-events":
return { icon: Clock, colorClass: "text-orange-400" };
case "event":
- return { icon: Clock, colorClass: "text-orange-300" };
+ return { icon: Clock, colorClass: "text-orange-400" };
case "group-constraints":
case "constraint":
return { icon: Key, colorClass: "text-amber-500" };
diff --git a/apps/desktop/vite.docs-export.config.ts b/apps/desktop/vite.docs-export.config.ts
index 02da55487c..fea53c04a9 100644
--- a/apps/desktop/vite.docs-export.config.ts
+++ b/apps/desktop/vite.docs-export.config.ts
@@ -7,6 +7,7 @@ import tailwindcss from "@tailwindcss/vite";
import { connectionTypesPlugin } from "./viteConnectionTypesPlugin.ts";
const repoRoot = path.resolve(__dirname, "../..");
+const normalizedRepoRoot = repoRoot.replaceAll(path.sep, "/");
const assetsDir = path.join(repoRoot, "crates/dbx-core/assets");
const fontPath = path.join(__dirname, "public/fonts/geist-latin-wght-normal.woff2");
@@ -86,25 +87,26 @@ function exportBundlePlugin() {
// Vite tags CSS the same way. The file on disk is the part before the
// query; without stripping it every SFC would be missing from the
// manifest, which is the failure this whole derivation exists to avoid.
- const id = rawId.split("?")[0];
+ const id = path.resolve(rawId.split("?")[0]);
if (!path.isAbsolute(id)) return;
+ const normalizedId = id.replaceAll(path.sep, "/");
// `lastIndexOf`: under pnpm a real path is
// `
/node_modules/.pnpm/marked@18.0.4/node_modules/marked/…`, and
// the FIRST occurrence yields the package name `.pnpm`.
- const nodeModules = id.lastIndexOf("/node_modules/");
+ const nodeModules = normalizedId.lastIndexOf("/node_modules/");
if (nodeModules !== -1) {
- const after = id.slice(nodeModules + "/node_modules/".length);
+ const after = normalizedId.slice(nodeModules + "/node_modules/".length);
const name = after.startsWith("@") ? after.split("/").slice(0, 2).join("/") : after.split("/")[0];
if (name in deps) return;
- const manifest = path.join(id.slice(0, nodeModules), "node_modules", name, "package.json");
+ const manifest = path.join(normalizedId.slice(0, nodeModules), "node_modules", name, "package.json");
if (!isFile(manifest)) return;
deps[name] = JSON.parse(readFileSync(manifest, "utf8")).version;
return;
}
- if (!id.startsWith(repoRoot) || !isFile(id)) return;
- sources[path.relative(repoRoot, id)] = sha256(readFileSync(id));
+ if (!normalizedId.startsWith(normalizedRepoRoot) || !isFile(id)) return;
+ sources[path.relative(repoRoot, id).replaceAll(path.sep, "/")] = sha256(readFileSync(id));
};
const stylesheets = new Set();
diff --git a/crates/dbx-core/assets/docs-export.manifest.json b/crates/dbx-core/assets/docs-export.manifest.json
index 1e352f1b97..3494d7427b 100644
--- a/crates/dbx-core/assets/docs-export.manifest.json
+++ b/crates/dbx-core/assets/docs-export.manifest.json
@@ -40,7 +40,7 @@
"apps/desktop/src/lib/diagram/erDiagram.ts": "1b9522b41cd2ee15ef04dc11e0f855459287fca2d5e0f551263dfc6f8de5764e",
"apps/desktop/src/styles/tokens.css": "b8852ce50865ad98ebc992971f7a06670c5d830ca82efcee956f8d3eb7c2e9a3",
"apps/desktop/tsconfig.json": "5ad521941835ad8529e9b81ba79c11650e5f020f0e376b7a9f17e22a9306fa76",
- "apps/desktop/vite.docs-export.config.ts": "edfb240d8b73e7dfca309f25bc03ea7612dfc8239f11f971d57daeadd8347161"
+ "apps/desktop/vite.docs-export.config.ts": "833bc2cbd99f9c0740cbc1584640458492bad75c9518db4d1ce0edd6958881ec"
},
"deps": {
"@vue/reactivity": "3.5.35",