@elevasis/ui 2.74.0 → 2.76.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.
Files changed (105) hide show
  1. package/dist/api/index.js +3 -3
  2. package/dist/app/index.d.ts +277 -249
  3. package/dist/app/index.js +12 -11
  4. package/dist/auth/index.js +6 -7
  5. package/dist/charts/index.js +6 -7
  6. package/dist/{chunk-GO4XJ5D4.js → chunk-2GIHWU5O.js} +4 -3
  7. package/dist/chunk-2Y6AKWGU.js +42 -0
  8. package/dist/chunk-3QYRZSHP.js +854 -0
  9. package/dist/{chunk-CRA7WQZH.js → chunk-3RK2NNJX.js} +1 -1
  10. package/dist/{chunk-R6NMRXNO.js → chunk-4WLAVUPS.js} +1 -1
  11. package/dist/{chunk-GPQQGQGT.js → chunk-5R4I2PAN.js} +9 -43
  12. package/dist/{chunk-R5UGIFYU.js → chunk-5ZK7K7YP.js} +25 -1
  13. package/dist/chunk-6B4ZPBQJ.js +7 -0
  14. package/dist/{chunk-ARAFQBNI.js → chunk-73G3I5HJ.js} +160 -160
  15. package/dist/{chunk-ZWI62BQ6.js → chunk-BFLYDVEN.js} +32 -42
  16. package/dist/{chunk-W2QRBQQA.js → chunk-BG6PWDJ3.js} +381 -381
  17. package/dist/{chunk-7ARBBELS.js → chunk-BV2RNLPP.js} +1 -1
  18. package/dist/{chunk-FA7LMNQO.js → chunk-CTT4RDXE.js} +150 -151
  19. package/dist/chunk-E2LJ3FRA.js +237 -0
  20. package/dist/{chunk-E6YGA5WH.js → chunk-EFQLXRYT.js} +1 -2
  21. package/dist/{chunk-FZSG6M6W.js → chunk-EVNLJHDD.js} +3 -3
  22. package/dist/{chunk-ZYNVCWDZ.js → chunk-GDQQX5SL.js} +4 -42
  23. package/dist/{chunk-DCQKTDIG.js → chunk-GFSOQH3N.js} +1 -1
  24. package/dist/{chunk-3LOKYZJC.js → chunk-H5AEYSVX.js} +164 -3
  25. package/dist/{chunk-ZFISGKYW.js → chunk-IIEZXXDD.js} +1 -1
  26. package/dist/{chunk-3QHX4ZKV.js → chunk-INCEZAM3.js} +1 -1
  27. package/dist/{chunk-O32UQ26A.js → chunk-JZQNUQE4.js} +1 -1
  28. package/dist/{chunk-6JN2TLV2.js → chunk-K55TU6CC.js} +2023 -1700
  29. package/dist/chunk-KB5CAN5D.js +33 -0
  30. package/dist/{chunk-2MRRDF32.js → chunk-KMA4FOSV.js} +5682 -5675
  31. package/dist/{chunk-HYQOGRWG.js → chunk-KXNRTJAE.js} +1 -1
  32. package/dist/{chunk-7RJ7P6S6.js → chunk-MGAELVTZ.js} +12 -12
  33. package/dist/chunk-MKH2KOAO.js +39 -0
  34. package/dist/{chunk-4MXNHJTA.js → chunk-NAPXMYFW.js} +939 -1570
  35. package/dist/{chunk-CQPULKKL.js → chunk-OGG3QJYW.js} +14 -5
  36. package/dist/{chunk-4M2BSHVT.js → chunk-P6HHXMLJ.js} +1 -1
  37. package/dist/{chunk-WZU3MCKI.js → chunk-QAILYRC2.js} +1 -1
  38. package/dist/{chunk-RBGVNPA6.js → chunk-RXZ3XDBM.js} +1 -1
  39. package/dist/{chunk-BA3AZJUR.js → chunk-SPW6UA6B.js} +1 -1
  40. package/dist/{chunk-RFNJ2PTO.js → chunk-SVZR4GYA.js} +1 -1
  41. package/dist/{chunk-5A6KCFS5.js → chunk-UEY4AB3R.js} +789 -66
  42. package/dist/{chunk-LN4UW6S4.js → chunk-UL6MPMKY.js} +1 -1
  43. package/dist/{chunk-ZFA56VSR.js → chunk-WELN7DDV.js} +2 -2
  44. package/dist/{chunk-43LC6XAX.js → chunk-WJN2VVVJ.js} +1 -1
  45. package/dist/{chunk-BRTGCFBH.js → chunk-XODQUPFW.js} +11 -11
  46. package/dist/components/index.d.ts +181 -34
  47. package/dist/components/index.js +2249 -1804
  48. package/dist/components/navigation/index.js +7 -8
  49. package/dist/features/auth/index.d.ts +35 -3716
  50. package/dist/features/auth/index.js +9 -10
  51. package/dist/features/clients/index.js +18 -12
  52. package/dist/features/content/index.js +34 -31
  53. package/dist/features/crm/index.css +59 -59
  54. package/dist/features/crm/index.d.ts +18 -1
  55. package/dist/features/crm/index.js +13 -11
  56. package/dist/features/dashboard/index.css +59 -59
  57. package/dist/features/dashboard/index.js +8 -9
  58. package/dist/features/delivery/index.d.ts +3 -0
  59. package/dist/features/delivery/index.js +21 -20
  60. package/dist/features/knowledge/index.js +6 -7
  61. package/dist/features/lead-gen/index.css +59 -59
  62. package/dist/features/lead-gen/index.d.ts +3903 -2
  63. package/dist/features/lead-gen/index.js +15 -13
  64. package/dist/features/monitoring/index.js +10 -11
  65. package/dist/features/monitoring/requests/index.css +59 -59
  66. package/dist/features/monitoring/requests/index.js +8 -9
  67. package/dist/features/notes/index.js +4 -4
  68. package/dist/features/operations/index.css +59 -59
  69. package/dist/features/operations/index.js +13 -15
  70. package/dist/features/seo/index.css +659 -0
  71. package/dist/features/seo/index.d.ts +3962 -1
  72. package/dist/features/seo/index.js +31 -2
  73. package/dist/features/settings/index.css +59 -59
  74. package/dist/features/settings/index.d.ts +87 -3745
  75. package/dist/features/settings/index.js +10 -12
  76. package/dist/hooks/access/index.js +6 -7
  77. package/dist/hooks/delivery/index.css +59 -59
  78. package/dist/hooks/delivery/index.d.ts +13 -4
  79. package/dist/hooks/delivery/index.js +3 -3
  80. package/dist/hooks/published.d.ts +69 -27
  81. package/dist/hooks/published.js +19 -19
  82. package/dist/initialization/index.d.ts +35 -3716
  83. package/dist/knowledge/index.js +11 -11
  84. package/dist/layout/index.d.ts +55 -2
  85. package/dist/layout/index.js +10 -10
  86. package/dist/organization/index.css +59 -59
  87. package/dist/profile/index.d.ts +64 -3716
  88. package/dist/provider/index.d.ts +3 -0
  89. package/dist/provider/index.js +6 -7
  90. package/dist/provider/published.d.ts +3 -0
  91. package/dist/provider/published.js +6 -7
  92. package/dist/test-utils/index.js +3 -3
  93. package/dist/theme/index.js +3 -3
  94. package/dist/theme/presets/index.js +1 -1
  95. package/dist/types/index.d.ts +312 -251
  96. package/dist/utils/index.d.ts +1 -1
  97. package/dist/utils/index.js +1 -1
  98. package/package.json +9 -9
  99. package/src/hooks/README.md +22 -23
  100. package/dist/chunk-6ZAP3FOA.js +0 -93
  101. package/dist/chunk-AH52XQB7.js +0 -1
  102. package/dist/chunk-GDOR57D7.js +0 -165
  103. package/dist/chunk-MISHPEJX.js +0 -244
  104. package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +0 -879
  105. package/dist/hooks/operations/command-view/utils/transformCommandViewData.js +0 -2
@@ -1,4 +1,4 @@
1
- import { useAppearance } from './chunk-6JN2TLV2.js';
1
+ import { useAppearance } from './chunk-K55TU6CC.js';
2
2
  import { useState, Component } from 'react';
3
3
  import { CopyButton, Tooltip } from '@mantine/core';
4
4
  import { IconCheck, IconCopy } from '@tabler/icons-react';
@@ -1,5 +1,5 @@
1
- import { getLeadGenStageCatalog } from './chunk-6JN2TLV2.js';
2
- import { SYSTEM_INTERFACE_PROFILES, formatOntologyId, registerBuiltInReadinessProfile, registerReadinessInterfaceMarker, requireContractReadiness, computeInterfaceReadiness, addReadinessIssue, formatInterfaceIdentity, resourceBindingIds, requireCatalogReadiness, requireScopedBinding } from './chunk-R5UGIFYU.js';
1
+ import { getLeadGenStageCatalog } from './chunk-K55TU6CC.js';
2
+ import { SYSTEM_INTERFACE_PROFILES, formatOntologyId, registerBuiltInReadinessProfile, registerReadinessInterfaceMarker, requireContractReadiness, computeInterfaceReadiness, addReadinessIssue, formatInterfaceIdentity, resourceBindingIds, requireCatalogReadiness, requireScopedBinding } from './chunk-5ZK7K7YP.js';
3
3
 
4
4
  // ../core/src/business/acquisition/ontology-validation.ts
5
5
  var LEAD_GEN_API_INTERFACE = SYSTEM_INTERFACE_PROFILES[0];
@@ -1,4 +1,4 @@
1
- import { requestsKeys } from './chunk-6JN2TLV2.js';
1
+ import { requestsKeys } from './chunk-K55TU6CC.js';
2
2
  import { useElevasisServices } from './chunk-BI5VDO2K.js';
3
3
  import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
4
4
 
@@ -1,19 +1,10 @@
1
1
  import { GetNotificationsQuerySchema, MarkAsReadParamsSchema } from './chunk-VM2OWOXL.js';
2
- import { useNotificationAdapter } from './chunk-6JN2TLV2.js';
2
+ import { useNotificationAdapter } from './chunk-K55TU6CC.js';
3
3
  import { getTimeRangeDates } from './chunk-Y6I3IC45.js';
4
4
  import { useElevasisServices } from './chunk-BI5VDO2K.js';
5
- import { useCallback, useState } from 'react';
6
5
  import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
6
+ import { useCallback, useState } from 'react';
7
7
 
8
- function useErrorNotification() {
9
- const adapter = useNotificationAdapter();
10
- return useCallback(
11
- (error) => {
12
- adapter.apiError(error);
13
- },
14
- [adapter]
15
- );
16
- }
17
8
  function useActivityTrend(params = {}) {
18
9
  const { apiRequest, isReady, workOSOrganizationId } = useElevasisServices();
19
10
  return useQuery({
@@ -201,6 +192,15 @@ function useMarkAllAsRead() {
201
192
  }
202
193
  });
203
194
  }
195
+ function useErrorNotification() {
196
+ const adapter = useNotificationAdapter();
197
+ return useCallback(
198
+ (error) => {
199
+ adapter.apiError(error);
200
+ },
201
+ [adapter]
202
+ );
203
+ }
204
204
  function useSuccessNotification() {
205
205
  const adapter = useNotificationAdapter();
206
206
  return useCallback((title, message) => adapter.success(title, message), [adapter]);
@@ -2547,6 +2547,7 @@ type Database = {
2547
2547
  created_at: string | null;
2548
2548
  error: string | null;
2549
2549
  execution_id: string;
2550
+ idempotency_key: string | null;
2550
2551
  input: Json | null;
2551
2552
  last_heartbeat_at: string | null;
2552
2553
  logs: Json | null;
@@ -2573,6 +2574,7 @@ type Database = {
2573
2574
  created_at?: string | null;
2574
2575
  error?: string | null;
2575
2576
  execution_id?: string;
2577
+ idempotency_key?: string | null;
2576
2578
  input?: Json | null;
2577
2579
  last_heartbeat_at?: string | null;
2578
2580
  logs?: Json | null;
@@ -2599,6 +2601,7 @@ type Database = {
2599
2601
  created_at?: string | null;
2600
2602
  error?: string | null;
2601
2603
  execution_id?: string;
2604
+ idempotency_key?: string | null;
2602
2605
  input?: Json | null;
2603
2606
  last_heartbeat_at?: string | null;
2604
2607
  logs?: Json | null;
@@ -4147,22 +4150,28 @@ type Database = {
4147
4150
  };
4148
4151
  };
4149
4152
  };
4150
- type DatabaseWithoutInternals = Omit<Database, "__InternalSupabase">;
4151
- type DefaultSchema = DatabaseWithoutInternals[Extract<keyof Database, "public">];
4152
- type Tables<DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema["Tables"] & DefaultSchema["Views"]) | {
4153
- schema: keyof DatabaseWithoutInternals;
4154
- }, TableName extends DefaultSchemaTableNameOrOptions extends {
4155
- schema: keyof DatabaseWithoutInternals;
4156
- } ? keyof (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] & DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"]) : never = never> = DefaultSchemaTableNameOrOptions extends {
4157
- schema: keyof DatabaseWithoutInternals;
4158
- } ? (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] & DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"])[TableName] extends {
4159
- Row: infer R;
4160
- } ? R : never : DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema["Tables"] & DefaultSchema["Views"]) ? (DefaultSchema["Tables"] & DefaultSchema["Views"])[DefaultSchemaTableNameOrOptions] extends {
4161
- Row: infer R;
4162
- } ? R : never : never;
4163
-
4164
- type SupabaseApiKey = Tables<'api_keys'>;
4165
- /** API response type for API key list items (omits sensitive key_hash) */
4153
+
4154
+ type SupabaseApiKey = {
4155
+ created_at: string | null;
4156
+ created_by: string | null;
4157
+ id: string;
4158
+ key_hash: string;
4159
+ last_used_at: string | null;
4160
+ name: string;
4161
+ organization_id: string;
4162
+ };
4163
+
4164
+ /**
4165
+ * Hand-authored types composed from the concrete row shapes.
4166
+ *
4167
+ * These live here rather than in `./index.ts` because that barrel re-exports `Database` itself, so
4168
+ * importing anything from it drags the entire generated schema into the importer's declaration
4169
+ * output — and from there into any published bundle that reaches it (health-audit R3). Consumers on
4170
+ * a published path import from this module and `./published-rows` directly; `./index.ts` re-exports
4171
+ * both for everything else.
4172
+ */
4173
+
4174
+ /** API response type for API key list items (omits sensitive key_hash). */
4166
4175
  type ApiKeyListItem = Omit<SupabaseApiKey, 'key_hash'>;
4167
4176
 
4168
4177
  declare const RecordColumnConfigSchema: z.ZodObject<{
@@ -5952,6 +5961,20 @@ interface OAuthState {
5952
5961
  timestamp: number;
5953
5962
  credentialName: string;
5954
5963
  provider: string;
5964
+ /**
5965
+ * Origin of the app that started this flow (e.g. 'https://app.contemplativerecords.com').
5966
+ *
5967
+ * Validated against the platform allowed-origins list in `authorizeHandler`
5968
+ * BEFORE it is sealed into the signed state, so the callback can hand it to
5969
+ * the callback page without re-checking. Every app that renders the OAuth
5970
+ * card runs on its own origin, and the callback page is served from a single
5971
+ * deploy-global one — it cannot read `window.opener.location.origin` across
5972
+ * that boundary, so the origin has to travel with the flow.
5973
+ *
5974
+ * Optional so a state issued before this field existed still decodes; the
5975
+ * callback falls back to `FRONTEND_URL` when it is absent.
5976
+ */
5977
+ appOrigin?: string;
5955
5978
  }
5956
5979
 
5957
5980
  /**
@@ -6387,12 +6410,16 @@ interface Activity {
6387
6410
  * - UI access checks (via useAccess() permission-backed AccessKeys)
6388
6411
  *
6389
6412
  * The DB table `org_rol_permissions` mirrors this constant. There is no
6390
- * runtime reconciler; parity is enforced two ways:
6413
+ * runtime reconciler and no automated CI gate enforcing parity it is
6414
+ * maintained by discipline:
6391
6415
  * 1. Each migration that adds/removes/modifies a permission must INSERT
6392
6416
  * (or UPDATE / DELETE) the corresponding `org_rol_permissions` row in
6393
6417
  * the same transaction.
6394
6418
  * 2. `apps/api/src/auth/multi-tenancy/__tests__/permissions-catalog-sync.integration.test.ts`
6395
- * asserts the TS catalog and the DB rows agree; CI fails on drift.
6419
+ * checks TS/DB agreement, but it never runs in CI (filtered out by
6420
+ * vitest.config.ts, and it self-skips via skipIf even if it did run).
6421
+ * Run it locally against a real dev Supabase instead:
6422
+ * `pnpm -C apps/api test:integration` with SUPABASE_SERVICE_KEY set.
6396
6423
  *
6397
6424
  * Adding a permission:
6398
6425
  * 1. Add an entry below.
@@ -7058,6 +7085,34 @@ interface ActivityTimelineProps {
7058
7085
  }
7059
7086
  declare function ActivityTimeline({ activities }: ActivityTimelineProps): react_jsx_runtime.JSX.Element;
7060
7087
 
7088
+ interface OverviewListRowProps {
7089
+ /** Icon element rendered inside a small ThemeIcon (e.g. `<IconClock size={13} />`). */
7090
+ icon: ReactNode;
7091
+ /** Foreground color for the ThemeIcon — accepts any CSS color or var. Defaults to theme primary. */
7092
+ iconColor?: string;
7093
+ /** Background color for the ThemeIcon. Defaults to a faint primary surface. */
7094
+ iconBackground?: string;
7095
+ /** Optional tooltip shown when hovering the icon. */
7096
+ iconTooltip?: string;
7097
+ /** Row title — truncated with ellipsis when it overflows. */
7098
+ title: ReactNode;
7099
+ /** Right-side meta column. Sits at fixed width so multiple rows align cleanly. */
7100
+ meta?: ReactNode;
7101
+ /** Override the default 170px meta column width. */
7102
+ metaWidth?: number;
7103
+ /** Make the row clickable. When set, also adds pointer cursor. */
7104
+ onClick?: () => void;
7105
+ }
7106
+ declare function OverviewListRow({ icon, iconColor, iconBackground, iconTooltip, title, meta, metaWidth, onClick }: OverviewListRowProps): react_jsx_runtime.JSX.Element;
7107
+ interface OverviewListProps {
7108
+ children: ReactNode;
7109
+ }
7110
+ /**
7111
+ * Stacks `OverviewListRow` children with `<Divider />` between them. Use inside a
7112
+ * card body to render a table-like list of rows.
7113
+ */
7114
+ declare function OverviewList({ children }: OverviewListProps): react_jsx_runtime.JSX.Element;
7115
+
7061
7116
  /**
7062
7117
  * The structured 503 payload a System Interface readiness failure carries
7063
7118
  * (`APIErrorResponse.details` shape produced by `createInterfaceReadinessApiError`
@@ -7065,9 +7120,11 @@ declare function ActivityTimeline({ activities }: ActivityTimelineProps): react_
7065
7120
  * this when a caller catches a server-side readiness failure rather than
7066
7121
  * computing readiness from the local Organization Model.
7067
7122
  *
7068
- * `readinessCode: 'STALE_OM_SNAPSHOT'` is the one family the server already
7069
- * turns into an actionable redeploy message; this alert renders that same
7070
- * hint from the structured field rather than depending on parsed message text.
7123
+ * The alert renders a remedy for whichever family came back, read from the
7124
+ * structured field rather than parsed out of message text. Until 2026-08-23 it
7125
+ * rendered one only for `STALE_OM_SNAPSHOT`, so every other failure including
7126
+ * `MODEL_PARSE_FAILED`, whose fix is the same redeploy — showed bare issue text
7127
+ * with no next step.
7071
7128
  */
7072
7129
  interface SystemReadinessServerErrorDetails {
7073
7130
  systemPath: string;
@@ -7100,8 +7157,8 @@ interface SystemReadinessAlertProps {
7100
7157
  reason?: string;
7101
7158
  /**
7102
7159
  * Structured 503 payload from a server-side readiness failure. When
7103
- * provided, its `issues[]` render as a list and its redeploy hint (for
7104
- * `STALE_OM_SNAPSHOT`) renders below them.
7160
+ * provided, its `issues[]` render as a list and the remedy for its first
7161
+ * issue renders below them.
7105
7162
  */
7106
7163
  serverError?: SystemReadinessServerErrorDetails;
7107
7164
  }
@@ -8525,6 +8582,70 @@ interface SessionMemoryProps {
8525
8582
  */
8526
8583
  declare function SessionMemory({ memory }: SessionMemoryProps): react_jsx_runtime.JSX.Element;
8527
8584
 
8585
+ interface ServiceUnavailableScreenProps {
8586
+ /** Aggregated layer message, used when no underlying error was captured. */
8587
+ message: string;
8588
+ /** The underlying error, when the failing layer kept one. */
8589
+ error?: unknown;
8590
+ /** Re-runs the failed initialization. May return a promise. */
8591
+ retry?: () => void | Promise<void>;
8592
+ /** App version, shown in the technical details when the host passes one. */
8593
+ appVersion?: string;
8594
+ }
8595
+ /**
8596
+ * Full-screen fallback for a failed app bootstrap — the screen a user sees
8597
+ * when the API is down and their profile or organization never loads.
8598
+ *
8599
+ * Replaces a bare "Failed to load user profile" line with the actual cause
8600
+ * ({@link classifyConnectionError}), an automatic retry on a backoff timer so
8601
+ * the app recovers by itself once the API answers, and a collapsed technical
8602
+ * block for the details worth reporting (status, request id, API URL).
8603
+ *
8604
+ * Auto-retry runs only for transient causes. A rejected session or an
8605
+ * unclassifiable error leaves the user in control of when to retry.
8606
+ */
8607
+ declare function ServiceUnavailableScreen({ message, error, retry, appVersion }: ServiceUnavailableScreenProps): react_jsx_runtime.JSX.Element;
8608
+
8609
+ /**
8610
+ * Classification of an initialization/API failure into the handful of causes
8611
+ * a user can actually act on.
8612
+ *
8613
+ * The app-shell bootstrap (`/users/me/sync`, org memberships) is the first
8614
+ * thing that touches the API after sign-in, so when the API is down that is
8615
+ * where the failure surfaces. All the caller has at that point is an `Error`
8616
+ * — a `TypeError: Failed to fetch` from a refused connection, a
8617
+ * `TimeoutError` from the client's own 60s abort signal, or an
8618
+ * `APIClientError` carrying an HTTP status. This maps those onto a cause plus
8619
+ * the copy to show for it, so the screen can say "the server isn't
8620
+ * responding" instead of "failed to load user profile".
8621
+ */
8622
+ type ConnectionFailureKind = 'offline' | 'unreachable' | 'timeout' | 'server' | 'unauthorized' | 'unknown';
8623
+ interface ConnectionFailure {
8624
+ kind: ConnectionFailureKind;
8625
+ /** Headline — what went wrong, in the user's terms. */
8626
+ title: string;
8627
+ /** One or two sentences on what it means and what happens next. */
8628
+ description: string;
8629
+ /**
8630
+ * True when the failure is transient and a retry on a timer can recover it
8631
+ * without the user doing anything (server restarting, network blip). False
8632
+ * for causes where retrying forever is pointless (bad session, unknown).
8633
+ */
8634
+ autoRecoverable: boolean;
8635
+ /** HTTP status, when the request reached the server and it answered. */
8636
+ statusCode?: number;
8637
+ /** API request id, when the server returned one — the key for log lookups. */
8638
+ requestId?: string;
8639
+ /** Raw `Name: message`, shown under "Technical details". */
8640
+ technical: string;
8641
+ }
8642
+ /**
8643
+ * @param error The thrown error, when the caller kept one.
8644
+ * @param fallbackMessage Message to fall back to when `error` is absent —
8645
+ * typically the aggregated layer message ("Failed to load user profile").
8646
+ */
8647
+ declare function classifyConnectionError(error: unknown, fallbackMessage?: string): ConnectionFailure;
8648
+
8528
8649
  interface CrashErrorFallbackProps {
8529
8650
  error: unknown;
8530
8651
  componentStack?: string;
@@ -8605,18 +8726,33 @@ interface EditApiKeyModalProps {
8605
8726
  declare function EditApiKeyModal({ apiKey, onClose }: EditApiKeyModalProps): react_jsx_runtime.JSX.Element | null;
8606
8727
 
8607
8728
  interface CredentialSettingsProps {
8608
- /** Optional slot for rendering an OAuth integrations section above the credentials list */
8729
+ /**
8730
+ * Override for the OAuth integrations section above the credentials list.
8731
+ *
8732
+ * Omit it to get `OAuthIntegrationsCard`, which is what every app wants — it
8733
+ * reads the API URL from the service context, so there is nothing to wire.
8734
+ * Pass `null` to hide the section, or a node to render something else.
8735
+ */
8609
8736
  oauthSection?: React.ReactNode;
8610
8737
  }
8611
- declare function CredentialSettings({ oauthSection }: CredentialSettingsProps): react_jsx_runtime.JSX.Element;
8738
+ declare function CredentialSettings({ oauthSection }?: CredentialSettingsProps): react_jsx_runtime.JSX.Element;
8612
8739
 
8613
8740
  interface CredentialListProps {
8614
8741
  credentials: CredentialListItem[];
8615
8742
  isLoading: boolean;
8616
- /** Optional edit handler. When provided, an edit button is shown for each row. */
8617
- onEdit?: (credential: CredentialListItem) => void;
8618
8743
  }
8619
- declare function CredentialList({ credentials, isLoading, onEdit }: CredentialListProps): react_jsx_runtime.JSX.Element;
8744
+ /**
8745
+ * A credential row is delete-and-recreate, not edit.
8746
+ *
8747
+ * There used to be an `onEdit` prop here gating a pencil button, and an
8748
+ * `EditCredentialModal` behind it. Nothing in any app or tenant ever passed the prop,
8749
+ * so neither had run since they were written, and both were removed on 2026-08-26.
8750
+ * Reconnecting is the honest repair for an OAuth credential -- a stale token is fixed
8751
+ * by re-authorizing, which is what `OAuthIntegrationsCard` already does -- and for an
8752
+ * API key the stored value cannot be shown back to the operator anyway, so "edit"
8753
+ * could only ever mean "replace".
8754
+ */
8755
+ declare function CredentialList({ credentials, isLoading }: CredentialListProps): react_jsx_runtime.JSX.Element;
8620
8756
 
8621
8757
  interface CreateCredentialModalProps {
8622
8758
  opened: boolean;
@@ -8635,6 +8771,17 @@ interface OAuthConnectModalProps {
8635
8771
  }
8636
8772
  declare function OAuthConnectModal({ opened, onClose, provider, onConnect, error, isLoading }: OAuthConnectModalProps): react_jsx_runtime.JSX.Element;
8637
8773
 
8774
+ interface OAuthIntegrationsCardProps {
8775
+ /**
8776
+ * Base API URL used to construct the OAuth authorize endpoint.
8777
+ *
8778
+ * Optional: defaults to the `apiUrl` on the service context, which every app
8779
+ * already supplies at startup. Pass it explicitly only to override.
8780
+ */
8781
+ apiUrl?: string;
8782
+ }
8783
+ declare function OAuthIntegrationsCard({ apiUrl }?: OAuthIntegrationsCardProps): react_jsx_runtime.JSX.Element;
8784
+
8638
8785
  declare function DeploymentSettings(): react_jsx_runtime.JSX.Element;
8639
8786
 
8640
8787
  interface DeploymentListProps {
@@ -9307,10 +9454,6 @@ declare const noteTypeColors: Record<string, string>;
9307
9454
  declare function formatStatusLabel(status: string): string;
9308
9455
  declare function calculateProgress(completed: number, total: number): number;
9309
9456
 
9310
- declare const monitoringManifest: SystemModule;
9311
-
9312
- declare const settingsManifest: SystemModule;
9313
-
9314
9457
  declare const OperationsSidebar: () => react_jsx_runtime.JSX.Element;
9315
9458
 
9316
9459
  declare const OperationsSidebarTop: () => null;
@@ -9319,5 +9462,9 @@ declare const OperationsSidebarMiddle: () => react_jsx_runtime.JSX.Element;
9319
9462
 
9320
9463
  declare const operationsManifest: SystemModule;
9321
9464
 
9322
- export { APIErrorAlert, AbsoluteScheduleForm, ActionModal, ActivityCard, ActivityFeedWidget, ActivityFilters as ActivityFiltersBar, ActivityTable, ActivityTimeline, AgentDefinitionDisplay, AgentExecutionLogs, AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationDetailPanel, AgentIterationEdge, AgentIterationNode, AllTasksPage, ApiKeyDisplayModal, ApiKeyList, ApiKeySettings, AppErrorBoundary, BaseEdge, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, BaseNode, Breadcrumbs, BusinessImpactCard, CONTAINER_CONSTANTS, CardHeader, CenteredErrorState, CheckpointGroup, CloudStorageBrowser, CloudStorageFileCard, CloudStorageFileGrid, CloudStorageFolderTree, CollapsibleJsonSection, CollapsibleSection, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, CompanyDetailPage, ConfigCard, ConfirmationInputModal, ConfirmationModal, ContactDetailPage, ContentSections, ContextUsageBadge, ContextViewer, ContractDisplay, CostBreakdownCard, CostByModelTable, CostMetricsCard, CrashErrorFallback, CreateApiKeyModal, CreateCredentialModal, CreateRoleModal, CreateScheduleModal, CredentialList, CredentialSettings, CrmOverview, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, CustomModal, CustomSelector, DEAL_STAGES, DEFAULT_KANBAN_CONFIG, DealDetailPage, DealKanbanCard, DealsListPage, DeleteScheduleModal, DeploymentDetailModal, DeploymentList, DeploymentSettings, DeploymentStatusBadge, DetailCardSkeleton, EditApiKeyModal, ElevasisLoader, EmptyState, EmptyVisualizer, ErrorAnalysisCard, ErrorBreakdownTable, ErrorReportCard, ExecutionBreakdownTable, ExecutionErrorSection, ExecutionHealthCard, ExecutionLogsFilters as ExecutionLogsFilterBar, ExecutionLogsTable, ExecutionStats, ExecutionStatusBadge, FeatureUnavailableState, FilterBar, GlowDot, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, HealthStatusCard, JsonViewer, KanbanBoard, LEAD_GEN_ROUTE_LINKS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, ListSkeleton, LogEntry, LogGroup, MdxRenderer, MembershipStatusBadge, MetricsStrip, MilestoneTimeline, MyTasksPanel, NavigationButton, NoAccessState, NotificationBell, NotificationItem, NotificationList, NotificationPanel, OAuthConnectModal, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, OrganizationMembershipsList, OrganizationModelDriftActionIcon, PIPELINE_FUNNEL_ORDER, PageNotFound, PageTitleCaption, PermissionMatrix, PipelineFunnelWidget, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, ProvisioningStateBadge, QuickCreateActions, RecurringScheduleForm, RelativeScheduleForm, ResourceCard, ResourceDefinitionSection, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceHealthChart, ResourceHealthPanel, ResourceNotFoundState, RichTextEditor, RoleBadge, RunResourceButton, SAVED_VIEW_PRESETS, SEOSidebar, SEOSidebarMiddle, SEOSidebarTop, SHARED_VIZ_CONSTANTS, SavedViewsPanel, ScheduleCard, ScheduleDetailModal, ScheduleTypeSelector, SessionMemory, SortableHeader, StatCard, StatCardSkeleton, StatsCardSkeleton, StatusBadge, StepConfigForm, StyledMarkdown, SystemReadinessAlert, SystemUnavailableState, TabCountBadge, TabSection, TableSelectionToolbar, TaskCard, TaskScheduler, TimeRangeSelector, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, ToolsListDisplay, TrendIndicator, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, UpcomingMilestonesPage, VisualizerContainer, WebhookUrlDisplayModal, WorkflowDefinitionDisplay, WorkflowExecutionLogs, WorkflowExecutionTimeline, ZodFormRenderer, buildErrorReport, calculateProgress, crmManifest, deliveryManifest, formatStatusLabel, getEnrichmentColor, getExecutionStatusConfig, getGraphBackgroundStyles, getHealthColor, getIcon, getLogLevelConfig, getStatusColor, iconMap, leadGenManifest, mdxComponents, milestoneStatusColors, monitoringManifest, noteTypeColors, operationsManifest, projectStatusColors, seoManifest, settingsManifest, showApiErrorNotification, showAuthError, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, taskStatusColors, taskTypeColors, useCrmPipelineSummary, useCrmQuickMetrics, useDeleteLists, useGraphBackgroundStyles, useGraphTheme, useRecentCrmActivity };
9323
- export type { ActivityEntry, ActivityFiltersProps, ActivityTableProps, AgentIterationTotals, AppErrorBoundaryProps, BaseEdgeProps, BaseExecutionLogsProps, BreadcrumbsProps, CloudStorageBrowserProps, CloudStorageFileCardProps, CloudStorageFileGridProps, CloudStorageFolderNode, CloudStorageFolderTreeProps, CloudStorageGridItem, CloudStorageItemDecoration, CompanyDetailPageProps, ContactDetailPageProps, ContextViewerProps, CostByModelTableProps, CrashErrorFallbackProps, CreateRoleModalProps, CrmOverviewProps, DealKanbanCardProps, ErrorAnalysisCardProps, ErrorReportCardProps, ExecutionBreakdownTableProps, ExecutionHealthCardProps, ExecutionLogEntry, ExecutionLogsFiltersProps, ExecutionLogsTableProps, FeatureUnavailableStateProps, FieldPath, FitViewButtonVariant, GraphFitViewHandlerProps, JsonViewerProps, KanbanBoardProps, LogLevel, MdxRendererProps, NavigationButtonProps, PermissionRow, ProjectsSidebarMiddleProps, ResourceHealthPanelProps, RichTextEditorProps, RunResourceButtonProps, RunResourceInputResolver, SavedViewPreset, ScheduleType, StatCardProps, StepConfigComponent, StepConfigFieldHint, StepConfigFormProps, StepConfigLayout, StepConfigSection, StyledMarkdownProps, SystemReadinessAlertProps, SystemReadinessServerErrorDetails, SystemUnavailableStateProps, TabSectionProps, TaskFilterStatus, TrendIndicatorProps, ZodFormRendererProps };
9465
+ declare const monitoringManifest: SystemModule;
9466
+
9467
+ declare const settingsManifest: SystemModule;
9468
+
9469
+ export { APIErrorAlert, AbsoluteScheduleForm, ActionModal, ActivityCard, ActivityFeedWidget, ActivityFilters as ActivityFiltersBar, ActivityTable, ActivityTimeline, AgentDefinitionDisplay, AgentExecutionLogs, AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationDetailPanel, AgentIterationEdge, AgentIterationNode, AllTasksPage, ApiKeyDisplayModal, ApiKeyList, ApiKeySettings, AppErrorBoundary, BaseEdge, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, BaseNode, Breadcrumbs, BusinessImpactCard, CONTAINER_CONSTANTS, CardHeader, CenteredErrorState, CheckpointGroup, CloudStorageBrowser, CloudStorageFileCard, CloudStorageFileGrid, CloudStorageFolderTree, CollapsibleJsonSection, CollapsibleSection, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, CompanyDetailPage, ConfigCard, ConfirmationInputModal, ConfirmationModal, ContactDetailPage, ContentSections, ContextUsageBadge, ContextViewer, ContractDisplay, CostBreakdownCard, CostByModelTable, CostMetricsCard, CrashErrorFallback, CreateApiKeyModal, CreateCredentialModal, CreateRoleModal, CreateScheduleModal, CredentialList, CredentialSettings, CrmOverview, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, CustomModal, CustomSelector, DEAL_STAGES, DEFAULT_KANBAN_CONFIG, DealDetailPage, DealKanbanCard, DealsListPage, DeleteScheduleModal, DeploymentDetailModal, DeploymentList, DeploymentSettings, DeploymentStatusBadge, DetailCardSkeleton, EditApiKeyModal, ElevasisLoader, EmptyState, EmptyVisualizer, ErrorAnalysisCard, ErrorBreakdownTable, ErrorReportCard, ExecutionBreakdownTable, ExecutionErrorSection, ExecutionHealthCard, ExecutionLogsFilters as ExecutionLogsFilterBar, ExecutionLogsTable, ExecutionStats, ExecutionStatusBadge, FeatureUnavailableState, FilterBar, GlowDot, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, HealthStatusCard, JsonViewer, KanbanBoard, LEAD_GEN_ROUTE_LINKS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, ListSkeleton, LogEntry, LogGroup, MdxRenderer, MembershipStatusBadge, MetricsStrip, MilestoneTimeline, MyTasksPanel, NavigationButton, NoAccessState, NotificationBell, NotificationItem, NotificationList, NotificationPanel, OAuthConnectModal, OAuthIntegrationsCard, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, OrganizationMembershipsList, OrganizationModelDriftActionIcon, OverviewList, OverviewListRow, PIPELINE_FUNNEL_ORDER, PageNotFound, PageTitleCaption, PermissionMatrix, PipelineFunnelWidget, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, ProvisioningStateBadge, QuickCreateActions, RecurringScheduleForm, RelativeScheduleForm, ResourceCard, ResourceDefinitionSection, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceHealthChart, ResourceHealthPanel, ResourceNotFoundState, RichTextEditor, RoleBadge, RunResourceButton, SAVED_VIEW_PRESETS, SEOSidebar, SEOSidebarMiddle, SEOSidebarTop, SHARED_VIZ_CONSTANTS, SavedViewsPanel, ScheduleCard, ScheduleDetailModal, ScheduleTypeSelector, ServiceUnavailableScreen, SessionMemory, SortableHeader, StatCard, StatCardSkeleton, StatsCardSkeleton, StatusBadge, StepConfigForm, StyledMarkdown, SystemReadinessAlert, SystemUnavailableState, TabCountBadge, TabSection, TableSelectionToolbar, TaskCard, TaskScheduler, TimeRangeSelector, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, ToolsListDisplay, TrendIndicator, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, UpcomingMilestonesPage, VisualizerContainer, WebhookUrlDisplayModal, WorkflowDefinitionDisplay, WorkflowExecutionLogs, WorkflowExecutionTimeline, ZodFormRenderer, buildErrorReport, calculateProgress, classifyConnectionError, crmManifest, deliveryManifest, formatStatusLabel, getEnrichmentColor, getExecutionStatusConfig, getGraphBackgroundStyles, getHealthColor, getIcon, getLogLevelConfig, getStatusColor, iconMap, leadGenManifest, mdxComponents, milestoneStatusColors, monitoringManifest, noteTypeColors, operationsManifest, projectStatusColors, seoManifest, settingsManifest, showApiErrorNotification, showAuthError, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, taskStatusColors, taskTypeColors, useCrmPipelineSummary, useCrmQuickMetrics, useDeleteLists, useGraphBackgroundStyles, useGraphTheme, useRecentCrmActivity };
9470
+ export type { ActivityEntry, ActivityFiltersProps, ActivityTableProps, AgentIterationTotals, AppErrorBoundaryProps, BaseEdgeProps, BaseExecutionLogsProps, BreadcrumbsProps, CloudStorageBrowserProps, CloudStorageFileCardProps, CloudStorageFileGridProps, CloudStorageFolderNode, CloudStorageFolderTreeProps, CloudStorageGridItem, CloudStorageItemDecoration, CompanyDetailPageProps, ConnectionFailure, ConnectionFailureKind, ContactDetailPageProps, ContextViewerProps, CostByModelTableProps, CrashErrorFallbackProps, CreateRoleModalProps, CrmOverviewProps, DealKanbanCardProps, ErrorAnalysisCardProps, ErrorReportCardProps, ExecutionBreakdownTableProps, ExecutionHealthCardProps, ExecutionLogEntry, ExecutionLogsFiltersProps, ExecutionLogsTableProps, FeatureUnavailableStateProps, FieldPath, FitViewButtonVariant, GraphFitViewHandlerProps, JsonViewerProps, KanbanBoardProps, LogLevel, MdxRendererProps, NavigationButtonProps, OAuthIntegrationsCardProps, OverviewListProps, OverviewListRowProps, PermissionRow, ProjectsSidebarMiddleProps, ResourceHealthPanelProps, RichTextEditorProps, RunResourceButtonProps, RunResourceInputResolver, SavedViewPreset, ScheduleType, ServiceUnavailableScreenProps, StatCardProps, StepConfigComponent, StepConfigFieldHint, StepConfigFormProps, StepConfigLayout, StepConfigSection, StyledMarkdownProps, SystemReadinessAlertProps, SystemReadinessServerErrorDetails, SystemUnavailableStateProps, TabSectionProps, TaskFilterStatus, TrendIndicatorProps, ZodFormRendererProps };