@braidlabs/console 0.8.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@braidlabs/console",
3
- "version": "0.8.0",
3
+ "version": "0.9.0",
4
4
  "description": "A console for a Braid gateway: fragments, shells as data, a composition map, and snapshot history. Mountable React components, or a standalone app with OIDC sign-in.",
5
5
  "keywords": [
6
6
  "braid",
@@ -26,10 +26,10 @@
26
26
  "./package.json": "./package.json"
27
27
  },
28
28
  "peerDependencies": {
29
- "@braidlabs/gateway": "^0.8.0",
29
+ "@braidlabs/gateway": "^0.9.0",
30
30
  "react": "^18.0.0 || ^19.0.0",
31
31
  "react-dom": "^18.0.0 || ^19.0.0",
32
- "@braidlabs/registry": "^0.8.0",
32
+ "@braidlabs/registry": "^0.9.0",
33
33
  "oidc-client-ts": "^3.5.0"
34
34
  },
35
35
  "publishConfig": {
@@ -45,6 +45,19 @@ export interface SavedLayout {
45
45
  savedAt: string;
46
46
  slots: SavedSlot[];
47
47
  }
48
+ /**
49
+ * How much of the workspace area an app takes: columns and rows to span, each 1 to 12. Kept on
50
+ * its slot as `data-braid-columns` / `data-braid-rows` and as the custom properties
51
+ * `--braid-columns` / `--braid-rows`, so the host's CSS decides what a span means:
52
+ *
53
+ * ```css
54
+ * [data-braid-workspace] > fragment-slot { grid-column: span var(--braid-columns, 1); grid-row: span var(--braid-rows, 2); }
55
+ * ```
56
+ */
57
+ export interface Placement {
58
+ columns?: number;
59
+ rows?: number;
60
+ }
48
61
  export interface SavedSlot {
49
62
  appId: string;
50
63
  src?: string;
@@ -53,6 +66,8 @@ export interface SavedSlot {
53
66
  channel?: string;
54
67
  /** What the app returned from `braidDesktop.onSaveLayout`. */
55
68
  state?: unknown;
69
+ /** The app's span in the area, when it was given one. */
70
+ placement?: Placement;
56
71
  }
57
72
  /** The workspace's additions for one fragment, as `window.braidDesktop`. */
58
73
  export interface BraidDesktopApi {
@@ -134,11 +149,32 @@ export interface Workspace {
134
149
  container: () => Element | undefined;
135
150
  resolveIntent: WorkspaceIntentResolver<C, R>;
136
151
  };
137
- /** Mounts an app at the end of the workspace area, and returns its `<fragment-slot>`. */
152
+ /**
153
+ * Mounts an app at the end of the workspace area, and returns its `<fragment-slot>`. `state`
154
+ * and `channel` are what the app finds as `braidDesktop.restoredState` and joins, as if it were
155
+ * restored from a layout: pass a {@link Workspace.snapshot} to carry an app from one page to
156
+ * another — into a window of its own, say.
157
+ */
138
158
  open(appId: string, options?: {
139
159
  src?: string;
140
160
  props?: Record<string, unknown>;
161
+ placement?: Placement;
162
+ state?: unknown;
163
+ channel?: string;
141
164
  }): Element;
165
+ /** Gives an app in the area a span (see {@link Placement}); an absent member goes back to the host's default. */
166
+ place(slot: Element, placement: Placement): void;
167
+ /** The span an app in the area has, as {@link Workspace.place} set it. */
168
+ placementOf(slot: Element): Placement;
169
+ /**
170
+ * Moves an app to `index` among the area's apps (clamped; other children of the area are not
171
+ * counted). The fragment keeps running — same realm, same state — as any `<fragment-slot>` does
172
+ * when it moves within the page; in a browser without `moveBefore`, an untrusted (framed) app
173
+ * reloads.
174
+ */
175
+ move(slot: Element, index: number): void;
176
+ /** One app as a layout would save it — app, src, props, channel, state, placement — without saving anything. */
177
+ snapshot(slot: Element): Promise<SavedSlot>;
142
178
  preferences: {
143
179
  getHost(): Promise<HostPreferences>;
144
180
  /** Replaces the page's preferences; fragments that boot from now on get them. */
@@ -5,6 +5,8 @@ const SAVE_STATE_TIMEOUT_MS = 2_000;
5
5
  const HOST_READ_TIMEOUT_MS = 1_000;
6
6
  /** How long a fragment's boot waits to join its channel. */
7
7
  const JOIN_TIMEOUT_MS = 2_000;
8
+ /** The most columns or rows an app may span. */
9
+ const MAX_SPAN = 12;
8
10
  const HOST_KEY = 'host';
9
11
  const intentKey = (intent, contextType) => `intents/${keySegment(intent)}/${keySegment(contextType)}`;
10
12
  const layoutKey = (name) => `layouts/${keySegment(name)}`;
@@ -115,8 +117,24 @@ export function createWorkspace(options = {}) {
115
117
  saved.channel = channel.id;
116
118
  if (state !== undefined)
117
119
  saved.state = state;
120
+ // a slot still booting has not been asked yet: it still holds what it was opened with
121
+ const pending = instance ? undefined : restores.get(slot);
122
+ if (pending?.state !== undefined && saved.state === undefined)
123
+ saved.state = pending.state;
124
+ if (typeof pending?.channel === 'string' && saved.channel === undefined)
125
+ saved.channel = pending.channel;
126
+ const placement = readPlacement(slot);
127
+ if (placement.columns !== undefined || placement.rows !== undefined)
128
+ saved.placement = placement;
118
129
  return saved;
119
130
  }
131
+ /** A slot of this area: the one given, refused when it is not one of the area's apps. */
132
+ function ownSlot(slot, verb) {
133
+ const container = needContainer();
134
+ if (!slotsIn(container).includes(slot))
135
+ throw new Error(`braid-workspace: can only ${verb} an app in the workspace area`);
136
+ return slot;
137
+ }
120
138
  /** The candidates left once the user's hidden apps are taken out. */
121
139
  async function visible(candidates) {
122
140
  const { hiddenApps = [] } = await hostPreferences();
@@ -178,7 +196,46 @@ export function createWorkspace(options = {}) {
178
196
  open(appId, app = {}) {
179
197
  if (typeof appId !== 'string' || appId === '')
180
198
  throw new TypeError('braid-workspace: open takes an app id');
181
- return mountSlot(needContainer(), { appId, ...app });
199
+ const { placement, state, channel, ...rest } = app;
200
+ // JSON, as a layout keeps it: what does not survive that (a function, say) is no state
201
+ const json = state === undefined ? undefined : JSON.stringify(state);
202
+ const handover = json !== undefined || typeof channel === 'string';
203
+ return mountSlot(needContainer(), { ...rest, appId }, (slot) => {
204
+ if (placement)
205
+ writePlacement(slot, cleanPlacement(placement));
206
+ if (handover) {
207
+ restores.set(slot, {
208
+ ...(typeof channel === 'string' ? { channel } : {}),
209
+ ...(json !== undefined ? { state: JSON.parse(json) } : {}),
210
+ });
211
+ }
212
+ });
213
+ },
214
+ place(slot, placement) {
215
+ writePlacement(ownSlot(slot, 'place'), cleanPlacement(placement ?? {}));
216
+ },
217
+ placementOf(slot) {
218
+ return readPlacement(slot);
219
+ },
220
+ move(slot, index) {
221
+ const container = needContainer();
222
+ ownSlot(slot, 'move');
223
+ const slots = slotsIn(container);
224
+ const others = slots.filter((other) => other !== slot);
225
+ const at = Math.max(0, Math.min(others.length, Math.trunc(Number(index)) || 0));
226
+ // already there: a move that does nothing must not take the slot out and put it back
227
+ if (slots.indexOf(slot) === at)
228
+ return;
229
+ const before = others[at] ?? others.at(-1)?.nextSibling ?? null;
230
+ // moveBefore, where there is one, keeps even focus and running animations inside the slot
231
+ const parent = container;
232
+ if (typeof parent.moveBefore === 'function')
233
+ parent.moveBefore(slot, before);
234
+ else
235
+ container.insertBefore(slot, before);
236
+ },
237
+ snapshot(slot) {
238
+ return savedSlot(ownSlot(slot, 'snapshot'));
182
239
  },
183
240
  preferences: {
184
241
  getHost: hostPreferences,
@@ -214,7 +271,10 @@ export function createWorkspace(options = {}) {
214
271
  for (const saved of layout.slots) {
215
272
  if (typeof saved?.appId !== 'string' || saved.appId === '')
216
273
  continue;
217
- mountSlot(target, saved, (slot) => restores.set(slot, { channel: saved.channel, state: saved.state }));
274
+ mountSlot(target, saved, (slot) => {
275
+ writePlacement(slot, cleanPlacement(saved.placement ?? {}));
276
+ restores.set(slot, { channel: saved.channel, state: saved.state });
277
+ });
218
278
  }
219
279
  },
220
280
  async list() {
@@ -252,6 +312,43 @@ function decodedSegments(keys, prefix) {
252
312
  }
253
313
  });
254
314
  }
315
+ /** A placement with only whole spans from 1 to {@link MAX_SPAN}; anything else is left out. */
316
+ function cleanPlacement(placement) {
317
+ const clean = {};
318
+ if (!placement || typeof placement !== 'object')
319
+ return clean;
320
+ for (const key of ['columns', 'rows']) {
321
+ const value = placement[key];
322
+ if (Number.isInteger(value) && value >= 1 && value <= MAX_SPAN)
323
+ clean[key] = value;
324
+ }
325
+ return clean;
326
+ }
327
+ const PLACEMENT_ATTRIBUTES = { columns: 'data-braid-columns', rows: 'data-braid-rows' };
328
+ function readPlacement(slot) {
329
+ const read = {};
330
+ for (const [key, attribute] of Object.entries(PLACEMENT_ATTRIBUTES)) {
331
+ const value = slot.getAttribute(attribute);
332
+ if (value !== null)
333
+ read[key] = Number(value);
334
+ }
335
+ return cleanPlacement(read);
336
+ }
337
+ /** Writes a clean placement as attributes and custom properties; an absent member removes both. */
338
+ function writePlacement(slot, placement) {
339
+ const style = slot.style;
340
+ for (const [key, attribute] of Object.entries(PLACEMENT_ATTRIBUTES)) {
341
+ const value = placement[key];
342
+ if (value === undefined) {
343
+ slot.removeAttribute(attribute);
344
+ style?.removeProperty(`--braid-${key}`);
345
+ }
346
+ else {
347
+ slot.setAttribute(attribute, String(value));
348
+ style?.setProperty(`--braid-${key}`, String(value));
349
+ }
350
+ }
351
+ }
255
352
  /** The `<fragment-slot>` children of the workspace area, in document order. */
256
353
  function slotsIn(container) {
257
354
  return [...container.children].filter((child) => child.localName === 'fragment-slot');
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../../libs/braid-console/src/workspace/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAwB,MAAM,YAAY,CAAC;AA4JjF,2DAA2D;AAC3D,MAAM,qBAAqB,GAAG,KAAK,CAAC;AACpC,4FAA4F;AAC5F,MAAM,oBAAoB,GAAG,KAAK,CAAC;AACnC,4DAA4D;AAC5D,MAAM,eAAe,GAAG,KAAK,CAAC;AAE9B,MAAM,QAAQ,GAAG,MAAM,CAAC;AACxB,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,WAAmB,EAAE,EAAE,CAAC,WAAW,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;AACtH,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,WAAW,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;AAClE,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,QAAQ,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC;AAclE,MAAM,UAAU,eAAe,CAAC,UAA4B,EAAE;IAC5D,IAAI,KAA0B,CAAC;IAC/B,gEAAgE;IAChE,MAAM,IAAI,GAAG,GAAwB,EAAE;QACrC,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC;QAC3E,IAAI,CAAC,KAAK,EAAE,WAAW;YAAE,KAAK,GAAG,CAAC,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,IAAI,SAAS,CAAC;QAC1I,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,iBAAiB,EAAE,CAAC;IAEnD,yEAAyE;IACzE,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAkD,CAAC;IAC/E,iDAAiD;IACjD,MAAM,MAAM,GAAG,IAAI,OAAO,EAAqB,CAAC;IAEhD;;;;OAIG;IACH,IAAI,IAA0C,CAAC;IAC/C,SAAS,eAAe;QACtB,IAAI,KAAK,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAC,CAAC,IAAI,CAClE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAE,MAA0B,CAAC,CAAC,CAAC,EAAE,CAAC,EACrF,GAAG,EAAE;YACH,IAAI,GAAG,SAAS,CAAC;YACjB,OAAO,EAAE,CAAC;QACZ,CAAC,CACF,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK,UAAU,UAAU,CAAqC,UAAe,EAAE,WAAmB;QAChG,MAAM,OAAO,GAAQ,EAAE,CAAC;QACxB,KAAK,MAAM,MAAM,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAC9E,IAAI,KAAc,CAAC;YACnB,IAAI,CAAC;gBACH,KAAK,GAAI,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAqC,EAAE,KAAK,CAAC;YACxG,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,MAAM,IAAI,SAAS,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;YACzG,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAClE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnH,IAAI,IAAI;gBAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,CAAC;IAED,SAAS,eAAe,CAAC,KAAa,EAAE,QAAkB,EAAE,aAAsB;QAChF,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtB,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBACjE,GAAG,EAAE,CAAC,GAAW,EAAE,KAAc,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC;gBACxF,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBACvE,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;aACpE,CAAC;YACF,YAAY,CAAC,OAAsB;gBACjC,IAAI,OAAO,OAAO,KAAK,UAAU;oBAAE,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;gBACrG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACnC,OAAO,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1D,CAAC;YACD,aAAa,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC;SACxF,CAAC,CAAC;IACL,CAAC;IAED,SAAS,aAAa;QACpB,MAAM,SAAS,GAAG,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,uHAAuH,CAAC,CAAC;QAC3I,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,sFAAsF;IACtF,KAAK,UAAU,OAAO,CAAC,QAA8B;QACnD,MAAM,OAAO,GAAG,QAAQ,IAAI,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC,CAAC;YACxF,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,IAAa;QACpC,MAAM,KAAK,GAAc,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAE,EAAE,CAAC;QAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,GAAG,KAAK,IAAI;YAAE,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;QAClC,MAAM,KAAK,GAAI,IAAsD,CAAC,KAAK,CAAC;QAC5E,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACzH,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI,CAAC;QAC5B,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACzC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,qBAAqB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YAC5F,OAAO,CAAC,QAAQ,CAAC;SAClB,CAAC,CAAC;QACH,IAAI,OAAO,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ;YAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC;QAC3F,IAAI,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qEAAqE;IACrE,KAAK,UAAU,OAAO,CAAqC,UAAe;QACxE,MAAM,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,MAAM,eAAe,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,SAAS,GAAc;QAC3B,IAAI,SAAS;YACX,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,KAAK;YACR,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7E,CAAC;QAED,YAAY,CAAC,KAAK;YAChB,OAAO,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACxB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;gBAC9C,gFAAgF;gBAChF,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;gBAC1G,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACtD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC7D,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBAC5B,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,CAAC,MAAM,eAAe,EAAE,CAAC,CAAC,kBAAkB,CAAC;oBACjF,wEAAwE;oBACxE,IAAI,OAAO,OAAO,KAAK,QAAQ;wBAAE,MAAM,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBAC5H,CAAC;gBACD,MAAM,QAAQ,GAAa,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;gBAClF,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBAC5B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACtB,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAC3B,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACtH,CAAC;gBACD,OAAO,EAAE,GAAG,OAAO,EAAE,YAAY,EAAE,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;YAC7F,CAAC,CAAC;QACJ,CAAC;QAED,cAAc,CAAC,KAAK;YAClB,OAAO,KAAK,EAAE,OAAO,EAAE,EAAE;gBACvB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACrD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,SAAS,CAAC;gBAC9C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,MAAM,WAAW,GAAG,OAAO,OAAO,CAAC,OAAO,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;gBACtG,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBACxD,IAAI,KAAK;oBAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;gBACvC,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;gBACzD,IAAI,CAAC,MAAM;oBAAE,OAAO,SAAS,CAAC;gBAC9B,8EAA8E;gBAC9E,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAC7B,CAAC,SAAS,EAAE,EAAE,CACZ,SAAS,CAAC,MAAM,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM;oBAC7C,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC,SAAS,CAAC,KAAK;oBAC1C,CAAC,SAAS,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,IAAI,IAAI,CAAC,CAC3E,CAAC;gBACF,IAAI,OAAO,IAAI,MAAM,CAAC,QAAQ;oBAAE,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBACzI,OAAO,MAAM,CAAC;YAChB,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,EAAE;YAClB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE;gBAAE,MAAM,IAAI,SAAS,CAAC,uCAAuC,CAAC,CAAC;YAC5G,OAAO,SAAS,CAAC,aAAa,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,WAAW,EAAE;YACX,OAAO,EAAE,eAAe;YACxB,KAAK,CAAC,OAAO,CAAC,WAAW;gBACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC,CAAoB,CAAC;gBAC/E,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACjC,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAChC,CAAC;YACD,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW;gBACpC,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAoC,CAAC;gBACpG,OAAO,OAAO,MAAM,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,CAAC;YACD,KAAK,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW;gBAC1C,MAAM,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;YACrD,CAAC;SACF;QAED,OAAO,EAAE;YACP,KAAK,CAAC,IAAI,CAAC,IAAI;gBACb,kFAAkF;gBAClF,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;gBACnF,MAAM,MAAM,GAAgB,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;gBAC9H,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;gBACzC,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,KAAK,CAAC,OAAO,CAAC,IAAI;gBAChB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAA4B,CAAC;gBAC7E,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpE,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,GAAG,CAAC,CAAC;gBAChE,CAAC;gBACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;oBAAE,IAAI,CAAC,MAAM,EAAE,CAAC;gBAClD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjC,IAAI,OAAO,KAAK,EAAE,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,KAAK,EAAE;wBAAE,SAAS;oBACrE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACzG,CAAC;YACH,CAAC;YAED,KAAK,CAAC,IAAI;gBACR,OAAO,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC;YACnE,CAAC;YAED,KAAK,CAAC,MAAM,CAAC,IAAI;gBACf,MAAM,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YACtC,CAAC;SACF;KACF,CAAC;IACF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,MAAM,KAAK,GAAG,KAAiD,CAAC;IAChE,OAAO,OAAO,KAAK,EAAE,eAAe,KAAK,UAAU,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,UAAU,CAAC;AACvG,CAAC;AAED,sFAAsF;AACtF,SAAS,WAAW,CAAI,OAAmB,EAAE,EAAU;IACrD,IAAI,KAAgD,CAAC;IACrD,OAAO,OAAO,CAAC,IAAI,CAAC;QAClB,OAAO;QACP,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;YACtC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC;KACH,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,+GAA+G;AAC/G,SAAS,eAAe,CAAC,IAAc,EAAE,MAAc;IACrD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC1B,IAAI,CAAC;YACH,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,SAAS,OAAO,CAAC,SAAkB;IACjC,OAAO,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,eAAe,CAAC,CAAC;AACxF,CAAC;AAED;;;GAGG;AACH,SAAS,SAAS,CAChB,SAAkB,EAClB,GAAqE,EACrE,OAAiC;IAEjC,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;IACpE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ;QAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACnE,IAAI,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;QAAE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IACtG,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;IAChB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvB,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../../libs/braid-console/src/workspace/workspace.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,6 @@
6
6
  * console's shell designer marks which area of a shell is the workspace; this is what runs there.
7
7
  */
8
8
  export { createWorkspace } from './workspace/workspace.js';
9
- export type { Workspace, WorkspaceOptions, WorkspaceFragment, WorkspaceIntentCandidate, WorkspaceIntentResolver, RealmGlobals, HostPreferences, SavedLayout, SavedSlot, BraidDesktopApi, } from './workspace/workspace.js';
9
+ export type { Workspace, WorkspaceOptions, WorkspaceFragment, WorkspaceIntentCandidate, WorkspaceIntentResolver, RealmGlobals, HostPreferences, SavedLayout, SavedSlot, Placement, BraidDesktopApi, } from './workspace/workspace.js';
10
10
  export { localStorageStore, serverStore, memoryStore, isStoreKey, keySegment } from './workspace/store.js';
11
11
  export type { PreferenceStore, LocalStorageStoreOptions, ServerStoreOptions } from './workspace/store.js';
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../libs/braid-console/src/workspace.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAa3D,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../libs/braid-console/src/workspace.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAc3D,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC"}