@the-portland-company/shell 0.88.0 → 0.89.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.
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { ReactNode } from 'react';
3
- import { p as StandardNavIconKey, q as NavIcon, N as NavItem, r as NavBreadcrumb, s as StandardNavMode, t as NavLinkComponent, u as NavChromeFetcher, v as NavMode, w as NavUserMenu, x as NavOrgOption, i as NotificationsAdapter, y as NavFooterLink, z as NavFooter, A as NavDisplayMode } from './index-tfcLFAni.cjs';
3
+ import { v as StandardNavIconKey, w as NavIcon, N as NavItem, x as NavBreadcrumb, y as StandardNavMode, z as NavLinkComponent, A as NavChromeFetcher, D as NavMode, E as NavUserMenu, G as NavOrgOption, o as NotificationsAdapter, J as NavFooterLink, K as NavFooter, L as NavDisplayMode } from './index-CZylXAP4.cjs';
4
4
  import './theme-preference.cjs';
5
5
 
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { ReactNode } from 'react';
3
- import { p as StandardNavIconKey, q as NavIcon, N as NavItem, r as NavBreadcrumb, s as StandardNavMode, t as NavLinkComponent, u as NavChromeFetcher, v as NavMode, w as NavUserMenu, x as NavOrgOption, i as NotificationsAdapter, y as NavFooterLink, z as NavFooter, A as NavDisplayMode } from './index-DEiOABW2.js';
3
+ import { v as StandardNavIconKey, w as NavIcon, N as NavItem, x as NavBreadcrumb, y as StandardNavMode, z as NavLinkComponent, A as NavChromeFetcher, D as NavMode, E as NavUserMenu, G as NavOrgOption, o as NotificationsAdapter, J as NavFooterLink, K as NavFooter, L as NavDisplayMode } from './index-DwkSyAip.js';
4
4
  import './theme-preference.js';
5
5
 
6
6
  /**
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  import { broadcastLogout, watchLogout } from './chunk-LL6LSJAH.js';
3
3
  import { writeUrlState } from './chunk-GVQKZI5X.js';
4
- import { clearBetaBannerDismissal, standardPolitogyNav, standardNavIcons, isNavItemActive, NavAppShell } from './chunk-2ACN7HQC.js';
5
- export { standardNavIcons } from './chunk-2ACN7HQC.js';
6
- import { warnDeprecated, NavChromeProvider, TopBarWidgetSlot, FuelAction, SpecOverlayAction, NotificationsAction, SupportAction, useChromeMe, useNavChromeDedupedFetch, useChromeOrgs, useNavChromeFetcher } from './chunk-7WSGW5CC.js';
4
+ import { clearBetaBannerDismissal, standardPolitogyNav, standardNavIcons, isNavItemActive, NavAppShell } from './chunk-SJDFAK5R.js';
5
+ export { standardNavIcons } from './chunk-SJDFAK5R.js';
6
+ import { warnDeprecated, NavChromeProvider, TopBarWidgetSlot, FuelAction, SpecOverlayAction, NotificationsAction, SupportAction, useChromeMe, useNavChromeDedupedFetch, useChromeOrgs, useNavChromeFetcher } from './chunk-J23MTK56.js';
7
7
  import './chunk-BHRVZPZ7.js';
8
8
  import { NAV_DISPLAY_DEFAULT, resolveNavDisplay, writeNavDisplayLocal, writeNavDisplayCookie, isNavDisplayPreference, NAV_DISPLAY_STORAGE_KEY, readNavDisplayCookie } from './chunk-7YVJ7HQG.js';
9
9
  import { authBaseUrl, orgIdTail, settingsBaseUrl, ORG_ID_QUERY_PARAM, readOrgSelectorFromUrl, matchOrgSelector, syncOrgIdInUrl, isOrgId, switchActiveOrg, ACTIVE_ORG_QUERY_PARAM, writeActiveOrgCookie, resolveActiveOrg, readActiveOrgCookie } from './chunk-5LO5W7W5.js';
package/dist/chrome.css CHANGED
@@ -599,3 +599,23 @@
599
599
  box-shadow: none !important;
600
600
  }
601
601
 
602
+
603
+ /* ---- Card + Checkbox surface tokens (shell 0.89.0) ---------------------
604
+ * `Card` and `Checkbox` read these so they follow the theme. Light values are
605
+ * the Brand "Card" white, G3 border, graphite text; the muted text is #5C6B80
606
+ * (5.9:1 on white) rather than --color-g4, which is 3.0:1 on white and fails AA.
607
+ * Dark values are the neutral-black ramp (theme/colors.ts `neutral`): surface
608
+ * #161616, border #333333, text #E8E8E8, muted #A3A3A3 (6.9:1 on the surface).
609
+ * `applyThemePreference` puts `.dark` on <html>. The Brand stylesheet's `.dark {}` may override any of them. */
610
+ :root {
611
+ --app-card-bg: #FFFFFF;
612
+ --app-card-border: #D7DADF;
613
+ --app-card-fg: #2F3136;
614
+ --app-card-fg-muted: #5C6B80;
615
+ }
616
+ .dark {
617
+ --app-card-bg: #161616;
618
+ --app-card-border: #333333;
619
+ --app-card-fg: #E8E8E8;
620
+ --app-card-fg-muted: #A3A3A3;
621
+ }
@@ -1,33 +1,76 @@
1
1
  import { readThemeCookie, THEME_STORAGE_KEY, isThemePreference, applyThemePreference, readPendingThemeChoice, writeThemeCookie, clearPendingThemeChoice, markThemeChoicePending } from './chunk-BHRVZPZ7.js';
2
+ import clsx from 'clsx';
2
3
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
3
- import clsx8 from 'clsx';
4
- import { forwardRef, useId, createContext, useState, useEffect, useRef, useContext, useMemo, useCallback, useSyncExternalStore } from 'react';
4
+ import { forwardRef, useId, useRef, useCallback, useEffect, createContext, useState, useContext, useMemo, useSyncExternalStore } from 'react';
5
5
  import { FiUser, FiSettings, FiMessageSquare, FiMail, FiInfo, FiSun, FiMoon, FiHelpCircle, FiLifeBuoy, FiAlertCircle, FiAlertTriangle, FiBell, FiGrid, FiZap, FiBatteryCharging, FiBattery } from 'react-icons/fi';
6
6
  import { createPortal } from 'react-dom';
7
7
 
8
+ var PADDING = {
9
+ none: "p-0",
10
+ sm: "p-4",
11
+ md: "p-6",
12
+ lg: "p-8"
13
+ };
8
14
  function Card({
9
15
  title,
16
+ subtitle,
17
+ aside,
18
+ actions,
19
+ footer,
10
20
  children,
21
+ padding = "md",
22
+ bodyClassName,
11
23
  minH,
12
24
  className,
13
25
  style,
14
26
  ...props
15
27
  }) {
28
+ const structured = Boolean(subtitle || aside || actions || footer || bodyClassName);
29
+ const surface = "rounded-lg border border-[color:var(--app-card-border,var(--color-border))] bg-[color:var(--app-card-bg,var(--color-panel))] text-[color:var(--app-card-fg,var(--color-text))] shadow-sm";
30
+ if (!structured) {
31
+ return /* @__PURE__ */ jsxs(
32
+ "div",
33
+ {
34
+ "data-shell-card": "",
35
+ className: clsx(surface, PADDING[padding], className),
36
+ style: { minHeight: minH, ...style },
37
+ ...props,
38
+ children: [
39
+ title ? /* @__PURE__ */ jsx("h3", { className: "mb-4 text-lg font-semibold", children: title }) : null,
40
+ children
41
+ ]
42
+ }
43
+ );
44
+ }
45
+ const hasHeader = Boolean(title || subtitle || aside || actions);
46
+ const divider = "border-[color:var(--app-card-border,var(--color-border))]";
16
47
  return /* @__PURE__ */ jsxs(
17
48
  "div",
18
49
  {
19
- className: `rounded-lg border border-slate-200 bg-white p-6 shadow-sm ${className || ""}`,
50
+ "data-shell-card": "",
51
+ "data-shell-card-structured": "",
52
+ className: clsx(surface, "overflow-hidden", className),
20
53
  style: { minHeight: minH, ...style },
21
54
  ...props,
22
55
  children: [
23
- title && /* @__PURE__ */ jsx("h3", { className: "mb-4 text-lg font-semibold", children: title }),
24
- children
56
+ hasHeader ? /* @__PURE__ */ jsxs("div", { className: clsx("flex flex-wrap items-start justify-between gap-3 border-b px-5 py-4", divider), children: [
57
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
58
+ title ? /* @__PURE__ */ jsx("h3", { className: "text-base font-semibold", children: title }) : null,
59
+ subtitle ? /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-sm text-[color:var(--app-card-fg-muted,var(--color-text-muted))]", children: subtitle }) : null
60
+ ] }),
61
+ aside || actions ? /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [
62
+ aside,
63
+ actions
64
+ ] }) : null
65
+ ] }) : null,
66
+ /* @__PURE__ */ jsx("div", { className: bodyClassName ?? PADDING[padding], children }),
67
+ footer ? /* @__PURE__ */ jsx("div", { className: clsx("border-t px-5 py-3", divider), children: footer }) : null
25
68
  ]
26
69
  }
27
70
  );
28
71
  }
29
72
  function FormColumn({ children, className }) {
30
- return /* @__PURE__ */ jsx("div", { "data-shell-form-column": "", className: clsx8("w-full max-w-[960px]", className), children });
73
+ return /* @__PURE__ */ jsx("div", { "data-shell-form-column": "", className: clsx("w-full max-w-[960px]", className), children });
31
74
  }
32
75
  var VARIANT_CLASS = {
33
76
  primary: "border border-transparent bg-[color:var(--app-btn-primary-bg,var(--color-accent))] text-[color:var(--app-btn-primary-fg,var(--color-white))] hover:bg-[color:var(--app-btn-primary-bg-hover,var(--color-accent-hover))]",
@@ -67,7 +110,7 @@ var Button = forwardRef(function Button2({
67
110
  "data-shell-button": "",
68
111
  "data-variant": variant,
69
112
  "aria-busy": loading || void 0,
70
- className: clsx8(
113
+ className: clsx(
71
114
  "inline-flex items-center justify-center gap-2 rounded-[5px] px-3 text-sm font-semibold no-underline transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--app-field-focus,var(--color-accent))] focus-visible:ring-offset-2",
72
115
  SIZE_CLASS[size],
73
116
  VARIANT_CLASS[variant],
@@ -104,7 +147,7 @@ function FormField({
104
147
  className,
105
148
  children
106
149
  }) {
107
- return /* @__PURE__ */ jsxs("div", { className: clsx8("flex w-full flex-col gap-1", className), children: [
150
+ return /* @__PURE__ */ jsxs("div", { className: clsx("flex w-full flex-col gap-1", className), children: [
108
151
  label ? /* @__PURE__ */ jsxs("label", { htmlFor: id, className: "text-sm font-semibold text-[color:var(--color-text)]", children: [
109
152
  label,
110
153
  required ? /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: " *" }) : null
@@ -153,7 +196,7 @@ var Input = forwardRef(function Input2({ label, helperText, error, invalid, clas
153
196
  "data-shell-field": "",
154
197
  "aria-invalid": isInvalid || void 0,
155
198
  "aria-describedby": describedBy(fieldId, helperText, error, ariaDescribedBy),
156
- className: clsx8(FIELD_BASE, "h-[44px]", isInvalid ? FIELD_INVALID : FIELD_VALID, className),
199
+ className: clsx(FIELD_BASE, "h-[44px]", isInvalid ? FIELD_INVALID : FIELD_VALID, className),
157
200
  ...props
158
201
  }
159
202
  )
@@ -183,7 +226,7 @@ var Select = forwardRef(function Select2({ label, helperText, error, invalid, cl
183
226
  "data-shell-field": "",
184
227
  "aria-invalid": isInvalid || void 0,
185
228
  "aria-describedby": describedBy(fieldId, helperText, error, ariaDescribedBy),
186
- className: clsx8(FIELD_BASE, "h-[44px]", isInvalid ? FIELD_INVALID : FIELD_VALID, className),
229
+ className: clsx(FIELD_BASE, "h-[44px]", isInvalid ? FIELD_INVALID : FIELD_VALID, className),
187
230
  ...props,
188
231
  children
189
232
  }
@@ -214,7 +257,7 @@ var Textarea = forwardRef(function Textarea2({ label, helperText, error, invalid
214
257
  "data-shell-field": "",
215
258
  "aria-invalid": isInvalid || void 0,
216
259
  "aria-describedby": describedBy(fieldId, helperText, error, ariaDescribedBy),
217
- className: clsx8(FIELD_BASE, "min-h-[88px] py-3", isInvalid ? FIELD_INVALID : FIELD_VALID, className),
260
+ className: clsx(FIELD_BASE, "min-h-[88px] py-3", isInvalid ? FIELD_INVALID : FIELD_VALID, className),
218
261
  ...props
219
262
  }
220
263
  )
@@ -222,6 +265,118 @@ var Textarea = forwardRef(function Textarea2({ label, helperText, error, invalid
222
265
  );
223
266
  });
224
267
  var Textarea_default = Textarea;
268
+ var Checkbox = forwardRef(function Checkbox2({
269
+ label,
270
+ description,
271
+ indeterminate,
272
+ invalid,
273
+ className,
274
+ wrapperClassName,
275
+ id,
276
+ disabled,
277
+ "aria-describedby": ariaDescribedBy,
278
+ ...props
279
+ }, ref) {
280
+ const autoId = useId();
281
+ const fieldId = id ?? autoId;
282
+ const descId = description ? `${fieldId}-description` : void 0;
283
+ const inner = useRef(null);
284
+ const setRef = useCallback(
285
+ (node) => {
286
+ inner.current = node;
287
+ if (typeof ref === "function") ref(node);
288
+ else if (ref) ref.current = node;
289
+ },
290
+ [ref]
291
+ );
292
+ useEffect(() => {
293
+ if (inner.current) inner.current.indeterminate = Boolean(indeterminate);
294
+ }, [indeterminate]);
295
+ const describedBy2 = [descId, ariaDescribedBy].filter(Boolean).join(" ") || void 0;
296
+ return /* @__PURE__ */ jsxs(
297
+ "label",
298
+ {
299
+ htmlFor: fieldId,
300
+ "data-shell-checkbox": "",
301
+ className: clsx(
302
+ "flex min-h-[44px] items-start gap-3 py-[10px] text-sm text-[color:var(--app-card-fg,var(--color-text))]",
303
+ disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer",
304
+ wrapperClassName
305
+ ),
306
+ children: [
307
+ /* @__PURE__ */ jsx(
308
+ "input",
309
+ {
310
+ ...props,
311
+ ref: setRef,
312
+ id: fieldId,
313
+ type: "checkbox",
314
+ disabled,
315
+ "data-shell-field": "",
316
+ "aria-invalid": invalid || void 0,
317
+ "aria-describedby": describedBy2,
318
+ className: clsx(
319
+ "mt-[2px] h-5 w-5 shrink-0 rounded-[5px] border focus:outline-none focus-visible:ring-2",
320
+ "accent-[color:var(--color-accent-bg-safe,var(--color-accent))]",
321
+ "focus-visible:ring-[color:var(--app-field-focus,var(--color-accent))]",
322
+ invalid ? "border-[color:var(--chrome-danger,var(--color-race-red))] outline outline-2 outline-[color:var(--chrome-danger,var(--color-race-red))]" : "border-[color:var(--app-field-border,var(--color-border))]",
323
+ disabled ? "cursor-not-allowed" : "cursor-pointer",
324
+ className
325
+ )
326
+ }
327
+ ),
328
+ label || description ? /* @__PURE__ */ jsxs("span", { className: "min-w-0", children: [
329
+ label ? /* @__PURE__ */ jsx("span", { className: "block font-medium", children: label }) : null,
330
+ description ? /* @__PURE__ */ jsx(
331
+ "span",
332
+ {
333
+ id: descId,
334
+ className: "block text-xs text-[color:var(--app-card-fg-muted,var(--color-text-muted))]",
335
+ children: description
336
+ }
337
+ ) : null
338
+ ] }) : null
339
+ ]
340
+ }
341
+ );
342
+ });
343
+ var Checkbox_default = Checkbox;
344
+ var FileInput = forwardRef(function FileInput2({ label, helperText, error, invalid, className, wrapperClassName, id, required, "aria-describedby": ariaDescribedBy, ...props }, ref) {
345
+ const autoId = useId();
346
+ const fieldId = id ?? autoId;
347
+ const isInvalid = Boolean(error) || Boolean(invalid);
348
+ return /* @__PURE__ */ jsx(
349
+ FormField,
350
+ {
351
+ id: fieldId,
352
+ label,
353
+ helperText,
354
+ error,
355
+ required,
356
+ className: wrapperClassName,
357
+ children: /* @__PURE__ */ jsx(
358
+ "input",
359
+ {
360
+ ...props,
361
+ ref,
362
+ id: fieldId,
363
+ type: "file",
364
+ required,
365
+ "data-shell-field": "",
366
+ "aria-invalid": isInvalid || void 0,
367
+ "aria-describedby": describedBy(fieldId, helperText, error, ariaDescribedBy),
368
+ className: clsx(
369
+ FIELD_BASE,
370
+ "h-[44px] cursor-pointer py-[5px] file:mr-3 file:h-[32px] file:cursor-pointer file:rounded-[5px] file:border file:border-[color:var(--app-btn-secondary-border,var(--color-border))] file:bg-[color:var(--app-btn-secondary-bg,var(--color-white))] file:px-3 file:text-sm file:font-medium file:text-[color:var(--app-btn-secondary-fg,var(--color-text))]",
371
+ isInvalid ? FIELD_INVALID : FIELD_VALID,
372
+ className
373
+ )
374
+ }
375
+ )
376
+ }
377
+ );
378
+ });
379
+ var FileInput_default = FileInput;
225
380
 
226
381
  // src/lib/deprecation.ts
227
382
  var warned = /* @__PURE__ */ new Set();
@@ -2182,7 +2337,7 @@ function HeaderTabBar({
2182
2337
  {
2183
2338
  role: "tablist",
2184
2339
  "aria-label": ariaLabel,
2185
- className: clsx8(
2340
+ className: clsx(
2186
2341
  // Header-wide tab strip: background + bottom border only (no outer box).
2187
2342
  // Left-aligned and fluid: the container spans the full content width,
2188
2343
  // the tabs keep their natural width packed from the left (Global-Rules
@@ -2206,7 +2361,7 @@ function HeaderTabBar({
2206
2361
  "aria-label": item.label,
2207
2362
  disabled: isDisabled,
2208
2363
  onClick: () => onChange(item.id),
2209
- className: clsx8(
2364
+ className: clsx(
2210
2365
  // `group/tbtip relative` powers the shared <TopBarTooltip>.
2211
2366
  // Natural width (no flex-1 stretch); 40px square hit area for the
2212
2367
  // icon-only tab so the strip stays tappable.
@@ -2370,11 +2525,11 @@ function PageHeaderView({
2370
2525
  "div",
2371
2526
  {
2372
2527
  style: { backgroundColor: "var(--app-tab-header-bg, #888888)" },
2373
- className: clsx8("text-slate-100", tabBar ? "pt-3 pb-0" : "py-3 border-b border-gray-200", {
2528
+ className: clsx("text-slate-100", tabBar ? "pt-3 pb-0" : "py-3 border-b border-gray-200", {
2374
2529
  "md:ml-60": !hideSidebar
2375
2530
  }),
2376
2531
  children: [
2377
- /* @__PURE__ */ jsx("div", { className: clsx8("w-full px-4", maxWClass), children: /* @__PURE__ */ jsxs("div", { className: "flex w-full flex-nowrap items-start justify-between gap-4", children: [
2532
+ /* @__PURE__ */ jsx("div", { className: clsx("w-full px-4", maxWClass), children: /* @__PURE__ */ jsxs("div", { className: "flex w-full flex-nowrap items-start justify-between gap-4", children: [
2378
2533
  /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
2379
2534
  eyebrowText ? /* @__PURE__ */ jsx(
2380
2535
  "div",
@@ -2401,7 +2556,7 @@ function PageHeaderView({
2401
2556
  "nav",
2402
2557
  {
2403
2558
  "aria-label": "Breadcrumb",
2404
- className: clsx8("min-w-0 text-slate-100", title ? "mt-1" : ""),
2559
+ className: clsx("min-w-0 text-slate-100", title ? "mt-1" : ""),
2405
2560
  children: /* @__PURE__ */ jsx("ol", { className: "flex flex-nowrap items-center gap-2 overflow-hidden text-sm text-gray-600", children: breadcrumbsWithoutCurrent.map((item, index) => /* @__PURE__ */ jsxs(
2406
2561
  "li",
2407
2562
  {
@@ -2442,7 +2597,7 @@ function BreadcrumbBarView({
2442
2597
  {
2443
2598
  className: "ml-0 border-b border-gray-200 px-4 py-3 md:ml-60",
2444
2599
  style: { backgroundColor: "var(--app-tab-header-bg, #888888)" },
2445
- children: /* @__PURE__ */ jsx("div", { className: clsx8("mx-auto w-full px-0", maxWClass), children: /* @__PURE__ */ jsxs("div", { className: "flex w-full items-center justify-between", children: [
2600
+ children: /* @__PURE__ */ jsx("div", { className: clsx("mx-auto w-full px-0", maxWClass), children: /* @__PURE__ */ jsxs("div", { className: "flex w-full items-center justify-between", children: [
2446
2601
  breadcrumbs && breadcrumbs.length > 0 && /* @__PURE__ */ jsx("nav", { "aria-label": "Breadcrumb", children: /* @__PURE__ */ jsx("ol", { className: "flex items-center gap-2 text-sm text-slate-100", children: breadcrumbs.map((item, index) => /* @__PURE__ */ jsxs("li", { className: "flex items-center gap-2", children: [
2447
2602
  index > 0 ? /* @__PURE__ */ jsx("span", { className: "text-gray-400", children: ">" }) : null,
2448
2603
  item.href ? renderCrumbLink(item.href, item.label, "text-slate-100 hover:underline") : /* @__PURE__ */ jsx("span", { className: "text-slate-100", children: item.label })
@@ -2453,6 +2608,6 @@ function BreadcrumbBarView({
2453
2608
  );
2454
2609
  }
2455
2610
 
2456
- export { BreadcrumbBarView, Button_default, CORE_APP_ORIGIN, CORE_BILLING_PATH, CREDIT_TYPE_LABELS, CREDIT_TYPE_ORDER, Card, CreditsAction, FormColumn, FuelAction, HeaderTabBar, Input_default, NAV_DISPLAY_OPTIONS, NavChromeProvider, NavDisplayAction, NavThemeControl, NotificationsAction, PageHeaderView, SPECS_ORIGIN, Select_default, SpecOverlayAction, SpeculationRulesScript, SupportAction, TOPBAR_GLYPH_SIZE, Textarea_default, TopBarCountBadge, TopBarPanelArrow, TopBarPopover, TopBarTooltip, TopBarWidgetSlot, buildNavSpeculationRules, buildSpeculationRules, collectSiblingAppUrls, createCommsNotificationsAdapter, creditGaugeRatio, creditStateWord, creditTooltipLine, creditsAriaLabel, creditsIconState, emptyNotificationsFeed, normalizeNotificationsFeed, resolveBrandGlyph, resolveOrgLogoUrl, topBarIconButtonClass, useChromeMe, useChromeOrgs, useNavChromeDedupedFetch, useNavChromeFetcher, useThemePreference, useTopBarIconSlotGlyph, warnDeprecated };
2457
- //# sourceMappingURL=chunk-7WSGW5CC.js.map
2458
- //# sourceMappingURL=chunk-7WSGW5CC.js.map
2611
+ export { BreadcrumbBarView, Button_default, CORE_APP_ORIGIN, CORE_BILLING_PATH, CREDIT_TYPE_LABELS, CREDIT_TYPE_ORDER, Card, Checkbox_default, CreditsAction, FileInput_default, FormColumn, FuelAction, HeaderTabBar, Input_default, NAV_DISPLAY_OPTIONS, NavChromeProvider, NavDisplayAction, NavThemeControl, NotificationsAction, PageHeaderView, SPECS_ORIGIN, Select_default, SpecOverlayAction, SpeculationRulesScript, SupportAction, TOPBAR_GLYPH_SIZE, Textarea_default, TopBarCountBadge, TopBarPanelArrow, TopBarPopover, TopBarTooltip, TopBarWidgetSlot, buildNavSpeculationRules, buildSpeculationRules, collectSiblingAppUrls, createCommsNotificationsAdapter, creditGaugeRatio, creditStateWord, creditTooltipLine, creditsAriaLabel, creditsIconState, emptyNotificationsFeed, normalizeNotificationsFeed, resolveBrandGlyph, resolveOrgLogoUrl, topBarIconButtonClass, useChromeMe, useChromeOrgs, useNavChromeDedupedFetch, useNavChromeFetcher, useThemePreference, useTopBarIconSlotGlyph, warnDeprecated };
2612
+ //# sourceMappingURL=chunk-J23MTK56.js.map
2613
+ //# sourceMappingURL=chunk-J23MTK56.js.map