@m4l/testing 1.1.0 → 1.2.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.
@@ -144,7 +144,7 @@ function ye(e = {}) {
144
144
  ...e
145
145
  };
146
146
  }
147
- function Ut(e = {}) {
147
+ function Gt(e = {}) {
148
148
  const {
149
149
  disableSelectionAutofocus: t,
150
150
  dummyPresetId: o,
@@ -178,7 +178,7 @@ function W(e = {}) {
178
178
  ...e
179
179
  };
180
180
  }
181
- const h = {
181
+ const v = {
182
182
  locale: {
183
183
  id: "en-US",
184
184
  name: "English (United States)"
@@ -209,9 +209,9 @@ const h = {
209
209
  currency_decimal_digits: 2
210
210
  };
211
211
  function be(e = {}) {
212
- const t = e.locale ? { ...h.locale, ...e.locale } : h.locale, o = e.time_zone ? { ...h.time_zone, ...e.time_zone } : h.time_zone, a = e.date_format ? { ...h.date_format, ...e.date_format } : h.date_format, i = e.time_format ? { ...h.time_format, ...e.time_format } : h.time_format;
212
+ const t = e.locale ? { ...v.locale, ...e.locale } : v.locale, o = e.time_zone ? { ...v.time_zone, ...e.time_zone } : v.time_zone, a = e.date_format ? { ...v.date_format, ...e.date_format } : v.date_format, i = e.time_format ? { ...v.time_format, ...e.time_format } : v.time_format;
213
213
  return {
214
- ...h,
214
+ ...v,
215
215
  ...e,
216
216
  locale: t,
217
217
  time_zone: o,
@@ -219,7 +219,7 @@ function be(e = {}) {
219
219
  time_format: i
220
220
  };
221
221
  }
222
- async function xt(e, t, o) {
222
+ async function jt(e, t, o) {
223
223
  await e.attach(t, {
224
224
  body: JSON.stringify(o, null, 2),
225
225
  contentType: "application/json"
@@ -228,71 +228,72 @@ async function xt(e, t, o) {
228
228
  function we(e) {
229
229
  return e.getByRole("region", { name: "formContainer" });
230
230
  }
231
- function z(e, t) {
231
+ function J(e, t) {
232
232
  return we(e).locator(`[name="${t}"]`);
233
233
  }
234
234
  function he(e) {
235
235
  return e.getByRole("group", { name: "actionsContainer" });
236
236
  }
237
- function Nt(e, t) {
237
+ function $t(e, t) {
238
238
  return e.getByRole("alert").filter({ hasText: t });
239
239
  }
240
- function Gt(e) {
240
+ function Vt(e) {
241
241
  return e.getByRole("dialog");
242
242
  }
243
- function jt(e, t) {
243
+ function qt(e, t) {
244
244
  return he(e).getByRole("button", { name: t });
245
245
  }
246
- async function $t(e) {
247
- const { page: t, name: o, endpointPattern: a, search: i } = e, r = z(t, o), s = t.waitForRequest(
246
+ async function Yt(e) {
247
+ const { page: t, name: o, endpointPattern: a, search: i } = e, r = J(t, o), s = t.waitForRequest(
248
248
  (n) => n.method() === "GET" && a.test(n.url())
249
249
  );
250
250
  return await r.click(), i && await r.fill(i), s;
251
251
  }
252
- function Vt(e) {
252
+ function Kt(e) {
253
253
  return e.getByRole("listbox").getByRole("option");
254
254
  }
255
- async function qt(e) {
256
- const { page: t, name: o, optionLabel: a, search: i } = e, r = z(t, o);
255
+ async function Wt(e) {
256
+ const { page: t, name: o, optionLabel: a, search: i } = e, r = J(t, o);
257
257
  await r.click(), i && await r.fill(i);
258
258
  const s = t.getByRole("listbox"), n = a ? s.getByRole("option", { name: a }).first() : s.getByRole("option").first();
259
259
  await n.waitFor({ state: "visible" }), await n.click();
260
260
  }
261
- function Yt(e) {
261
+ function Jt(e) {
262
262
  return e.length === 0 ? "All checks passed." : e.map((t) => {
263
263
  const o = t.actual === null ? "null" : String(t.actual);
264
264
  return `${t.key}: expected ${String(t.threshold)}, received ${o}`;
265
265
  }).join(`
266
266
  `);
267
267
  }
268
- function k(e) {
268
+ const ve = 800, _e = 1e4, ke = 100;
269
+ function _(e) {
269
270
  return e.getByRole("grid");
270
271
  }
271
- function J(e) {
272
- return k(e).locator(
272
+ function z(e) {
273
+ return _(e).locator(
273
274
  '[role="row"]:has([role="gridcell"])'
274
275
  );
275
276
  }
276
- function Kt(e, t) {
277
- return k(e).getByRole("gridcell", {
277
+ function zt(e, t) {
278
+ return _(e).getByRole("gridcell", {
278
279
  name: t,
279
280
  exact: !0
280
281
  });
281
282
  }
282
283
  function I(e, t = 0) {
283
- return J(e).nth(t);
284
+ return z(e).nth(t);
284
285
  }
285
- async function Wt(e, t = 0) {
286
+ async function Xt(e, t = 0) {
286
287
  await I(e, t).getByRole("button", { name: "menu-actions" }).click();
287
288
  }
288
- async function zt(e, t = 0) {
289
+ async function Qt(e, t = 0) {
289
290
  await I(e, t).getByRole("gridcell").nth(1).dblclick();
290
291
  }
291
- async function Jt(e, t = 0) {
292
+ async function Zt(e, t = 0) {
292
293
  await I(e, t).getByRole("gridcell").nth(1).click();
293
294
  }
294
- async function Xt(e) {
295
- const t = k(e).locator(
295
+ async function eo(e) {
296
+ const t = _(e).locator(
296
297
  '[role="gridcell"][aria-selected="true"]'
297
298
  );
298
299
  return await t.waitFor({ state: "visible" }), t.evaluate((o) => ({
@@ -303,24 +304,24 @@ async function Xt(e) {
303
304
  }));
304
305
  }
305
306
  function X(e) {
306
- return k(e).getByRole("button", {
307
+ return _(e).getByRole("button", {
307
308
  name: /^header-column-button-/
308
309
  });
309
310
  }
310
- const Qt = [
311
+ const to = [
311
312
  "toggle-freeze",
312
313
  "hide-column"
313
314
  ];
314
315
  function M(e) {
315
316
  return ("mouse" in e ? e : e.page()).locator('[data-testid="PopoverRoot"]');
316
317
  }
317
- async function Zt(e, t) {
318
- await k(e).getByRole("button", {
318
+ async function oo(e, t) {
319
+ await _(e).getByRole("button", {
319
320
  name: `header-column-button-${t}`,
320
321
  exact: !0
321
322
  }).click(), await M(e).waitFor({ state: "visible" });
322
323
  }
323
- async function eo(e) {
324
+ async function ao(e) {
324
325
  const t = M(e).getByRole("menuitem");
325
326
  return await t.first().waitFor({ state: "visible" }), t.evaluateAll(
326
327
  (o) => o.map((a) => ({
@@ -329,18 +330,18 @@ async function eo(e) {
329
330
  }))
330
331
  );
331
332
  }
332
- async function to(e, t) {
333
+ async function io(e, t) {
333
334
  await M(e).getByRole("menuitem", { name: t, exact: !0 }).click();
334
335
  }
335
- async function oo(e) {
336
+ async function ro(e) {
336
337
  await M(e).locator(".MuiBackdrop-root").click({ force: !0, position: { x: 5, y: 5 } }), await M(e).waitFor({ state: "detached" });
337
338
  }
338
339
  function Q(e, t) {
339
- return k(e).locator(
340
+ return _(e).locator(
340
341
  `[role="columnheader"]:has([aria-label="header-column-button-${t}"])`
341
342
  );
342
343
  }
343
- async function ve(e, t) {
344
+ async function Re(e, t) {
344
345
  const o = Q(e, t);
345
346
  await o.waitFor({ state: "visible" });
346
347
  const a = await o.boundingBox();
@@ -348,23 +349,58 @@ async function ve(e, t) {
348
349
  throw new Error(`Column "${t}" has no rendered box to measure.`);
349
350
  return Math.round(a.width);
350
351
  }
351
- async function ao(e, t, o) {
352
+ async function so(e, t = {}) {
353
+ const {
354
+ stableForMs: o = ve,
355
+ timeoutMs: a = _e,
356
+ sampleIntervalMs: i = ke
357
+ } = t, r = _(e), s = r.getByRole("columnheader"), n = "mouse" in e ? e : e.page();
358
+ await r.waitFor({ state: "visible", timeout: a }), await s.first().waitFor({ state: "visible", timeout: a });
359
+ const d = Date.now() + a;
360
+ let u = "<no complete signature sampled>", g = null;
361
+ for (; Date.now() <= d; ) {
362
+ const y = await s.count(), m = [];
363
+ let p = y > 0;
364
+ for (let c = 0; c < y; c += 1) {
365
+ const f = await s.nth(c).boundingBox();
366
+ if (!f) {
367
+ p = !1;
368
+ break;
369
+ }
370
+ m.push({ x: Math.round(f.x), width: Math.round(f.width) });
371
+ }
372
+ if (p) {
373
+ const c = JSON.stringify(m), f = Date.now();
374
+ if (c !== u)
375
+ u = c, g = f;
376
+ else if (g !== null && f - g >= o)
377
+ return;
378
+ }
379
+ if (Date.now() > d)
380
+ break;
381
+ await n.waitForTimeout(i);
382
+ }
383
+ throw new Error(
384
+ `List datagrid layout did not settle within ${a} ms. Last signature: ${u}`
385
+ );
386
+ }
387
+ async function no(e, t, o) {
352
388
  const a = "mouse" in e ? e : e.page(), i = Q(e, t);
353
389
  await i.waitFor({ state: "visible" });
354
390
  const r = await i.boundingBox();
355
391
  if (!r)
356
392
  throw new Error(`Column "${t}" has no rendered box to resize.`);
357
393
  const s = r.x + r.width - 3, n = r.y + r.height / 2;
358
- return await a.mouse.move(s, n), await a.mouse.down(), await a.mouse.move(s + o, n, { steps: 12 }), await a.mouse.up(), ve(e, t);
394
+ return await a.mouse.move(s, n), await a.mouse.down(), await a.mouse.move(s + o, n, { steps: 12 }), await a.mouse.up(), Re(e, t);
359
395
  }
360
- async function _e(e) {
396
+ async function Ee(e) {
361
397
  const t = X(e);
362
398
  return await t.first().waitFor({ state: "visible" }), (await t.evaluateAll(
363
399
  (a) => a.map((i) => i.getAttribute("aria-label") ?? "")
364
400
  )).map((a) => a.replace("header-column-button-", ""));
365
401
  }
366
- async function io(e) {
367
- const t = k(e);
402
+ async function co(e) {
403
+ const t = _(e);
368
404
  await t.waitFor({ state: "visible" });
369
405
  const o = X(e);
370
406
  await o.first().waitFor({ state: "visible" }), await t.evaluate(async (i) => {
@@ -388,9 +424,9 @@ async function io(e) {
388
424
  for (const { key: s, align: n } of i)
389
425
  s && !(s in a) && (a[s] = n);
390
426
  if (await t.evaluate(async (s) => {
391
- const n = s.scrollLeft, l = n + Math.max(s.clientWidth - 120, 120);
392
- return s.scrollTo({ left: l, behavior: "instant" }), await new Promise((p) => {
393
- requestAnimationFrame(() => p(null));
427
+ const n = s.scrollLeft, d = n + Math.max(s.clientWidth - 120, 120);
428
+ return s.scrollTo({ left: d, behavior: "instant" }), await new Promise((u) => {
429
+ requestAnimationFrame(() => u(null));
394
430
  }), s.scrollLeft === n;
395
431
  }))
396
432
  break;
@@ -399,12 +435,12 @@ async function io(e) {
399
435
  i.scrollTo({ left: 0, behavior: "instant" });
400
436
  }), a;
401
437
  }
402
- async function ro(e) {
403
- const t = k(e);
438
+ async function lo(e) {
439
+ const t = _(e);
404
440
  await t.waitFor({ state: "visible" });
405
441
  const o = [];
406
442
  for (; ; ) {
407
- for (const i of await _e(e))
443
+ for (const i of await Ee(e))
408
444
  o.includes(i) || o.push(i);
409
445
  if (await t.evaluate(async (i) => {
410
446
  const r = i.scrollLeft, s = r + Math.max(i.clientWidth - 120, 120);
@@ -418,35 +454,35 @@ async function ro(e) {
418
454
  a.scrollTo({ left: 0, behavior: "instant" });
419
455
  }), o;
420
456
  }
421
- async function so(e, t = 0) {
457
+ async function uo(e, t = 0) {
422
458
  const o = e.locator('[data-testid="data-grid-card"], [data-testid="list-row"]').nth(t);
423
459
  return await o.waitFor({ state: "attached" }), (await o.locator('[data-testid^="datagrid-field-"]').evaluateAll(
424
460
  (r) => r.map((s) => s.getAttribute("data-testid") ?? "")
425
461
  )).map((r) => r.replace("datagrid-field-", ""));
426
462
  }
427
- function no(e) {
463
+ function po(e) {
428
464
  return e.getByRole("alert", { name: "NoItemSelected" });
429
465
  }
430
- function co(e, t) {
466
+ function mo(e, t) {
431
467
  return e.getByRole("listitem").filter({ hasText: t }).last();
432
468
  }
433
- function ke(e, t) {
469
+ function Se(e, t) {
434
470
  return e.getByRole("heading", { name: t });
435
471
  }
436
- async function lo(e, t) {
437
- await ke(e, t).click();
472
+ async function go(e, t) {
473
+ await Se(e, t).click();
438
474
  }
439
- function Re(e) {
475
+ function Te(e) {
440
476
  return e.getByRole("region");
441
477
  }
442
- async function uo(e) {
443
- const t = Re(e);
478
+ async function yo(e) {
479
+ const t = Te(e);
444
480
  await t.first().waitFor({ state: "visible" });
445
481
  const o = t.getByRole("listitem");
446
482
  return await o.first().waitFor({ state: "visible" }), (await o.allInnerTexts()).map((a) => a.split(`
447
483
  `)[0].trim());
448
484
  }
449
- async function po(e) {
485
+ async function fo(e) {
450
486
  const { page: t, logsTabName: o, logsEndpointPattern: a } = e;
451
487
  await t.getByRole("tab", { name: o }).click();
452
488
  const i = t.waitForRequest(
@@ -460,7 +496,7 @@ async function G(e, t = 1) {
460
496
  await e.press("ArrowDown");
461
497
  await e.press("Enter");
462
498
  }
463
- async function Ee(e, t) {
499
+ async function Ae(e, t) {
464
500
  switch (t.type) {
465
501
  case "string":
466
502
  case "number": {
@@ -493,19 +529,19 @@ async function Ee(e, t) {
493
529
  }
494
530
  }
495
531
  }
496
- async function Se(e) {
532
+ async function Pe(e) {
497
533
  const { page: t, scenario: o, endpointPattern: a } = e;
498
- await t.getByRole("button", { name: "searchbox" }).first().click(), await t.getByRole("menuitem", { name: o.fieldLabel, exact: !0 }).click(), await Ee(t, o);
534
+ await t.getByRole("button", { name: "searchbox" }).first().click(), await t.getByRole("menuitem", { name: o.fieldLabel, exact: !0 }).click(), await Ae(t, o);
499
535
  const i = t.waitForRequest(
500
536
  (r) => a.test(r.url()) && /f\[\d+\]\[n\]=/.test(decodeURIComponent(r.url()))
501
537
  );
502
538
  return await t.getByRole("button", { name: "refresh", exact: !0 }).click(), i;
503
539
  }
504
- async function mo(e) {
540
+ async function bo(e) {
505
541
  const { page: t, scenarios: o, endpointPattern: a } = e;
506
542
  let i;
507
543
  for (const r of o)
508
- i = await Se({
544
+ i = await Pe({
509
545
  page: t,
510
546
  scenario: r,
511
547
  endpointPattern: a
@@ -516,16 +552,16 @@ async function mo(e) {
516
552
  );
517
553
  return i;
518
554
  }
519
- function go(e) {
555
+ function wo(e) {
520
556
  return [...decodeURIComponent(e.url()).matchAll(/f\[\d+\]\[n\]=([^&]+)/g)].map((o) => o[1]);
521
557
  }
522
- const yo = "master_applied_filters", fo = "master_applied_sorts";
523
- function bo(e, t) {
558
+ const ho = "master_applied_filters", vo = "master_applied_sorts";
559
+ function _o(e, t) {
524
560
  return e.waitForRequest(
525
561
  (o) => o.method() === "PUT" && new RegExp(`/cookies/.*${t}`).test(o.url())
526
562
  );
527
563
  }
528
- async function wo(e) {
564
+ async function ko(e) {
529
565
  const { page: t, scenario: o, endpointPattern: a } = e;
530
566
  await t.getByRole("button", { name: `header-column-button-${o.columnKey}` }).click();
531
567
  const i = t.waitForRequest(
@@ -533,11 +569,11 @@ async function wo(e) {
533
569
  );
534
570
  return await t.getByRole("menuitem", { name: "sort-descending" }).click(), i;
535
571
  }
536
- function ho(e) {
572
+ function Ro(e) {
537
573
  return [...decodeURIComponent(e.url()).matchAll(/s\[\d+\]\[n\]=([^&]+)/g)].map((o) => o[1]);
538
574
  }
539
575
  const j = "datagrid-view-";
540
- async function Te(e) {
576
+ async function Me(e) {
541
577
  const t = e.locator(`[aria-label^="${j}"]`);
542
578
  await t.first().waitFor({ state: "attached" });
543
579
  const o = await t.first().getAttribute("aria-label"), a = o?.slice(j.length);
@@ -547,67 +583,67 @@ async function Te(e) {
547
583
  );
548
584
  return a;
549
585
  }
550
- async function Ae(e, t) {
551
- T(await Te(e)).toBe(t);
586
+ async function De(e, t) {
587
+ T(await Me(e)).toBe(t);
552
588
  }
553
589
  async function Z(e) {
554
590
  await e.getByRole("button", { name: "view-mode" }).click();
555
591
  }
556
- async function vo(e) {
592
+ async function Eo(e) {
557
593
  await Z(e);
558
594
  const t = "keyboard" in e ? e : e.page(), o = [];
559
595
  for (const a of ["table", "cards", "list"])
560
596
  await t.locator(`[data-testid="toggle-button-${a}"]`).isVisible() && o.push(a);
561
- return await Pe(e), o;
597
+ return await Le(e), o;
562
598
  }
563
- async function Pe(e) {
599
+ async function Le(e) {
564
600
  const t = "keyboard" in e ? e : e.page();
565
601
  await t.keyboard.press("Escape"), await T(
566
602
  t.locator('[data-testid="toggle-button-table"]')
567
603
  ).toBeHidden();
568
604
  }
569
- async function _o(e, t) {
570
- await Z(e), await ("keyboard" in e ? e : e.page()).locator(`[data-testid="toggle-button-${t}"]`).click(), await Ae(e, t);
605
+ async function So(e, t) {
606
+ await Z(e), await ("keyboard" in e ? e : e.page()).locator(`[data-testid="toggle-button-${t}"]`).click(), await De(e, t);
571
607
  }
572
- async function Me(e) {
608
+ async function Oe(e) {
573
609
  const t = "keyboard" in e ? e : e.page();
574
610
  await e.locator('[data-testid="settings-button"]').click(), await T(
575
611
  t.locator('[data-testid="data-grid-settings-intro"]')
576
612
  ).toBeVisible();
577
613
  }
578
- async function ko(e) {
614
+ async function To(e) {
579
615
  const t = "keyboard" in e ? e : e.page();
580
- await Me(e), await t.getByRole("button", { name: "un check all" }).click(), await t.locator('[data-testid="data-grid-settings-intro"]').click(), await T(
616
+ await Oe(e), await t.getByRole("button", { name: "un check all" }).click(), await t.locator('[data-testid="data-grid-settings-intro"]').click(), await T(
581
617
  t.locator('[data-testid="data-grid-settings-intro"]')
582
618
  ).toBeHidden();
583
619
  }
584
- function Ro(e, t) {
585
- return t === "table" ? J(e) : e.locator(
620
+ function Ao(e, t) {
621
+ return t === "table" ? z(e) : e.locator(
586
622
  t === "cards" ? '[data-testid="data-grid-card"]' : '[data-testid="list-row"]'
587
623
  );
588
624
  }
589
- const De = "User avatar";
590
- async function Eo(e) {
625
+ const Ce = "User avatar";
626
+ async function Po(e) {
591
627
  const {
592
628
  page: t,
593
629
  moduleTitle: o,
594
- accountButtonName: a = De
630
+ accountButtonName: a = Ce
595
631
  } = e;
596
632
  await t.getByRole("button", { name: a }).click();
597
633
  const i = t.getByRole("menuitem", { name: o, exact: !0 });
598
634
  await T(i).toBeVisible(), await i.click();
599
635
  }
600
- const Le = "N_D:[appbar.tooltip_toogle_menu]";
601
- async function So(e, t) {
602
- await e.getByRole("button", { name: Le }).click(), await e.getByRole("menuitem", { name: t, exact: !0 }).click();
636
+ const Ie = "N_D:[appbar.tooltip_toogle_menu]";
637
+ async function Mo(e, t) {
638
+ await e.getByRole("button", { name: Ie }).click(), await e.getByRole("menuitem", { name: t, exact: !0 }).click();
603
639
  }
604
- const Oe = '[role="anchored-button"]', Ce = 100, $ = 15e3;
605
- function Ie(e, t, o) {
640
+ const Fe = '[role="anchored-button"]', He = 100, $ = 15e3;
641
+ function Be(e, t, o) {
606
642
  const a = e.getByRole("menuitem", { name: t, exact: o }).first(), i = o ? e.getByRole("menuitem", { name: t }).first() : a, r = e.getByText(t, { exact: o }).first();
607
643
  return o ? [a, i, r] : [a, r];
608
644
  }
609
645
  async function V(e, t, o, a) {
610
- const i = Date.now(), r = Ie(e, t, o);
646
+ const i = Date.now(), r = Be(e, t, o);
611
647
  for (; Date.now() - i < a; ) {
612
648
  for (const s of r)
613
649
  try {
@@ -615,11 +651,11 @@ async function V(e, t, o, a) {
615
651
  return s;
616
652
  } catch {
617
653
  }
618
- await e.waitForTimeout(Ce);
654
+ await e.waitForTimeout(He);
619
655
  }
620
656
  return null;
621
657
  }
622
- async function Fe(e, t, o, a) {
658
+ async function Ue(e, t, o, a) {
623
659
  const i = await V(
624
660
  e,
625
661
  t,
@@ -646,49 +682,49 @@ async function Fe(e, t, o, a) {
646
682
  toggleUsed: s > 0
647
683
  };
648
684
  }
649
- async function He(e) {
685
+ async function xe(e) {
650
686
  const {
651
687
  page: t,
652
688
  moduleTitle: o,
653
689
  exact: a = !0,
654
- toggleSelector: i = Oe,
690
+ toggleSelector: i = Fe,
655
691
  waitForModuleOpen: r,
656
692
  maxClickAttempts: s = r ? 2 : 1
657
- } = e, n = performance.now(), l = performance.now(), { moduleMenuItem: p, toggleUsed: y } = await Fe(
693
+ } = e, n = performance.now(), d = performance.now(), { moduleMenuItem: u, toggleUsed: g } = await Ue(
658
694
  t,
659
695
  o,
660
696
  a,
661
697
  i
662
698
  );
663
- let f = 0, m = null;
664
- for (let d = 1; d <= s; d += 1) {
665
- if (await T(p).toBeVisible(), await p.click({
666
- force: y || d > 1,
699
+ let y = 0, m = null;
700
+ for (let p = 1; p <= s; p += 1) {
701
+ if (await T(u).toBeVisible(), await u.click({
702
+ force: g || p > 1,
667
703
  timeout: 1e3
668
- }), d === 1 && (f = performance.now() - l), !r)
704
+ }), p === 1 && (y = performance.now() - d), !r)
669
705
  return {
670
- clickAttempts: d,
671
- directClickMs: f,
672
- toggleUsed: y,
706
+ clickAttempts: p,
707
+ directClickMs: y,
708
+ toggleUsed: g,
673
709
  totalMs: performance.now() - n
674
710
  };
675
711
  try {
676
- return await r(t, d), {
677
- clickAttempts: d,
678
- directClickMs: f,
679
- toggleUsed: y,
712
+ return await r(t, p), {
713
+ clickAttempts: p,
714
+ directClickMs: y,
715
+ toggleUsed: g,
680
716
  totalMs: performance.now() - n
681
717
  };
682
- } catch (u) {
683
- m = u;
718
+ } catch (c) {
719
+ m = c;
684
720
  }
685
721
  }
686
722
  throw m instanceof Error ? m : new Error(`Expected the host sidebar module "${o}" to open after ${s} click attempt(s).`);
687
723
  }
688
- async function Be(e) {
689
- return He(e);
724
+ async function Ne(e) {
725
+ return xe(e);
690
726
  }
691
- async function Ue(e) {
727
+ async function Ge(e) {
692
728
  const { page: t, count: o = 0 } = e;
693
729
  await t.route("**/alarms/count**", async (a) => {
694
730
  if (a.request().method() !== "GET") {
@@ -706,7 +742,7 @@ async function Ue(e) {
706
742
  });
707
743
  });
708
744
  }
709
- async function xe(e) {
745
+ async function je(e) {
710
746
  const { page: t, areas: o = [K()] } = e;
711
747
  await t.route("**/api/v1/**/areas", async (a) => {
712
748
  if (a.request().method() !== "GET") {
@@ -720,7 +756,7 @@ async function xe(e) {
720
756
  });
721
757
  });
722
758
  }
723
- async function Ne(e) {
759
+ async function $e(e) {
724
760
  const { page: t, session: o, status: a = 200, delayMs: i = 0 } = e, r = de(o);
725
761
  await t.route("**/api/v1/**/auth/login**", async (s) => {
726
762
  if (s.request().method() !== "GET") {
@@ -737,14 +773,14 @@ async function Ne(e) {
737
773
  function q(e) {
738
774
  return `${e.container_id}::${e.id}`;
739
775
  }
740
- function Ge(e) {
776
+ function Ve(e) {
741
777
  const o = new URL(e).pathname.split("/cookies/")[1];
742
778
  if (!o)
743
779
  return null;
744
780
  const [a, i] = o.split("/");
745
781
  return !a || !i ? null : { containerId: a, cookieId: i };
746
782
  }
747
- async function je(e) {
783
+ async function qe(e) {
748
784
  const { page: t, cookies: o = [pe()] } = e, a = new Map(
749
785
  o.map((i) => [q(i), { ...i }])
750
786
  );
@@ -759,7 +795,7 @@ async function je(e) {
759
795
  return;
760
796
  }
761
797
  if (r === "PUT" || r === "POST" || r === "PATCH") {
762
- const s = Ge(i.request().url()), n = i.request().postDataJSON();
798
+ const s = Ve(i.request().url()), n = i.request().postDataJSON();
763
799
  s && typeof n?.value == "string" && a.set(
764
800
  q({
765
801
  container_id: s.containerId,
@@ -804,8 +840,8 @@ async function ee(e) {
804
840
  });
805
841
  });
806
842
  }
807
- const $e = "1";
808
- async function Ve(e) {
843
+ const Ye = "1";
844
+ async function Ke(e) {
809
845
  const { page: t, menuData: o = [], accountMenuData: a } = e;
810
846
  await t.route("**/api/v1/**/menus**", async (i) => {
811
847
  const r = i.request();
@@ -813,7 +849,7 @@ async function Ve(e) {
813
849
  await i.fallback();
814
850
  return;
815
851
  }
816
- const s = new URL(r.url()).searchParams.get("position"), n = a !== void 0 && s === $e;
852
+ const s = new URL(r.url()).searchParams.get("position"), n = a !== void 0 && s === Ye;
817
853
  await i.fulfill({
818
854
  status: 200,
819
855
  contentType: "application/json",
@@ -840,7 +876,7 @@ async function F(e) {
840
876
  });
841
877
  });
842
878
  }
843
- async function qe(e) {
879
+ async function We(e) {
844
880
  const { page: t, userPreferences: o, status: a = 200, delayMs: i = 0 } = e, r = {
845
881
  data: be(o)
846
882
  };
@@ -856,15 +892,15 @@ async function qe(e) {
856
892
  });
857
893
  });
858
894
  }
859
- const Ye = `
895
+ const Je = `
860
896
  <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
861
897
  <rect width="16" height="16" fill="#10233e" />
862
898
  <circle cx="8" cy="8" r="4" fill="#f5f7fa" />
863
- </svg>`, Ke = Buffer.from(
899
+ </svg>`, ze = Buffer.from(
864
900
  "R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",
865
901
  "base64"
866
902
  );
867
- function We(e) {
903
+ function Xe(e) {
868
904
  return [
869
905
  e.assetLogoUrl,
870
906
  e.assetUserInterfaceLogoUrl,
@@ -878,13 +914,13 @@ function We(e) {
878
914
  async function te(e) {
879
915
  const { page: t, uiConfig: o } = e, a = W(o);
880
916
  await Promise.all(
881
- We(a).map(async (i) => {
917
+ Xe(a).map(async (i) => {
882
918
  await t.route(`**/api/v1/main/na/${i}`, async (r) => {
883
919
  const s = i.endsWith(".svg");
884
920
  await r.fulfill({
885
921
  status: 200,
886
922
  contentType: s ? "image/svg+xml" : "image/gif",
887
- body: s ? Ye : Ke
923
+ body: s ? Je : ze
888
924
  });
889
925
  });
890
926
  })
@@ -894,19 +930,19 @@ async function oe(e) {
894
930
  const { page: t, uiConfig: o, status: a = 200, delayMs: i = 0, responseGate: r } = e, s = "**/api/v1/main/na/ui-config/**", n = {
895
931
  data: W(o)
896
932
  };
897
- await t.unroute(s), await t.route(s, async (l) => {
898
- if (l.request().method() !== "GET") {
899
- await l.fallback();
933
+ await t.unroute(s), await t.route(s, async (d) => {
934
+ if (d.request().method() !== "GET") {
935
+ await d.fallback();
900
936
  return;
901
937
  }
902
- r && await r, i > 0 && await new Promise((p) => setTimeout(p, i)), await l.fulfill({
938
+ r && await r, i > 0 && await new Promise((u) => setTimeout(u, i)), await d.fulfill({
903
939
  status: a,
904
940
  contentType: "application/json",
905
941
  body: JSON.stringify(a >= 400 ? { error: { code: a, message: "UI config error" } } : n)
906
942
  });
907
943
  });
908
944
  }
909
- async function ze(e) {
945
+ async function Qe(e) {
910
946
  const {
911
947
  page: t,
912
948
  moduleId: o,
@@ -915,46 +951,46 @@ async function ze(e) {
915
951
  cookies: r,
916
952
  locale: s,
917
953
  menuData: n,
918
- moduleDictionary: l,
919
- session: p,
920
- uiConfig: y,
921
- uiConfigRouteOptions: f,
954
+ moduleDictionary: d,
955
+ session: u,
956
+ uiConfig: g,
957
+ uiConfigRouteOptions: y,
922
958
  userPreferences: m
923
959
  } = e;
924
960
  await oe({
925
961
  page: t,
926
- uiConfig: y,
927
- ...f
962
+ uiConfig: g,
963
+ ...y
928
964
  }), await te({
929
965
  page: t,
930
- uiConfig: y
931
- }), await Ne({
966
+ uiConfig: g
967
+ }), await $e({
932
968
  page: t,
933
- session: p
969
+ session: u
934
970
  }), await ee({
935
971
  page: t,
936
972
  locale: s
937
- }), await qe({
973
+ }), await We({
938
974
  page: t,
939
975
  userPreferences: m
940
976
  }), await F({
941
977
  page: t,
942
978
  moduleId: o,
943
- moduleDictionary: l,
979
+ moduleDictionary: d,
944
980
  isAuth: !0
945
- }), await xe({
981
+ }), await je({
946
982
  page: t,
947
983
  areas: i
948
- }), await je({
984
+ }), await qe({
949
985
  page: t,
950
986
  cookies: r
951
- }), await Ve({
987
+ }), await Ke({
952
988
  page: t,
953
989
  menuData: n,
954
990
  ...a === void 0 ? {} : { accountMenuData: a }
955
991
  });
956
992
  }
957
- const Je = "platform", Xe = C({
993
+ const Ze = "platform", et = C({
958
994
  data: {
959
995
  module_name: "Platform Shell",
960
996
  module_description: "Authenticated host shell baseline",
@@ -963,7 +999,7 @@ const Je = "platform", Xe = C({
963
999
  label_db_type_operative: "Operative DB"
964
1000
  }
965
1001
  });
966
- async function Qe(e) {
1002
+ async function tt(e) {
967
1003
  const {
968
1004
  page: t,
969
1005
  moduleId: o,
@@ -972,56 +1008,56 @@ async function Qe(e) {
972
1008
  iconUrl: r,
973
1009
  dynamicParams: s,
974
1010
  uiConfig: n,
975
- locale: l,
976
- session: p,
977
- userPreferences: y,
978
- moduleDictionary: f,
1011
+ locale: d,
1012
+ session: u,
1013
+ userPreferences: g,
1014
+ moduleDictionary: y,
979
1015
  areas: m,
980
- cookies: d,
981
- hostModuleId: u = Je,
982
- alarmCount: R,
1016
+ cookies: p,
1017
+ hostModuleId: c = Ze,
1018
+ alarmCount: f,
983
1019
  menuPosition: A = "sidebar"
984
- } = e, c = le({
1020
+ } = e, l = le({
985
1021
  moduleId: o,
986
1022
  title: a,
987
1023
  debugPort: i,
988
1024
  ...r ? { iconUrl: r } : {},
989
1025
  ...s ? { dynamicParams: s } : {}
990
- }), b = c.flatMap((w) => w.children ?? []), E = A === "account";
991
- await ze({
1026
+ }), w = l.flatMap((h) => h.children ?? []), E = A === "account";
1027
+ await Qe({
992
1028
  page: t,
993
- moduleId: u,
1029
+ moduleId: c,
994
1030
  uiConfig: n,
995
- locale: l,
996
- session: p,
997
- userPreferences: y,
998
- moduleDictionary: f ?? Xe,
1031
+ locale: d,
1032
+ session: u,
1033
+ userPreferences: g,
1034
+ moduleDictionary: y ?? et,
999
1035
  areas: m,
1000
- cookies: d,
1001
- menuData: E ? [] : c,
1002
- ...E ? { accountMenuData: b } : {}
1003
- }), await Ue({
1036
+ cookies: p,
1037
+ menuData: E ? [] : l,
1038
+ ...E ? { accountMenuData: w } : {}
1039
+ }), await Ge({
1004
1040
  page: t,
1005
- ...R === void 0 ? {} : { count: R }
1041
+ ...f === void 0 ? {} : { count: f }
1006
1042
  });
1007
1043
  }
1008
- const Ze = "hostRuntimeDummyPresetId", et = "hostRuntimeMode";
1009
- function tt(e, t) {
1044
+ const ot = "hostRuntimeDummyPresetId", at = "hostRuntimeMode";
1045
+ function it(e, t) {
1010
1046
  const o = typeof t?.dummyPresetId == "string" ? t.dummyPresetId.trim() : "";
1011
1047
  if (!o)
1012
1048
  return e;
1013
1049
  const a = new URL(e, "https://host-preview.local");
1014
- return o && (a.searchParams.set(et, "dummy"), a.searchParams.set(Ze, o)), `${a.pathname}${a.search}${a.hash}`;
1050
+ return o && (a.searchParams.set(at, "dummy"), a.searchParams.set(ot, o)), `${a.pathname}${a.search}${a.hash}`;
1015
1051
  }
1016
- const ot = 6e4, at = 2e3, it = 250;
1017
- async function rt(e) {
1052
+ const rt = 6e4, st = 2e3, nt = 250;
1053
+ async function ct(e) {
1018
1054
  const { debugPort: t, page: o } = e, a = `https://localhost:${t}/`, i = Date.now();
1019
1055
  let r = null;
1020
- for (; Date.now() - i < ot; ) {
1056
+ for (; Date.now() - i < rt; ) {
1021
1057
  try {
1022
1058
  const s = await o.request.get(a, {
1023
1059
  failOnStatusCode: !1,
1024
- timeout: at
1060
+ timeout: st
1025
1061
  });
1026
1062
  if (s.status() < 500)
1027
1063
  return;
@@ -1031,13 +1067,13 @@ async function rt(e) {
1031
1067
  } catch (s) {
1032
1068
  r = s;
1033
1069
  }
1034
- await o.waitForTimeout(it);
1070
+ await o.waitForTimeout(nt);
1035
1071
  }
1036
1072
  throw new Error(
1037
1073
  `Timed out waiting for preview debug port ${t} at ${a} to become ready.${r instanceof Error ? ` Last error: ${r.message}` : ""}`
1038
1074
  );
1039
1075
  }
1040
- async function To(e) {
1076
+ async function Do(e) {
1041
1077
  const {
1042
1078
  page: t,
1043
1079
  moduleId: o,
@@ -1046,48 +1082,48 @@ async function To(e) {
1046
1082
  iconUrl: r,
1047
1083
  dynamicParams: s,
1048
1084
  initialPath: n = "/",
1049
- exact: l,
1050
- toggleSelector: p,
1051
- installPostMountRoutes: y,
1052
- waitForModuleOpen: f,
1085
+ exact: d,
1086
+ toggleSelector: u,
1087
+ installPostMountRoutes: g,
1088
+ waitForModuleOpen: y,
1053
1089
  maxSidebarClickAttempts: m,
1054
- skipDebugPortReadyWait: d = !1,
1055
- ...u
1056
- } = e, R = tt(n, s), A = performance.now(), c = performance.now();
1057
- await Qe({
1090
+ skipDebugPortReadyWait: p = !1,
1091
+ ...c
1092
+ } = e, f = it(n, s), A = performance.now(), l = performance.now();
1093
+ await tt({
1058
1094
  page: t,
1059
1095
  moduleId: o,
1060
1096
  title: a,
1061
1097
  debugPort: i,
1062
1098
  ...r ? { iconUrl: r } : {},
1063
1099
  ...s ? { dynamicParams: s } : {},
1064
- ...u
1100
+ ...c
1065
1101
  });
1066
- const b = performance.now() - c, E = performance.now();
1067
- await y?.(t);
1068
- const w = performance.now() - E;
1069
- d || await rt({ debugPort: i, page: t });
1102
+ const w = performance.now() - l, E = performance.now();
1103
+ await g?.(t);
1104
+ const h = performance.now() - E;
1105
+ p || await ct({ debugPort: i, page: t });
1070
1106
  const D = performance.now();
1071
- await t.goto(R);
1072
- const L = performance.now() - D, O = await Be({
1107
+ await t.goto(f);
1108
+ const L = performance.now() - D, O = await Ne({
1073
1109
  page: t,
1074
1110
  moduleTitle: a,
1075
- exact: l,
1111
+ exact: d,
1076
1112
  maxClickAttempts: m,
1077
- toggleSelector: p,
1078
- waitForModuleOpen: f
1113
+ toggleSelector: u,
1114
+ waitForModuleOpen: y
1079
1115
  });
1080
1116
  return {
1081
1117
  gotoMs: L,
1082
- installBootstrapMs: b,
1083
- installPostMountRoutesMs: w,
1118
+ installBootstrapMs: w,
1119
+ installPostMountRoutesMs: h,
1084
1120
  sidebarClickAttempts: O.clickAttempts,
1085
1121
  sidebarOpenMs: O.totalMs,
1086
1122
  sidebarToggleUsed: O.toggleUsed,
1087
1123
  totalMs: performance.now() - A
1088
1124
  };
1089
1125
  }
1090
- function st(e) {
1126
+ function lt(e) {
1091
1127
  return Object.freeze({
1092
1128
  ...e,
1093
1129
  carrier: "symbol",
@@ -1095,7 +1131,7 @@ function st(e) {
1095
1131
  symbol: Symbol.for(e.symbolId)
1096
1132
  });
1097
1133
  }
1098
- function g(e) {
1134
+ function b(e) {
1099
1135
  return Object.freeze({
1100
1136
  ...e,
1101
1137
  carrier: "globalThis",
@@ -1109,7 +1145,7 @@ function H(e) {
1109
1145
  key: `window.${e.property}`
1110
1146
  });
1111
1147
  }
1112
- const nt = st({
1148
+ const dt = lt({
1113
1149
  active: !0,
1114
1150
  cleanup: "none",
1115
1151
  codeRefs: [
@@ -1126,7 +1162,7 @@ const nt = st({
1126
1162
  purpose: "Share one host-owned MF runtime error bridge across separately built bundles.",
1127
1163
  stability: "internal",
1128
1164
  symbolId: "m4l.layouts.mfRuntimeErrors"
1129
- }), ct = g({
1165
+ }), ut = b({
1130
1166
  active: !0,
1131
1167
  cleanup: "none",
1132
1168
  codeRefs: [
@@ -1143,7 +1179,7 @@ const nt = st({
1143
1179
  property: "__M4L_REALTIME_RUNTIMES__",
1144
1180
  purpose: "Store the shared realtime runtime registry for the current browser session.",
1145
1181
  stability: "internal"
1146
- }), ae = g({
1182
+ }), ae = b({
1147
1183
  active: !0,
1148
1184
  cleanup: "none",
1149
1185
  codeRefs: [
@@ -1162,7 +1198,7 @@ const nt = st({
1162
1198
  property: "__M4L_REALTIME_PERFORMANCE__",
1163
1199
  purpose: "Publish shared realtime performance counters and motion metrics for browser inspection.",
1164
1200
  stability: "internal"
1165
- }), lt = g({
1201
+ }), pt = b({
1166
1202
  active: !0,
1167
1203
  cleanup: "none",
1168
1204
  codeRefs: [
@@ -1180,7 +1216,7 @@ const nt = st({
1180
1216
  property: "__M4L_REALTIME_TRANSPORT_DEBUG__",
1181
1217
  purpose: "Expose recent Atmosphere lifecycle breadcrumbs for support debugging in host and isolation browser sessions.",
1182
1218
  stability: "operator-facing"
1183
- }), dt = H({
1219
+ }), mt = H({
1184
1220
  active: !0,
1185
1221
  cleanup: "none",
1186
1222
  codeRefs: [
@@ -1198,7 +1234,7 @@ const nt = st({
1198
1234
  property: "__m4lObservabilitySmoke",
1199
1235
  purpose: "Expose browser-console observability smoke helpers for host, preview, and isolation validation.",
1200
1236
  stability: "operator-facing"
1201
- }), ut = H({
1237
+ }), gt = H({
1202
1238
  active: !0,
1203
1239
  cleanup: "on-unmount",
1204
1240
  codeRefs: [
@@ -1215,7 +1251,7 @@ const nt = st({
1215
1251
  property: "__m4lHostAlarmSmoke",
1216
1252
  purpose: "Publish host alarm smoke helpers for manual badge and websocket validation.",
1217
1253
  stability: "operator-facing"
1218
- }), pt = g({
1254
+ }), yt = b({
1219
1255
  active: !0,
1220
1256
  cleanup: "none",
1221
1257
  codeRefs: [
@@ -1231,7 +1267,7 @@ const nt = st({
1231
1267
  property: "__M4L_GPS_DEVICES_CLUSTER_POLICY__",
1232
1268
  purpose: "Publish the latest device-cluster policy snapshot for browser debugging and probes.",
1233
1269
  stability: "internal"
1234
- }), mt = g({
1270
+ }), ft = b({
1235
1271
  active: !0,
1236
1272
  cleanup: "manual",
1237
1273
  codeRefs: [
@@ -1248,7 +1284,7 @@ const nt = st({
1248
1284
  property: "__M4L_GPS_DEVICES_VIEWPORT_TRACE__",
1249
1285
  purpose: "Store the current viewport trace buffer for manual debugging and browser probes.",
1250
1286
  stability: "internal"
1251
- }), gt = g({
1287
+ }), bt = b({
1252
1288
  active: !0,
1253
1289
  cleanup: "manual",
1254
1290
  codeRefs: [
@@ -1265,7 +1301,7 @@ const nt = st({
1265
1301
  property: "__M4L_GPS_DEVICES_VIEWPORT_TRACE_ENABLED__",
1266
1302
  purpose: "Toggle viewport trace publication for the current browser session.",
1267
1303
  stability: "internal"
1268
- }), yt = g({
1304
+ }), wt = b({
1269
1305
  active: !0,
1270
1306
  cleanup: "manual",
1271
1307
  codeRefs: [
@@ -1281,7 +1317,7 @@ const nt = st({
1281
1317
  property: "__M4L_TEST_DEVICE_PANEL_HYDRATION_DRIVER__",
1282
1318
  purpose: "Expose the device-panel hydration test driver for deterministic browser tests.",
1283
1319
  stability: "test-only"
1284
- }), ft = g({
1320
+ }), ht = b({
1285
1321
  active: !0,
1286
1322
  cleanup: "manual",
1287
1323
  codeRefs: [
@@ -1297,7 +1333,7 @@ const nt = st({
1297
1333
  property: "__M4L_TEST_DOCUMENT_VISIBILITY_DRIVER__",
1298
1334
  purpose: "Expose the document-visibility test driver for deterministic lifecycle tests.",
1299
1335
  stability: "test-only"
1300
- }), bt = g({
1336
+ }), vt = b({
1301
1337
  active: !0,
1302
1338
  cleanup: "manual",
1303
1339
  codeRefs: [
@@ -1314,7 +1350,7 @@ const nt = st({
1314
1350
  property: "__M4L_TEST_VISIBILITY_SHIM__",
1315
1351
  purpose: "Expose the hidden-tab resume visibility shim for deterministic Playwright probes.",
1316
1352
  stability: "test-only"
1317
- }), wt = g({
1353
+ }), _t = b({
1318
1354
  active: !0,
1319
1355
  cleanup: "manual",
1320
1356
  codeRefs: [
@@ -1331,7 +1367,7 @@ const nt = st({
1331
1367
  property: "__M4L_TEST_DUMMY_PLAYBACK_SHIM__",
1332
1368
  purpose: "Expose the hidden-tab resume dummy playback shim for deterministic Playwright probes.",
1333
1369
  stability: "test-only"
1334
- }), ht = g({
1370
+ }), kt = b({
1335
1371
  active: !0,
1336
1372
  cleanup: "manual",
1337
1373
  codeRefs: [
@@ -1348,7 +1384,7 @@ const nt = st({
1348
1384
  property: "__M4L_NON_SELECTED_VIEWPORT_GATE_ZOOM_SETTLE__",
1349
1385
  purpose: "Store the non-selected viewport-gate probe zoom settlement state for the current browser session.",
1350
1386
  stability: "test-only"
1351
- }), vt = g({
1387
+ }), Rt = b({
1352
1388
  active: !0,
1353
1389
  cleanup: "manual",
1354
1390
  codeRefs: [
@@ -1365,7 +1401,7 @@ const nt = st({
1365
1401
  property: "__M4L_SPARSE_ROTATION_STATIONARY_WAIT__",
1366
1402
  purpose: "Store the sparse-rotation stationary wait state for the current browser session.",
1367
1403
  stability: "test-only"
1368
- }), _t = g({
1404
+ }), Et = b({
1369
1405
  active: !0,
1370
1406
  cleanup: "manual",
1371
1407
  codeRefs: [
@@ -1381,7 +1417,7 @@ const nt = st({
1381
1417
  property: "__M4L_TEST_DUMMY_PLAYBACK_DRIVER__",
1382
1418
  purpose: "Expose the dummy realtime playback driver for deterministic browser probes and tests.",
1383
1419
  stability: "test-only"
1384
- }), kt = H({
1420
+ }), St = H({
1385
1421
  active: !0,
1386
1422
  cleanup: "none",
1387
1423
  codeRefs: [
@@ -1399,12 +1435,9 @@ const nt = st({
1399
1435
  purpose: "Store the shared Google Maps loader state for the current browser window.",
1400
1436
  stability: "internal"
1401
1437
  }), B = [
1402
- nt,
1403
- ct,
1404
- ae,
1405
- lt,
1406
1438
  dt,
1407
1439
  ut,
1440
+ ae,
1408
1441
  pt,
1409
1442
  mt,
1410
1443
  gt,
@@ -1415,9 +1448,12 @@ const nt = st({
1415
1448
  ht,
1416
1449
  vt,
1417
1450
  _t,
1418
- kt
1451
+ kt,
1452
+ Rt,
1453
+ Et,
1454
+ St
1419
1455
  ];
1420
- function Rt(e) {
1456
+ function Tt(e) {
1421
1457
  const t = /* @__PURE__ */ new Set(), o = /* @__PURE__ */ new Set();
1422
1458
  for (const a of e) {
1423
1459
  if (t.has(a.id))
@@ -1427,7 +1463,7 @@ function Rt(e) {
1427
1463
  o.add(a.key);
1428
1464
  }
1429
1465
  }
1430
- Rt(B);
1466
+ Tt(B);
1431
1467
  Object.freeze(
1432
1468
  Object.fromEntries(
1433
1469
  B.map((e) => [e.id, e])
@@ -1438,14 +1474,14 @@ Object.freeze(
1438
1474
  B.map((e) => [e.key, e])
1439
1475
  )
1440
1476
  );
1441
- const v = "gclick-frontend-diagnostic-policies", _ = [
1477
+ const k = "gclick-frontend-diagnostic-policies", R = [
1442
1478
  "moduleDefault",
1443
1479
  "accountOverride"
1444
1480
  ], S = {
1445
1481
  app: "gclick_host",
1446
1482
  runtime: "web",
1447
1483
  surface: "host"
1448
- }, Et = {
1484
+ }, At = {
1449
1485
  diagnosticSmoke: {
1450
1486
  active: !0,
1451
1487
  codePaths: [
@@ -1462,10 +1498,10 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1462
1498
  purpose: "Provide one deterministic browser-log smoke signal before support investigates a live issue.",
1463
1499
  summary: "Manual host smoke proof for browser diagnostic-log delivery.",
1464
1500
  remoteRule: {
1465
- featureKey: v,
1501
+ featureKey: k,
1466
1502
  payloadKey: "gclick_host.observability.diagnostic-smoke",
1467
1503
  provider: "growthbook",
1468
- supportedLayers: _
1504
+ supportedLayers: R
1469
1505
  }
1470
1506
  },
1471
1507
  realtimeConnectionRecovery: {
@@ -1481,10 +1517,10 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1481
1517
  purpose: "Capture host websocket transport recovery evidence without waiting for a broader outage investigation.",
1482
1518
  summary: "Host realtime reconnect recovery breadcrumbs.",
1483
1519
  remoteRule: {
1484
- featureKey: v,
1520
+ featureKey: k,
1485
1521
  payloadKey: "gclick_host.realtime.connection-recovery",
1486
1522
  provider: "growthbook",
1487
- supportedLayers: _
1523
+ supportedLayers: R
1488
1524
  }
1489
1525
  },
1490
1526
  realtimeTransportLifecycle: {
@@ -1502,10 +1538,10 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1502
1538
  purpose: "Capture host Atmosphere lifecycle breadcrumbs during temporary support investigations of reconnect storms and browser sleep recovery.",
1503
1539
  summary: "Host Atmosphere transport lifecycle breadcrumbs.",
1504
1540
  remoteRule: {
1505
- featureKey: v,
1541
+ featureKey: k,
1506
1542
  payloadKey: "gclick_host.realtime.transport-lifecycle",
1507
1543
  provider: "growthbook",
1508
- supportedLayers: _
1544
+ supportedLayers: R
1509
1545
  }
1510
1546
  },
1511
1547
  remoteDiagnosticProviderHealth: {
@@ -1578,10 +1614,10 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1578
1614
  purpose: "Expose host-owned GrowthBook refresh breadcrumbs such as bootstrap, context, focus, visibility, poll, and queued refreshes.",
1579
1615
  summary: "Host remote diagnostic-provider refresh debug breadcrumbs.",
1580
1616
  remoteRule: {
1581
- featureKey: v,
1617
+ featureKey: k,
1582
1618
  payloadKey: "gclick_host.feature-flags.refresh-debug",
1583
1619
  provider: "growthbook",
1584
- supportedLayers: _
1620
+ supportedLayers: R
1585
1621
  }
1586
1622
  }
1587
1623
  }, P = {
@@ -1589,7 +1625,7 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1589
1625
  moduleId: "operative_my_gps_devices",
1590
1626
  runtime: "web",
1591
1627
  surface: "mf"
1592
- }, St = {
1628
+ }, Pt = {
1593
1629
  deviceSelectionMissingPosition: {
1594
1630
  active: !0,
1595
1631
  codePaths: [
@@ -1603,10 +1639,10 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1603
1639
  purpose: "Capture the user-visible branch where one selected device has no finite GNSS position and the map must skip focus safely.",
1604
1640
  summary: "MF selection branch for devices without finite GNSS position.",
1605
1641
  remoteRule: {
1606
- featureKey: v,
1642
+ featureKey: k,
1607
1643
  payloadKey: "operative_my_gps_devices.device-selection.missing-position",
1608
1644
  provider: "growthbook",
1609
- supportedLayers: _
1645
+ supportedLayers: R
1610
1646
  }
1611
1647
  },
1612
1648
  motionCapture: {
@@ -1626,10 +1662,10 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1626
1662
  purpose: "Capture selected-device realtime ingress, motion-segment, and camera-follow evidence for support investigations.",
1627
1663
  summary: "MF targeted motion-capture diagnostic family.",
1628
1664
  remoteRule: {
1629
- featureKey: v,
1665
+ featureKey: k,
1630
1666
  payloadKey: "operative_my_gps_devices.motion.capture",
1631
1667
  provider: "growthbook",
1632
- supportedLayers: _
1668
+ supportedLayers: R
1633
1669
  }
1634
1670
  },
1635
1671
  realtimeTransportLifecycle: {
@@ -1647,10 +1683,10 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1647
1683
  purpose: "Capture isolation Atmosphere lifecycle breadcrumbs during temporary support investigations of reconnect storms and browser sleep recovery.",
1648
1684
  summary: "My GPS Devices isolation Atmosphere transport lifecycle breadcrumbs.",
1649
1685
  remoteRule: {
1650
- featureKey: v,
1686
+ featureKey: k,
1651
1687
  payloadKey: "operative_my_gps_devices.realtime.transport-lifecycle",
1652
1688
  provider: "growthbook",
1653
- supportedLayers: _
1689
+ supportedLayers: R
1654
1690
  }
1655
1691
  },
1656
1692
  recoverableLeafletRuntime: {
@@ -1684,7 +1720,7 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1684
1720
  moduleId: "shared_reports_list",
1685
1721
  runtime: "web",
1686
1722
  surface: "mf"
1687
- }, Tt = {
1723
+ }, Mt = {
1688
1724
  reportsDebug: {
1689
1725
  active: !0,
1690
1726
  codePaths: [
@@ -1703,10 +1739,10 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1703
1739
  purpose: "Allow support-enabled sessions to remove the reports/types test-worker exclusion filter.",
1704
1740
  summary: "Fallback product gate for the shared reports test report type.",
1705
1741
  remoteRule: {
1706
- featureKey: v,
1742
+ featureKey: k,
1707
1743
  payloadKey: "shared_reports_list.feature-flags.reports-debug",
1708
1744
  provider: "growthbook",
1709
- supportedLayers: _
1745
+ supportedLayers: R
1710
1746
  }
1711
1747
  },
1712
1748
  remoteDiagnosticProviderHealth: {
@@ -1722,39 +1758,39 @@ const v = "gclick-frontend-diagnostic-policies", _ = [
1722
1758
  purpose: "Report isolation remote diagnostic-provider outages even when report debug is disabled.",
1723
1759
  summary: "MF isolation remote diagnostic-provider outage anomaly."
1724
1760
  }
1725
- }, At = [
1726
- ...Object.values(Et),
1727
- ...Object.values(St),
1728
- ...Object.values(Tt)
1761
+ }, Dt = [
1762
+ ...Object.values(At),
1763
+ ...Object.values(Pt),
1764
+ ...Object.values(Mt)
1729
1765
  ];
1730
1766
  Object.fromEntries(
1731
- At.map((e) => [e.key, e])
1767
+ Dt.map((e) => [e.key, e])
1732
1768
  );
1733
- const Ao = ae.property;
1734
- function Po(e) {
1769
+ const Lo = ae.property;
1770
+ function Oo(e) {
1735
1771
  return globalThis[e.realtimePerformanceProperty]?.motionMetrics?.motionAuthority ?? null;
1736
1772
  }
1737
- function Mo(e) {
1773
+ function Co(e) {
1738
1774
  const a = globalThis[e.realtimePerformanceProperty]?.motionMetrics?.motionAuthority?.markerContexts ?? {};
1739
1775
  return e.deviceIds.every((i) => !!a[i]);
1740
1776
  }
1741
- function Do(e) {
1777
+ function Io(e) {
1742
1778
  const t = globalThis, a = t[e.realtimePerformanceProperty]?.motionMetrics?.motionAuthority?.markerContexts?.[e.deviceId] ?? null, i = String(t.document?.body?.innerText ?? "");
1743
1779
  return a?.selected === !0 || i.includes("Last Report");
1744
1780
  }
1745
- function Lo(e) {
1781
+ function Fo(e) {
1746
1782
  return (globalThis[e.realtimePerformanceProperty]?.motionMetrics?.motionAuthority?.markerContexts?.[e.deviceId] ?? null)?.selected === !0;
1747
1783
  }
1748
- async function Pt(e, t) {
1784
+ async function Lt(e, t) {
1749
1785
  const { arg: o, pageFunction: a, timeoutMs: i } = t;
1750
1786
  return e.waitForFunction.bind(e)(a, o, { timeout: i }).then(() => !0).catch(() => !1);
1751
1787
  }
1752
- async function Oo(e, t) {
1788
+ async function Ho(e, t) {
1753
1789
  const { timeoutMessage: o, ...a } = t;
1754
- if (!await Pt(e, a))
1790
+ if (!await Lt(e, a))
1755
1791
  throw new Error(o);
1756
1792
  }
1757
- async function Co(e) {
1793
+ async function Bo(e) {
1758
1794
  const { page: t, moduleId: o, ...a } = e;
1759
1795
  await F({
1760
1796
  page: t,
@@ -1763,7 +1799,7 @@ async function Co(e) {
1763
1799
  moduleDictionary: ne(a)
1764
1800
  });
1765
1801
  }
1766
- async function Mt(e) {
1802
+ async function Ot(e) {
1767
1803
  const { page: t, responseBody: o, status: a = 401 } = e, i = me(o);
1768
1804
  await t.route("**/api/v1/**/auth/login**", async (r) => {
1769
1805
  if (r.request().method() !== "GET") {
@@ -1777,7 +1813,7 @@ async function Mt(e) {
1777
1813
  });
1778
1814
  });
1779
1815
  }
1780
- async function Io(e) {
1816
+ async function Uo(e) {
1781
1817
  const { page: t, moduleId: o, moduleDictionary: a, locale: i, uiConfig: r, uiConfigRouteOptions: s } = e;
1782
1818
  await oe({
1783
1819
  page: t,
@@ -1786,7 +1822,7 @@ async function Io(e) {
1786
1822
  }), await te({
1787
1823
  page: t,
1788
1824
  uiConfig: r
1789
- }), await Mt({
1825
+ }), await Ot({
1790
1826
  page: t
1791
1827
  }), await ee({
1792
1828
  page: t,
@@ -1797,49 +1833,49 @@ async function Io(e) {
1797
1833
  moduleDictionary: a
1798
1834
  });
1799
1835
  }
1800
- const Dt = {
1836
+ const Ct = {
1801
1837
  data: "ok"
1802
- }, Lt = {
1838
+ }, It = {
1803
1839
  error: {
1804
1840
  code: 4200,
1805
1841
  message: "Password update failed"
1806
1842
  }
1807
1843
  };
1808
- function Ot(e, t) {
1809
- return t || (e >= 400 ? Lt : Dt);
1844
+ function Ft(e, t) {
1845
+ return t || (e >= 400 ? It : Ct);
1810
1846
  }
1811
- async function Fo(e) {
1847
+ async function xo(e) {
1812
1848
  const { page: t, responseBody: o, status: a = 201, delayMs: i = 0 } = e;
1813
1849
  await t.route("**/api/v1/*/auth/password/new", async (r) => {
1814
1850
  i > 0 && await new Promise((s) => setTimeout(s, i)), await r.fulfill({
1815
1851
  status: a,
1816
1852
  contentType: "application/json",
1817
- body: JSON.stringify(Ot(a, o))
1853
+ body: JSON.stringify(Ft(a, o))
1818
1854
  });
1819
1855
  });
1820
1856
  }
1821
- const Ct = {
1857
+ const Ht = {
1822
1858
  message: "Password reset email sent"
1823
- }, It = {
1859
+ }, Bt = {
1824
1860
  error: {
1825
1861
  code: 4100,
1826
1862
  message: "Password reset failed"
1827
1863
  }
1828
1864
  };
1829
- function Ft(e, t) {
1830
- return t || (e >= 400 ? It : Ct);
1865
+ function Ut(e, t) {
1866
+ return t || (e >= 400 ? Bt : Ht);
1831
1867
  }
1832
- async function Ho(e) {
1868
+ async function No(e) {
1833
1869
  const { page: t, responseBody: o, status: a = 200, delayMs: i = 0 } = e;
1834
1870
  await t.route("**/api/v1/*/auth/password/reset", async (r) => {
1835
1871
  i > 0 && await new Promise((s) => setTimeout(s, i)), await r.fulfill({
1836
1872
  status: a,
1837
1873
  contentType: "application/json",
1838
- body: JSON.stringify(Ft(a, o))
1874
+ body: JSON.stringify(Ut(a, o))
1839
1875
  });
1840
1876
  });
1841
1877
  }
1842
- async function Bo(e) {
1878
+ async function Go(e) {
1843
1879
  const {
1844
1880
  page: t,
1845
1881
  endpointPattern: o,
@@ -1856,7 +1892,7 @@ async function Bo(e) {
1856
1892
  });
1857
1893
  });
1858
1894
  }
1859
- async function Uo(e) {
1895
+ async function jo(e) {
1860
1896
  const { page: t, privileges: o, status: a = 200 } = e, i = Object.fromEntries(
1861
1897
  o.map((r) => [r, !0])
1862
1898
  );
@@ -1872,59 +1908,59 @@ async function Uo(e) {
1872
1908
  });
1873
1909
  });
1874
1910
  }
1875
- const Ht = "__m4lMicrofrontendRenderStubState";
1876
- async function xo(e) {
1911
+ const xt = "__m4lMicrofrontendRenderStubState";
1912
+ async function $o(e) {
1877
1913
  const {
1878
1914
  page: t,
1879
1915
  moduleId: o,
1880
1916
  prefix: a,
1881
1917
  renderedText: i = `${o} microfrontend stub rendered.`,
1882
1918
  renderedTestId: r = `mf-stub-${o}`,
1883
- stateKey: s = Ht
1919
+ stateKey: s = xt
1884
1920
  } = e;
1885
1921
  await t.addInitScript(
1886
- ({ moduleId: n, prefix: l, renderedText: p, renderedTestId: y, stateKey: f }) => {
1887
- const m = window, d = m[f], u = d && typeof d == "object" ? d : {
1922
+ ({ moduleId: n, prefix: d, renderedText: u, renderedTestId: g, stateKey: y }) => {
1923
+ const m = window, p = m[y], c = p && typeof p == "object" ? p : {
1888
1924
  mountCalls: [],
1889
1925
  mountFailures: [],
1890
1926
  renderCalls: [],
1891
1927
  unmountCalls: []
1892
1928
  };
1893
- m[f] = u, Array.isArray(u.mountCalls) || (u.mountCalls = []), Array.isArray(u.mountFailures) || (u.mountFailures = []);
1894
- function R(c, b = window.performance.now() + 15e3) {
1895
- const E = document.getElementById(c);
1929
+ m[y] = c, Array.isArray(c.mountCalls) || (c.mountCalls = []), Array.isArray(c.mountFailures) || (c.mountFailures = []);
1930
+ function f(l, w = window.performance.now() + 15e3) {
1931
+ const E = document.getElementById(l);
1896
1932
  if (!E) {
1897
- if (window.performance.now() >= b) {
1898
- u.mountFailures.push({
1899
- containerId: c,
1933
+ if (window.performance.now() >= w) {
1934
+ c.mountFailures.push({
1935
+ containerId: l,
1900
1936
  moduleId: n
1901
1937
  });
1902
1938
  return;
1903
1939
  }
1904
1940
  window.setTimeout(() => {
1905
- R(c, b);
1941
+ f(l, w);
1906
1942
  }, 50);
1907
1943
  return;
1908
1944
  }
1909
- const w = document.createElement("section"), D = document.createElement("h2"), L = document.createElement("p");
1910
- w.setAttribute("data-mf-module-id", n), w.setAttribute("data-mf-stub-root", n), w.setAttribute("data-testid", y), D.textContent = p, L.textContent = `Stub render contract satisfied for ${n}.`, w.replaceChildren(D, L), E.replaceChildren(w), u.mountCalls.push({
1911
- containerId: c,
1945
+ const h = document.createElement("section"), D = document.createElement("h2"), L = document.createElement("p");
1946
+ h.setAttribute("data-mf-module-id", n), h.setAttribute("data-mf-stub-root", n), h.setAttribute("data-testid", g), D.textContent = u, L.textContent = `Stub render contract satisfied for ${n}.`, h.replaceChildren(D, L), E.replaceChildren(h), c.mountCalls.push({
1947
+ containerId: l,
1912
1948
  moduleId: n
1913
1949
  });
1914
1950
  }
1915
- const A = (c) => {
1916
- const b = typeof c.containerId == "string" ? c.containerId : "";
1917
- u.renderCalls.push({
1918
- containerId: b,
1951
+ const A = (l) => {
1952
+ const w = typeof l.containerId == "string" ? l.containerId : "";
1953
+ c.renderCalls.push({
1954
+ containerId: w,
1919
1955
  moduleId: n,
1920
- debugPort: c.environment?.mfProps?.debugPort ?? null,
1921
- currentLocale: typeof c.currentLocale == "string" ? c.currentLocale : c.currentLocale?.localeString ?? null,
1922
- emergeType: c.emergeType ?? null,
1923
- dynamicParams: c.dynamicMFStore?.getState?.().dynamicMFParameters ?? null
1924
- }), b && R(b);
1956
+ debugPort: l.environment?.mfProps?.debugPort ?? null,
1957
+ currentLocale: typeof l.currentLocale == "string" ? l.currentLocale : l.currentLocale?.localeString ?? null,
1958
+ emergeType: l.emergeType ?? null,
1959
+ dynamicParams: l.dynamicMFStore?.getState?.().dynamicMFParameters ?? null
1960
+ }), w && f(w);
1925
1961
  };
1926
- m[`render_v2_${l}_${n}`] = A, m[`unmount_${l}_${n}`] = (c) => {
1927
- u.unmountCalls.push(c), document.getElementById(c)?.replaceChildren();
1962
+ m[`render_v2_${d}_${n}`] = A, m[`unmount_${d}_${n}`] = (l) => {
1963
+ c.unmountCalls.push(l), document.getElementById(l)?.replaceChildren();
1928
1964
  };
1929
1965
  },
1930
1966
  {
@@ -1937,17 +1973,17 @@ async function xo(e) {
1937
1973
  );
1938
1974
  }
1939
1975
  export {
1940
- Le as HOST_MOBILE_NAV_TOGGLE_NAME,
1941
- yo as LIST_FILTERS_STATE_COOKIE,
1942
- Qt as LIST_HEADER_POPOVER_BASE_ACTIONS,
1943
- fo as LIST_SORTS_STATE_COOKIE,
1944
- Se as applyListFilterAndCaptureRequest,
1945
- mo as applyListFiltersAndCaptureRequest,
1946
- wo as applyListSortAndCaptureRequest,
1947
- xt as attachJson,
1948
- to as clickListHeaderPopoverAction,
1949
- oo as closeListHeaderPopover,
1950
- Pe as closeViewModeSwitcherDataGrid,
1976
+ Ie as HOST_MOBILE_NAV_TOGGLE_NAME,
1977
+ ho as LIST_FILTERS_STATE_COOKIE,
1978
+ to as LIST_HEADER_POPOVER_BASE_ACTIONS,
1979
+ vo as LIST_SORTS_STATE_COOKIE,
1980
+ Pe as applyListFilterAndCaptureRequest,
1981
+ bo as applyListFiltersAndCaptureRequest,
1982
+ ko as applyListSortAndCaptureRequest,
1983
+ jt as attachJson,
1984
+ io as clickListHeaderPopoverAction,
1985
+ ro as closeListHeaderPopover,
1986
+ Le as closeViewModeSwitcherDataGrid,
1951
1987
  K as createHostAreaFixture,
1952
1988
  le as createHostAuthenticatedMfMenuFixture,
1953
1989
  ne as createHostAuthenticatedMfModuleDictionaryFixture,
@@ -1955,87 +1991,88 @@ export {
1955
1991
  pe as createHostCookieFixture,
1956
1992
  me as createHostGuestSessionFixture,
1957
1993
  ye as createHostLocaleFixture,
1958
- Ut as createHostMfPreviewDynamicParamsFixture,
1994
+ Gt as createHostMfPreviewDynamicParamsFixture,
1959
1995
  C as createHostModuleDictionaryFixture,
1960
1996
  W as createHostUiConfigFixture,
1961
1997
  be as createHostUserPreferencesFixture,
1962
1998
  re as createListResponseFixture,
1963
- zt as doubleClickListRow,
1964
- Ae as expectViewModeDataGrid,
1965
- Yt as formatFailedChecks,
1966
- io as getAllColumnAlignmentsViewTableDataGrid,
1967
- ro as getAllColumnKeysViewTableDataGrid,
1968
- so as getAllFieldKeysViewCardsOrListDataGrid,
1969
- vo as getAvailableViewModesDataGrid,
1970
- Xt as getFocusedCellPositionListDataGrid,
1971
- jt as getFormActionButton,
1999
+ Qt as doubleClickListRow,
2000
+ De as expectViewModeDataGrid,
2001
+ Jt as formatFailedChecks,
2002
+ co as getAllColumnAlignmentsViewTableDataGrid,
2003
+ lo as getAllColumnKeysViewTableDataGrid,
2004
+ uo as getAllFieldKeysViewCardsOrListDataGrid,
2005
+ Eo as getAvailableViewModesDataGrid,
2006
+ eo as getFocusedCellPositionListDataGrid,
2007
+ qt as getFormActionButton,
1972
2008
  he as getFormActionsContainer,
1973
- Gt as getFormConfirmDialog,
2009
+ Vt as getFormConfirmDialog,
1974
2010
  we as getFormContainer,
1975
- z as getFormField,
1976
- Vt as getFormSelectOptions,
1977
- Kt as getListCell,
2011
+ J as getFormField,
2012
+ Kt as getFormSelectOptions,
2013
+ zt as getListCell,
1978
2014
  Q as getListColumnHeader,
1979
2015
  X as getListColumnHeaderButtons,
1980
- _e as getListColumnKeys,
1981
- ve as getListColumnWidth,
1982
- k as getListDataGrid,
1983
- J as getListDataRows,
1984
- ke as getListDetailAccordion,
1985
- Re as getListDetailAccordionRegions,
1986
- no as getListDetailEmptyState,
1987
- co as getListDetailField,
1988
- uo as getListDetailFieldLabels,
1989
- go as getListFilterFieldNames,
2016
+ Ee as getListColumnKeys,
2017
+ Re as getListColumnWidth,
2018
+ _ as getListDataGrid,
2019
+ z as getListDataRows,
2020
+ Se as getListDetailAccordion,
2021
+ Te as getListDetailAccordionRegions,
2022
+ po as getListDetailEmptyState,
2023
+ mo as getListDetailField,
2024
+ yo as getListDetailFieldLabels,
2025
+ wo as getListFilterFieldNames,
1990
2026
  M as getListHeaderPopover,
1991
- eo as getListHeaderPopoverActions,
2027
+ ao as getListHeaderPopoverActions,
1992
2028
  I as getListRow,
1993
- ho as getListSortFieldNames,
1994
- Ro as getRenderedRecordsDataGrid,
1995
- Nt as getToast,
1996
- Te as getViewModeDataGrid,
1997
- Mo as hasRealtimeMarkerContexts,
1998
- ko as hideAllColumnsDataGrid,
1999
- Ue as installHostAlarmsCountRoute,
2000
- xe as installHostAreasRoute,
2001
- ze as installHostAuthenticatedBootstrapRoutes,
2002
- Co as installHostAuthenticatedMfModuleDictionaryRoute,
2003
- Qe as installHostAuthenticatedMfPreviewBootstrap,
2004
- Ne as installHostAuthenticatedSessionRoute,
2005
- je as installHostCookiesRoute,
2006
- Io as installHostGuestBootstrapRoutes,
2007
- Mt as installHostGuestSessionRoute,
2029
+ Ro as getListSortFieldNames,
2030
+ Ao as getRenderedRecordsDataGrid,
2031
+ $t as getToast,
2032
+ Me as getViewModeDataGrid,
2033
+ Co as hasRealtimeMarkerContexts,
2034
+ To as hideAllColumnsDataGrid,
2035
+ Ge as installHostAlarmsCountRoute,
2036
+ je as installHostAreasRoute,
2037
+ Qe as installHostAuthenticatedBootstrapRoutes,
2038
+ Bo as installHostAuthenticatedMfModuleDictionaryRoute,
2039
+ tt as installHostAuthenticatedMfPreviewBootstrap,
2040
+ $e as installHostAuthenticatedSessionRoute,
2041
+ qe as installHostCookiesRoute,
2042
+ Uo as installHostGuestBootstrapRoutes,
2043
+ Ot as installHostGuestSessionRoute,
2008
2044
  ee as installHostLocaleRoute,
2009
- Ve as installHostMenusRoute,
2045
+ Ke as installHostMenusRoute,
2010
2046
  F as installHostModuleDictionaryRoute,
2011
- Fo as installHostPasswordNewRoute,
2012
- Ho as installHostPasswordResetRoute,
2047
+ xo as installHostPasswordNewRoute,
2048
+ No as installHostPasswordResetRoute,
2013
2049
  te as installHostUiConfigAssetRoutes,
2014
2050
  oe as installHostUiConfigRoute,
2015
- qe as installHostUserPreferencesRoute,
2016
- Bo as installListEndpointRoute,
2017
- xo as installMicrofrontendRenderStub,
2018
- Uo as installModulePrivilegesRoute,
2019
- Lo as isRealtimeDeviceSelected,
2020
- Do as isRealtimeDeviceSelectedOrDebugPanelVisible,
2021
- po as loadListDetailLogsAndCaptureRequest,
2022
- Me as openColumnSettingsDataGrid,
2023
- $t as openFormSelectAndCaptureRequest,
2024
- Eo as openHostAccountMenuModule,
2025
- To as openHostAuthenticatedMfPreviewModule,
2026
- So as openHostMobileSidebarModule,
2027
- Be as openHostSidebarModule,
2028
- Zt as openListHeaderPopover,
2029
- Wt as openListRowActionsMenu,
2051
+ We as installHostUserPreferencesRoute,
2052
+ Go as installListEndpointRoute,
2053
+ $o as installMicrofrontendRenderStub,
2054
+ jo as installModulePrivilegesRoute,
2055
+ Fo as isRealtimeDeviceSelected,
2056
+ Io as isRealtimeDeviceSelectedOrDebugPanelVisible,
2057
+ fo as loadListDetailLogsAndCaptureRequest,
2058
+ Oe as openColumnSettingsDataGrid,
2059
+ Yt as openFormSelectAndCaptureRequest,
2060
+ Po as openHostAccountMenuModule,
2061
+ Do as openHostAuthenticatedMfPreviewModule,
2062
+ Mo as openHostMobileSidebarModule,
2063
+ Ne as openHostSidebarModule,
2064
+ oo as openListHeaderPopover,
2065
+ Xt as openListRowActionsMenu,
2030
2066
  Z as openViewModeSwitcherDataGrid,
2031
- Po as readRealtimeMotionAuthorityState,
2032
- Ao as realtimePerformanceDebugHandleProperty,
2033
- ao as resizeListColumn,
2034
- qt as selectFormOption,
2035
- Jt as selectListRow,
2036
- _o as switchViewModeDataGrid,
2037
- lo as toggleListDetailAccordion,
2038
- Pt as tryWaitForBrowserCondition,
2039
- Oo as waitForBrowserCondition,
2040
- bo as waitForListStatePersistence
2067
+ Oo as readRealtimeMotionAuthorityState,
2068
+ Lo as realtimePerformanceDebugHandleProperty,
2069
+ no as resizeListColumn,
2070
+ Wt as selectFormOption,
2071
+ Zt as selectListRow,
2072
+ So as switchViewModeDataGrid,
2073
+ go as toggleListDetailAccordion,
2074
+ Lt as tryWaitForBrowserCondition,
2075
+ Ho as waitForBrowserCondition,
2076
+ so as waitForListDatagridLayoutSettled,
2077
+ _o as waitForListStatePersistence
2041
2078
  };