@pstdio/workbench 0.37.0 → 0.39.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.
@@ -106,12 +106,12 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
106
106
  "secondary-right-menu": "secondary",
107
107
  "side-left-menu": "side",
108
108
  "side-right-menu": "side"
109
- }, p = (e) => te[e], m = (e, t, n = t) => {
109
+ }, ne = (e) => te[e], p = (e, t, n = t) => {
110
110
  if (!e.has(n)) return n;
111
111
  let r = 1;
112
112
  for (; e.has(`${t}:${r}`);) r += 1;
113
113
  return `${t}:${r}`;
114
- }, ne = (e, t) => {
114
+ }, re = (e, t) => {
115
115
  for (let n of Object.values(e.regions)) {
116
116
  let e = n.widgets.findIndex((e) => e.contributionId === t);
117
117
  if (e >= 0) return {
@@ -120,7 +120,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
120
120
  placement: n.widgets[e]
121
121
  };
122
122
  }
123
- }, re = (e, t, n) => {
123
+ }, ie = (e, t, n) => {
124
124
  for (let r of Object.values(e.regions)) {
125
125
  let e = r.widgets.findIndex((e) => e.contributionId === t && e.resourceKey === n);
126
126
  if (e >= 0) return {
@@ -129,7 +129,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
129
129
  placement: r.widgets[e]
130
130
  };
131
131
  }
132
- }, h = (e, t) => {
132
+ }, m = (e, t) => {
133
133
  for (let n of Object.values(e.regions)) {
134
134
  let e = n.widgets.findIndex((e) => e.widgetId === t);
135
135
  if (e >= 0) return {
@@ -138,9 +138,9 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
138
138
  placement: n.widgets[e]
139
139
  };
140
140
  }
141
- }, ie = (e, t) => m(new Set(Object.values(e.regions).flatMap((e) => e.widgets.map((e) => e.widgetId))), t), g = (e) => e.widgets.find((t) => t.widgetId === e.activeWidgetId) ?? e.widgets[0], _ = (e) => e.role === "location", v = (e) => e.resourceKey ?? `${e.contributionId}:${e.widgetId}`, y = (e, t, n, r) => {
141
+ }, ae = (e, t) => p(new Set(Object.values(e.regions).flatMap((e) => e.widgets.map((e) => e.widgetId))), t), h = (e) => e.widgets.find((t) => t.widgetId === e.activeWidgetId) ?? e.widgets[0], g = (e) => e.role === "location", _ = (e) => e.resourceKey ?? `${e.contributionId}:${e.widgetId}`, v = (e, t, n, r) => {
142
142
  if (!t) return e;
143
- let i = v(t), a = { ...e.locationSubPanelSelections?.[i] ?? {} };
143
+ let i = _(t), a = { ...e.locationSubPanelSelections?.[i] ?? {} };
144
144
  return r ? a[n] = r : delete a[n], {
145
145
  ...e,
146
146
  locationSubPanelSelections: {
@@ -148,21 +148,21 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
148
148
  [i]: a
149
149
  }
150
150
  };
151
- }, b = (e, t) => {
151
+ }, y = (e, t) => {
152
152
  if (!e.locationSubPanelSelections) return e;
153
153
  let n = Object.fromEntries(Object.entries(e.locationSubPanelSelections).map(([e, n]) => [e, Object.fromEntries(Object.entries(n).filter(([, e]) => e !== t))]));
154
154
  return {
155
155
  ...e,
156
156
  locationSubPanelSelections: n
157
157
  };
158
- }, x = (e) => {
159
- let t = e.regions.main.widgets.filter(_);
158
+ }, b = (e) => {
159
+ let t = e.regions.main.widgets.filter(g);
160
160
  return t.find((t) => t.widgetId === e.activeLocationWidgetId) ?? t.at(-1);
161
- }, ae = (e, t, n, r = {}) => {
161
+ }, oe = (e, t, n, r = {}) => {
162
162
  let i = e.regions[t], a = n(i.widgets), o = r.activeWidgetId === void 0 ? r.clearActiveWidget ? void 0 : i.activeWidgetId : r.activeWidgetId;
163
163
  return {
164
164
  ...e,
165
- activeLocationWidgetId: t === "main" && !a.some((t) => t.widgetId === e.activeLocationWidgetId) ? a.filter(_).at(-1)?.widgetId : e.activeLocationWidgetId,
165
+ activeLocationWidgetId: t === "main" && !a.some((t) => t.widgetId === e.activeLocationWidgetId) ? a.filter(g).at(-1)?.widgetId : e.activeLocationWidgetId,
166
166
  regions: {
167
167
  ...e.regions,
168
168
  [t]: {
@@ -172,7 +172,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
172
172
  }
173
173
  }
174
174
  };
175
- }, oe = (e, t) => {
175
+ }, se = (e, t) => {
176
176
  let n = e;
177
177
  for (let r of Object.values(e.regions)) {
178
178
  let e = r.widgets.filter((e) => e.contributionId === t), i = r.widgets.filter((e) => e.contributionId !== t);
@@ -189,7 +189,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
189
189
  }
190
190
  }
191
191
  };
192
- for (let t of e) n = b(n, t.widgetId);
192
+ for (let t of e) n = y(n, t.widgetId);
193
193
  }
194
194
  let r = Object.values(n.regions).some((e) => e.widgets.some((e) => e.widgetId === n.activeWidgetId));
195
195
  return n.activeWidgetId && (!r || n.activeWidgetId.startsWith(`${t}:`) || n.activeWidgetId === t) && (n = {
@@ -198,37 +198,37 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
198
198
  activeResourceKey: void 0
199
199
  }), n.activeLocationWidgetId && !n.regions.main.widgets.some((e) => e.widgetId === n.activeLocationWidgetId) && (n = {
200
200
  ...n,
201
- activeLocationWidgetId: n.regions.main.widgets.filter(_).at(-1)?.widgetId
201
+ activeLocationWidgetId: n.regions.main.widgets.filter(g).at(-1)?.widgetId
202
202
  }), n;
203
- }, se = (e, t) => {
204
- let n = h(e, t);
203
+ }, ce = (e, t) => {
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" ? x(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" && n.regionId === "main" ? b(e) : 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 = b({
210
+ }, l = y({
211
211
  ...e,
212
- activeLocationWidgetId: e.activeLocationWidgetId === t ? e.regions.main.widgets.filter((e) => e.widgetId !== t && _(e)).at(-1)?.widgetId : e.activeLocationWidgetId,
212
+ activeLocationWidgetId: e.activeLocationWidgetId === t ? e.regions.main.widgets.filter((e) => e.widgetId !== t && g(e)).at(-1)?.widgetId : e.activeLocationWidgetId,
213
213
  regions: {
214
214
  ...e.regions,
215
215
  [r.id]: c
216
216
  }
217
217
  }, t);
218
- return a && n.regionId !== "side" && f.includes(n.regionId) && (l = y(l, x(l), n.regionId, o?.role === "sub-panel" ? o.widgetId : void 0)), e.activeWidgetId === t && (l = {
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
219
  ...l,
220
220
  activeWidgetId: o?.widgetId,
221
221
  activeResourceKey: o?.resourceKey
222
222
  }), {
223
223
  regionId: n.regionId,
224
224
  closedPlacement: n.placement,
225
- activePlacement: g(c),
225
+ activePlacement: h(c),
226
226
  layout: l
227
227
  };
228
- }, ce = (e, t, n) => {
228
+ }, le = (e, t, n) => {
229
229
  let r = e.regions[t];
230
- if (t === "main" && _(n)) {
231
- let t = e.locationSubPanelSelections?.[v(n)] ?? {}, r = Object.fromEntries(Object.entries(e.regions).map(([e, t]) => [e, {
230
+ if (t === "main" && g(n)) {
231
+ let t = e.locationSubPanelSelections?.[_(n)] ?? {}, r = Object.fromEntries(Object.entries(e.regions).map(([e, t]) => [e, {
232
232
  ...t,
233
233
  widgets: t.widgets.map((e) => !n.resource || e.widgetId === n.widgetId || e.ownerResourceKey !== n.resourceKey || e.resourceKey !== n.resourceKey ? e : {
234
234
  ...e,
@@ -250,7 +250,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
250
250
  regions: r
251
251
  };
252
252
  }
253
- let i = n.role === "sub-panel" && t !== "side" && f.includes(t) ? y(e, x(e), t, n.widgetId) : e;
253
+ let i = n.role === "sub-panel" && t !== "side" && f.includes(t) ? v(e, b(e), t, n.widgetId) : e;
254
254
  return {
255
255
  ...i,
256
256
  activeWidgetId: n.widgetId,
@@ -264,7 +264,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
264
264
  }
265
265
  }
266
266
  };
267
- }, le = (e, t, n) => {
267
+ }, ue = (e, t, n) => {
268
268
  let r = e.regions[t], i = n ? r.widgets.find((e) => e.widgetId === n) : void 0;
269
269
  if (n && !i) throw Error(`Widget placement not found in ${t}: ${n}`);
270
270
  if (r.activeWidgetId === n) return;
@@ -281,27 +281,27 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
281
281
  }
282
282
  }
283
283
  };
284
- return t === "side" || !f.includes(t) ? o : y(o, x(o), t, i?.role === "sub-panel" ? i.widgetId : void 0);
285
- }, ue = (e, t) => !(e.resourceKinds?.length && (!t || !e.resourceKinds.includes(t.type)) || e.canOpen && (!t || !e.canOpen(t))), de = (t, n, r, i = {}) => {
284
+ return t === "side" || !f.includes(t) ? o : v(o, b(o), t, i?.role === "sub-panel" ? i.widgetId : void 0);
285
+ }, de = (e, t) => !(e.resourceKinds?.length && (!t || !e.resourceKinds.includes(t.type)) || e.canOpen && (!t || !e.canOpen(t))), fe = (t, n, r, i = {}) => {
286
286
  let a = t.regions[n];
287
287
  return a.widgets.find((t) => t.widgetId === a.activeWidgetId && t.role === "sub-panel" && (i.ignoreOwnerResourceKey || !t.ownerResourceKey || t.ownerResourceKey === e(r)));
288
- }, fe = (e) => x(e), pe = (t, n, r, i, a) => {
288
+ }, pe = (e) => b(e), me = (t, n, r, i, a) => {
289
289
  let o = t.eligibleLocations;
290
- return !(!S(t, r) || o?.resourceKinds?.length && (!n || !o.resourceKinds.includes(n.type)) || o?.resourceIds?.length && (!n?.id || !o.resourceIds.includes(n.id)) || o?.canOpen && (!n || !o.canOpen(n)) || o?.canOpenLocation && !o.canOpenLocation({
290
+ return !(!x(t, r) || o?.resourceKinds?.length && (!n || !o.resourceKinds.includes(n.type)) || o?.resourceIds?.length && (!n?.id || !o.resourceIds.includes(n.id)) || o?.canOpen && (!n || !o.canOpen(n)) || o?.canOpenLocation && !o.canOpenLocation({
291
291
  resource: n,
292
292
  viewId: a?.viewId
293
293
  }) || i?.ownerResourceKey && i.ownerResourceKey !== e(n));
294
- }, S = (e, t) => {
294
+ }, x = (e, t) => {
295
295
  let n = e.eligibleLocations?.modeIds;
296
296
  return !n?.length || t !== void 0 && n.includes(t);
297
- }, me = (e, t, n, r, i = {}) => ue(e, r?.resource ?? t) ? i.ignoreResourceLocation ? S(e, n) : pe(e, t, n, r, i.location) : !1, he = (e, t) => {
297
+ }, he = (e, t, n, r, i = {}) => de(e, r?.resource ?? t) ? i.ignoreResourceLocation ? x(e, n) : me(e, t, n, r, i.location) : !1, ge = (e, t) => {
298
298
  let n = e.panelMenuOwner ?? { level: "panel" };
299
299
  return n.contributionId ? (t.subPanel ?? t.locationPanel)?.contributionId === n.contributionId : t.subPanel ? n.level === "sub-panel" : n.level === "panel";
300
- }, ge = "workbench.core", C = (e = {}) => ({
300
+ }, _e = "workbench.core", S = (e = {}) => ({
301
301
  source: e.source ?? "module",
302
- ownerId: e.ownerId ?? ge,
302
+ ownerId: e.ownerId ?? _e,
303
303
  priority: e.priority ?? 0
304
- }), w = (e, t) => t.priority - e.priority || e.ownerId.localeCompare(t.ownerId), _e = (e = {}, t) => {
304
+ }), C = (e, t) => t.priority - e.priority || e.ownerId.localeCompare(t.ownerId), ve = (e = {}, t) => {
305
305
  let { strategy: n, ...r } = e, i = r.resource && r.viewId === void 0 ? {
306
306
  ...r,
307
307
  viewId: null
@@ -325,7 +325,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
325
325
  ...i,
326
326
  tabRetention: t
327
327
  };
328
- }, ve = (e) => ({
328
+ }, ye = (e) => ({
329
329
  instanceId: e.widgetId,
330
330
  panelId: e.contributionId,
331
331
  placementIdentity: e.placementIdentity,
@@ -343,10 +343,10 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
343
343
  hiddenByDefault: e.hiddenByDefault,
344
344
  tabRetention: e.tabRetention,
345
345
  tab: e.tab
346
- }), ye = (e) => {
346
+ }), be = (e) => {
347
347
  let { closable: t, ownedPanelMenuIds: n, ...r } = e;
348
348
  return r;
349
- }, T = {
349
+ }, w = {
350
350
  main: [
351
351
  "main-header",
352
352
  "main-left-menu",
@@ -365,18 +365,18 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
365
365
  "side",
366
366
  "side-right-menu"
367
367
  ]
368
- }, E = Object.values(T).flat(), D = (e) => e.panels ?? f, be = (e) => Object.keys(T).find((t) => T[t].some((t) => t === e)), xe = (e, t) => !e || D(e).includes(t), O = (e, t) => {
368
+ }, T = Object.values(w).flat(), E = (e) => e.panels ?? f, xe = (e) => Object.keys(w).find((t) => w[t].some((t) => t === e)), Se = (e, t) => !e || E(e).includes(t), D = (e, t) => {
369
369
  if (t) return Object.values(e.regions).flatMap((e) => e.widgets).find((e) => e.widgetId === t);
370
- }, k = (e, t) => {
371
- let n = t.find((t) => t && O(e, t.widgetId));
370
+ }, O = (e, t) => {
371
+ let n = t.find((t) => t && D(e, t.widgetId));
372
372
  return {
373
373
  ...e,
374
374
  activeWidgetId: n?.widgetId,
375
375
  activeResourceKey: n?.resourceKey
376
376
  };
377
- }, Se = (e, t) => {
377
+ }, Ce = (e, t) => {
378
378
  if (t.length === 0) return e;
379
- let n = new Set(Object.keys(T).filter((e) => T[e].some((e) => t.includes(e)))), r = t.some((t) => {
379
+ let n = new Set(Object.keys(w).filter((e) => w[e].some((e) => t.includes(e)))), r = t.some((t) => {
380
380
  let n = e.regions[t];
381
381
  return n.widgets.length > 0 || n.activeWidgetId !== void 0 || n.visible;
382
382
  }), i = Object.values(e.locationSubPanelSelections ?? {}).some((e) => Object.keys(e).some((e) => n.has(e)));
@@ -393,17 +393,17 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
393
393
  regions: a
394
394
  };
395
395
  return {
396
- ...k(s, [O(s, e.activeWidgetId)]),
397
- activeLocationWidgetId: O(s, e.activeLocationWidgetId)?.widgetId,
396
+ ...O(s, [D(s, e.activeWidgetId)]),
397
+ activeLocationWidgetId: D(s, e.activeLocationWidgetId)?.widgetId,
398
398
  locationSubPanelSelections: o
399
399
  };
400
- }, A = (e, t) => {
400
+ }, k = (e, t) => {
401
401
  let n = new Set(t);
402
- return Se(e, Object.keys(T).filter((e) => !n.has(e)).flatMap((e) => T[e]));
403
- }, j = (e, t, n) => {
402
+ return Ce(e, Object.keys(w).filter((e) => !n.has(e)).flatMap((e) => w[e]));
403
+ }, A = (e, t, n) => {
404
404
  if (!t) {
405
405
  let t = { ...e.regions };
406
- for (let e of E) {
406
+ for (let e of T) {
407
407
  let n = t[e], r = n.widgets.filter((e) => e.role !== "content");
408
408
  t[e] = {
409
409
  ...n,
@@ -415,27 +415,27 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
415
415
  ...e,
416
416
  regions: t
417
417
  };
418
- return A({
419
- ...k(r, [O(r, e.activeWidgetId)]),
420
- activeLocationWidgetId: O(r, e.activeLocationWidgetId)?.widgetId
418
+ return k({
419
+ ...O(r, [D(r, e.activeWidgetId)]),
420
+ activeLocationWidgetId: D(r, e.activeLocationWidgetId)?.widgetId
421
421
  }, n);
422
422
  }
423
423
  let r = { ...e.regions };
424
- for (let e of E) r[e] = t.regions[e];
425
- let i = A({
424
+ for (let e of T) r[e] = t.regions[e];
425
+ let i = k({
426
426
  ...e,
427
427
  regions: r
428
428
  }, n);
429
429
  return {
430
- ...k(i, [O(i, t.activeWidgetId), O(i, e.activeWidgetId)]),
431
- activeLocationWidgetId: O(i, t.activeLocationWidgetId)?.widgetId ?? O(i, e.activeLocationWidgetId)?.widgetId,
430
+ ...O(i, [D(i, t.activeWidgetId), D(i, e.activeWidgetId)]),
431
+ activeLocationWidgetId: D(i, t.activeLocationWidgetId)?.widgetId ?? D(i, e.activeLocationWidgetId)?.widgetId,
432
432
  locationSubPanelSelections: t.locationSubPanelSelections
433
433
  };
434
- }, Ce = (e) => {
434
+ }, we = (e) => {
435
435
  for (let t = e.length - 1; t >= 0; --t) i("mode disposal", () => e[t]?.dispose());
436
- }, we = (e, t) => {
436
+ }, Te = (e, t) => {
437
437
  t !== e.layout.getLayout() && e.layout.restoreLayout(t);
438
- }, M = (e, t) => e < t ? -1 : +(e > t), N = (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}`, P = (e) => e.kind === "shell" ? JSON.stringify([
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([
439
439
  "shell",
440
440
  e.placementId,
441
441
  e.instanceKey
@@ -449,18 +449,18 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
449
449
  e.pageId,
450
450
  e.slotId,
451
451
  e.instanceKey
452
- ]), F = (e, t) => {
453
- let n = M(N(e.identity), N(t.identity));
454
- return n === 0 ? M(e.identity.instanceKey, t.identity.instanceKey) : n;
455
- }, Te = (e, t) => e.order - t.order || F(e, t), Ee = (e, t) => {
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) => {
456
456
  if (t.identity.kind === e) return;
457
457
  let n = `${e[0]?.toUpperCase()}${e.slice(1)}`;
458
458
  throw Error(`${n} placement must have a ${e} owner`);
459
- }, De = (e) => {
459
+ }, Oe = (e) => {
460
460
  let t = [], n = /* @__PURE__ */ new Set(), r = (e, r) => {
461
461
  for (let i of r) {
462
- if (Ee(e, i), !Number.isFinite(i.order)) throw Error("Placement order must be a finite number");
463
- let r = P(i.identity);
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
464
  if (n.has(r)) throw Error(`Duplicate placement identity: ${r}`);
465
465
  n.add(r), t.push(i);
466
466
  }
@@ -470,56 +470,56 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
470
470
  if (i.size > 1) throw Error("Mode placements must belong to one active mode");
471
471
  if (a.size > 1) throw Error("Page placements must belong to one active page");
472
472
  return t;
473
- }, Oe = () => d.reduce((e, t) => (e[t] = [], e), {}), ke = (e) => {
474
- let t = De(e), n = new Set((e.closed ?? []).map(P)), r = [], i = Oe();
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
475
  for (let e of t) {
476
- if (n.has(P(e.identity))) {
476
+ if (n.has(N(e.identity))) {
477
477
  r.push(e);
478
478
  continue;
479
479
  }
480
480
  i[e.region].push(e);
481
481
  }
482
- for (let e of d) i[e].sort(Te);
483
- return r.sort(F), {
482
+ for (let e of d) i[e].sort(Ee);
483
+ return r.sort(P), {
484
484
  placements: d.flatMap((e) => i[e]),
485
485
  closed: r,
486
486
  regions: i,
487
487
  visibleRegions: new Set(d.filter((e) => i[e].length > 0))
488
488
  };
489
- }, I = (e) => {
489
+ }, F = (e) => {
490
490
  let t = /* @__PURE__ */ new Map();
491
491
  for (let n of e) {
492
- let e = P(n.identity);
492
+ let e = N(n.identity);
493
493
  if (t.has(e)) throw Error(`Duplicate placement identity: ${e}`);
494
494
  t.set(e, n);
495
495
  }
496
496
  return t;
497
- }, Ae = (e, t, n) => e.region === t.region && e.order === t.order && n(e.value, t.value), je = (e) => {
498
- let t = I(e.current), n = I(e.desired), r = [], i = [], a = [], o = [];
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
499
  for (let [o, s] of n) {
500
500
  let n = t.get(o);
501
- n ? Ae(n, s, e.valuesEqual) ? i.push(s) : a.push({
501
+ n ? je(n, s, e.valuesEqual) ? i.push(s) : a.push({
502
502
  current: n,
503
503
  desired: s
504
504
  }) : r.push(s);
505
505
  }
506
506
  for (let [e, r] of t) n.has(e) || o.push(r);
507
- let s = new Set((e.activate ?? []).map(P)), c = Array.from(s, (e) => {
507
+ let s = new Set((e.activate ?? []).map(N)), c = Array.from(s, (e) => {
508
508
  let t = n.get(e);
509
509
  if (!t) throw Error(`Cannot activate missing placement: ${e}`);
510
510
  return t;
511
511
  });
512
- return r.sort(F), i.sort(F), a.sort((e, t) => F(e.desired, t.desired)), c.sort(F), o.sort(F), {
512
+ return r.sort(P), i.sort(P), a.sort((e, t) => P(e.desired, t.desired)), c.sort(P), o.sort(P), {
513
513
  add: r,
514
514
  retain: i,
515
515
  update: a,
516
516
  activate: c,
517
517
  remove: o
518
518
  };
519
- }, L = (e) => Array.isArray(e) ? e : e.trim().split(/\s+/).filter(Boolean), Me = (e) => {
520
- let t = L(e);
519
+ }, I = (e) => Array.isArray(e) ? e : e.trim().split(/\s+/).filter(Boolean), Ne = (e) => {
520
+ let t = I(e);
521
521
  return t.length === 1 ? t[0] ?? "" : t;
522
- }, Ne = (e) => {
522
+ }, Pe = (e) => {
523
523
  let t = u({
524
524
  name: "workbench.keybindings",
525
525
  initialState: { keybindings: [] }
@@ -529,9 +529,9 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
529
529
  registerKeybinding(n, i) {
530
530
  if (n.action.kind === "command" && !e.commands.getCommand(n.action.commandId)) throw Error(`Keybinding command not registered: ${n.action.commandId}`);
531
531
  let a = {
532
- ...C(i),
532
+ ...S(i),
533
533
  ...n,
534
- keybinding: Me(n.keybinding)
534
+ keybinding: Ne(n.keybinding)
535
535
  }, o = t.getState();
536
536
  return t.setState({ keybindings: [...o.keybindings, a] }, !1, "registerKeybinding"), r(() => {
537
537
  let e = t.getState(), n = e.keybindings.filter((e) => e !== a);
@@ -539,61 +539,61 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
539
539
  });
540
540
  },
541
541
  listKeybindings() {
542
- return [...t.getState().keybindings].sort(w);
542
+ return [...t.getState().keybindings].sort(C);
543
543
  },
544
544
  listActiveKeybindings() {
545
- return t.getState().keybindings.filter((t) => e.context.matches(t.when)).sort(w);
545
+ return t.getState().keybindings.filter((t) => e.context.matches(t.when)).sort(C);
546
546
  },
547
547
  listCommandKeybindings() {
548
- return [...t.getState().keybindings].sort(w).flatMap((e) => e.action.kind === "command" ? [{
548
+ return [...t.getState().keybindings].sort(C).flatMap((e) => e.action.kind === "command" ? [{
549
549
  commandId: e.action.commandId,
550
550
  keybinding: e.keybinding
551
551
  }] : []);
552
552
  }
553
553
  };
554
- }, R = (e, t, n) => ({
554
+ }, L = (e, t, n) => ({
555
555
  role: "anchor",
556
556
  anchor: e,
557
557
  persistence: t,
558
558
  candidates: n
559
- }), z = (e, t = !1) => t ? {
559
+ }), R = (e, t = !1) => t ? {
560
560
  role: "projection",
561
561
  reads: e,
562
562
  navigator: t
563
563
  } : {
564
564
  role: "projection",
565
565
  reads: e
566
- }, B = {
567
- nav: z(["primary", "attached"]),
566
+ }, z = {
567
+ nav: R(["primary", "attached"]),
568
568
  activity: { role: "chrome" },
569
- sidenav: z(["primary"], !0),
570
- "main-header": z(["primary"]),
571
- "main-left-menu": z(["primary"]),
572
- main: R("primary", "primary", "global"),
573
- "main-right-menu": z(["primary"]),
574
- "secondary-header": z(["primary"]),
575
- "secondary-left-menu": z(["secondary"]),
576
- secondary: R("secondary", "derived", "scoped"),
577
- "secondary-right-menu": z(["secondary"]),
578
- status: z(["primary", "attached"]),
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"]),
579
579
  overlay: { role: "transient" },
580
- "side-header": z(["attached"]),
581
- "side-left-menu": z(["attached"]),
582
- side: R("attached", "detached", "scoped"),
583
- "side-right-menu": z(["attached"])
584
- }, Pe = (e) => B[e], V = () => d.filter((e) => B[e].role === "anchor"), H = (e) => {
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) => {
585
585
  let t = d.find((t) => {
586
- let n = B[t];
586
+ let n = z[t];
587
587
  return n.role === "anchor" && n.anchor === e;
588
588
  });
589
589
  if (!t) throw Error(`No region hosts anchor: ${e}`);
590
590
  return t;
591
- }, Fe = (e, t) => g(e.regions[H(t)])?.resource, Ie = ({ layout: e, primary: t, isInScope: n }) => {
591
+ }, Le = (e, t) => h(e.regions[B(t)])?.resource, Re = ({ layout: e, primary: t, isInScope: n }) => {
592
592
  let r = [];
593
- for (let i of V()) {
594
- let a = Pe(i);
593
+ for (let i of Ie()) {
594
+ let a = Fe(i);
595
595
  if (a.role !== "anchor" || a.persistence === "primary") continue;
596
- let o = g(e.regions[i]);
596
+ let o = h(e.regions[i]);
597
597
  if (o?.resource) {
598
598
  if (o.role === "sub-panel" && o.ownerResourceKey) {
599
599
  r.push({
@@ -616,68 +616,75 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
616
616
  }
617
617
  }
618
618
  return r;
619
- }, U = (e) => [
619
+ }, V = (e) => [
620
620
  "workbench",
621
621
  "header",
622
622
  e,
623
623
  "leading"
624
- ], W = (e) => [
624
+ ], H = (e) => [
625
625
  "workbench",
626
626
  "header",
627
627
  e,
628
628
  "trailing"
629
- ], Le = (e) => [
629
+ ], ze = (e) => [
630
630
  "workbench",
631
631
  "regionTabs",
632
632
  e,
633
633
  "leading"
634
- ], Re = (e) => [
634
+ ], Be = (e) => [
635
635
  "workbench",
636
636
  "regionTabs",
637
637
  e,
638
638
  "add"
639
- ], ze = ["workbench", "commandPalette"], Be = U("nav"), Ve = W("nav"), He = (e) => [
639
+ ], Ve = ["workbench", "commandPalette"], He = V("nav"), Ue = H("nav"), We = (e) => [
640
640
  "workbench",
641
641
  "resource",
642
642
  e,
643
643
  "context"
644
- ], Ue = {
644
+ ], Ge = {
645
645
  project: "folder-root",
646
646
  workspace: "computer",
647
647
  worktree: "git-pull-request-draft",
648
648
  settings: "settings",
649
649
  kanbanRenderer: "table-properties"
650
- }, G = (e) => "viewId" in e && e.type === "view", K = "resource_hierarchy_cycle", q = (e) => [...e].sort((e, t) => t.priority - e.priority || e.id.localeCompare(t.id)), We = (t, n, r) => {
651
- let i = q(t), a = [n], o = /* @__PURE__ */ new Set([`resource:${e(n)}`]), s = n;
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;
652
652
  for (;;) {
653
653
  let t = i.find((e) => e.canResolve(s))?.getParent(s);
654
654
  if (!t) break;
655
- let n = G(t) ? `view:${t.viewId}` : `resource:${e(t)}`;
655
+ let n = U(t) ? `view:${t.viewId}` : `resource:${e(t)}`;
656
656
  if (o.has(n)) {
657
657
  r({
658
- code: K,
658
+ code: W,
659
659
  path: [...a],
660
- repeatedUri: G(t) ? n : e(t)
660
+ repeatedUri: U(t) ? n : e(t)
661
661
  });
662
662
  break;
663
663
  }
664
- if (a.unshift(t), o.add(n), G(t)) break;
664
+ if (a.unshift(t), o.add(n), U(t)) break;
665
665
  s = t;
666
666
  }
667
667
  return a;
668
- }, J = "workbench.resource.type", Y = "workbench.resource.id", X = (e) => `workbench.resource.metadata.${e}`, Z = "workbench.selectionResourceKey", Ge = (e) => typeof e == "string" || typeof e == "number" || typeof e == "boolean", Ke = (e) => {
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) => {
669
669
  if (!e) return {};
670
670
  let t = {
671
- [J]: e.type,
672
- [Y]: e.id
671
+ [K]: e.type,
672
+ [q]: e.id
673
673
  };
674
- for (let [n, r] of Object.entries(e.metadata ?? {})) Ge(r) && (t[X(n)] = r);
674
+ for (let [n, r] of Object.entries(e.metadata ?? {})) qe(r) && (t[J(n)] = r);
675
675
  return t;
676
- }, qe = (t) => ({ [Z]: e(t) }), Je = (t) => {
676
+ }, Je = (e) => e === "workbench.resource.type" || e === "workbench.resource.id" || e.startsWith(J("")), Ye = (e, t) => {
677
+ let n = {};
678
+ for (let [t, r] of Object.entries(e)) Je(t) || (n[t] = r);
679
+ return {
680
+ ...n,
681
+ ...X(t)
682
+ };
683
+ }, Xe = (t) => ({ [Y]: e(t) }), Ze = (t) => {
677
684
  if (!t) return [];
678
- let n = t.metadata?.[Z];
685
+ let n = t.metadata?.[Y];
679
686
  return typeof n != "string" || n === e(t) ? [e(t)] : [e(t), n];
680
- }, Ye = (e = {}) => {
687
+ }, Qe = (e = {}) => {
681
688
  let t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set(), i = u({
682
689
  name: "workbench.resources",
683
690
  initialState: {
@@ -698,7 +705,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
698
705
  let n = i.getState();
699
706
  if (n.kinds[e.kind]) throw Error(`Resource kind already registered: ${e.kind}`);
700
707
  let a = {
701
- ...C(t),
708
+ ...S(t),
702
709
  ...e
703
710
  };
704
711
  return i.setState({
@@ -721,7 +728,7 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
721
728
  return i.getState().kinds[e];
722
729
  },
723
730
  listKinds() {
724
- return Object.values(i.getState().kinds).sort(w);
731
+ return Object.values(i.getState().kinds).sort(C);
725
732
  },
726
733
  registerProvider(e) {
727
734
  let t = i.getState();
@@ -774,13 +781,13 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
774
781
  });
775
782
  },
776
783
  listHierarchyProviders() {
777
- return q(Object.values(i.getState().hierarchyProviders));
784
+ return G(Object.values(i.getState().hierarchyProviders));
778
785
  },
779
786
  walkHierarchy(t) {
780
- return t ? We(Object.values(i.getState().hierarchyProviders), t, (e) => {
787
+ return t ? Ke(Object.values(i.getState().hierarchyProviders), t, (e) => {
781
788
  for (let t of n) t(e);
782
789
  }).map((t) => {
783
- if (!G(t)) return t;
790
+ if (!U(t)) return t;
784
791
  let n = e.resolveView?.(t.viewId);
785
792
  return n ? {
786
793
  ...t,
@@ -795,11 +802,11 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
795
802
  });
796
803
  }
797
804
  };
798
- }, Xe = (t, n = "view") => JSON.stringify([
805
+ }, $e = (t, n = "view") => JSON.stringify([
799
806
  n,
800
- t.placementIdentity ? P(t.placementIdentity) : t.instanceId,
807
+ t.placementIdentity ? N(t.placementIdentity) : t.instanceId,
801
808
  e(t.resource) ?? null
802
- ]), Ze = async (e, t) => {
809
+ ]), Z = async (e, t) => {
803
810
  let n = new AbortController(), r = () => n.abort(t?.reason);
804
811
  t?.aborted ? r() : t?.addEventListener("abort", r, { once: !0 });
805
812
  let i;
@@ -819,16 +826,16 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
819
826
  } finally {
820
827
  t?.removeEventListener("abort", r);
821
828
  }
822
- }, Qe = (e) => e.replace(/^['"]|['"]$/g, ""), $e = (e, t) => {
829
+ }, et = (e) => e.replace(/^['"]|['"]$/g, ""), tt = (e, t) => {
823
830
  let n = t.trim();
824
831
  if (n.length === 0) return !0;
825
832
  let r = n.match(/^([A-Za-z0-9_.-]+)\s*(==|!=)\s*(.+)$/);
826
833
  if (r) {
827
- let [, t, n, i] = r, a = e[t ?? ""], o = Qe(i ?? "");
834
+ let [, t, n, i] = r, a = e[t ?? ""], o = et(i ?? "");
828
835
  return n === "==" ? String(a) === o : String(a) !== o;
829
836
  }
830
837
  return n.startsWith("!") ? !e[n.slice(1)] : !!e[n];
831
- }, Q = (e, t) => !t || t.split("||").some((t) => t.split("&&").every((t) => $e(e, t))), et = () => {
838
+ }, Q = (e, t) => !t || t.split("||").some((t) => t.split("&&").every((t) => tt(e, t))), nt = () => {
832
839
  let e = u({
833
840
  name: "workbench.context",
834
841
  initialState: { values: {} }
@@ -895,14 +902,14 @@ var a = 0, o = /* @__PURE__ */ new Map(), s = (e, t) => {
895
902
  return Q(e.getState().values, t);
896
903
  }
897
904
  };
898
- }, $ = /* @__PURE__ */ new WeakMap(), tt = (e, t) => {
905
+ }, $ = /* @__PURE__ */ new WeakMap(), rt = (e, t) => {
899
906
  $.set(e, t);
900
- }, nt = (e) => {
907
+ }, it = (e) => {
901
908
  let t = $.get(e);
902
909
  if (!t) throw Error("Workbench renderers are not initialized");
903
910
  return t;
904
911
  };
905
912
  //#endregion
906
- export { ie as $, L as A, j as B, Le as C, Ie as D, Fe as E, Ce as F, C as G, ye as H, be as I, me as J, fe as K, xe as L, P as M, je as N, H as O, A as P, se as Q, D as R, Re as S, Ve as T, ve as U, _e as V, w as W, he as X, S as Y, ce as Z, Ue as _, s as _t, Ze as a, b as at, He as b, Ke as c, le as ct, Y as d, p as dt, ne as et, X as f, ee as ft, K as g, c as gt, G as h, u as ht, Q as i, g as it, ke as j, Ne as k, qe as l, y as lt, Z as m, d as mt, tt as n, re as nt, Xe as o, oe as ot, J as p, f as pt, de as q, et as r, x as rt, Ye as s, ae as st, nt as t, h as tt, Je as u, m as ut, U as v, i as vt, Be as w, ze as x, W as y, r as yt, we as z };
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 };
907
914
 
908
- //# sourceMappingURL=workbench-renderers-RPeMVtTc.js.map
915
+ //# sourceMappingURL=workbench-renderers-DNXWpDWd.js.map