@pstdio/workbench 0.39.0 → 0.41.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.
@@ -156,13 +156,13 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
156
156
  locationSubPanelSelections: n
157
157
  };
158
158
  }, b = (e) => {
159
- let t = e.regions.main.widgets.filter(g);
159
+ let t = Object.values(e.regions).flatMap((e) => e.widgets).filter(g);
160
160
  return t.find((t) => t.widgetId === e.activeLocationWidgetId) ?? t.at(-1);
161
161
  }, oe = (e, t, n, r = {}) => {
162
- let i = e.regions[t], a = n(i.widgets), o = r.activeWidgetId === void 0 ? r.clearActiveWidget ? void 0 : i.activeWidgetId : r.activeWidgetId;
162
+ let i = e.regions[t], a = n(i.widgets), o = r.activeWidgetId ?? (r.clearActiveWidget ? void 0 : i.activeWidgetId);
163
163
  return {
164
164
  ...e,
165
- activeLocationWidgetId: t === "main" && !a.some((t) => t.widgetId === e.activeLocationWidgetId) ? a.filter(g).at(-1)?.widgetId : e.activeLocationWidgetId,
165
+ activeLocationWidgetId: i.widgets.some((t) => t.widgetId === e.activeLocationWidgetId) && !a.some((t) => t.widgetId === e.activeLocationWidgetId) ? Object.values(e.regions).flatMap((e) => e.id === t ? a : e.widgets).filter(g).at(-1)?.widgetId : e.activeLocationWidgetId,
166
166
  regions: {
167
167
  ...e.regions,
168
168
  [t]: {
@@ -196,39 +196,41 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
196
196
  ...n,
197
197
  activeWidgetId: void 0,
198
198
  activeResourceKey: void 0
199
- }), n.activeLocationWidgetId && !n.regions.main.widgets.some((e) => e.widgetId === n.activeLocationWidgetId) && (n = {
199
+ }), n.activeLocationWidgetId && !m(n, n.activeLocationWidgetId) && (n = {
200
200
  ...n,
201
- activeLocationWidgetId: n.regions.main.widgets.filter(g).at(-1)?.widgetId
201
+ activeLocationWidgetId: b(n)?.widgetId
202
202
  }), n;
203
203
  }, ce = (e, t) => {
204
204
  let n = m(e, t);
205
205
  if (!n) return;
206
- let r = e.regions[n.regionId], i = r.widgets.filter((e) => e.widgetId !== t), a = r.activeWidgetId === t || !r.activeWidgetId && n.index === 0, o = (n.placement.role === "sub-panel" ? i.find((e) => e.role === "sub-panel" && e.ownerResourceKey === n.placement.ownerResourceKey) : void 0) ?? (n.placement.role === "sub-panel" && n.regionId === "main" ? b(e) : i[n.index] ?? i[n.index - 1]), s = a ? o?.widgetId : r.activeWidgetId, c = {
206
+ let r = e.regions[n.regionId], i = r.widgets.filter((e) => e.widgetId !== t), a = r.activeWidgetId === t || !r.activeWidgetId && n.index === 0, o = (n.placement.role === "sub-panel" ? i.find((e) => e.role === "sub-panel" && e.ownerResourceKey === n.placement.ownerResourceKey) : void 0) ?? (n.placement.role === "sub-panel" ? i.find(g) : void 0) ?? i[n.index] ?? i[n.index - 1], s = a ? o?.widgetId : r.activeWidgetId, c = {
207
207
  ...r,
208
208
  widgets: i,
209
209
  activeWidgetId: s
210
- }, l = y({
210
+ }, l = e.activeLocationWidgetId;
211
+ e.activeWidgetId === t && o?.role === "location" ? l = o.widgetId : l === t && (l = Object.values(e.regions).flatMap((e) => e.widgets).filter((e) => e.widgetId !== t && g(e)).at(-1)?.widgetId);
212
+ let u = y({
211
213
  ...e,
212
- activeLocationWidgetId: e.activeLocationWidgetId === t ? e.regions.main.widgets.filter((e) => e.widgetId !== t && g(e)).at(-1)?.widgetId : e.activeLocationWidgetId,
214
+ activeLocationWidgetId: l,
213
215
  regions: {
214
216
  ...e.regions,
215
217
  [r.id]: c
216
218
  }
217
219
  }, t);
218
- return a && n.regionId !== "side" && f.includes(n.regionId) && (l = v(l, b(l), n.regionId, o?.role === "sub-panel" ? o.widgetId : void 0)), e.activeWidgetId === t && (l = {
219
- ...l,
220
+ return a && n.regionId !== "side" && f.includes(n.regionId) && (u = v(u, b(u), n.regionId, o?.role === "sub-panel" ? o.widgetId : void 0)), e.activeWidgetId === t && (u = {
221
+ ...u,
220
222
  activeWidgetId: o?.widgetId,
221
223
  activeResourceKey: o?.resourceKey
222
224
  }), {
223
225
  regionId: n.regionId,
224
226
  closedPlacement: n.placement,
225
227
  activePlacement: h(c),
226
- layout: l
228
+ layout: u
227
229
  };
228
230
  }, le = (e, t, n) => {
229
231
  let r = e.regions[t];
230
- if (t === "main" && g(n)) {
231
- let t = e.locationSubPanelSelections?.[_(n)] ?? {}, r = Object.fromEntries(Object.entries(e.regions).map(([e, t]) => [e, {
232
+ if (g(n)) {
233
+ let r = e.locationSubPanelSelections?.[_(n)] ?? {}, i = Object.fromEntries(Object.entries(e.regions).map(([e, t]) => [e, {
232
234
  ...t,
233
235
  widgets: t.widgets.map((e) => !n.resource || e.widgetId === n.widgetId || e.ownerResourceKey !== n.resourceKey || e.resourceKey !== n.resourceKey ? e : {
234
236
  ...e,
@@ -236,10 +238,10 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
236
238
  })
237
239
  }]));
238
240
  for (let e of f) {
239
- let i = r[e], a = t[e], o = i.widgets.find((e) => e.widgetId === a && e.role === "sub-panel" && (!e.ownerResourceKey || e.ownerResourceKey === n.resourceKey));
240
- r[e] = {
241
- ...i,
242
- activeWidgetId: e === "side" ? i.activeWidgetId : o?.widgetId ?? (e === "main" ? n.widgetId : void 0)
241
+ let a = i[e], o = r[e], s = a.widgets.find((e) => e.widgetId === o && e.role === "sub-panel" && (!e.ownerResourceKey || e.ownerResourceKey === n.resourceKey));
242
+ i[e] = {
243
+ ...a,
244
+ activeWidgetId: e === "side" && e !== t ? a.activeWidgetId : s?.widgetId ?? (e === t ? n.widgetId : void 0)
243
245
  };
244
246
  }
245
247
  return {
@@ -247,7 +249,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
247
249
  activeWidgetId: n.widgetId,
248
250
  activeLocationWidgetId: n.widgetId,
249
251
  activeResourceKey: n.resourceKey,
250
- regions: r
252
+ regions: i
251
253
  };
252
254
  }
253
255
  let i = n.role === "sub-panel" && t !== "side" && f.includes(t) ? v(e, b(e), t, n.widgetId) : e;
@@ -272,7 +274,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
272
274
  ...e,
273
275
  activeWidgetId: a ? i?.widgetId : e.activeWidgetId,
274
276
  activeResourceKey: a ? i?.resourceKey : e.activeResourceKey,
275
- activeLocationWidgetId: t === "main" && i?.role === "location" ? i.widgetId : e.activeLocationWidgetId,
277
+ activeLocationWidgetId: i?.role === "location" ? i.widgetId : e.activeLocationWidgetId,
276
278
  regions: {
277
279
  ...e.regions,
278
280
  [t]: {
@@ -400,7 +402,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
400
402
  }, k = (e, t) => {
401
403
  let n = new Set(t);
402
404
  return Ce(e, Object.keys(w).filter((e) => !n.has(e)).flatMap((e) => w[e]));
403
- }, A = (e, t, n) => {
405
+ }, we = (e, t, n) => {
404
406
  if (!t) {
405
407
  let t = { ...e.regions };
406
408
  for (let e of T) {
@@ -431,11 +433,11 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
431
433
  activeLocationWidgetId: D(i, t.activeLocationWidgetId)?.widgetId ?? D(i, e.activeLocationWidgetId)?.widgetId,
432
434
  locationSubPanelSelections: t.locationSubPanelSelections
433
435
  };
434
- }, we = (e) => {
436
+ }, Te = (e) => {
435
437
  for (let t = e.length - 1; t >= 0; --t) i("mode disposal", () => e[t]?.dispose());
436
- }, Te = (e, t) => {
438
+ }, Ee = (e, t) => {
437
439
  t !== e.layout.getLayout() && e.layout.restoreLayout(t);
438
- }, j = (e, t) => e < t ? -1 : +(e > t), M = (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}`, N = (e) => e.kind === "shell" ? JSON.stringify([
440
+ }, A = (e, t) => e < t ? -1 : +(e > t), j = (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}`, M = (e) => e.kind === "shell" ? JSON.stringify([
439
441
  "shell",
440
442
  e.placementId,
441
443
  e.instanceKey
@@ -449,18 +451,18 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
449
451
  e.pageId,
450
452
  e.slotId,
451
453
  e.instanceKey
452
- ]), P = (e, t) => {
453
- let n = j(M(e.identity), M(t.identity));
454
- return n === 0 ? j(e.identity.instanceKey, t.identity.instanceKey) : n;
455
- }, Ee = (e, t) => e.order - t.order || P(e, t), De = (e, t) => {
454
+ ]), N = (e, t) => {
455
+ let n = A(j(e.identity), j(t.identity));
456
+ return n === 0 ? A(e.identity.instanceKey, t.identity.instanceKey) : n;
457
+ }, De = (e, t) => e.order - t.order || N(e, t), Oe = (e, t) => {
456
458
  if (t.identity.kind === e) return;
457
459
  let n = `${e[0]?.toUpperCase()}${e.slice(1)}`;
458
460
  throw Error(`${n} placement must have a ${e} owner`);
459
- }, Oe = (e) => {
461
+ }, ke = (e) => {
460
462
  let t = [], n = /* @__PURE__ */ new Set(), r = (e, r) => {
461
463
  for (let i of r) {
462
- if (De(e, i), !Number.isFinite(i.order)) throw Error("Placement order must be a finite number");
463
- let r = N(i.identity);
464
+ if (Oe(e, i), !Number.isFinite(i.order)) throw Error("Placement order must be a finite number");
465
+ let r = M(i.identity);
464
466
  if (n.has(r)) throw Error(`Duplicate placement identity: ${r}`);
465
467
  n.add(r), t.push(i);
466
468
  }
@@ -470,56 +472,56 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
470
472
  if (i.size > 1) throw Error("Mode placements must belong to one active mode");
471
473
  if (a.size > 1) throw Error("Page placements must belong to one active page");
472
474
  return t;
473
- }, ke = () => d.reduce((e, t) => (e[t] = [], e), {}), Ae = (e) => {
474
- let t = Oe(e), n = new Set((e.closed ?? []).map(N)), r = [], i = ke();
475
+ }, Ae = () => d.reduce((e, t) => (e[t] = [], e), {}), je = (e) => {
476
+ let t = ke(e), n = new Set((e.closed ?? []).map(M)), r = [], i = Ae();
475
477
  for (let e of t) {
476
- if (n.has(N(e.identity))) {
478
+ if (n.has(M(e.identity))) {
477
479
  r.push(e);
478
480
  continue;
479
481
  }
480
482
  i[e.region].push(e);
481
483
  }
482
- for (let e of d) i[e].sort(Ee);
483
- return r.sort(P), {
484
+ for (let e of d) i[e].sort(De);
485
+ return r.sort(N), {
484
486
  placements: d.flatMap((e) => i[e]),
485
487
  closed: r,
486
488
  regions: i,
487
489
  visibleRegions: new Set(d.filter((e) => i[e].length > 0))
488
490
  };
489
- }, F = (e) => {
491
+ }, P = (e) => {
490
492
  let t = /* @__PURE__ */ new Map();
491
493
  for (let n of e) {
492
- let e = N(n.identity);
494
+ let e = M(n.identity);
493
495
  if (t.has(e)) throw Error(`Duplicate placement identity: ${e}`);
494
496
  t.set(e, n);
495
497
  }
496
498
  return t;
497
- }, je = (e, t, n) => e.region === t.region && e.order === t.order && n(e.value, t.value), Me = (e) => {
498
- let t = F(e.current), n = F(e.desired), r = [], i = [], a = [], o = [];
499
+ }, Me = (e, t, n) => e.region === t.region && e.order === t.order && n(e.value, t.value), Ne = (e) => {
500
+ let t = P(e.current), n = P(e.desired), r = [], i = [], a = [], o = [];
499
501
  for (let [o, s] of n) {
500
502
  let n = t.get(o);
501
- n ? je(n, s, e.valuesEqual) ? i.push(s) : a.push({
503
+ n ? Me(n, s, e.valuesEqual) ? i.push(s) : a.push({
502
504
  current: n,
503
505
  desired: s
504
506
  }) : r.push(s);
505
507
  }
506
508
  for (let [e, r] of t) n.has(e) || o.push(r);
507
- let s = new Set((e.activate ?? []).map(N)), c = Array.from(s, (e) => {
509
+ let s = new Set((e.activate ?? []).map(M)), c = Array.from(s, (e) => {
508
510
  let t = n.get(e);
509
511
  if (!t) throw Error(`Cannot activate missing placement: ${e}`);
510
512
  return t;
511
513
  });
512
- return r.sort(P), i.sort(P), a.sort((e, t) => P(e.desired, t.desired)), c.sort(P), o.sort(P), {
514
+ return r.sort(N), i.sort(N), a.sort((e, t) => N(e.desired, t.desired)), c.sort(N), o.sort(N), {
513
515
  add: r,
514
516
  retain: i,
515
517
  update: a,
516
518
  activate: c,
517
519
  remove: o
518
520
  };
519
- }, I = (e) => Array.isArray(e) ? e : e.trim().split(/\s+/).filter(Boolean), Ne = (e) => {
520
- let t = I(e);
521
+ }, F = (e) => Array.isArray(e) ? e : e.trim().split(/\s+/).filter(Boolean), Pe = (e) => {
522
+ let t = F(e);
521
523
  return t.length === 1 ? t[0] ?? "" : t;
522
- }, Pe = (e) => {
524
+ }, Fe = (e) => {
523
525
  let t = u({
524
526
  name: "workbench.keybindings",
525
527
  initialState: { keybindings: [] }
@@ -531,7 +533,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
531
533
  let a = {
532
534
  ...S(i),
533
535
  ...n,
534
- keybinding: Ne(n.keybinding)
536
+ keybinding: Pe(n.keybinding)
535
537
  }, o = t.getState();
536
538
  return t.setState({ keybindings: [...o.keybindings, a] }, !1, "registerKeybinding"), r(() => {
537
539
  let e = t.getState(), n = e.keybindings.filter((e) => e !== a);
@@ -551,140 +553,133 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
551
553
  }] : []);
552
554
  }
553
555
  };
554
- }, L = (e, t, n) => ({
556
+ }, I = (e, t, n) => ({
555
557
  role: "anchor",
556
558
  anchor: e,
557
559
  persistence: t,
558
560
  candidates: n
559
- }), R = (e, t = !1) => t ? {
561
+ }), L = (e, t = !1) => t ? {
560
562
  role: "projection",
561
563
  reads: e,
562
564
  navigator: t
563
565
  } : {
564
566
  role: "projection",
565
567
  reads: e
566
- }, z = {
567
- nav: R(["primary", "attached"]),
568
+ }, R = {
569
+ nav: L(["primary", "attached"]),
568
570
  activity: { role: "chrome" },
569
- sidenav: R(["primary"], !0),
570
- "main-header": R(["primary"]),
571
- "main-left-menu": R(["primary"]),
572
- main: L("primary", "primary", "global"),
573
- "main-right-menu": R(["primary"]),
574
- "secondary-header": R(["primary"]),
575
- "secondary-left-menu": R(["secondary"]),
576
- secondary: L("secondary", "derived", "scoped"),
577
- "secondary-right-menu": R(["secondary"]),
578
- status: R(["primary", "attached"]),
571
+ sidenav: L(["primary"], !0),
572
+ "main-header": L(["primary"]),
573
+ "main-left-menu": L(["primary"]),
574
+ main: I("primary", "primary", "global"),
575
+ "main-right-menu": L(["primary"]),
576
+ "secondary-header": L(["primary"]),
577
+ "secondary-left-menu": L(["secondary"]),
578
+ secondary: I("secondary", "derived", "scoped"),
579
+ "secondary-right-menu": L(["secondary"]),
580
+ status: L(["primary", "attached"]),
579
581
  overlay: { role: "transient" },
580
- "side-header": R(["attached"]),
581
- "side-left-menu": R(["attached"]),
582
- side: L("attached", "detached", "scoped"),
583
- "side-right-menu": R(["attached"])
584
- }, Fe = (e) => z[e], Ie = () => d.filter((e) => z[e].role === "anchor"), B = (e) => {
582
+ "side-header": L(["attached"]),
583
+ "side-left-menu": L(["attached"]),
584
+ side: I("attached", "detached", "scoped"),
585
+ "side-right-menu": L(["attached"])
586
+ }, Ie = (e) => R[e], Le = () => d.filter((e) => R[e].role === "anchor"), z = (e) => {
585
587
  let t = d.find((t) => {
586
- let n = z[t];
588
+ let n = R[t];
587
589
  return n.role === "anchor" && n.anchor === e;
588
590
  });
589
591
  if (!t) throw Error(`No region hosts anchor: ${e}`);
590
592
  return t;
591
- }, Le = (e, t) => h(e.regions[B(t)])?.resource, Re = ({ layout: e, primary: t, isInScope: n }) => {
593
+ }, Re = (e, t) => {
594
+ let n = h(e.regions[z(t)]);
595
+ if (t !== "primary") return n?.resource;
596
+ let r = b(e);
597
+ return r ? r.resource : n?.role === "sub-panel" ? void 0 : n?.resource;
598
+ }, ze = ({ layout: e, primary: t, isInScope: n }) => {
592
599
  let r = [];
593
- for (let i of Ie()) {
594
- let a = Fe(i);
595
- if (a.role !== "anchor" || a.persistence === "primary") continue;
596
- let o = h(e.regions[i]);
597
- if (o?.resource) {
598
- if (o.role === "sub-panel" && o.ownerResourceKey) {
599
- r.push({
600
- region: i,
601
- action: "keep"
602
- });
603
- continue;
604
- }
605
- if (a.persistence === "derived") {
606
- r.push({
607
- region: i,
608
- action: "clear"
609
- });
610
- continue;
611
- }
600
+ for (let i of Le()) {
601
+ let a = Ie(i);
602
+ if (a.role === "anchor" && a.persistence !== "primary") for (let o of e.regions[i].widgets) {
603
+ if (!o.resource) continue;
604
+ let e = o.role === "location" || o.role === "sub-panel" && !!o.ownerResourceKey || a.persistence !== "derived" && n(o.resource, t);
612
605
  r.push({
613
606
  region: i,
614
- action: n(o.resource, t) ? "keep" : "clear"
607
+ widgetId: o.widgetId,
608
+ action: e ? "keep" : "clear"
615
609
  });
616
610
  }
617
611
  }
618
612
  return r;
619
- }, V = (e) => [
613
+ }, B = (e) => [
620
614
  "workbench",
621
615
  "header",
622
616
  e,
623
617
  "leading"
624
- ], H = (e) => [
618
+ ], V = (e) => [
625
619
  "workbench",
626
620
  "header",
627
621
  e,
628
622
  "trailing"
629
- ], ze = (e) => [
623
+ ], Be = (e) => [
630
624
  "workbench",
631
625
  "regionTabs",
632
626
  e,
633
627
  "leading"
634
- ], Be = (e) => [
628
+ ], Ve = (e) => [
635
629
  "workbench",
636
630
  "regionTabs",
637
631
  e,
638
632
  "add"
639
- ], Ve = ["workbench", "commandPalette"], He = V("nav"), Ue = H("nav"), We = (e) => [
633
+ ], He = ["workbench", "commandPalette"], Ue = B("nav"), We = V("nav"), Ge = (e) => [
640
634
  "workbench",
641
635
  "resource",
642
636
  e,
643
637
  "context"
644
- ], Ge = {
638
+ ], Ke = {
645
639
  project: "folder-root",
646
640
  workspace: "computer",
647
641
  worktree: "git-pull-request-draft",
648
642
  settings: "settings",
649
643
  kanbanRenderer: "table-properties"
650
- }, U = (e) => "viewId" in e && e.type === "view", W = "resource_hierarchy_cycle", G = (e) => [...e].sort((e, t) => t.priority - e.priority || e.id.localeCompare(t.id)), Ke = (t, n, r) => {
651
- let i = G(t), a = [n], o = /* @__PURE__ */ new Set([`resource:${e(n)}`]), s = n;
644
+ }, H = (e) => "viewId" in e && e.type === "view", U = "resource_hierarchy_cycle", W = (e) => [...e].sort((e, t) => t.priority - e.priority || e.id.localeCompare(t.id)), qe = (t, n, r) => {
645
+ let i = W(t), a = [n], o = /* @__PURE__ */ new Set([`resource:${e(n)}`]), s = n;
652
646
  for (;;) {
653
647
  let t = i.find((e) => e.canResolve(s))?.getParent(s);
654
648
  if (!t) break;
655
- let n = U(t) ? `view:${t.viewId}` : `resource:${e(t)}`;
649
+ let n = H(t) ? `view:${t.viewId}` : `resource:${e(t)}`;
656
650
  if (o.has(n)) {
657
651
  r({
658
- code: W,
652
+ code: U,
659
653
  path: [...a],
660
- repeatedUri: U(t) ? n : e(t)
654
+ repeatedUri: H(t) ? n : e(t)
661
655
  });
662
656
  break;
663
657
  }
664
- if (a.unshift(t), o.add(n), U(t)) break;
658
+ if (a.unshift(t), o.add(n), H(t)) break;
665
659
  s = t;
666
660
  }
667
661
  return a;
668
- }, K = "workbench.resource.type", q = "workbench.resource.id", J = (e) => `workbench.resource.metadata.${e}`, Y = "workbench.selectionResourceKey", qe = (e) => typeof e == "string" || typeof e == "number" || typeof e == "boolean", X = (e) => {
662
+ }, G = "workbench.resource.type", K = "workbench.resource.extensionId", q = "workbench.resource.id", J = (e) => `workbench.resource.metadata.${e}`, Y = "workbench.selectionResourceKey", Je = (e) => typeof e == "string" || typeof e == "number" || typeof e == "boolean", X = (e) => {
669
663
  if (!e) return {};
670
664
  let t = {
671
- [K]: e.type,
672
- [q]: e.id
665
+ [G]: e.type,
666
+ [q]: e.id,
667
+ [K]: e.extensionId
673
668
  };
674
- for (let [n, r] of Object.entries(e.metadata ?? {})) qe(r) && (t[J(n)] = r);
669
+ for (let [n, r] of Object.entries(e.metadata ?? {})) Je(r) && (t[J(n)] = r);
675
670
  return t;
676
- }, Je = (e) => e === "workbench.resource.type" || e === "workbench.resource.id" || e.startsWith(J("")), Ye = (e, t) => {
671
+ }, Ye = (e) => e === "workbench.resource.type" || e === "workbench.resource.extensionId" || e === "workbench.resource.id" || e.startsWith(J("")), Xe = (e, t) => {
677
672
  let n = {};
678
- for (let [t, r] of Object.entries(e)) Je(t) || (n[t] = r);
673
+ for (let [t, r] of Object.entries(e)) Ye(t) || (n[t] = r);
679
674
  return {
680
675
  ...n,
681
676
  ...X(t)
682
677
  };
683
- }, Xe = (t) => ({ [Y]: e(t) }), Ze = (t) => {
678
+ }, Ze = (t) => ({ [Y]: e(t) }), Qe = (t) => {
684
679
  if (!t) return [];
685
680
  let n = t.metadata?.[Y];
686
681
  return typeof n != "string" || n === e(t) ? [e(t)] : [e(t), n];
687
- }, Qe = (e = {}) => {
682
+ }, $e = (e = {}) => {
688
683
  let t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set(), i = u({
689
684
  name: "workbench.resources",
690
685
  initialState: {
@@ -781,13 +776,13 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
781
776
  });
782
777
  },
783
778
  listHierarchyProviders() {
784
- return G(Object.values(i.getState().hierarchyProviders));
779
+ return W(Object.values(i.getState().hierarchyProviders));
785
780
  },
786
781
  walkHierarchy(t) {
787
- return t ? Ke(Object.values(i.getState().hierarchyProviders), t, (e) => {
782
+ return t ? qe(Object.values(i.getState().hierarchyProviders), t, (e) => {
788
783
  for (let t of n) t(e);
789
784
  }).map((t) => {
790
- if (!U(t)) return t;
785
+ if (!H(t)) return t;
791
786
  let n = e.resolveView?.(t.viewId);
792
787
  return n ? {
793
788
  ...t,
@@ -802,11 +797,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
802
797
  });
803
798
  }
804
799
  };
805
- }, $e = (t, n = "view") => JSON.stringify([
806
- n,
807
- t.placementIdentity ? N(t.placementIdentity) : t.instanceId,
808
- e(t.resource) ?? null
809
- ]), Z = async (e, t) => {
800
+ }, et = (e, t = "view") => JSON.stringify([t, e.placementIdentity ? M(e.placementIdentity) : e.instanceId]), tt = async (e, t) => {
810
801
  let n = new AbortController(), r = () => n.abort(t?.reason);
811
802
  t?.aborted ? r() : t?.addEventListener("abort", r, { once: !0 });
812
803
  let i;
@@ -826,16 +817,16 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
826
817
  } finally {
827
818
  t?.removeEventListener("abort", r);
828
819
  }
829
- }, et = (e) => e.replace(/^['"]|['"]$/g, ""), tt = (e, t) => {
820
+ }, nt = (e) => e.replace(/^['"]|['"]$/g, ""), rt = (e, t) => {
830
821
  let n = t.trim();
831
822
  if (n.length === 0) return !0;
832
823
  let r = n.match(/^([A-Za-z0-9_.-]+)\s*(==|!=)\s*(.+)$/);
833
824
  if (r) {
834
- let [, t, n, i] = r, a = e[t ?? ""], o = et(i ?? "");
825
+ let [, t, n, i] = r, a = e[t ?? ""], o = nt(i ?? "");
835
826
  return n === "==" ? String(a) === o : String(a) !== o;
836
827
  }
837
828
  return n.startsWith("!") ? !e[n.slice(1)] : !!e[n];
838
- }, Q = (e, t) => !t || t.split("||").some((t) => t.split("&&").every((t) => tt(e, t))), nt = () => {
829
+ }, Z = (e, t) => !t || t.split("||").some((t) => t.split("&&").every((t) => rt(e, t))), it = () => {
839
830
  let e = u({
840
831
  name: "workbench.context",
841
832
  initialState: { values: {} }
@@ -899,17 +890,29 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
899
890
  return { ...e.getState().values };
900
891
  },
901
892
  matches(t) {
902
- return Q(e.getState().values, t);
893
+ return Z(e.getState().values, t);
903
894
  }
904
895
  };
905
- }, $ = /* @__PURE__ */ new WeakMap(), rt = (e, t) => {
896
+ }, Q = (e, t, n) => {
897
+ e.notifications.show({
898
+ level: "error",
899
+ title: `${t} failed`,
900
+ message: n instanceof Error ? n.message : String(n)
901
+ });
902
+ }, at = async (e, t, n) => {
903
+ try {
904
+ await n();
905
+ } catch (n) {
906
+ Q(e, t, n);
907
+ }
908
+ }, $ = /* @__PURE__ */ new WeakMap(), ot = (e, t) => {
906
909
  $.set(e, t);
907
- }, it = (e) => {
910
+ }, st = (e) => {
908
911
  let t = $.get(e);
909
912
  if (!t) throw Error("Workbench renderers are not initialized");
910
913
  return t;
911
914
  };
912
915
  //#endregion
913
- export { ce as $, Pe as A, Te as B, Be as C, Le as D, Ue as E, k as F, C as G, ve as H, we as I, fe as J, S as K, xe as L, Ae as M, N, Re as O, Me as P, le as Q, Se as R, Ve as S, He as T, be as U, A as V, ye as W, x as X, he as Y, ge as Z, W as _, c as _t, Z as a, h as at, H as b, r as bt, X as c, oe as ct, Ye as d, p as dt, ae as et, q as f, ne as ft, U as g, u as gt, Y as h, d as ht, Q as i, b as it, I as j, B as k, Xe as l, ue as lt, K as m, f as mt, rt as n, m as nt, $e as o, y as ot, J as p, ee as pt, pe as q, nt as r, ie as rt, Qe as s, se as st, it as t, re as tt, Ze as u, v as ut, Ge as v, s as vt, ze as w, We as x, V as y, i as yt, E as z };
916
+ export { x as $, Re as A, xe as B, V as C, r as Ct, Be as D, Ve as E, je as F, ve as G, E as H, M as I, C as J, be as K, Ne as L, z as M, Fe as N, Ue as O, F as P, he as Q, k as R, B as S, i as St, He as T, Ee as U, Se as V, we as W, pe as X, S as Y, fe as Z, G as _, f as _t, it as a, m as at, U as b, c as bt, et as c, h as ct, Ze as d, oe as dt, ge as et, Qe as f, ue as ft, K as g, ee as gt, J as h, ne as ht, at as i, re as it, ze as j, We as k, $e as l, y as lt, q as m, p as mt, ot as n, ce as nt, Z as o, ie as ot, Xe as p, v as pt, ye as q, Q as r, ae as rt, tt as s, b as st, st as t, le as tt, X as u, se as ut, Y as v, d as vt, Ge as w, Ke as x, s as xt, H as y, u as yt, Te as z };
914
917
 
915
- //# sourceMappingURL=workbench-renderers-DNXWpDWd.js.map
918
+ //# sourceMappingURL=workbench-renderers-CUHzLWMx.js.map