@pstdio/workbench 0.45.0-nightly.20261021030241 → 0.45.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/extensions.d.ts +21 -62
- package/dist/extensions.js +1250 -978
- package/dist/extensions.js.map +1 -1
- package/dist/{index-CEjUGkgB.d.ts → index-DL-0XKr0.d.ts} +247 -191
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1530 -1271
- package/dist/index.js.map +1 -1
- package/dist/{kanban-presentation-CQNhh7IY.d.ts → kanban-presentation-CdHu43iH.d.ts} +1 -3
- package/dist/{layout-tab-presentation-Bz6EgFEa.js → layout-tab-presentation-CCUroIOY.js} +2 -3
- package/dist/{layout-tab-presentation-Bz6EgFEa.js.map → layout-tab-presentation-CCUroIOY.js.map} +1 -1
- package/dist/{navigation-tree-registry-BsMNSEyZ.js → navigation-tree-registry-DM4Lhfir.js} +3 -4
- package/dist/{navigation-tree-registry-BsMNSEyZ.js.map → navigation-tree-registry-DM4Lhfir.js.map} +1 -1
- package/dist/{react-hsii-4ZV.js → react-7X-EBlBD.js} +4163 -3123
- package/dist/react-7X-EBlBD.js.map +1 -0
- package/dist/react.d.ts +7 -94
- package/dist/react.js +1 -2
- package/dist/storage.d.ts +1 -7
- package/dist/storage.js +106 -80
- package/dist/storage.js.map +1 -1
- package/dist/webview-runtime.d.ts +0 -4
- package/dist/webview-runtime.js +2 -3
- package/dist/webview-runtime.js.map +1 -1
- package/dist/{workbench-renderers-Ku0_knjs.js → workbench-renderers-DOc_oE0K.js} +308 -292
- package/dist/workbench-renderers-DOc_oE0K.js.map +1 -0
- package/package.json +3 -3
- package/dist/file-renderer-view-CJBCZZIE.js +0 -668
- package/dist/file-renderer-view-CJBCZZIE.js.map +0 -1
- package/dist/react-hsii-4ZV.js.map +0 -1
- package/dist/workbench-renderers-Ku0_knjs.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { devtools as e } from "zustand/middleware";
|
|
2
2
|
import { createStore as t } from "zustand/vanilla";
|
|
3
3
|
import { dockedWorkbenchRegions as n, isFileSourcePosition as r, resourceKey as i } from "@pstdio/sdk/extensions";
|
|
4
|
-
|
|
4
|
+
// ../pstdio-api-contracts/src/extension-kernel/page-params.ts
|
|
5
5
|
var a = /* @__PURE__ */ new Set([
|
|
6
6
|
"resource",
|
|
7
7
|
"section",
|
|
@@ -24,18 +24,13 @@ var a = /* @__PURE__ */ new Set([
|
|
|
24
24
|
for (let i of Object.keys(e)) {
|
|
25
25
|
if (!Object.hasOwn(t, i)) continue;
|
|
26
26
|
let a = t[i], l = e[i];
|
|
27
|
-
if (
|
|
28
|
-
|
|
29
|
-
continue;
|
|
30
|
-
}
|
|
31
|
-
s(a, l.default) || Array.isArray(a) && !a.length || (r[i] = Array.isArray(a) ? Object.freeze([...a]) : a);
|
|
27
|
+
if (c(l, a)) s(a, l.default) || Array.isArray(a) && !a.length || (r[i] = Array.isArray(a) ? Object.freeze([...a]) : a);
|
|
28
|
+
else if (n) throw o(i);
|
|
32
29
|
}
|
|
33
30
|
let i = Object.keys(r).length ? Object.freeze(r) : void 0;
|
|
34
31
|
if (p(e, i).toString().length > 2048) {
|
|
35
32
|
if (n) throw o("query exceeds 2048 characters");
|
|
36
|
-
|
|
37
|
-
}
|
|
38
|
-
return i;
|
|
33
|
+
} else return i;
|
|
39
34
|
}, f = (e = {}, t) => {
|
|
40
35
|
let n = {};
|
|
41
36
|
for (let [t, r] of Object.entries(e)) r.default !== void 0 && (n[t] = Array.isArray(r.default) ? Object.freeze([...r.default]) : r.default);
|
|
@@ -66,8 +61,7 @@ var a = /* @__PURE__ */ new Set([
|
|
|
66
61
|
t || (t = !0, e());
|
|
67
62
|
} };
|
|
68
63
|
};
|
|
69
|
-
|
|
70
|
-
//#region src/core/shared/workbench-effect.ts
|
|
64
|
+
// src/core/shared/workbench-effect.ts
|
|
71
65
|
function g(e, t) {
|
|
72
66
|
try {
|
|
73
67
|
return t();
|
|
@@ -76,14 +70,9 @@ function g(e, t) {
|
|
|
76
70
|
return;
|
|
77
71
|
}
|
|
78
72
|
}
|
|
79
|
-
|
|
80
|
-
//#region src/core/shared/store/workbench-batch.ts
|
|
73
|
+
// src/core/shared/store/workbench-batch.ts
|
|
81
74
|
var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
82
|
-
|
|
83
|
-
g("store subscriber", t);
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
v.has(e) || v.set(e, t);
|
|
75
|
+
_ === 0 ? g("store subscriber", t) : v.has(e) || v.set(e, t);
|
|
87
76
|
}, te = (e) => {
|
|
88
77
|
_++;
|
|
89
78
|
try {
|
|
@@ -359,21 +348,21 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
359
348
|
return a.widgets.find((e) => e.widgetId === a.activeWidgetId && e.role === "sub-panel" && (r.ignoreOwnerResourceKey || !e.ownerResourceKey || e.ownerResourceKey === i(n)));
|
|
360
349
|
}, xe = (e) => D(e), Se = (e, t, n, r, a) => {
|
|
361
350
|
let o = e.eligibleLocations;
|
|
362
|
-
return !(!
|
|
351
|
+
return !(!Ce(e, n) || o?.resourceKinds?.length && (!t || !o.resourceKinds.includes(t.type)) || o?.resourceIds?.length && (!t?.id || !o.resourceIds.includes(t.id)) || o?.canOpen && (!t || !o.canOpen(t)) || o?.canOpenLocation && !o.canOpenLocation({
|
|
363
352
|
resource: t,
|
|
364
353
|
viewId: a?.viewId
|
|
365
354
|
}) || r?.ownerResourceKey && r.ownerResourceKey !== i(t));
|
|
366
|
-
},
|
|
355
|
+
}, Ce = (e, t) => {
|
|
367
356
|
let n = e.eligibleLocations?.modeIds;
|
|
368
357
|
return !n?.length || t !== void 0 && n.includes(t);
|
|
369
|
-
},
|
|
358
|
+
}, we = (e, t, n, r, i = {}) => ye(e, r?.resource ?? t) ? i.ignoreResourceLocation ? Ce(e, n) : Se(e, t, n, r, i.location) : !1, Te = (e, t) => {
|
|
370
359
|
let n = e.panelMenuOwner ?? { level: "panel" };
|
|
371
360
|
return n.contributionId ? (t.subPanel ?? t.locationPanel)?.contributionId === n.contributionId : t.subPanel ? n.level === "sub-panel" : n.level === "panel";
|
|
372
|
-
},
|
|
361
|
+
}, Ee = "workbench.core", De = (e = {}) => ({
|
|
373
362
|
source: e.source ?? "module",
|
|
374
|
-
ownerId: e.ownerId ??
|
|
363
|
+
ownerId: e.ownerId ?? Ee,
|
|
375
364
|
priority: e.priority ?? 0
|
|
376
|
-
}),
|
|
365
|
+
}), O = (e, t) => t.priority - e.priority || e.ownerId.localeCompare(t.ownerId), Oe = (e = {}, t) => {
|
|
377
366
|
let { strategy: n, ...r } = e, i = r.resource && r.viewId === void 0 ? {
|
|
378
367
|
...r,
|
|
379
368
|
viewId: null
|
|
@@ -397,7 +386,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
397
386
|
...i,
|
|
398
387
|
tabRetention: t
|
|
399
388
|
};
|
|
400
|
-
},
|
|
389
|
+
}, ke = (e) => ({
|
|
401
390
|
instanceId: e.widgetId,
|
|
402
391
|
panelId: e.contributionId,
|
|
403
392
|
placementIdentity: e.placementIdentity,
|
|
@@ -415,10 +404,31 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
415
404
|
hiddenByDefault: e.hiddenByDefault,
|
|
416
405
|
tabRetention: e.tabRetention,
|
|
417
406
|
tab: e.tab
|
|
418
|
-
}),
|
|
407
|
+
}), Ae = (e) => {
|
|
419
408
|
let { closable: t, ownedPanelMenuIds: n, ...r } = e;
|
|
420
409
|
return r;
|
|
421
|
-
},
|
|
410
|
+
}, k = {
|
|
411
|
+
side: ["left", "right"],
|
|
412
|
+
sidenav: ["left", "right"],
|
|
413
|
+
main: ["top", "bottom"],
|
|
414
|
+
secondary: ["top", "bottom"],
|
|
415
|
+
activity: [
|
|
416
|
+
"left",
|
|
417
|
+
"right",
|
|
418
|
+
"top",
|
|
419
|
+
"bottom"
|
|
420
|
+
]
|
|
421
|
+
}, A = {
|
|
422
|
+
side: "right",
|
|
423
|
+
sidenav: "left",
|
|
424
|
+
secondary: "bottom",
|
|
425
|
+
activity: "left"
|
|
426
|
+
}, je = (e, t) => t === "main" ? e.secondary === "top" ? "bottom" : "top" : e[t], j = (e, t, n) => e && t.includes(e) ? e : n, Me = (e) => ({
|
|
427
|
+
side: j(e?.side, k.side, A.side),
|
|
428
|
+
sidenav: j(e?.sidenav, k.sidenav, A.sidenav),
|
|
429
|
+
secondary: j(e?.secondary, k.secondary, A.secondary),
|
|
430
|
+
activity: j(e?.activity, k.activity, A.activity)
|
|
431
|
+
}), M = {
|
|
422
432
|
main: [
|
|
423
433
|
"main-header",
|
|
424
434
|
"main-left-menu",
|
|
@@ -437,18 +447,18 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
437
447
|
"side",
|
|
438
448
|
"side-right-menu"
|
|
439
449
|
]
|
|
440
|
-
},
|
|
450
|
+
}, N = Object.values(M).flat(), P = (e) => e.panels ? [.../* @__PURE__ */ new Set(["main", ...e.panels])] : x, Ne = (e) => Object.keys(M).find((t) => M[t].some((t) => t === e)), Pe = (e, t) => !e || P(e).includes(t), F = (e, t) => {
|
|
441
451
|
if (t) return Object.values(e.regions).flatMap((e) => e.widgets).find((e) => e.widgetId === t);
|
|
442
|
-
},
|
|
443
|
-
let n = t.find((t) => t &&
|
|
452
|
+
}, Fe = (e, t) => {
|
|
453
|
+
let n = t.find((t) => t && F(e, t.widgetId));
|
|
444
454
|
return {
|
|
445
455
|
...e,
|
|
446
456
|
activeWidgetId: n?.widgetId,
|
|
447
457
|
activeResourceKey: n?.resourceKey
|
|
448
458
|
};
|
|
449
|
-
},
|
|
459
|
+
}, Ie = (e, t) => {
|
|
450
460
|
if (t.length === 0) return e;
|
|
451
|
-
let n = new Set(Object.keys(
|
|
461
|
+
let n = new Set(Object.keys(M).filter((e) => M[e].some((e) => t.includes(e)))), r = t.some((t) => {
|
|
452
462
|
let n = e.regions[t];
|
|
453
463
|
return n.widgets.length > 0 || n.activeWidgetId !== void 0 || n.visible;
|
|
454
464
|
}), i = Object.values(e.locationSubPanelSelections ?? {}).some((e) => Object.keys(e).some((e) => n.has(e)));
|
|
@@ -465,16 +475,16 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
465
475
|
regions: a
|
|
466
476
|
};
|
|
467
477
|
return {
|
|
468
|
-
...
|
|
469
|
-
activeLocationWidgetId:
|
|
478
|
+
...Fe(s, [F(s, e.activeWidgetId)]),
|
|
479
|
+
activeLocationWidgetId: F(s, e.activeLocationWidgetId)?.widgetId,
|
|
470
480
|
locationSubPanelSelections: o
|
|
471
481
|
};
|
|
472
|
-
},
|
|
482
|
+
}, I = (e, t) => {
|
|
473
483
|
let n = new Set(t);
|
|
474
|
-
return
|
|
475
|
-
},
|
|
476
|
-
let r = t ?
|
|
477
|
-
for (let e of ["side", "secondary"])
|
|
484
|
+
return Ie(e, Object.keys(M).filter((e) => !n.has(e)).flatMap((e) => M[e]));
|
|
485
|
+
}, Le = (e, t, n) => {
|
|
486
|
+
let r = t ? I(e, P(t)) : e;
|
|
487
|
+
for (let e of ["side", "secondary"]) Pe(t, e) && n(e)?.canClose === !1 && !r.regions[e].visible && (r = {
|
|
478
488
|
...r,
|
|
479
489
|
regions: {
|
|
480
490
|
...r.regions,
|
|
@@ -484,32 +494,45 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
484
494
|
}
|
|
485
495
|
}
|
|
486
496
|
});
|
|
487
|
-
return r;
|
|
488
|
-
|
|
497
|
+
if (!r.arrangement) return r;
|
|
498
|
+
let i = Me(r.arrangement);
|
|
499
|
+
for (let e of [
|
|
500
|
+
"side",
|
|
501
|
+
"sidenav",
|
|
502
|
+
"secondary",
|
|
503
|
+
"activity"
|
|
504
|
+
]) (n(e)?.movable === !1 || e === "secondary" && n("main")?.movable === !1) && Object.assign(i, { [e]: A[e] });
|
|
505
|
+
return Object.keys(i).every((e) => i[e] === r.arrangement?.[e]) ? r : {
|
|
506
|
+
...r,
|
|
507
|
+
arrangement: i
|
|
508
|
+
};
|
|
509
|
+
}, Re = (e, t, n, r) => {
|
|
489
510
|
if (!t) {
|
|
490
|
-
let t =
|
|
491
|
-
for (let e of
|
|
492
|
-
return
|
|
511
|
+
let t = Ie(e, N), i = { ...t.regions };
|
|
512
|
+
for (let e of N) i[e] = r.regions[e];
|
|
513
|
+
return I({
|
|
493
514
|
...t,
|
|
515
|
+
arrangement: r.arrangement,
|
|
494
516
|
regions: i
|
|
495
517
|
}, n);
|
|
496
518
|
}
|
|
497
519
|
let i = { ...e.regions };
|
|
498
|
-
for (let e of
|
|
499
|
-
let a =
|
|
520
|
+
for (let e of N) i[e] = t.regions[e];
|
|
521
|
+
let a = I({
|
|
500
522
|
...e,
|
|
523
|
+
arrangement: t.arrangement,
|
|
501
524
|
regions: i
|
|
502
525
|
}, n);
|
|
503
526
|
return {
|
|
504
|
-
...
|
|
505
|
-
activeLocationWidgetId:
|
|
527
|
+
...Fe(a, [F(a, t.activeWidgetId), F(a, e.activeWidgetId)]),
|
|
528
|
+
activeLocationWidgetId: F(a, t.activeLocationWidgetId)?.widgetId ?? F(a, e.activeLocationWidgetId)?.widgetId,
|
|
506
529
|
locationSubPanelSelections: t.locationSubPanelSelections
|
|
507
530
|
};
|
|
508
|
-
},
|
|
531
|
+
}, ze = (e) => {
|
|
509
532
|
for (let t = e.length - 1; t >= 0; --t) g("mode disposal", () => e[t]?.dispose());
|
|
510
|
-
},
|
|
533
|
+
}, Be = (e, t) => {
|
|
511
534
|
t !== e.layout.getLayout() && e.layout.restoreLayout(t);
|
|
512
|
-
},
|
|
535
|
+
}, Ve = async (e, t) => {
|
|
513
536
|
let n = new AbortController(), r = () => n.abort(t?.reason);
|
|
514
537
|
t?.aborted ? r() : t?.addEventListener("abort", r, { once: !0 });
|
|
515
538
|
let i;
|
|
@@ -529,27 +552,27 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
529
552
|
} finally {
|
|
530
553
|
t?.removeEventListener("abort", r);
|
|
531
554
|
}
|
|
532
|
-
},
|
|
533
|
-
let n =
|
|
555
|
+
}, He = (e, t) => t.find((t) => t.ref.id === e.page.id && t.ref.extensionId === e.page.extensionId), Ue = (e, t) => {
|
|
556
|
+
let n = He(e, t.pages);
|
|
534
557
|
return n ? t.navigationTrees.resolveOwner("page", n.id, "content") : void 0;
|
|
535
|
-
},
|
|
536
|
-
let n =
|
|
558
|
+
}, We = (e, t) => {
|
|
559
|
+
let n = He(e, t.pages);
|
|
537
560
|
return n ? t.navigationTrees.resolveOwner("page", n.id, "content") ? !0 : t.modes.getMode(n.modeId)?.chrome?.sidenav !== void 0 : !1;
|
|
538
|
-
},
|
|
561
|
+
}, Ge = (e) => {
|
|
539
562
|
let t = [];
|
|
540
563
|
for (let n = e.location; n; n = n.parent) {
|
|
541
|
-
let r =
|
|
564
|
+
let r = Ue(n, e);
|
|
542
565
|
r && !t.some((e) => e.owner.id === r.id) && t.unshift({
|
|
543
566
|
owner: r,
|
|
544
567
|
location: n
|
|
545
568
|
});
|
|
546
569
|
}
|
|
547
570
|
return t;
|
|
548
|
-
},
|
|
571
|
+
}, Ke = (e) => {
|
|
549
572
|
let t = e.location;
|
|
550
|
-
for (let n = e.location; n; n = n.parent)
|
|
573
|
+
for (let n = e.location; n; n = n.parent) We(n, e) && (t = n.parent);
|
|
551
574
|
return t;
|
|
552
|
-
},
|
|
575
|
+
}, L = (e) => `${e.extensionId ?? ""}:page:${e.id}`, R = (e, t) => e.find((e) => L(e.ref) === L(t)), qe = (e, t) => e.find((e) => e.id === t), Je = (e) => {
|
|
553
576
|
if (!e) return;
|
|
554
577
|
let t = e.anchors.map((e) => Object.freeze({
|
|
555
578
|
id: e.id,
|
|
@@ -557,9 +580,9 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
557
580
|
...e.occurrence === void 0 ? {} : { occurrence: e.occurrence }
|
|
558
581
|
}));
|
|
559
582
|
return Object.freeze({ anchors: Object.freeze(t) });
|
|
560
|
-
},
|
|
583
|
+
}, Ye = (e) => {
|
|
561
584
|
if (e) return JSON.parse(JSON.stringify(e));
|
|
562
|
-
},
|
|
585
|
+
}, Xe = (e, t) => {
|
|
563
586
|
if (!e) return;
|
|
564
587
|
let n = t.normalize(e);
|
|
565
588
|
if (!n.type || !n.id) throw Error("Page resource has no canonical type or id");
|
|
@@ -570,18 +593,18 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
570
593
|
...n.label ? { label: n.label } : {},
|
|
571
594
|
...n.icon ? { icon: n.icon } : {},
|
|
572
595
|
...n.extensionId ? { extensionId: n.extensionId } : {},
|
|
573
|
-
...n.metadata ? { metadata:
|
|
596
|
+
...n.metadata ? { metadata: Ye(n.metadata) } : {}
|
|
574
597
|
};
|
|
575
598
|
return Object.freeze(r);
|
|
576
|
-
},
|
|
599
|
+
}, Ze = (e) => Object.freeze({
|
|
577
600
|
extensionId: e.ref.extensionId,
|
|
578
601
|
kind: "page",
|
|
579
602
|
id: e.ref.id
|
|
580
|
-
}),
|
|
581
|
-
let r =
|
|
603
|
+
}), Qe = (e) => e ? JSON.stringify(e) : "", z = (e, t) => e.resource ? t.toUri(t.normalize(e.resource)) : "", $e = (e, t, n) => L(e.page) === L(t.page) && z(e, n) === z(t, n), B = (e, t, n = []) => {
|
|
604
|
+
let r = R(n, e.page)?.document, i = r ? e.resource?.metadata?.[r.metadataKey] : void 0;
|
|
582
605
|
return JSON.stringify([
|
|
583
|
-
|
|
584
|
-
|
|
606
|
+
L(e.page),
|
|
607
|
+
z(e, t),
|
|
585
608
|
i ?? null,
|
|
586
609
|
e.position ? [
|
|
587
610
|
e.position.line,
|
|
@@ -589,67 +612,67 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
589
612
|
e.position.endLine ?? null,
|
|
590
613
|
e.position.endColumn ?? null
|
|
591
614
|
] : null,
|
|
592
|
-
|
|
615
|
+
Qe(e.section)
|
|
593
616
|
]);
|
|
594
|
-
},
|
|
595
|
-
let r =
|
|
596
|
-
return e.parent ? `${r}>${
|
|
597
|
-
},
|
|
617
|
+
}, et = (e, t, n = []) => {
|
|
618
|
+
let r = B(e, t, n);
|
|
619
|
+
return e.parent ? `${r}>${et(e.parent, t, n)}` : r;
|
|
620
|
+
}, tt = (e, t, n, r = []) => {
|
|
598
621
|
let i = e, a = t;
|
|
599
622
|
for (; i && a;) {
|
|
600
|
-
if (
|
|
623
|
+
if (B(i, n, r) !== B(a, n, r) || JSON.stringify(i.params ?? {}) !== JSON.stringify(a.params ?? {})) return !1;
|
|
601
624
|
i = i.parent, a = a.parent;
|
|
602
625
|
}
|
|
603
626
|
return i === a;
|
|
604
|
-
},
|
|
627
|
+
}, nt = (e) => Object.isFrozen(e) ? e : Object.freeze({
|
|
605
628
|
line: e.line,
|
|
606
629
|
...e.column === void 0 ? {} : { column: e.column },
|
|
607
630
|
...e.endLine === void 0 ? {} : { endLine: e.endLine },
|
|
608
631
|
...e.endColumn === void 0 ? {} : { endColumn: e.endColumn }
|
|
609
|
-
}),
|
|
632
|
+
}), V = (e) => {
|
|
610
633
|
let t = e.page.document?.metadataKey, n = t ? e.resource?.metadata?.[t] : void 0;
|
|
611
634
|
if (n !== void 0 && (typeof n != "string" || !n)) throw Error("Page location has an invalid document");
|
|
612
635
|
if (e.position && (!t || !n || e.section || !r(e.position))) throw Error("Page location has an invalid source position");
|
|
613
636
|
return Object.freeze({
|
|
614
|
-
page:
|
|
637
|
+
page: Ze(e.page),
|
|
615
638
|
...e.params ? { params: e.params } : {},
|
|
616
|
-
...e.resource ? { resource:
|
|
617
|
-
...e.section ? { section:
|
|
618
|
-
...e.position ? { position:
|
|
639
|
+
...e.resource ? { resource: Xe(e.resource, e.resources) } : {},
|
|
640
|
+
...e.section ? { section: Je(e.section) } : {},
|
|
641
|
+
...e.position ? { position: nt(e.position) } : {},
|
|
619
642
|
...e.parent ? { parent: e.parent } : {}
|
|
620
643
|
});
|
|
621
|
-
},
|
|
644
|
+
}, rt = (e) => {
|
|
622
645
|
if (!e.page.parentId) return;
|
|
623
|
-
let t =
|
|
646
|
+
let t = qe(e.pages, e.page.parentId);
|
|
624
647
|
if (!t) throw Error(`Unknown parent page: ${e.page.parentId}`);
|
|
625
|
-
return
|
|
648
|
+
return H({
|
|
626
649
|
page: t,
|
|
627
650
|
pages: e.pages,
|
|
628
651
|
resources: e.resources,
|
|
629
652
|
seen: e.seen
|
|
630
653
|
});
|
|
631
|
-
},
|
|
654
|
+
}, it = (e) => ({
|
|
632
655
|
resource: e.resource,
|
|
633
656
|
section: e.section,
|
|
634
657
|
position: e.position,
|
|
635
658
|
params: e.params
|
|
636
|
-
}),
|
|
637
|
-
let t =
|
|
659
|
+
}), H = (e) => {
|
|
660
|
+
let t = V({
|
|
638
661
|
page: e.page,
|
|
639
662
|
resources: e.resources,
|
|
640
663
|
...e.resource ? { resource: e.resource } : {},
|
|
641
664
|
...e.section ? { section: e.section } : {},
|
|
642
665
|
...e.position ? { position: e.position } : {},
|
|
643
666
|
...e.params ? { params: e.params } : {}
|
|
644
|
-
}), n =
|
|
667
|
+
}), n = B(t, e.resources, e.pages);
|
|
645
668
|
if (e.seen.has(n)) throw Error(`Page location parent cycle reaches ${e.page.id}`);
|
|
646
|
-
let r = new Set(e.seen).add(n), i = e.parent ??
|
|
669
|
+
let r = new Set(e.seen).add(n), i = e.parent ?? rt({
|
|
647
670
|
page: e.page,
|
|
648
671
|
pages: e.pages,
|
|
649
672
|
resources: e.resources,
|
|
650
673
|
seen: r
|
|
651
674
|
});
|
|
652
|
-
return
|
|
675
|
+
return V({
|
|
653
676
|
page: e.page,
|
|
654
677
|
resources: e.resources,
|
|
655
678
|
...t.resource ? { resource: t.resource } : {},
|
|
@@ -658,24 +681,24 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
658
681
|
...t.params ? { params: t.params } : {},
|
|
659
682
|
...i ? { parent: i } : {}
|
|
660
683
|
});
|
|
661
|
-
},
|
|
662
|
-
let t =
|
|
663
|
-
if (!t) throw Error(`Unknown page: ${
|
|
664
|
-
let n =
|
|
684
|
+
}, at = (e, t, n) => t?.parent && $e(e, t, n) ? t.parent : void 0, ot = (e) => {
|
|
685
|
+
let t = R(e.pages, e.target.page);
|
|
686
|
+
if (!t) throw Error(`Unknown page: ${L(e.target.page)}`);
|
|
687
|
+
let n = V({
|
|
665
688
|
page: t,
|
|
666
689
|
resources: e.resources,
|
|
667
690
|
...e.target.resource ? { resource: e.target.resource } : {},
|
|
668
691
|
...e.target.section ? { section: e.target.section } : {},
|
|
669
692
|
...e.target.position ? { position: { ...e.target.position } } : {},
|
|
670
693
|
params: d(t.params, e.target.params)
|
|
671
|
-
}), r =
|
|
694
|
+
}), r = B(n, e.resources, e.pages);
|
|
672
695
|
if (e.seen.has(r)) throw Error(`Page location parent cycle reaches ${t.id}`);
|
|
673
|
-
let i = new Set(e.seen).add(r), a = e.target.parent ?
|
|
696
|
+
let i = new Set(e.seen).add(r), a = e.target.parent ? ot({
|
|
674
697
|
target: e.target.parent,
|
|
675
698
|
pages: e.pages,
|
|
676
699
|
resources: e.resources,
|
|
677
700
|
seen: i
|
|
678
|
-
}).location :
|
|
701
|
+
}).location : at(n, e.active, e.resources), o = H({
|
|
679
702
|
page: t,
|
|
680
703
|
pages: e.pages,
|
|
681
704
|
resources: e.resources,
|
|
@@ -691,42 +714,42 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
691
714
|
location: o,
|
|
692
715
|
...e.target.open ? { open: e.target.open } : {}
|
|
693
716
|
};
|
|
694
|
-
},
|
|
717
|
+
}, st = (e) => ot({
|
|
695
718
|
...e,
|
|
696
719
|
seen: /* @__PURE__ */ new Set()
|
|
697
|
-
}),
|
|
720
|
+
}), ct = (e) => {
|
|
698
721
|
let t = (n, r) => {
|
|
699
|
-
let i =
|
|
700
|
-
if (!i) throw Error(`Unknown page: ${
|
|
701
|
-
let a =
|
|
722
|
+
let i = R(e.pages, n.page);
|
|
723
|
+
if (!i) throw Error(`Unknown page: ${L(n.page)}`);
|
|
724
|
+
let a = V({
|
|
702
725
|
page: i,
|
|
703
726
|
resources: e.resources,
|
|
704
727
|
...n.resource ? { resource: n.resource } : {},
|
|
705
728
|
...n.section ? { section: n.section } : {},
|
|
706
729
|
...n.position ? { position: n.position } : {},
|
|
707
730
|
params: d(i.params, n.params, !1)
|
|
708
|
-
}), o =
|
|
731
|
+
}), o = B(a, e.resources, e.pages);
|
|
709
732
|
if (r.has(o)) throw Error(`Page location parent cycle reaches ${i.id}`);
|
|
710
733
|
let s = new Set(r).add(o), c = n.parent ? t(n.parent, s).location : void 0;
|
|
711
734
|
return {
|
|
712
735
|
pageId: i.id,
|
|
713
|
-
location:
|
|
736
|
+
location: H({
|
|
714
737
|
page: i,
|
|
715
738
|
pages: e.pages,
|
|
716
739
|
resources: e.resources,
|
|
717
740
|
seen: r,
|
|
718
|
-
...
|
|
741
|
+
...it(a),
|
|
719
742
|
...c ? { parent: c } : {}
|
|
720
743
|
})
|
|
721
744
|
};
|
|
722
745
|
};
|
|
723
746
|
return t(e.location, /* @__PURE__ */ new Set());
|
|
724
|
-
},
|
|
725
|
-
let t =
|
|
747
|
+
}, lt = (e) => {
|
|
748
|
+
let t = qe(e.pages, e.pageId);
|
|
726
749
|
if (!t) throw Error(`Unknown page: ${e.pageId}`);
|
|
727
750
|
return {
|
|
728
751
|
pageId: t.id,
|
|
729
|
-
location:
|
|
752
|
+
location: H({
|
|
730
753
|
page: t,
|
|
731
754
|
pages: e.pages,
|
|
732
755
|
resources: e.resources,
|
|
@@ -737,7 +760,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
737
760
|
...e.params ? { params: e.params } : {}
|
|
738
761
|
})
|
|
739
762
|
};
|
|
740
|
-
},
|
|
763
|
+
}, ut = (e, t) => e < t ? -1 : +(e > t), dt = (e) => e.kind === "shell" ? `shell\0${e.placementId}` : e.kind === "mode" ? `mode\0${e.modeId}\0${e.placementId}` : `page\0${e.pageId}\0${e.slotId}`, U = (e) => e.kind === "shell" ? JSON.stringify([
|
|
741
764
|
"shell",
|
|
742
765
|
e.placementId,
|
|
743
766
|
e.instanceKey
|
|
@@ -751,64 +774,58 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
751
774
|
e.pageId,
|
|
752
775
|
e.slotId,
|
|
753
776
|
e.instanceKey
|
|
754
|
-
]),
|
|
755
|
-
let n =
|
|
756
|
-
return n === 0 ?
|
|
757
|
-
},
|
|
777
|
+
]), W = (e, t) => {
|
|
778
|
+
let n = ut(dt(e.identity), dt(t.identity));
|
|
779
|
+
return n === 0 ? ut(e.identity.instanceKey, t.identity.instanceKey) : n;
|
|
780
|
+
}, ft = (e, t) => e.order - t.order || W(e, t), pt = (e, t) => {
|
|
758
781
|
if (t.identity.kind === e) return;
|
|
759
782
|
let n = `${e[0]?.toUpperCase()}${e.slice(1)}`;
|
|
760
783
|
throw Error(`${n} placement must have a ${e} owner`);
|
|
761
|
-
},
|
|
784
|
+
}, mt = (e) => {
|
|
762
785
|
let t = [], n = /* @__PURE__ */ new Set(), r = (e, r) => {
|
|
763
786
|
for (let i of r) {
|
|
764
|
-
if (
|
|
765
|
-
let r =
|
|
787
|
+
if (pt(e, i), !Number.isFinite(i.order)) throw Error("Placement order must be a finite number");
|
|
788
|
+
let r = U(i.identity);
|
|
766
789
|
if (n.has(r)) throw Error(`Duplicate placement identity: ${r}`);
|
|
767
790
|
n.add(r), t.push(i);
|
|
768
791
|
}
|
|
769
792
|
};
|
|
770
793
|
if (r("shell", e.shell), r("mode", e.mode ?? []), r("page", e.page ?? []), new Set((e.mode ?? []).map((e) => e.identity.kind === "mode" ? e.identity.modeId : "invalid-mode-owner")).size > 1) throw Error("Mode placements must belong to one active mode");
|
|
771
794
|
return t;
|
|
772
|
-
},
|
|
773
|
-
let t =
|
|
774
|
-
for (let e of t)
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
continue;
|
|
778
|
-
}
|
|
779
|
-
i[e.region].push(e);
|
|
780
|
-
}
|
|
781
|
-
for (let e of b) i[e].sort(ct);
|
|
782
|
-
return r.sort(U), {
|
|
795
|
+
}, ht = () => b.reduce((e, t) => (e[t] = [], e), {}), gt = (e) => {
|
|
796
|
+
let t = mt(e), n = new Set((e.closed ?? []).map(U)), r = [], i = ht();
|
|
797
|
+
for (let e of t) n.has(U(e.identity)) ? r.push(e) : i[e.region].push(e);
|
|
798
|
+
for (let e of b) i[e].sort(ft);
|
|
799
|
+
return r.sort(W), {
|
|
783
800
|
placements: b.flatMap((e) => i[e]),
|
|
784
801
|
closed: r,
|
|
785
802
|
regions: i,
|
|
786
803
|
visibleRegions: new Set(b.filter((e) => i[e].length > 0))
|
|
787
804
|
};
|
|
788
|
-
},
|
|
805
|
+
}, _t = (e) => {
|
|
789
806
|
let t = /* @__PURE__ */ new Map();
|
|
790
807
|
for (let n of e) {
|
|
791
|
-
let e =
|
|
808
|
+
let e = U(n.identity);
|
|
792
809
|
if (t.has(e)) throw Error(`Duplicate placement identity: ${e}`);
|
|
793
810
|
t.set(e, n);
|
|
794
811
|
}
|
|
795
812
|
return t;
|
|
796
|
-
},
|
|
797
|
-
let t =
|
|
813
|
+
}, vt = (e, t, n) => e.region === t.region && e.order === t.order && n(e.value, t.value), G = (e) => {
|
|
814
|
+
let t = _t(e.current), n = _t(e.desired), r = [], i = [], a = [], o = [];
|
|
798
815
|
for (let [o, s] of n) {
|
|
799
816
|
let n = t.get(o);
|
|
800
|
-
n ?
|
|
817
|
+
n ? vt(n, s, e.valuesEqual) ? i.push(s) : a.push({
|
|
801
818
|
current: n,
|
|
802
819
|
desired: s
|
|
803
820
|
}) : r.push(s);
|
|
804
821
|
}
|
|
805
822
|
for (let [e, r] of t) n.has(e) || o.push(r);
|
|
806
|
-
let s = new Set((e.activate ?? []).map(
|
|
823
|
+
let s = new Set((e.activate ?? []).map(U)), c = Array.from(s, (e) => {
|
|
807
824
|
let t = n.get(e);
|
|
808
825
|
if (!t) throw Error(`Cannot activate missing placement: ${e}`);
|
|
809
826
|
return t;
|
|
810
827
|
});
|
|
811
|
-
return r.sort(
|
|
828
|
+
return r.sort(W), i.sort(W), a.sort((e, t) => W(e.desired, t.desired)), c.sort(W), o.sort(W), {
|
|
812
829
|
add: r,
|
|
813
830
|
retain: i,
|
|
814
831
|
update: a,
|
|
@@ -816,7 +833,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
816
833
|
remove: o,
|
|
817
834
|
...e.destinations?.length ? { destinations: e.destinations } : {}
|
|
818
835
|
};
|
|
819
|
-
},
|
|
836
|
+
}, K = "$main", yt = (e) => e.item.kind === "view" ? e.item.presence !== "fixed" : e.role !== "primary" || e.item.binding.cardinality === "many", bt = (e) => {
|
|
820
837
|
if (e.main.kind !== "view") return;
|
|
821
838
|
let { kind: t, view: n, cardinality: r, ...i } = e.main, a = e.resource ? {
|
|
822
839
|
...e.resource,
|
|
@@ -825,7 +842,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
825
842
|
} : void 0;
|
|
826
843
|
return {
|
|
827
844
|
...i,
|
|
828
|
-
id:
|
|
845
|
+
id: K,
|
|
829
846
|
role: "primary",
|
|
830
847
|
region: "main",
|
|
831
848
|
item: a ? {
|
|
@@ -837,19 +854,19 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
837
854
|
presence: "fixed"
|
|
838
855
|
}
|
|
839
856
|
};
|
|
840
|
-
},
|
|
841
|
-
let t =
|
|
857
|
+
}, q = (e) => {
|
|
858
|
+
let t = bt(e);
|
|
842
859
|
return [...t ? [t] : [], ...e.slots.map((e) => ({
|
|
843
860
|
...e,
|
|
844
861
|
role: "auxiliary"
|
|
845
862
|
}))];
|
|
846
|
-
},
|
|
847
|
-
let n =
|
|
863
|
+
}, xt = (e, t) => {
|
|
864
|
+
let n = q(e).find((e) => e.id === t);
|
|
848
865
|
if (!n) throw Error(`Unknown page slot: ${e.id}.${t}`);
|
|
849
866
|
return n;
|
|
850
|
-
},
|
|
867
|
+
}, St = (e) => {
|
|
851
868
|
if (e.main.kind === "panels") return {
|
|
852
|
-
id:
|
|
869
|
+
id: K,
|
|
853
870
|
role: "primary",
|
|
854
871
|
region: "main",
|
|
855
872
|
item: {
|
|
@@ -858,25 +875,25 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
858
875
|
presence: "fixed"
|
|
859
876
|
}
|
|
860
877
|
};
|
|
861
|
-
},
|
|
862
|
-
let t =
|
|
863
|
-
return [...
|
|
864
|
-
},
|
|
878
|
+
}, Ct = (e) => {
|
|
879
|
+
let t = St(e);
|
|
880
|
+
return [...q(e), ...t ? [t] : []];
|
|
881
|
+
}, wt = (e, t, n) => e.resource && t ? `${e.id}|${JSON.stringify([n.toUri(n.normalize(t)), e.document ? t.metadata?.[e.document.metadataKey] : null])}` : e.id, Tt = (e, t, n) => e.resource && t ? wt(e, t, n) : "default", Et = (e, t, n) => {
|
|
865
882
|
let r = n === "default" ? t : n;
|
|
866
883
|
return e === r || e.startsWith(`${r}|`);
|
|
867
|
-
},
|
|
884
|
+
}, Dt = (e, t, n) => e.resource ? wt(e, t?.resource, n) : e.main.kind === "panels" && t ? `${e.id}|${et({
|
|
868
885
|
...t,
|
|
869
886
|
position: void 0
|
|
870
|
-
}, n)}` : e.id,
|
|
887
|
+
}, n)}` : e.id, Ot = (e, t) => Object.fromEntries(Object.entries(e).filter(([e]) => e !== t && !e.startsWith(`${t}|`))), kt = (e) => e.replace(/^['"]|['"]$/g, ""), At = (e, t) => {
|
|
871
888
|
let n = t.trim();
|
|
872
889
|
if (n.length === 0) return !0;
|
|
873
890
|
let r = n.match(/^([A-Za-z0-9_.-]+)\s*(==|!=)\s*(.+)$/);
|
|
874
891
|
if (r) {
|
|
875
|
-
let [, t, n, i] = r, a = e[t ?? ""], o =
|
|
892
|
+
let [, t, n, i] = r, a = e[t ?? ""], o = kt(i ?? "");
|
|
876
893
|
return n === "==" ? String(a) === o : String(a) !== o;
|
|
877
894
|
}
|
|
878
895
|
return n.startsWith("!") ? !e[n.slice(1)] : !!e[n];
|
|
879
|
-
},
|
|
896
|
+
}, jt = (e, t) => !t || t.split("||").some((t) => t.split("&&").every((t) => At(e, t))), Mt = () => {
|
|
880
897
|
let e = y({
|
|
881
898
|
name: "workbench.context",
|
|
882
899
|
initialState: { values: {} }
|
|
@@ -940,17 +957,17 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
940
957
|
return { ...e.getState().values };
|
|
941
958
|
},
|
|
942
959
|
matches(t) {
|
|
943
|
-
return
|
|
960
|
+
return jt(e.getState().values, t);
|
|
944
961
|
}
|
|
945
962
|
};
|
|
946
|
-
},
|
|
963
|
+
}, Nt = (e, t) => {
|
|
947
964
|
let n = e;
|
|
948
965
|
for (let r of t.values()) i(r.resource) === i(e) && (n = "removed" in r.change ? void 0 : {
|
|
949
966
|
...e,
|
|
950
967
|
label: r.change.label
|
|
951
968
|
});
|
|
952
969
|
return n;
|
|
953
|
-
},
|
|
970
|
+
}, Pt = () => {
|
|
954
971
|
let e = y({
|
|
955
972
|
name: "workbench.resource-preview",
|
|
956
973
|
initialState: { changes: /* @__PURE__ */ new Map() }
|
|
@@ -961,7 +978,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
961
978
|
return {
|
|
962
979
|
store: e,
|
|
963
980
|
resolve(t) {
|
|
964
|
-
return
|
|
981
|
+
return Nt(t, e.getState().changes);
|
|
965
982
|
},
|
|
966
983
|
persist(e, n) {
|
|
967
984
|
let r = i(e), a = (t.get(r) ?? Promise.resolve()).catch(() => void 0).then(n);
|
|
@@ -985,15 +1002,15 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
985
1002
|
};
|
|
986
1003
|
}
|
|
987
1004
|
};
|
|
988
|
-
}, J = (e) => "viewId" in e && e.type === "view",
|
|
989
|
-
let r =
|
|
1005
|
+
}, J = (e) => "viewId" in e && e.type === "view", Ft = "resource_hierarchy_cycle", It = (e) => [...e].sort((e, t) => t.priority - e.priority || e.id.localeCompare(t.id)), Lt = (e, t, n) => {
|
|
1006
|
+
let r = It(e), a = [t], o = /* @__PURE__ */ new Set([`resource:${i(t)}`]), s = t;
|
|
990
1007
|
for (;;) {
|
|
991
1008
|
let e = r.find((e) => e.canResolve(s))?.getParent(s);
|
|
992
1009
|
if (!e) break;
|
|
993
1010
|
let t = J(e) ? `view:${e.viewId}` : `resource:${i(e)}`;
|
|
994
1011
|
if (o.has(t)) {
|
|
995
1012
|
n({
|
|
996
|
-
code:
|
|
1013
|
+
code: Ft,
|
|
997
1014
|
path: [...a],
|
|
998
1015
|
repeatedUri: J(e) ? t : i(e)
|
|
999
1016
|
});
|
|
@@ -1003,27 +1020,27 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1003
1020
|
s = e;
|
|
1004
1021
|
}
|
|
1005
1022
|
return a;
|
|
1006
|
-
},
|
|
1023
|
+
}, Rt = "workbench.resource.type", zt = "workbench.resource.extensionId", Bt = "workbench.resource.id", Vt = (e) => `workbench.resource.metadata.${e}`, Ht = "workbench.selectionResourceKey", Ut = (e) => typeof e == "string" || typeof e == "number" || typeof e == "boolean", Wt = (e) => {
|
|
1007
1024
|
if (!e) return {};
|
|
1008
1025
|
let t = {
|
|
1009
|
-
[
|
|
1010
|
-
[
|
|
1011
|
-
[
|
|
1026
|
+
[Rt]: e.type,
|
|
1027
|
+
[Bt]: e.id,
|
|
1028
|
+
[zt]: e.extensionId
|
|
1012
1029
|
};
|
|
1013
|
-
for (let [n, r] of Object.entries(e.metadata ?? {}))
|
|
1030
|
+
for (let [n, r] of Object.entries(e.metadata ?? {})) Ut(r) && (t[Vt(n)] = r);
|
|
1014
1031
|
return t;
|
|
1015
|
-
},
|
|
1032
|
+
}, Gt = (e) => e === "workbench.resource.type" || e === "workbench.resource.extensionId" || e === "workbench.resource.id" || e.startsWith(Vt("")), Kt = (e, t) => {
|
|
1016
1033
|
let n = {};
|
|
1017
|
-
for (let [t, r] of Object.entries(e))
|
|
1034
|
+
for (let [t, r] of Object.entries(e)) Gt(t) || (n[t] = r);
|
|
1018
1035
|
return {
|
|
1019
1036
|
...n,
|
|
1020
|
-
...
|
|
1037
|
+
...Wt(t)
|
|
1021
1038
|
};
|
|
1022
|
-
},
|
|
1039
|
+
}, qt = (e) => ({ [Ht]: i(e) }), Jt = (e) => {
|
|
1023
1040
|
if (!e) return [];
|
|
1024
|
-
let t = e.metadata?.[
|
|
1041
|
+
let t = e.metadata?.[Ht];
|
|
1025
1042
|
return typeof t != "string" || t === i(e) ? [i(e)] : [i(e), t];
|
|
1026
|
-
},
|
|
1043
|
+
}, Yt = (e = {}) => {
|
|
1027
1044
|
let t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set(), r = /* @__PURE__ */ new Set(), i = y({
|
|
1028
1045
|
name: "workbench.resources",
|
|
1029
1046
|
initialState: {
|
|
@@ -1034,7 +1051,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1034
1051
|
});
|
|
1035
1052
|
return {
|
|
1036
1053
|
store: i,
|
|
1037
|
-
preview:
|
|
1054
|
+
preview: Pt(),
|
|
1038
1055
|
removed(r) {
|
|
1039
1056
|
let i = [...t].flatMap((e) => e(r));
|
|
1040
1057
|
try {
|
|
@@ -1053,7 +1070,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1053
1070
|
let n = i.getState(), r = e.extensionId ? `${e.extensionId}:${e.kind}` : e.kind;
|
|
1054
1071
|
if (n.kinds[r]) throw Error(`Resource kind already registered: ${r}`);
|
|
1055
1072
|
let a = {
|
|
1056
|
-
...
|
|
1073
|
+
...De(t),
|
|
1057
1074
|
...e
|
|
1058
1075
|
};
|
|
1059
1076
|
return i.setState({
|
|
@@ -1077,7 +1094,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1077
1094
|
return t ? n[`${t}:${e}`] ?? n[e] : n[e] ?? Object.values(n).find((t) => t.kind === e);
|
|
1078
1095
|
},
|
|
1079
1096
|
listKinds() {
|
|
1080
|
-
return Object.values(i.getState().kinds).sort(
|
|
1097
|
+
return Object.values(i.getState().kinds).sort(O);
|
|
1081
1098
|
},
|
|
1082
1099
|
registerProvider(e) {
|
|
1083
1100
|
let t = i.getState();
|
|
@@ -1133,10 +1150,10 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1133
1150
|
});
|
|
1134
1151
|
},
|
|
1135
1152
|
listHierarchyProviders() {
|
|
1136
|
-
return
|
|
1153
|
+
return It(Object.values(i.getState().hierarchyProviders));
|
|
1137
1154
|
},
|
|
1138
1155
|
walkHierarchy(t) {
|
|
1139
|
-
return t ?
|
|
1156
|
+
return t ? Lt(Object.values(i.getState().hierarchyProviders), t, (e) => {
|
|
1140
1157
|
for (let t of r) t(e);
|
|
1141
1158
|
}).map((t) => {
|
|
1142
1159
|
if (!J(t)) return t;
|
|
@@ -1154,10 +1171,10 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1154
1171
|
});
|
|
1155
1172
|
}
|
|
1156
1173
|
};
|
|
1157
|
-
},
|
|
1158
|
-
let t =
|
|
1174
|
+
}, Xt = (e) => Array.isArray(e) ? e : e.trim().split(/\s+/).filter(Boolean), Zt = (e) => {
|
|
1175
|
+
let t = Xt(e);
|
|
1159
1176
|
return t.length === 1 ? t[0] ?? "" : t;
|
|
1160
|
-
},
|
|
1177
|
+
}, Qt = (e) => {
|
|
1161
1178
|
let t = y({
|
|
1162
1179
|
name: "workbench.keybindings",
|
|
1163
1180
|
initialState: { keybindings: [] }
|
|
@@ -1167,9 +1184,9 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1167
1184
|
registerKeybinding(n, r) {
|
|
1168
1185
|
if (n.action.kind === "command" && !e.commands.getCommand(n.action.commandId)) throw Error(`Keybinding command not registered: ${n.action.commandId}`);
|
|
1169
1186
|
let i = {
|
|
1170
|
-
...
|
|
1187
|
+
...De(r),
|
|
1171
1188
|
...n,
|
|
1172
|
-
keybinding:
|
|
1189
|
+
keybinding: Zt(n.keybinding)
|
|
1173
1190
|
}, a = t.getState();
|
|
1174
1191
|
return t.setState({ keybindings: [...a.keybindings, i] }, !1, "registerKeybinding"), h(() => {
|
|
1175
1192
|
let e = t.getState(), n = e.keybindings.filter((e) => e !== i);
|
|
@@ -1177,19 +1194,19 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1177
1194
|
});
|
|
1178
1195
|
},
|
|
1179
1196
|
listKeybindings() {
|
|
1180
|
-
return [...t.getState().keybindings].sort(
|
|
1197
|
+
return [...t.getState().keybindings].sort(O);
|
|
1181
1198
|
},
|
|
1182
1199
|
listActiveKeybindings() {
|
|
1183
|
-
return t.getState().keybindings.filter((t) => e.context.matches(t.when)).sort(
|
|
1200
|
+
return t.getState().keybindings.filter((t) => e.context.matches(t.when)).sort(O);
|
|
1184
1201
|
},
|
|
1185
1202
|
listCommandKeybindings() {
|
|
1186
|
-
return [...t.getState().keybindings].sort(
|
|
1203
|
+
return [...t.getState().keybindings].sort(O).flatMap((e) => e.action.kind === "command" ? [{
|
|
1187
1204
|
commandId: e.action.commandId,
|
|
1188
1205
|
keybinding: e.keybinding
|
|
1189
1206
|
}] : []);
|
|
1190
1207
|
}
|
|
1191
1208
|
};
|
|
1192
|
-
},
|
|
1209
|
+
}, $t = (e, t, n) => ({
|
|
1193
1210
|
role: "anchor",
|
|
1194
1211
|
anchor: e,
|
|
1195
1212
|
persistence: t,
|
|
@@ -1201,40 +1218,40 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1201
1218
|
} : {
|
|
1202
1219
|
role: "projection",
|
|
1203
1220
|
reads: e
|
|
1204
|
-
},
|
|
1221
|
+
}, en = {
|
|
1205
1222
|
nav: Y(["primary", "attached"]),
|
|
1206
1223
|
activity: { role: "chrome" },
|
|
1207
1224
|
sidenav: Y(["primary"], !0),
|
|
1208
1225
|
"main-header": Y(["primary"]),
|
|
1209
1226
|
"main-left-menu": Y(["primary"]),
|
|
1210
|
-
main:
|
|
1227
|
+
main: $t("primary", "primary", "global"),
|
|
1211
1228
|
"main-right-menu": Y(["primary"]),
|
|
1212
1229
|
"secondary-header": Y(["primary"]),
|
|
1213
1230
|
"secondary-left-menu": Y(["secondary"]),
|
|
1214
|
-
secondary:
|
|
1231
|
+
secondary: $t("secondary", "derived", "scoped"),
|
|
1215
1232
|
"secondary-right-menu": Y(["secondary"]),
|
|
1216
1233
|
status: Y(["primary", "attached"]),
|
|
1217
1234
|
overlay: { role: "transient" },
|
|
1218
1235
|
"side-header": Y(["attached"]),
|
|
1219
1236
|
"side-left-menu": Y(["attached"]),
|
|
1220
|
-
side:
|
|
1237
|
+
side: $t("attached", "detached", "scoped"),
|
|
1221
1238
|
"side-right-menu": Y(["attached"])
|
|
1222
|
-
},
|
|
1239
|
+
}, tn = (e) => en[e], nn = () => b.filter((e) => en[e].role === "anchor"), rn = (e) => {
|
|
1223
1240
|
let t = b.find((t) => {
|
|
1224
|
-
let n =
|
|
1241
|
+
let n = en[t];
|
|
1225
1242
|
return n.role === "anchor" && n.anchor === e;
|
|
1226
1243
|
});
|
|
1227
1244
|
if (!t) throw Error(`No region hosts anchor: ${e}`);
|
|
1228
1245
|
return t;
|
|
1229
|
-
},
|
|
1230
|
-
let n = fe(e.regions[
|
|
1246
|
+
}, an = (e, t) => {
|
|
1247
|
+
let n = fe(e.regions[rn(t)]);
|
|
1231
1248
|
if (t !== "primary") return n?.resource;
|
|
1232
1249
|
let r = D(e);
|
|
1233
1250
|
return r ? r.resource : n?.role === "sub-panel" ? void 0 : n?.resource;
|
|
1234
|
-
},
|
|
1251
|
+
}, on = ({ layout: e, primary: t, isInScope: n }) => {
|
|
1235
1252
|
let r = [];
|
|
1236
|
-
for (let i of
|
|
1237
|
-
let a =
|
|
1253
|
+
for (let i of nn()) {
|
|
1254
|
+
let a = tn(i);
|
|
1238
1255
|
if (a.role === "anchor" && a.persistence !== "primary") for (let o of e.regions[i].widgets) {
|
|
1239
1256
|
if (!o.resource) continue;
|
|
1240
1257
|
let e = o.role === "location" || o.role === "sub-panel" && (!!o.ownerResourceKey || o.placementIdentity?.kind === "shell" || o.placementIdentity?.kind === "mode") || a.persistence !== "derived" && n(o.resource, t);
|
|
@@ -1246,90 +1263,90 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1246
1263
|
}
|
|
1247
1264
|
}
|
|
1248
1265
|
return r;
|
|
1249
|
-
},
|
|
1266
|
+
}, sn = (e) => [
|
|
1250
1267
|
"workbench",
|
|
1251
1268
|
"header",
|
|
1252
1269
|
e,
|
|
1253
1270
|
"leading"
|
|
1254
|
-
],
|
|
1271
|
+
], cn = (e) => [
|
|
1255
1272
|
"workbench",
|
|
1256
1273
|
"header",
|
|
1257
1274
|
e,
|
|
1258
1275
|
"trailing"
|
|
1259
|
-
],
|
|
1276
|
+
], ln = (e) => [
|
|
1260
1277
|
"workbench",
|
|
1261
1278
|
"regionTabs",
|
|
1262
1279
|
e,
|
|
1263
1280
|
"leading"
|
|
1264
|
-
],
|
|
1281
|
+
], un = (e) => [
|
|
1265
1282
|
"workbench",
|
|
1266
1283
|
"regionTabs",
|
|
1267
1284
|
e,
|
|
1268
1285
|
"add"
|
|
1269
|
-
],
|
|
1286
|
+
], dn = ["workbench", "commandPalette"], fn = sn("nav"), pn = cn("nav"), mn = [
|
|
1270
1287
|
"workbench",
|
|
1271
1288
|
"breadcrumb",
|
|
1272
1289
|
"location"
|
|
1273
|
-
],
|
|
1290
|
+
], hn = (e) => [
|
|
1274
1291
|
"workbench",
|
|
1275
1292
|
"resource",
|
|
1276
1293
|
e,
|
|
1277
1294
|
"context"
|
|
1278
|
-
],
|
|
1295
|
+
], gn = (e, t) => e.kinds.some((e) => e.id === t.type && (!t.extensionId || !e.extensionId || t.extensionId === e.extensionId)), X = (e) => Array.isArray(e) ? e.map(X) : e && typeof e == "object" ? Object.fromEntries(Object.entries(e).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => [e, X(t)])) : e, _n = (e) => {
|
|
1279
1296
|
if (e.kind === "command" && e.args && typeof e.args == "object" && !Array.isArray(e.args) && Object.keys(e.args).length === 0) {
|
|
1280
1297
|
let { args: t, ...n } = e;
|
|
1281
1298
|
return JSON.stringify(X(n));
|
|
1282
1299
|
}
|
|
1283
1300
|
return JSON.stringify(X(e));
|
|
1284
|
-
},
|
|
1285
|
-
|
|
1286
|
-
},
|
|
1287
|
-
let n =
|
|
1301
|
+
}, vn = /* @__PURE__ */ new WeakMap(), yn = (e, t) => {
|
|
1302
|
+
vn.set(e, t);
|
|
1303
|
+
}, bn = (e, t) => {
|
|
1304
|
+
let n = vn.get(e);
|
|
1288
1305
|
return t && n?.registryToken !== t ? void 0 : n;
|
|
1289
|
-
}, Z = (e, t) => JSON.stringify([i(t), e?.document ? t?.metadata?.[e.document.metadataKey] ?? null : null]),
|
|
1306
|
+
}, Z = (e, t) => JSON.stringify([i(t), e?.document ? t?.metadata?.[e.document.metadataKey] ?? null : null]), xn = (e, t, n) => {
|
|
1290
1307
|
let r = n.normalize(t);
|
|
1291
|
-
return e.document && e.resource &&
|
|
1292
|
-
},
|
|
1308
|
+
return e.document && e.resource && gn(e.resource, r) ? wt(e, r, n) : n.toUri(r);
|
|
1309
|
+
}, Sn = {
|
|
1293
1310
|
project: "folder-root",
|
|
1294
1311
|
workspace: "computer",
|
|
1295
1312
|
worktree: "git-pull-request-draft",
|
|
1296
1313
|
settings: "settings",
|
|
1297
1314
|
kanbanRenderer: "table-properties"
|
|
1298
|
-
},
|
|
1315
|
+
}, Cn = (e, t = "view") => JSON.stringify([t, e.placementIdentity ? U(e.placementIdentity) : e.instanceId]), wn = (e, t, n) => {
|
|
1299
1316
|
e.notifications.captureActionError(t)(n);
|
|
1300
|
-
},
|
|
1317
|
+
}, Tn = async (e, t, n, r) => {
|
|
1301
1318
|
let i = e.notifications.captureActionError(t, r?.inlineTarget);
|
|
1302
1319
|
try {
|
|
1303
1320
|
await n(), r?.onSuccess?.();
|
|
1304
1321
|
} catch (e) {
|
|
1305
1322
|
i(e);
|
|
1306
1323
|
}
|
|
1307
|
-
},
|
|
1324
|
+
}, En = (e, t, n) => {
|
|
1308
1325
|
let r = e.placementIdentity;
|
|
1309
1326
|
if (r?.kind !== "page") return !1;
|
|
1310
|
-
let i = (e, t) =>
|
|
1327
|
+
let i = (e, t) => Et(e, r.pageId, r.instanceKey) && t?.openStaticSlotIds.includes(r.slotId) || t?.resourceInstances[r.slotId]?.some((e) => e.instanceKey === r.instanceKey);
|
|
1311
1328
|
return Object.entries(n.pageStates).some(([e, n]) => (e === r.pageId || e.startsWith(`${r.pageId}|`)) && i(e, n) && !i(e, t.pageStates[e]));
|
|
1312
|
-
},
|
|
1329
|
+
}, Dn = (e) => ({
|
|
1313
1330
|
projectId: e.projectId,
|
|
1314
1331
|
modeId: e.activeModeId,
|
|
1315
1332
|
pageId: e.activePageId,
|
|
1316
1333
|
resource: e.location?.resource
|
|
1317
|
-
}), Q = (e, t) => e.projectId !== t.projectId || e.activeModeId !== t.activeModeId || e.activePageId !== t.activePageId || Z(e.pages[e.activePageId ?? ""], e.location?.resource) !== Z(t.pages[t.activePageId ?? ""], t.location?.resource),
|
|
1334
|
+
}), Q = (e, t) => e.projectId !== t.projectId || e.activeModeId !== t.activeModeId || e.activePageId !== t.activePageId || Z(e.pages[e.activePageId ?? ""], e.location?.resource) !== Z(t.pages[t.activePageId ?? ""], t.location?.resource), On = (e, t) => new Set(Object.values(e?.regions ?? {}).flatMap((e) => e.widgets.flatMap((n) => e.id === "main" === t && n.placementIdentity ? [U(n.placementIdentity)] : []))), kn = (e, t, n) => {
|
|
1318
1335
|
let r = e.placementIdentity;
|
|
1319
1336
|
if (!r) return !1;
|
|
1320
1337
|
if (r.kind !== "page") return n;
|
|
1321
1338
|
if (r.pageId !== t.activePageId) return !0;
|
|
1322
|
-
let i = t.pages[r.pageId], a = i &&
|
|
1323
|
-
return o && (!e.resource || !
|
|
1324
|
-
},
|
|
1325
|
-
let { state: r, previous: i, layout: a, pageLayout: o } = e, s = Q(r, i), c = new Set(r.reconciliation.activate.map((e) =>
|
|
1339
|
+
let i = t.pages[r.pageId], a = i && Ct(i).find((e) => e.id === r.slotId), o = a?.item.kind === "binding" ? a.item.binding : i?.resource;
|
|
1340
|
+
return o && (!e.resource || !gn(o, e.resource)) ? !1 : !!(i?.resource && Z(i, e.resource) !== Z(i, t.location?.resource));
|
|
1341
|
+
}, An = (e, t, n) => {
|
|
1342
|
+
let { state: r, previous: i, layout: a, pageLayout: o } = e, s = Q(r, i), c = new Set(r.reconciliation.activate.map((e) => U(e.identity))), l = [...t], u = s ? o?.regions.main.widgets : a.regions.main.widgets;
|
|
1326
1343
|
for (let [t, a] of (u ?? []).entries()) {
|
|
1327
1344
|
let o = a.placementIdentity;
|
|
1328
|
-
if (!o || !e.getWidget(a.contributionId) ||
|
|
1329
|
-
let u =
|
|
1345
|
+
if (!o || !e.getWidget(a.contributionId) || En(a, r, i) || !kn(a, r, s)) continue;
|
|
1346
|
+
let u = U(o);
|
|
1330
1347
|
if (n.has(u)) continue;
|
|
1331
|
-
let d = l.find((e) =>
|
|
1332
|
-
l = l.filter((e) =>
|
|
1348
|
+
let d = l.find((e) => U(e.identity) === u);
|
|
1349
|
+
l = l.filter((e) => U(e.identity) !== u), l.push({
|
|
1333
1350
|
identity: o,
|
|
1334
1351
|
region: "main",
|
|
1335
1352
|
order: t,
|
|
@@ -1337,7 +1354,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1337
1354
|
});
|
|
1338
1355
|
}
|
|
1339
1356
|
return l;
|
|
1340
|
-
},
|
|
1357
|
+
}, jn = (e, t) => {
|
|
1341
1358
|
let n = t.placementIdentity;
|
|
1342
1359
|
if (n?.kind !== "page" || !t.resource) return t;
|
|
1343
1360
|
let r = Object.entries(e.state.pageStates).filter(([e]) => e === n.pageId || e.startsWith(`${n.pageId}|`)).flatMap(([, e]) => e.resourceInstances[n.slotId] ?? []).find((e) => e.instanceKey === n.instanceKey && i(e.resource) === i(t.resource));
|
|
@@ -1346,48 +1363,48 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1346
1363
|
resource: r.resource,
|
|
1347
1364
|
title: r.resource.label ?? e.getWidget(t.contributionId)?.title ?? t.title
|
|
1348
1365
|
} : t;
|
|
1349
|
-
},
|
|
1350
|
-
let n =
|
|
1366
|
+
}, Mn = (e, t) => {
|
|
1367
|
+
let n = U(t.placementIdentity), r = e.state.reconciliation.activate.find((e) => U(e.identity) === n);
|
|
1351
1368
|
return r ? {
|
|
1352
1369
|
...r.value,
|
|
1353
1370
|
widgetId: t.widgetId
|
|
1354
|
-
} :
|
|
1355
|
-
},
|
|
1371
|
+
} : jn(e, t);
|
|
1372
|
+
}, Nn = (e, t, n) => {
|
|
1356
1373
|
let r = t.placementIdentity;
|
|
1357
|
-
return r?.kind === "page" && !!e.getWidget(t.contributionId) && e.state.pages[r.pageId]?.modeId === e.state.activeModeId && !(n && t.tabRetention === "preview") && !
|
|
1358
|
-
},
|
|
1374
|
+
return r?.kind === "page" && !!e.getWidget(t.contributionId) && e.state.pages[r.pageId]?.modeId === e.state.activeModeId && !(n && t.tabRetention === "preview") && !En(t, e.state, e.previous);
|
|
1375
|
+
}, Pn = (e, t, n) => {
|
|
1359
1376
|
let { state: r, previous: i } = e, a = Q(r, i) && r.projectId === i.projectId && r.activeModeId === i.activeModeId, o = [...t];
|
|
1360
1377
|
for (let t of Object.values(n?.regions ?? {})) if (t.id === "side" || t.id === "secondary") for (let [n, r] of t.widgets.entries()) {
|
|
1361
1378
|
let i = r.placementIdentity;
|
|
1362
|
-
if (!i || !
|
|
1363
|
-
let s =
|
|
1364
|
-
o = o.filter((e) =>
|
|
1379
|
+
if (!i || !Nn(e, r, a)) continue;
|
|
1380
|
+
let s = U(i);
|
|
1381
|
+
o = o.filter((e) => U(e.identity) !== s), o.push({
|
|
1365
1382
|
identity: i,
|
|
1366
1383
|
region: t.id,
|
|
1367
1384
|
order: n,
|
|
1368
|
-
value:
|
|
1385
|
+
value: Mn(e, r)
|
|
1369
1386
|
});
|
|
1370
1387
|
}
|
|
1371
1388
|
return o;
|
|
1372
|
-
},
|
|
1389
|
+
}, Fn = (e) => {
|
|
1373
1390
|
let { state: t, previous: n, layout: r, modeLayout: i } = e;
|
|
1374
1391
|
if (!t.activePageId) return t;
|
|
1375
|
-
let a = Q(t, n), o = t.projectId === n.projectId && t.activeModeId === n.activeModeId ? r : i, s = n.activePageId ?
|
|
1376
|
-
let t =
|
|
1392
|
+
let a = Q(t, n), o = t.projectId === n.projectId && t.activeModeId === n.activeModeId ? r : i, s = n.activePageId ? On(r, !0) : /* @__PURE__ */ new Set(), c = On(o, !1), l = new Set(t.reconciliation.activate.map((e) => U(e.identity))), u = Pn(e, An(e, t.placements.filter((e) => {
|
|
1393
|
+
let t = U(e.identity);
|
|
1377
1394
|
return !a || !s.has(t) || c.has(t) || l.has(t);
|
|
1378
1395
|
}), c), o);
|
|
1379
1396
|
return {
|
|
1380
1397
|
...t,
|
|
1381
1398
|
placements: u,
|
|
1382
|
-
reconciliation:
|
|
1399
|
+
reconciliation: G({
|
|
1383
1400
|
current: n.placements,
|
|
1384
1401
|
desired: u,
|
|
1385
1402
|
destinations: t.reconciliation.destinations,
|
|
1386
|
-
activate: t.reconciliation.activate.filter((e) => u.some((t) =>
|
|
1403
|
+
activate: t.reconciliation.activate.filter((e) => u.some((t) => U(t.identity) === U(e.identity))).map((e) => e.identity),
|
|
1387
1404
|
valuesEqual: (e, t) => JSON.stringify(e) === JSON.stringify(t)
|
|
1388
1405
|
})
|
|
1389
1406
|
};
|
|
1390
|
-
},
|
|
1407
|
+
}, In = (e, t, n) => Object.fromEntries(Object.entries(e).map(([e, r]) => {
|
|
1391
1408
|
if (e !== t.pageId && !e.startsWith(`${t.pageId}|`)) return [e, r];
|
|
1392
1409
|
let i = (r.resourceInstances[t.slotId] ?? []).flatMap((e) => e.instanceKey === t.instanceKey ? n.kind === "close" ? [] : [{
|
|
1393
1410
|
...e,
|
|
@@ -1395,18 +1412,18 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1395
1412
|
}] : [e]);
|
|
1396
1413
|
return [e, {
|
|
1397
1414
|
...r,
|
|
1398
|
-
openStaticSlotIds: n.kind === "close" &&
|
|
1415
|
+
openStaticSlotIds: n.kind === "close" && Et(e, t.pageId, t.instanceKey) ? r.openStaticSlotIds.filter((e) => e !== t.slotId) : r.openStaticSlotIds,
|
|
1399
1416
|
resourceInstances: {
|
|
1400
1417
|
...r.resourceInstances,
|
|
1401
1418
|
[t.slotId]: i
|
|
1402
1419
|
},
|
|
1403
1420
|
activePrimaryInstanceKey: n.kind === "close" && r.activePrimaryInstanceKey === t.instanceKey ? i.at(-1)?.instanceKey : r.activePrimaryInstanceKey
|
|
1404
1421
|
}];
|
|
1405
|
-
})),
|
|
1422
|
+
})), Ln = (e) => e.value.role === "sub-panel" && e.identity.kind === "page", Rn = (e, t, n) => Ln(e) ? e.value.ownerResourceKey ?? t?.ownerResourceKey ?? n?.ownerResourceKey : e.value.ownerResourceKey, $ = (e) => {
|
|
1406
1423
|
let t = /* @__PURE__ */ new Map();
|
|
1407
1424
|
for (let n of Object.values(e.regions)) for (let e of n.widgets) {
|
|
1408
1425
|
if (!e.placementIdentity) continue;
|
|
1409
|
-
let r =
|
|
1426
|
+
let r = U(e.placementIdentity);
|
|
1410
1427
|
if (t.has(r)) throw Error(`Duplicate rendered placement identity: ${r}`);
|
|
1411
1428
|
t.set(r, {
|
|
1412
1429
|
region: n.id,
|
|
@@ -1414,33 +1431,33 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1414
1431
|
});
|
|
1415
1432
|
}
|
|
1416
1433
|
return t;
|
|
1417
|
-
},
|
|
1434
|
+
}, zn = (e) => {
|
|
1418
1435
|
if (e.desired.identity.kind !== "mode") return;
|
|
1419
1436
|
let t = e.desired.identity;
|
|
1420
1437
|
return [...e.current.entries()].find(([n, r]) => !e.desiredKeys.has(n) && !e.transferredCurrentKeys.has(n) && r.placement.placementIdentity?.kind === "mode" && (r.placement.placementIdentity.modeId !== t.modeId || r.placement.placementIdentity.placementId !== t.placementId) && r.region === e.desired.region && r.placement.contributionId === e.desired.value.contributionId && r.placement.viewId === e.desired.value.viewId);
|
|
1421
|
-
},
|
|
1438
|
+
}, Bn = (e) => {
|
|
1422
1439
|
let t = /* @__PURE__ */ new Map();
|
|
1423
1440
|
for (let n of Object.values(e.regions)) for (let e of n.widgets) {
|
|
1424
1441
|
if (t.has(e.widgetId)) throw Error(`Duplicate rendered widget ID: ${e.widgetId}`);
|
|
1425
|
-
t.set(e.widgetId, e.placementIdentity ?
|
|
1442
|
+
t.set(e.widgetId, e.placementIdentity ? U(e.placementIdentity) : null);
|
|
1426
1443
|
}
|
|
1427
1444
|
return t;
|
|
1428
|
-
},
|
|
1429
|
-
let i = new Set(e.map((e) => e.widgetId)), a = [...e, ...t.filter((e) => !i.has(e.widgetId) && e.placementIdentity && n.has(
|
|
1445
|
+
}, Vn = (e, t, n, r) => {
|
|
1446
|
+
let i = new Set(e.map((e) => e.widgetId)), a = [...e, ...t.filter((e) => !i.has(e.widgetId) && e.placementIdentity && n.has(U(e.placementIdentity)))];
|
|
1430
1447
|
if (!r) return a;
|
|
1431
1448
|
let o = new Map(r.map((e, t) => [e, t])), s = a.sort((e, t) => (o.get(e.widgetId) ?? r.length) - (o.get(t.widgetId) ?? r.length)), c = new Map(t.map((e, t) => [e.widgetId, t])), l = s.filter((e) => e.placementIdentity?.kind !== "page").sort((e, n) => (c.get(e.widgetId) ?? t.length) - (c.get(n.widgetId) ?? t.length)), u = 0;
|
|
1432
1449
|
return s.map((e) => e.placementIdentity?.kind === "page" ? e : l[u++]);
|
|
1433
|
-
},
|
|
1434
|
-
let n = [], r = /* @__PURE__ */ new Set(), i =
|
|
1450
|
+
}, Hn = (e, t) => {
|
|
1451
|
+
let n = [], r = /* @__PURE__ */ new Set(), i = Bn(e.layout), a = e.modeLayout ? $(e.modeLayout) : /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Set(), s = new Map(e.destinations?.map((e) => [U(e.identity), e.region])), c = gt({
|
|
1435
1452
|
shell: e.placements.filter((e) => e.identity.kind === "shell"),
|
|
1436
1453
|
mode: e.placements.filter((e) => e.identity.kind === "mode"),
|
|
1437
1454
|
page: e.placements.filter((e) => e.identity.kind === "page")
|
|
1438
|
-
}).placements, l = new Set(c.map((e) =>
|
|
1455
|
+
}).placements, l = new Set(c.map((e) => U(e.identity))), u = /* @__PURE__ */ new Set();
|
|
1439
1456
|
for (let e of c) {
|
|
1440
|
-
let c =
|
|
1457
|
+
let c = U(e.identity);
|
|
1441
1458
|
if (r.has(c)) throw Error(`Duplicate desired placement identity: ${c}`);
|
|
1442
1459
|
r.add(c);
|
|
1443
|
-
let d = t.get(c) ?? a.get(c), f = d ? void 0 :
|
|
1460
|
+
let d = t.get(c) ?? a.get(c), f = d ? void 0 : zn({
|
|
1444
1461
|
current: t,
|
|
1445
1462
|
desired: e,
|
|
1446
1463
|
desiredKeys: l,
|
|
@@ -1451,7 +1468,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1451
1468
|
if (h !== void 0 && h !== c && h !== p) throw Error(`Rendered widget ID belongs to another placement: ${m}`);
|
|
1452
1469
|
if (o.has(m)) throw Error(`Duplicate desired widget ID: ${m}`);
|
|
1453
1470
|
o.add(m);
|
|
1454
|
-
let g =
|
|
1471
|
+
let g = Rn(e, d?.placement, f?.[1].placement);
|
|
1455
1472
|
n.push({
|
|
1456
1473
|
identity: e.identity,
|
|
1457
1474
|
region: s.get(c) ?? d?.region ?? e.region,
|
|
@@ -1465,16 +1482,16 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1465
1482
|
});
|
|
1466
1483
|
}
|
|
1467
1484
|
return n;
|
|
1468
|
-
},
|
|
1469
|
-
let a = new Set(n.filter((e) => e !== "side")), o = { ...e.regions }, s = new Map(t.map((e) => [
|
|
1485
|
+
}, Un = (e, t, r, i) => {
|
|
1486
|
+
let a = new Set(n.filter((e) => e !== "side")), o = { ...e.regions }, s = new Map(t.map((e) => [U(e.identity), e])), c = new Set(t.flatMap((e) => e.transferredFromKey ?? []));
|
|
1470
1487
|
for (let n of b) {
|
|
1471
|
-
let l = e.regions[n], u = t.some((e) => e.region === n && e.identity.kind === "page" && e.placement.role === "location"), d = /* @__PURE__ */ new Set(), f =
|
|
1488
|
+
let l = e.regions[n], u = t.some((e) => e.region === n && e.identity.kind === "page" && e.placement.role === "location"), d = /* @__PURE__ */ new Set(), f = Vn(l.widgets, i?.regions[n].widgets ?? [], s, l.savedWidgetOrder).flatMap((e) => {
|
|
1472
1489
|
if (!e.placementIdentity) return n === "main" && u && e.role === "location" ? [] : [e];
|
|
1473
|
-
let t =
|
|
1490
|
+
let t = U(e.placementIdentity), i = s.get(t);
|
|
1474
1491
|
return i ? i.region === n ? (d.add(t), [i.placement]) : [] : r.has(t) || c.has(t) ? [] : [e];
|
|
1475
1492
|
});
|
|
1476
1493
|
for (let e of t) {
|
|
1477
|
-
let t =
|
|
1494
|
+
let t = U(e.identity);
|
|
1478
1495
|
e.region === n && !d.has(t) && f.push(e.placement);
|
|
1479
1496
|
}
|
|
1480
1497
|
let p = S(f, t.find((e) => e.region === n && e.placement.tabRetention === "preview")?.placement.widgetId ?? l.activeWidgetId), m = l.widgets.find((e) => e.widgetId === l.activeWidgetId), h = [
|
|
@@ -1495,7 +1512,7 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1495
1512
|
...e,
|
|
1496
1513
|
regions: o
|
|
1497
1514
|
};
|
|
1498
|
-
},
|
|
1515
|
+
}, Wn = (e) => {
|
|
1499
1516
|
let t = new Set(e.desired.flatMap((e) => e.transferredFromKey ?? [])), n = e.layout;
|
|
1500
1517
|
for (let [r, i] of e.current) e.removedKeys.has(r) && !t.has(r) && (n = E(n, i.placement.widgetId));
|
|
1501
1518
|
let r = n.activeLocationWidgetId ? C(n, n.activeLocationWidgetId)?.placement : void 0, i = D(n), a = r?.widgetId ?? i?.widgetId, o = n.activeWidgetId ? C(n, n.activeWidgetId)?.placement : void 0, s = a ? C(n, a)?.placement : Object.values(n.regions).flatMap((e) => e.widgets)[0];
|
|
@@ -1505,14 +1522,14 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1505
1522
|
activeLocationWidgetId: a,
|
|
1506
1523
|
activeResourceKey: o?.resourceKey ?? s?.resourceKey
|
|
1507
1524
|
};
|
|
1508
|
-
},
|
|
1525
|
+
}, Gn = (e, t) => {
|
|
1509
1526
|
let n = D(e)?.resourceKey;
|
|
1510
1527
|
if (!n) return e;
|
|
1511
|
-
let r = new Map(t.map((e) => [
|
|
1528
|
+
let r = new Map(t.map((e) => [U(e.identity), e])), i = Object.fromEntries(Object.entries(e.regions).map(([e, t]) => [e, {
|
|
1512
1529
|
...t,
|
|
1513
1530
|
widgets: t.widgets.map((e) => {
|
|
1514
1531
|
if (e.role !== "sub-panel" || !e.placementIdentity) return e;
|
|
1515
|
-
let t = r.get(
|
|
1532
|
+
let t = r.get(U(e.placementIdentity));
|
|
1516
1533
|
return !t || t.identity.kind !== "page" ? e : {
|
|
1517
1534
|
...e,
|
|
1518
1535
|
ownerResourceKey: n
|
|
@@ -1523,25 +1540,25 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1523
1540
|
...e,
|
|
1524
1541
|
regions: i
|
|
1525
1542
|
};
|
|
1526
|
-
},
|
|
1543
|
+
}, Kn = (e, t) => {
|
|
1527
1544
|
if (e.placements.length === 0 && t.size === 0 && (e.activate?.length ?? 0) === 0) return e.layout;
|
|
1528
|
-
let n = $(e.layout), r =
|
|
1545
|
+
let n = $(e.layout), r = Hn(e, n), i = Wn({
|
|
1529
1546
|
current: n,
|
|
1530
1547
|
desired: r,
|
|
1531
1548
|
removedKeys: t,
|
|
1532
|
-
layout:
|
|
1533
|
-
}), a = new Map(r.map((e) => [
|
|
1549
|
+
layout: Un(e.layout, r, t, e.modeLayout)
|
|
1550
|
+
}), a = new Map(r.map((e) => [U(e.identity), e]));
|
|
1534
1551
|
for (let t of e.activate ?? []) {
|
|
1535
|
-
let e = a.get(
|
|
1536
|
-
if (!e) throw Error(`Cannot activate missing rendered placement: ${
|
|
1552
|
+
let e = a.get(U(t));
|
|
1553
|
+
if (!e) throw Error(`Cannot activate missing rendered placement: ${U(t)}`);
|
|
1537
1554
|
i = _e(i, e.region, e.placement);
|
|
1538
1555
|
}
|
|
1539
|
-
return
|
|
1540
|
-
},
|
|
1541
|
-
let t = new Set(e.placements.map((e) =>
|
|
1542
|
-
return
|
|
1543
|
-
},
|
|
1544
|
-
let i =
|
|
1556
|
+
return Gn(i, r);
|
|
1557
|
+
}, qn = (e) => {
|
|
1558
|
+
let t = new Set(e.placements.map((e) => U(e.identity))), n = $(e.layout);
|
|
1559
|
+
return Kn(e, new Set([...n.keys()].filter((e) => !t.has(e))));
|
|
1560
|
+
}, Jn = (e) => Kn(e, new Set(e.remove.map(U))), Yn = (e, t, n, r) => {
|
|
1561
|
+
let i = Hn({
|
|
1545
1562
|
layout: n,
|
|
1546
1563
|
modeLayout: r,
|
|
1547
1564
|
placements: e.placements,
|
|
@@ -1550,53 +1567,52 @@ var _ = 0, v = /* @__PURE__ */ new Map(), ee = (e, t) => {
|
|
|
1550
1567
|
...e.reconciliation.activate,
|
|
1551
1568
|
...e.reconciliation.add,
|
|
1552
1569
|
...e.reconciliation.update.map((e) => e.desired)
|
|
1553
|
-
].filter((e) => e.value.tabRetention === "preview").map((e) =>
|
|
1570
|
+
].filter((e) => e.value.tabRetention === "preview").map((e) => U(e.identity)), o = /* @__PURE__ */ new Set();
|
|
1554
1571
|
for (let e of Object.values(n.regions)) {
|
|
1555
|
-
let t = i.filter((t) => t.region === e.id), n = a.map((e) => t.find((t) =>
|
|
1556
|
-
for (let e of r.replaced) e.placementIdentity && o.add(
|
|
1572
|
+
let t = i.filter((t) => t.region === e.id), n = a.map((e) => t.find((t) => U(t.identity) === e)).find(Boolean), r = S(t.map((e) => e.placement), n?.placement.widgetId ?? e.activeWidgetId);
|
|
1573
|
+
for (let e of r.replaced) e.placementIdentity && o.add(U(e.placementIdentity));
|
|
1557
1574
|
}
|
|
1558
|
-
return
|
|
1559
|
-
},
|
|
1575
|
+
return Xn(e, t, o);
|
|
1576
|
+
}, Xn = (e, t, n) => {
|
|
1560
1577
|
if (!n.size) return e;
|
|
1561
|
-
let r = e.placements.filter((e) => !n.has(
|
|
1578
|
+
let r = e.placements.filter((e) => !n.has(U(e.identity))), i = e.pageStates;
|
|
1562
1579
|
for (let t of e.placements) {
|
|
1563
1580
|
let e = t.identity;
|
|
1564
|
-
e.kind === "page" && n.has(
|
|
1581
|
+
e.kind === "page" && n.has(U(e)) && (i = In(i, e, { kind: "close" }));
|
|
1565
1582
|
}
|
|
1566
1583
|
return {
|
|
1567
1584
|
...e,
|
|
1568
1585
|
placements: r,
|
|
1569
1586
|
pageStates: i,
|
|
1570
|
-
reconciliation:
|
|
1587
|
+
reconciliation: G({
|
|
1571
1588
|
current: t.placements,
|
|
1572
1589
|
desired: r,
|
|
1573
1590
|
destinations: e.reconciliation.destinations,
|
|
1574
|
-
activate: e.reconciliation.activate.filter((e) => !n.has(
|
|
1591
|
+
activate: e.reconciliation.activate.filter((e) => !n.has(U(e.identity))).map((e) => e.identity),
|
|
1575
1592
|
valuesEqual: (e, t) => JSON.stringify(e) === JSON.stringify(t)
|
|
1576
1593
|
})
|
|
1577
1594
|
};
|
|
1578
|
-
},
|
|
1579
|
-
let r =
|
|
1595
|
+
}, Zn = (e, t, n) => !t.activePageId || t.projectId !== e.projectId || t.activeModeId !== e.activeModeId || !Q(e, t) ? [] : Object.values(n.regions).flatMap((e) => e.widgets.filter((e) => e.tabRetention === "preview")), Qn = (e, t, n) => {
|
|
1596
|
+
let r = Zn(e, t, n), a = Xn(e, t, new Set(r.flatMap((t) => {
|
|
1580
1597
|
if (!t.placementIdentity) return [];
|
|
1581
|
-
let n =
|
|
1598
|
+
let n = U(t.placementIdentity), r = e.placements.find((e) => U(e.identity) === n);
|
|
1582
1599
|
return r?.value.tabRetention === "preview" && i(r.value.resource) === i(t.resource) ? [n] : [];
|
|
1583
1600
|
}))), o = a.pageStates;
|
|
1584
1601
|
for (let e of r) {
|
|
1585
1602
|
let t = e.placementIdentity;
|
|
1586
|
-
t?.kind === "page" && (o =
|
|
1603
|
+
t?.kind === "page" && (o = In(o, t, { kind: "close" }));
|
|
1587
1604
|
}
|
|
1588
1605
|
return r.length ? {
|
|
1589
1606
|
...a,
|
|
1590
1607
|
pageStates: o
|
|
1591
1608
|
} : a;
|
|
1592
|
-
},
|
|
1593
|
-
|
|
1594
|
-
},
|
|
1595
|
-
let t =
|
|
1609
|
+
}, $n = /* @__PURE__ */ new WeakMap(), er = (e, t) => {
|
|
1610
|
+
$n.set(e, t);
|
|
1611
|
+
}, tr = (e) => {
|
|
1612
|
+
let t = $n.get(e);
|
|
1596
1613
|
if (!t) throw Error("Workbench renderers are not initialized");
|
|
1597
1614
|
return t;
|
|
1598
1615
|
};
|
|
1599
|
-
|
|
1600
|
-
export { Ct as $, ae as $t, sn as A, k as At, Ut as B, C as Bt, tn as C, N as Ct, on as D, Oe as Dt, ln as E, Ee as Et, qt as F, we as Ft, Nt as G, he as Gt, Ft as H, D as Ht, Gt as I, _e as It, At as J, T as Jt, Lt as K, me as Kt, Wt as L, ge as Lt, $t as M, be as Mt, en as N, Ce as Nt, an as O, De as Ot, Qt as P, O as Pt, St as Q, S as Qt, zt as R, de as Rt, dn as S, Ae as St, un as T, Pe as Tt, It as U, fe as Ut, Vt as V, ue as Vt, Pt as W, E as Wt, Dt as X, se as Xt, Ot as Y, ce as Yt, Et as Z, oe as Zt, Z as _, He as _t, Gn as a, ee as an, gt as at, mn as b, Fe as bt, Hn as c, d as cn, H as ct, Sn as d, f as dn, it as dt, re as en, bt as et, An as f, l as fn, rt as ft, _n as g, Ve as gt, vn as h, Be as ht, Kn as i, te as in, K as it, cn as j, xe as jt, rn as k, A as kt, jn as l, p as ln, W as lt, bn as m, Ze as mt, Yn as n, b as nn, ht as nt, Wn as o, g as on, _t as ot, yn as p, z as pt, J as q, ve as qt, qn as r, y as rn, yt as rt, Un as s, h as sn, ft as st, Xn as t, x as tn, G as tt, Q as u, m as un, at as ut, gn as v, Le as vt, nn as w, Ie as wt, fn as x, ke as xt, hn as y, Ne as yt, Ht as z, le as zt };
|
|
1616
|
+
export { Ot as $, se as $t, fn as A, Ae as At, Jt as B, ge as Bt, sn as C, P as Ct, dn as D, Me as Dt, mn as E, k as Et, Qt as F, be as Ft, Rt as G, D as Gt, Bt as H, le as Ht, Xt as I, we as It, Ft as J, he as Jt, Ht as K, fe as Kt, Yt as L, Ce as Lt, an as M, O as Mt, on as N, De as Nt, un as O, je as Ot, rn as P, xe as Pt, Dt as Q, ce as Qt, Wt as R, Te as Rt, gn as S, Pe as St, hn as T, Re as Tt, Vt as U, C as Ut, Kt as V, de as Vt, zt as W, ue as Wt, Mt as X, ve as Xt, Nt as Y, me as Yt, jt as Z, T as Zt, Z as _, Ke as _t, Xn as a, b as an, bt as at, yn as b, ze as bt, qn as c, ee as cn, U as ct, Dn as d, d as dn, ct as dt, oe as en, Tt as et, Fn as f, p as fn, st as ft, Sn as g, Ge as gt, Cn as h, l as hn, We as ht, Zn as i, x as in, q as it, pn as j, ke as jt, ln as k, Oe as kt, In as l, g as ln, G as lt, Tn as m, f as mn, tt as mt, er as n, ae as nn, yt as nt, Yn as o, y as on, xt as ot, wn as p, m as pn, B as pt, J as q, E as qt, Qn as r, re as rn, Ct as rt, Jn as s, te as sn, gt as st, tr as t, S as tn, K as tt, Q as u, h as un, lt as ut, xn as v, Ve as vt, cn as w, Be as wt, _n as x, Ne as xt, bn as y, Le as yt, qt as z, _e as zt };
|
|
1601
1617
|
|
|
1602
|
-
//# sourceMappingURL=workbench-renderers-
|
|
1618
|
+
//# sourceMappingURL=workbench-renderers-DOc_oE0K.js.map
|