@hienlh/ppm 0.13.83 → 0.13.84
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/CHANGELOG.md +5 -0
- package/assets/skills/ppm/SKILL.md +1 -1
- package/assets/skills/ppm/references/http-api.md +1 -1
- package/dist/web/assets/{audio-preview-NDeKdJQQ.js → audio-preview-BDvRxNLM.js} +1 -1
- package/dist/web/assets/{chat-tab-DcsXOWB5.js → chat-tab-BufLWyuh.js} +3 -3
- package/dist/web/assets/{code-editor-C4UN2zlP.js → code-editor-BTazCHFV.js} +2 -2
- package/dist/web/assets/{conflict-editor-ISkVIN4y.js → conflict-editor-_26EuzFY.js} +1 -1
- package/dist/web/assets/{database-viewer-0S269acN.js → database-viewer-4Zhmq-Y_.js} +1 -1
- package/dist/web/assets/{diff-viewer-CnXfBBeP.js → diff-viewer-BqajGrQu.js} +1 -1
- package/dist/web/assets/{docx-preview-CdtacSEm.js → docx-preview-B_twNQVN.js} +1 -1
- package/dist/web/assets/{extension-webview-H7vQmops.js → extension-webview-QeJr_2ep.js} +1 -1
- package/dist/web/assets/{git-log-panel-ZfXCFzX5.js → git-log-panel-BeJ1dm7u.js} +1 -1
- package/dist/web/assets/{glide-data-grid-Csl_bbJ3.js → glide-data-grid-oGWwEx-C.js} +1 -1
- package/dist/web/assets/{image-preview-Cr-s4gFI.js → image-preview-7bjGlR19.js} +1 -1
- package/dist/web/assets/{index-BMgVtTK_.js → index-DUQla965.js} +3 -3
- package/dist/web/assets/keybindings-store-C6fOhpuR.js +1 -0
- package/dist/web/assets/{markdown-renderer-DirpbELc.js → markdown-renderer-DNM11etB.js} +1 -1
- package/dist/web/assets/notification-store-FhBnY4N6.js +1 -0
- package/dist/web/assets/{pdf-preview-vvNNHXCi.js → pdf-preview-DFU1txpL.js} +1 -1
- package/dist/web/assets/{port-forwarding-tab-C0YHNacj.js → port-forwarding-tab-CJmXr1Y_.js} +1 -1
- package/dist/web/assets/{postgres-viewer-CJm0JuIh.js → postgres-viewer-CaXJeBw1.js} +1 -1
- package/dist/web/assets/{settings-tab-CphuewzZ.js → settings-tab-CvqKKtLt.js} +1 -1
- package/dist/web/assets/{sql-query-editor-CtCyDkgd.js → sql-query-editor-BVz7tnJt.js} +1 -1
- package/dist/web/assets/{sqlite-viewer-BeG9ayz9.js → sqlite-viewer-Dpz0BVbf.js} +1 -1
- package/dist/web/assets/{system-monitor-tab-BknIun-e.js → system-monitor-tab-Bpjmj8cy.js} +1 -1
- package/dist/web/assets/{terminal-tab-CWmu8nxk.js → terminal-tab-DoAf-HTf.js} +1 -1
- package/dist/web/assets/{video-preview-KroUFbzz.js → video-preview-CKxVc4yo.js} +1 -1
- package/dist/web/index.html +1 -1
- package/dist/web/sw.js +1 -1
- package/package.json +1 -1
- package/src/web/components/layout/tab-pool.tsx +6 -3
- package/src/web/hooks/use-extension-ws.ts +24 -9
- package/dist/web/assets/keybindings-store-t-aW85g1.js +0 -1
- package/dist/web/assets/notification-store-D13gfEnR.js +0 -1
|
@@ -174,15 +174,30 @@ export function useExtensionWs(enabled = true) {
|
|
|
174
174
|
}
|
|
175
175
|
recoveryViews.delete(viewTypeSlug);
|
|
176
176
|
} else if (!recentlyClosedViews.has(viewTypeSlug)) {
|
|
177
|
-
//
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
177
|
+
// Check non-active project grids — don't create a duplicate tab
|
|
178
|
+
// if this extension already exists in another project's layout
|
|
179
|
+
let existsInOtherProject = false;
|
|
180
|
+
for (const projectGrid of Object.values(ps.projectGrids || {})) {
|
|
181
|
+
for (const pid of projectGrid.flat()) {
|
|
182
|
+
const p = ps.panels[pid];
|
|
183
|
+
if (!p) continue;
|
|
184
|
+
if (p.tabs.some(tab => tab.id === baseTabId || tab.id.startsWith(`${baseTabId}@`))) {
|
|
185
|
+
existsInOtherProject = true;
|
|
186
|
+
break;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
if (existsInOtherProject) break;
|
|
190
|
+
}
|
|
191
|
+
if (!existsInOtherProject) {
|
|
192
|
+
const currentProject = useTabStore.getState().currentProject;
|
|
193
|
+
useTabStore.getState().openTab({
|
|
194
|
+
type: "extension",
|
|
195
|
+
title: msg.title,
|
|
196
|
+
projectId: null,
|
|
197
|
+
closable: true,
|
|
198
|
+
metadata: { viewType: viewTypeSlug, panelId: msg.panelId, extensionId: msg.extensionId, ...(currentProject && { projectName: currentProject }) },
|
|
199
|
+
});
|
|
200
|
+
}
|
|
186
201
|
}
|
|
187
202
|
break;
|
|
188
203
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./vendor-markdown-0Mxgxy0L.js";import"./api-client-bbJLzRVE.js";import{L as e}from"./index-BMgVtTK_.js";export{e as useKeybindingsStore};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./vendor-markdown-0Mxgxy0L.js";import"./api-client-bbJLzRVE.js";import{W as e}from"./index-BMgVtTK_.js";export{e as useNotificationStore};
|