@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.
Files changed (29) hide show
  1. package/dist/extensions.d.ts +21 -62
  2. package/dist/extensions.js +1250 -978
  3. package/dist/extensions.js.map +1 -1
  4. package/dist/{index-CEjUGkgB.d.ts → index-DL-0XKr0.d.ts} +247 -191
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.js +1530 -1271
  7. package/dist/index.js.map +1 -1
  8. package/dist/{kanban-presentation-CQNhh7IY.d.ts → kanban-presentation-CdHu43iH.d.ts} +1 -3
  9. package/dist/{layout-tab-presentation-Bz6EgFEa.js → layout-tab-presentation-CCUroIOY.js} +2 -3
  10. package/dist/{layout-tab-presentation-Bz6EgFEa.js.map → layout-tab-presentation-CCUroIOY.js.map} +1 -1
  11. package/dist/{navigation-tree-registry-BsMNSEyZ.js → navigation-tree-registry-DM4Lhfir.js} +3 -4
  12. package/dist/{navigation-tree-registry-BsMNSEyZ.js.map → navigation-tree-registry-DM4Lhfir.js.map} +1 -1
  13. package/dist/{react-hsii-4ZV.js → react-7X-EBlBD.js} +4163 -3123
  14. package/dist/react-7X-EBlBD.js.map +1 -0
  15. package/dist/react.d.ts +7 -94
  16. package/dist/react.js +1 -2
  17. package/dist/storage.d.ts +1 -7
  18. package/dist/storage.js +106 -80
  19. package/dist/storage.js.map +1 -1
  20. package/dist/webview-runtime.d.ts +0 -4
  21. package/dist/webview-runtime.js +2 -3
  22. package/dist/webview-runtime.js.map +1 -1
  23. package/dist/{workbench-renderers-Ku0_knjs.js → workbench-renderers-DOc_oE0K.js} +308 -292
  24. package/dist/workbench-renderers-DOc_oE0K.js.map +1 -0
  25. package/package.json +3 -3
  26. package/dist/file-renderer-view-CJBCZZIE.js +0 -668
  27. package/dist/file-renderer-view-CJBCZZIE.js.map +0 -1
  28. package/dist/react-hsii-4ZV.js.map +0 -1
  29. 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
- //#region ../pstdio-api-contracts/src/extension-kernel/page-params.ts
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 (!c(l, a)) {
28
- if (n) throw o(i);
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
- return;
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
- //#endregion
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
- //#endregion
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
- if (_ === 0) {
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 !(!O(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({
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
- }, O = (e, t) => {
355
+ }, Ce = (e, t) => {
367
356
  let n = e.eligibleLocations?.modeIds;
368
357
  return !n?.length || t !== void 0 && n.includes(t);
369
- }, Ce = (e, t, n, r, i = {}) => ye(e, r?.resource ?? t) ? i.ignoreResourceLocation ? O(e, n) : Se(e, t, n, r, i.location) : !1, we = (e, t) => {
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
- }, Te = "workbench.core", k = (e = {}) => ({
361
+ }, Ee = "workbench.core", De = (e = {}) => ({
373
362
  source: e.source ?? "module",
374
- ownerId: e.ownerId ?? Te,
363
+ ownerId: e.ownerId ?? Ee,
375
364
  priority: e.priority ?? 0
376
- }), A = (e, t) => t.priority - e.priority || e.ownerId.localeCompare(t.ownerId), Ee = (e = {}, t) => {
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
- }, De = (e) => ({
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
- }), Oe = (e) => {
407
+ }), Ae = (e) => {
419
408
  let { closable: t, ownedPanelMenuIds: n, ...r } = e;
420
409
  return r;
421
- }, j = {
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
- }, M = Object.values(j).flat(), N = (e) => e.panels ? [.../* @__PURE__ */ new Set(["main", ...e.panels])] : x, ke = (e) => Object.keys(j).find((t) => j[t].some((t) => t === e)), Ae = (e, t) => !e || N(e).includes(t), P = (e, t) => {
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
- }, je = (e, t) => {
443
- let n = t.find((t) => t && P(e, t.widgetId));
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
- }, Me = (e, t) => {
459
+ }, Ie = (e, t) => {
450
460
  if (t.length === 0) return e;
451
- let n = new Set(Object.keys(j).filter((e) => j[e].some((e) => t.includes(e)))), r = t.some((t) => {
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
- ...je(s, [P(s, e.activeWidgetId)]),
469
- activeLocationWidgetId: P(s, e.activeLocationWidgetId)?.widgetId,
478
+ ...Fe(s, [F(s, e.activeWidgetId)]),
479
+ activeLocationWidgetId: F(s, e.activeLocationWidgetId)?.widgetId,
470
480
  locationSubPanelSelections: o
471
481
  };
472
- }, F = (e, t) => {
482
+ }, I = (e, t) => {
473
483
  let n = new Set(t);
474
- return Me(e, Object.keys(j).filter((e) => !n.has(e)).flatMap((e) => j[e]));
475
- }, Ne = (e, t, n) => {
476
- let r = t ? F(e, N(t)) : e;
477
- for (let e of ["side", "secondary"]) Ae(t, e) && n(e)?.canClose === !1 && !r.regions[e].visible && (r = {
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
- }, Pe = (e, t, n, r) => {
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 = Me(e, M), i = { ...t.regions };
491
- for (let e of M) i[e] = r.regions[e];
492
- return F({
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 M) i[e] = t.regions[e];
499
- let a = F({
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
- ...je(a, [P(a, t.activeWidgetId), P(a, e.activeWidgetId)]),
505
- activeLocationWidgetId: P(a, t.activeLocationWidgetId)?.widgetId ?? P(a, e.activeLocationWidgetId)?.widgetId,
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
- }, Fe = (e) => {
531
+ }, ze = (e) => {
509
532
  for (let t = e.length - 1; t >= 0; --t) g("mode disposal", () => e[t]?.dispose());
510
- }, Ie = (e, t) => {
533
+ }, Be = (e, t) => {
511
534
  t !== e.layout.getLayout() && e.layout.restoreLayout(t);
512
- }, Le = async (e, t) => {
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
- }, Re = (e, t) => t.find((t) => t.ref.id === e.page.id && t.ref.extensionId === e.page.extensionId), ze = (e, t) => {
533
- let n = Re(e, t.pages);
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
- }, Be = (e, t) => {
536
- let n = Re(e, t.pages);
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
- }, Ve = (e) => {
561
+ }, Ge = (e) => {
539
562
  let t = [];
540
563
  for (let n = e.location; n; n = n.parent) {
541
- let r = ze(n, e);
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
- }, He = (e) => {
571
+ }, Ke = (e) => {
549
572
  let t = e.location;
550
- for (let n = e.location; n; n = n.parent) Be(n, e) && (t = n.parent);
573
+ for (let n = e.location; n; n = n.parent) We(n, e) && (t = n.parent);
551
574
  return t;
552
- }, I = (e) => `${e.extensionId ?? ""}:page:${e.id}`, L = (e, t) => e.find((e) => I(e.ref) === I(t)), Ue = (e, t) => e.find((e) => e.id === t), We = (e) => {
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
- }, Ge = (e) => {
583
+ }, Ye = (e) => {
561
584
  if (e) return JSON.parse(JSON.stringify(e));
562
- }, Ke = (e, t) => {
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: Ge(n.metadata) } : {}
596
+ ...n.metadata ? { metadata: Ye(n.metadata) } : {}
574
597
  };
575
598
  return Object.freeze(r);
576
- }, qe = (e) => Object.freeze({
599
+ }, Ze = (e) => Object.freeze({
577
600
  extensionId: e.ref.extensionId,
578
601
  kind: "page",
579
602
  id: e.ref.id
580
- }), Je = (e) => e ? JSON.stringify(e) : "", R = (e, t) => e.resource ? t.toUri(t.normalize(e.resource)) : "", Ye = (e, t, n) => I(e.page) === I(t.page) && R(e, n) === R(t, n), z = (e, t, n = []) => {
581
- let r = L(n, e.page)?.document, i = r ? e.resource?.metadata?.[r.metadataKey] : void 0;
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
- I(e.page),
584
- R(e, t),
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
- Je(e.section)
615
+ Qe(e.section)
593
616
  ]);
594
- }, Xe = (e, t, n = []) => {
595
- let r = z(e, t, n);
596
- return e.parent ? `${r}>${Xe(e.parent, t, n)}` : r;
597
- }, Ze = (e, t, n, r = []) => {
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 (z(i, n, r) !== z(a, n, r) || JSON.stringify(i.params ?? {}) !== JSON.stringify(a.params ?? {})) return !1;
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
- }, Qe = (e) => Object.isFrozen(e) ? e : Object.freeze({
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
- }), B = (e) => {
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: qe(e.page),
637
+ page: Ze(e.page),
615
638
  ...e.params ? { params: e.params } : {},
616
- ...e.resource ? { resource: Ke(e.resource, e.resources) } : {},
617
- ...e.section ? { section: We(e.section) } : {},
618
- ...e.position ? { position: Qe(e.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
- }, $e = (e) => {
644
+ }, rt = (e) => {
622
645
  if (!e.page.parentId) return;
623
- let t = Ue(e.pages, e.page.parentId);
646
+ let t = qe(e.pages, e.page.parentId);
624
647
  if (!t) throw Error(`Unknown parent page: ${e.page.parentId}`);
625
- return V({
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
- }, et = (e) => ({
654
+ }, it = (e) => ({
632
655
  resource: e.resource,
633
656
  section: e.section,
634
657
  position: e.position,
635
658
  params: e.params
636
- }), V = (e) => {
637
- let t = B({
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 = z(t, e.resources, e.pages);
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 ?? $e({
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 B({
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
- }, tt = (e, t, n) => t?.parent && Ye(e, t, n) ? t.parent : void 0, nt = (e) => {
662
- let t = L(e.pages, e.target.page);
663
- if (!t) throw Error(`Unknown page: ${I(e.target.page)}`);
664
- let n = B({
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 = z(n, e.resources, e.pages);
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 ? nt({
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 : tt(n, e.active, e.resources), o = V({
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
- }, rt = (e) => nt({
717
+ }, st = (e) => ot({
695
718
  ...e,
696
719
  seen: /* @__PURE__ */ new Set()
697
- }), it = (e) => {
720
+ }), ct = (e) => {
698
721
  let t = (n, r) => {
699
- let i = L(e.pages, n.page);
700
- if (!i) throw Error(`Unknown page: ${I(n.page)}`);
701
- let a = B({
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 = z(a, e.resources, e.pages);
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: V({
736
+ location: H({
714
737
  page: i,
715
738
  pages: e.pages,
716
739
  resources: e.resources,
717
740
  seen: r,
718
- ...et(a),
741
+ ...it(a),
719
742
  ...c ? { parent: c } : {}
720
743
  })
721
744
  };
722
745
  };
723
746
  return t(e.location, /* @__PURE__ */ new Set());
724
- }, at = (e) => {
725
- let t = Ue(e.pages, e.pageId);
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: V({
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
- }, ot = (e, t) => e < t ? -1 : +(e > t), st = (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}`, H = (e) => e.kind === "shell" ? JSON.stringify([
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
- ]), U = (e, t) => {
755
- let n = ot(st(e.identity), st(t.identity));
756
- return n === 0 ? ot(e.identity.instanceKey, t.identity.instanceKey) : n;
757
- }, ct = (e, t) => e.order - t.order || U(e, t), lt = (e, t) => {
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
- }, ut = (e) => {
784
+ }, mt = (e) => {
762
785
  let t = [], n = /* @__PURE__ */ new Set(), r = (e, r) => {
763
786
  for (let i of r) {
764
- if (lt(e, i), !Number.isFinite(i.order)) throw Error("Placement order must be a finite number");
765
- let r = H(i.identity);
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
- }, dt = () => b.reduce((e, t) => (e[t] = [], e), {}), ft = (e) => {
773
- let t = ut(e), n = new Set((e.closed ?? []).map(H)), r = [], i = dt();
774
- for (let e of t) {
775
- if (n.has(H(e.identity))) {
776
- r.push(e);
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
- }, pt = (e) => {
805
+ }, _t = (e) => {
789
806
  let t = /* @__PURE__ */ new Map();
790
807
  for (let n of e) {
791
- let e = H(n.identity);
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
- }, mt = (e, t, n) => e.region === t.region && e.order === t.order && n(e.value, t.value), W = (e) => {
797
- let t = pt(e.current), n = pt(e.desired), r = [], i = [], a = [], o = [];
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 ? mt(n, s, e.valuesEqual) ? i.push(s) : a.push({
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(H)), c = Array.from(s, (e) => {
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(U), i.sort(U), a.sort((e, t) => U(e.desired, t.desired)), c.sort(U), o.sort(U), {
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
- }, G = "$main", ht = (e) => e.item.kind === "view" ? e.item.presence !== "fixed" : e.role !== "primary" || e.item.binding.cardinality === "many", gt = (e) => {
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: G,
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
- }, K = (e) => {
841
- let t = gt(e);
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
- }, _t = (e, t) => {
847
- let n = K(e).find((e) => e.id === t);
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
- }, vt = (e) => {
867
+ }, St = (e) => {
851
868
  if (e.main.kind === "panels") return {
852
- id: G,
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
- }, yt = (e) => {
862
- let t = vt(e);
863
- return [...K(e), ...t ? [t] : []];
864
- }, q = (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, bt = (e, t, n) => e.resource && t ? q(e, t, n) : "default", xt = (e, t, n) => {
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
- }, St = (e, t, n) => e.resource ? q(e, t?.resource, n) : e.main.kind === "panels" && t ? `${e.id}|${Xe({
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, Ct = (e, t) => Object.fromEntries(Object.entries(e).filter(([e]) => e !== t && !e.startsWith(`${t}|`))), wt = (e) => e.replace(/^['"]|['"]$/g, ""), Tt = (e, t) => {
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 = wt(i ?? "");
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
- }, Et = (e, t) => !t || t.split("||").some((t) => t.split("&&").every((t) => Tt(e, t))), Dt = () => {
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 Et(e.getState().values, t);
960
+ return jt(e.getState().values, t);
944
961
  }
945
962
  };
946
- }, Ot = (e, t) => {
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
- }, kt = () => {
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 Ot(t, e.getState().changes);
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", At = "resource_hierarchy_cycle", jt = (e) => [...e].sort((e, t) => t.priority - e.priority || e.id.localeCompare(t.id)), Mt = (e, t, n) => {
989
- let r = jt(e), a = [t], o = /* @__PURE__ */ new Set([`resource:${i(t)}`]), s = t;
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: At,
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
- }, Nt = "workbench.resource.type", Pt = "workbench.resource.extensionId", Ft = "workbench.resource.id", It = (e) => `workbench.resource.metadata.${e}`, Lt = "workbench.selectionResourceKey", Rt = (e) => typeof e == "string" || typeof e == "number" || typeof e == "boolean", zt = (e) => {
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
- [Nt]: e.type,
1010
- [Ft]: e.id,
1011
- [Pt]: e.extensionId
1026
+ [Rt]: e.type,
1027
+ [Bt]: e.id,
1028
+ [zt]: e.extensionId
1012
1029
  };
1013
- for (let [n, r] of Object.entries(e.metadata ?? {})) Rt(r) && (t[It(n)] = r);
1030
+ for (let [n, r] of Object.entries(e.metadata ?? {})) Ut(r) && (t[Vt(n)] = r);
1014
1031
  return t;
1015
- }, Bt = (e) => e === "workbench.resource.type" || e === "workbench.resource.extensionId" || e === "workbench.resource.id" || e.startsWith(It("")), Vt = (e, t) => {
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)) Bt(t) || (n[t] = r);
1034
+ for (let [t, r] of Object.entries(e)) Gt(t) || (n[t] = r);
1018
1035
  return {
1019
1036
  ...n,
1020
- ...zt(t)
1037
+ ...Wt(t)
1021
1038
  };
1022
- }, Ht = (e) => ({ [Lt]: i(e) }), Ut = (e) => {
1039
+ }, qt = (e) => ({ [Ht]: i(e) }), Jt = (e) => {
1023
1040
  if (!e) return [];
1024
- let t = e.metadata?.[Lt];
1041
+ let t = e.metadata?.[Ht];
1025
1042
  return typeof t != "string" || t === i(e) ? [i(e)] : [i(e), t];
1026
- }, Wt = (e = {}) => {
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: kt(),
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
- ...k(t),
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(A);
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 jt(Object.values(i.getState().hierarchyProviders));
1153
+ return It(Object.values(i.getState().hierarchyProviders));
1137
1154
  },
1138
1155
  walkHierarchy(t) {
1139
- return t ? Mt(Object.values(i.getState().hierarchyProviders), t, (e) => {
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
- }, Gt = (e) => Array.isArray(e) ? e : e.trim().split(/\s+/).filter(Boolean), Kt = (e) => {
1158
- let t = Gt(e);
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
- }, qt = (e) => {
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
- ...k(r),
1187
+ ...De(r),
1171
1188
  ...n,
1172
- keybinding: Kt(n.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(A);
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(A);
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(A).flatMap((e) => e.action.kind === "command" ? [{
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
- }, Jt = (e, t, n) => ({
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
- }, Yt = {
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: Jt("primary", "primary", "global"),
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: Jt("secondary", "derived", "scoped"),
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: Jt("attached", "detached", "scoped"),
1237
+ side: $t("attached", "detached", "scoped"),
1221
1238
  "side-right-menu": Y(["attached"])
1222
- }, Xt = (e) => Yt[e], Zt = () => b.filter((e) => Yt[e].role === "anchor"), Qt = (e) => {
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 = Yt[t];
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
- }, $t = (e, t) => {
1230
- let n = fe(e.regions[Qt(t)]);
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
- }, en = ({ layout: e, primary: t, isInScope: n }) => {
1251
+ }, on = ({ layout: e, primary: t, isInScope: n }) => {
1235
1252
  let r = [];
1236
- for (let i of Zt()) {
1237
- let a = Xt(i);
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
- }, tn = (e) => [
1266
+ }, sn = (e) => [
1250
1267
  "workbench",
1251
1268
  "header",
1252
1269
  e,
1253
1270
  "leading"
1254
- ], nn = (e) => [
1271
+ ], cn = (e) => [
1255
1272
  "workbench",
1256
1273
  "header",
1257
1274
  e,
1258
1275
  "trailing"
1259
- ], rn = (e) => [
1276
+ ], ln = (e) => [
1260
1277
  "workbench",
1261
1278
  "regionTabs",
1262
1279
  e,
1263
1280
  "leading"
1264
- ], an = (e) => [
1281
+ ], un = (e) => [
1265
1282
  "workbench",
1266
1283
  "regionTabs",
1267
1284
  e,
1268
1285
  "add"
1269
- ], on = ["workbench", "commandPalette"], sn = tn("nav"), cn = nn("nav"), ln = [
1286
+ ], dn = ["workbench", "commandPalette"], fn = sn("nav"), pn = cn("nav"), mn = [
1270
1287
  "workbench",
1271
1288
  "breadcrumb",
1272
1289
  "location"
1273
- ], un = (e) => [
1290
+ ], hn = (e) => [
1274
1291
  "workbench",
1275
1292
  "resource",
1276
1293
  e,
1277
1294
  "context"
1278
- ], dn = (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, fn = (e) => {
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
- }, pn = /* @__PURE__ */ new WeakMap(), mn = (e, t) => {
1285
- pn.set(e, t);
1286
- }, hn = (e, t) => {
1287
- let n = pn.get(e);
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]), gn = (e, t, n) => {
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 && dn(e.resource, r) ? q(e, r, n) : n.toUri(r);
1292
- }, _n = {
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
- }, vn = (e, t = "view") => JSON.stringify([t, e.placementIdentity ? H(e.placementIdentity) : e.instanceId]), yn = (e, t, n) => {
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
- }, bn = async (e, t, n, r) => {
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
- }, xn = (e, t, n) => {
1324
+ }, En = (e, t, n) => {
1308
1325
  let r = e.placementIdentity;
1309
1326
  if (r?.kind !== "page") return !1;
1310
- let i = (e, t) => xt(e, r.pageId, r.instanceKey) && t?.openStaticSlotIds.includes(r.slotId) || t?.resourceInstances[r.slotId]?.some((e) => e.instanceKey === r.instanceKey);
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
- }, Sn = (e) => ({
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), Cn = (e, t) => new Set(Object.values(e?.regions ?? {}).flatMap((e) => e.widgets.flatMap((n) => e.id === "main" === t && n.placementIdentity ? [H(n.placementIdentity)] : []))), wn = (e, t, n) => {
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 && yt(i).find((e) => e.id === r.slotId), o = a?.item.kind === "binding" ? a.item.binding : i?.resource;
1323
- return o && (!e.resource || !dn(o, e.resource)) ? !1 : !!(i?.resource && Z(i, e.resource) !== Z(i, t.location?.resource));
1324
- }, Tn = (e, t, n) => {
1325
- let { state: r, previous: i, layout: a, pageLayout: o } = e, s = Q(r, i), c = new Set(r.reconciliation.activate.map((e) => H(e.identity))), l = [...t], u = s ? o?.regions.main.widgets : a.regions.main.widgets;
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) || xn(a, r, i) || !wn(a, r, s)) continue;
1329
- let u = H(o);
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) => H(e.identity) === u);
1332
- l = l.filter((e) => H(e.identity) !== u), l.push({
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
- }, En = (e, t) => {
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
- }, Dn = (e, t) => {
1350
- let n = H(t.placementIdentity), r = e.state.reconciliation.activate.find((e) => H(e.identity) === 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
- } : En(e, t);
1355
- }, On = (e, t, n) => {
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") && !xn(t, e.state, e.previous);
1358
- }, kn = (e, t, n) => {
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 || !On(e, r, a)) continue;
1363
- let s = H(i);
1364
- o = o.filter((e) => H(e.identity) !== s), o.push({
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: Dn(e, r)
1385
+ value: Mn(e, r)
1369
1386
  });
1370
1387
  }
1371
1388
  return o;
1372
- }, An = (e) => {
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 ? Cn(r, !0) : /* @__PURE__ */ new Set(), c = Cn(o, !1), l = new Set(t.reconciliation.activate.map((e) => H(e.identity))), u = kn(e, Tn(e, t.placements.filter((e) => {
1376
- let t = H(e.identity);
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: W({
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) => H(t.identity) === H(e.identity))).map((e) => e.identity),
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
- }, jn = (e, t, n) => Object.fromEntries(Object.entries(e).map(([e, r]) => {
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" && xt(e, t.pageId, t.instanceKey) ? r.openStaticSlotIds.filter((e) => e !== t.slotId) : r.openStaticSlotIds,
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
- })), Mn = (e) => e.value.role === "sub-panel" && e.identity.kind === "page", Nn = (e, t, n) => Mn(e) ? e.value.ownerResourceKey ?? t?.ownerResourceKey ?? n?.ownerResourceKey : e.value.ownerResourceKey, $ = (e) => {
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 = H(e.placementIdentity);
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
- }, Pn = (e) => {
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
- }, Fn = (e) => {
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 ? H(e.placementIdentity) : null);
1442
+ t.set(e.widgetId, e.placementIdentity ? U(e.placementIdentity) : null);
1426
1443
  }
1427
1444
  return t;
1428
- }, In = (e, t, n, r) => {
1429
- let i = new Set(e.map((e) => e.widgetId)), a = [...e, ...t.filter((e) => !i.has(e.widgetId) && e.placementIdentity && n.has(H(e.placementIdentity)))];
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
- }, Ln = (e, t) => {
1434
- let n = [], r = /* @__PURE__ */ new Set(), i = Fn(e.layout), a = e.modeLayout ? $(e.modeLayout) : /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Set(), s = new Map(e.destinations?.map((e) => [H(e.identity), e.region])), c = ft({
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) => H(e.identity))), u = /* @__PURE__ */ new Set();
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 = H(e.identity);
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 : Pn({
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 = Nn(e, d?.placement, f?.[1].placement);
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
- }, Rn = (e, t, r, i) => {
1469
- let a = new Set(n.filter((e) => e !== "side")), o = { ...e.regions }, s = new Map(t.map((e) => [H(e.identity), e])), c = new Set(t.flatMap((e) => e.transferredFromKey ?? []));
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 = In(l.widgets, i?.regions[n].widgets ?? [], s, l.savedWidgetOrder).flatMap((e) => {
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 = H(e.placementIdentity), i = s.get(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 = H(e.identity);
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
- }, zn = (e) => {
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
- }, Bn = (e, t) => {
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) => [H(e.identity), e])), i = Object.fromEntries(Object.entries(e.regions).map(([e, t]) => [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(H(e.placementIdentity));
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
- }, Vn = (e, t) => {
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 = Ln(e, n), i = zn({
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: Rn(e.layout, r, t, e.modeLayout)
1533
- }), a = new Map(r.map((e) => [H(e.identity), 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(H(t));
1536
- if (!e) throw Error(`Cannot activate missing rendered placement: ${H(t)}`);
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 Bn(i, r);
1540
- }, Hn = (e) => {
1541
- let t = new Set(e.placements.map((e) => H(e.identity))), n = $(e.layout);
1542
- return Vn(e, new Set([...n.keys()].filter((e) => !t.has(e))));
1543
- }, Un = (e) => Vn(e, new Set(e.remove.map(H))), Wn = (e, t, n, r) => {
1544
- let i = Ln({
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) => H(e.identity)), o = /* @__PURE__ */ new Set();
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) => H(t.identity) === e)).find(Boolean), r = S(t.map((e) => e.placement), n?.placement.widgetId ?? e.activeWidgetId);
1556
- for (let e of r.replaced) e.placementIdentity && o.add(H(e.placementIdentity));
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 Gn(e, t, o);
1559
- }, Gn = (e, t, n) => {
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(H(e.identity))), i = e.pageStates;
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(H(e)) && (i = jn(i, e, { kind: "close" }));
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: W({
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(H(e.identity))).map((e) => e.identity),
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
- }, Kn = (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) => {
1579
- let r = Kn(e, t, n), a = Gn(e, t, new Set(r.flatMap((t) => {
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 = H(t.placementIdentity), r = e.placements.find((e) => H(e.identity) === 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 = jn(o, t, { kind: "close" }));
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
- }, Jn = /* @__PURE__ */ new WeakMap(), Yn = (e, t) => {
1593
- Jn.set(e, t);
1594
- }, Xn = (e) => {
1595
- let t = Jn.get(e);
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
- //#endregion
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-Ku0_knjs.js.map
1618
+ //# sourceMappingURL=workbench-renderers-DOc_oE0K.js.map