@elevasis/ui 2.73.0 → 2.75.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 (97) hide show
  1. package/dist/api/index.js +3 -3
  2. package/dist/app/index.d.ts +58 -0
  3. package/dist/app/index.js +9 -10
  4. package/dist/auth/index.js +5 -6
  5. package/dist/charts/index.js +5 -6
  6. package/dist/chunk-2GIJBHZT.js +60 -0
  7. package/dist/{chunk-Z4ICFQXG.js → chunk-2ZRY3ARL.js} +1 -1
  8. package/dist/{chunk-5B2ZFO44.js → chunk-3H5DIJN7.js} +1 -1
  9. package/dist/{chunk-LZT2H2MA.js → chunk-47YJVIZE.js} +36 -43
  10. package/dist/{chunk-3TS5U5BL.js → chunk-5RH6NYZH.js} +1 -1
  11. package/dist/chunk-5SLRGUC4.js +224 -0
  12. package/dist/{chunk-JYBJMVNY.js → chunk-5VF5LPYS.js} +1 -1
  13. package/dist/{chunk-SWKAH2YM.js → chunk-6BJ5HMMC.js} +282 -553
  14. package/dist/{chunk-NI37YNRP.js → chunk-7OOFMEX6.js} +11 -5
  15. package/dist/{chunk-IBCEAVB2.js → chunk-A2SB32YV.js} +65 -5
  16. package/dist/{chunk-CJ2232PQ.js → chunk-CRPH5AAB.js} +1 -1
  17. package/dist/chunk-D3XXPCCK.js +69 -0
  18. package/dist/chunk-DMSTDZCJ.js +305 -0
  19. package/dist/chunk-DTEGVSJ6.js +645 -0
  20. package/dist/chunk-DVAOCHIF.js +165 -0
  21. package/dist/chunk-G7O4CBMC.js +231 -0
  22. package/dist/{chunk-IGBPWD6S.js → chunk-GDTK33QT.js} +5 -3
  23. package/dist/chunk-ICHDIVQO.js +54 -0
  24. package/dist/{chunk-U2H3TIHD.js → chunk-IYATYH5I.js} +2 -52
  25. package/dist/chunk-L3NBMLRN.js +49 -0
  26. package/dist/{chunk-LEPYXLJ2.js → chunk-LFLM723H.js} +1 -1
  27. package/dist/chunk-M6VAZAQW.js +45 -0
  28. package/dist/{chunk-AJOVWB47.js → chunk-MLHZUN2X.js} +6 -3
  29. package/dist/chunk-N6K2Q5BM.js +393 -0
  30. package/dist/chunk-NMHQAYZU.js +439 -0
  31. package/dist/chunk-NYIIRZSA.js +286 -0
  32. package/dist/{chunk-ETN3TTRT.js → chunk-OGHTJKBV.js} +115 -8
  33. package/dist/{chunk-M7WWRZ5Z.js → chunk-QFGNRKIE.js} +1 -78
  34. package/dist/chunk-QFS2GZMV.js +515 -0
  35. package/dist/{chunk-OCVSPAKM.js → chunk-SB3IHM5Y.js} +1150 -4346
  36. package/dist/{chunk-4CW2C5BD.js → chunk-SEYOVNS5.js} +1 -1
  37. package/dist/chunk-SN7X5N2A.js +116 -0
  38. package/dist/{chunk-PQ4B62HH.js → chunk-TX3UHDL5.js} +2 -2
  39. package/dist/chunk-VM2OWOXL.js +24 -0
  40. package/dist/{chunk-ZDKPHFTH.js → chunk-VWGCURZF.js} +5 -3
  41. package/dist/chunk-WDBNW44Z.js +49 -0
  42. package/dist/chunk-YQQ5GRUR.js +21 -0
  43. package/dist/{chunk-NHNTX6ZL.js → chunk-ZG6YJUT4.js} +3 -2
  44. package/dist/components/index.d.ts +228 -6
  45. package/dist/components/index.js +321 -35
  46. package/dist/components/navigation/index.js +6 -7
  47. package/dist/features/auth/index.d.ts +78 -2
  48. package/dist/features/auth/index.js +18 -9
  49. package/dist/features/clients/index.js +7 -7
  50. package/dist/features/content/index.d.ts +226 -5
  51. package/dist/features/content/index.js +270 -19
  52. package/dist/features/crm/index.d.ts +58 -0
  53. package/dist/features/crm/index.js +10 -8
  54. package/dist/features/dashboard/index.js +9 -8
  55. package/dist/features/delivery/index.d.ts +58 -0
  56. package/dist/features/delivery/index.js +23 -7
  57. package/dist/features/knowledge/index.js +5 -6
  58. package/dist/features/lead-gen/index.d.ts +9 -15
  59. package/dist/features/lead-gen/index.js +12 -8
  60. package/dist/features/monitoring/index.js +11 -9
  61. package/dist/features/monitoring/requests/index.js +8 -7
  62. package/dist/features/operations/index.js +15 -11
  63. package/dist/features/public-agent-chat/index.js +3 -1
  64. package/dist/features/settings/index.d.ts +66 -3
  65. package/dist/features/settings/index.js +9 -8
  66. package/dist/hooks/access/index.js +5 -6
  67. package/dist/hooks/delivery/index.d.ts +58 -0
  68. package/dist/hooks/delivery/index.js +3 -2
  69. package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +1 -1
  70. package/dist/hooks/published.d.ts +181 -5
  71. package/dist/hooks/published.js +22 -6
  72. package/dist/initialization/index.d.ts +58 -0
  73. package/dist/knowledge/index.js +167 -11
  74. package/dist/{knowledge-search-index-RZLIVWPJ.js → knowledge-search-index-6GQK55IQ.js} +1 -1
  75. package/dist/layout/index.js +8 -9
  76. package/dist/profile/index.d.ts +58 -0
  77. package/dist/provider/index.d.ts +77 -1
  78. package/dist/provider/index.js +5 -6
  79. package/dist/provider/published.d.ts +105 -1
  80. package/dist/provider/published.js +5 -6
  81. package/dist/test-utils/index.d.ts +16 -5
  82. package/dist/test-utils/index.js +17 -18
  83. package/dist/types/index.d.ts +73 -1
  84. package/dist/utils/index.d.ts +83 -3
  85. package/dist/utils/index.js +1 -1
  86. package/package.json +10 -5
  87. package/dist/chunk-6M6OLGQY.js +0 -36
  88. package/dist/chunk-MKH2KOAO.js +0 -39
  89. package/dist/hooks/index.css +0 -659
  90. package/dist/hooks/index.d.ts +0 -14073
  91. package/dist/hooks/index.js +0 -27
  92. package/dist/supabase/index.d.ts +0 -7118
  93. package/dist/supabase/index.js +0 -3
  94. package/dist/typeform/index.d.ts +0 -462
  95. package/dist/typeform/index.js +0 -2051
  96. package/dist/typeform/schemas.d.ts +0 -67
  97. package/dist/typeform/schemas.js +0 -2
@@ -1,4 +1,4 @@
1
- import { useCyberColors, useResourcesHealth, EmptyState, CyberLegendItem, CyberAreaChart } from './chunk-OCVSPAKM.js';
1
+ import { useCyberColors, useResourcesHealth, EmptyState, CyberLegendItem, CyberAreaChart } from './chunk-SB3IHM5Y.js';
2
2
  import { CardHeader } from './chunk-62GVNH5U.js';
3
3
  import { getTimeRangeDates, formatBucketTime } from './chunk-Y6I3IC45.js';
4
4
  import { Paper, Center, Loader, Group } from '@mantine/core';
@@ -0,0 +1,116 @@
1
+ import { showApiErrorNotification } from './chunk-ICHDIVQO.js';
2
+ import { useElevasisServices } from './chunk-BI5VDO2K.js';
3
+ import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
4
+
5
+ // src/hooks/clients/queryKeys.ts
6
+ var clientsKeys = {
7
+ all: ["clients"],
8
+ lists: () => [...clientsKeys.all, "list"],
9
+ list: (organizationId, filters) => [...clientsKeys.lists(), organizationId, filters],
10
+ statuses: () => [...clientsKeys.all, "status"],
11
+ status: (organizationId) => [...clientsKeys.statuses(), organizationId],
12
+ details: () => [...clientsKeys.all, "detail"],
13
+ detail: (organizationId, id) => [...clientsKeys.details(), organizationId, id]
14
+ };
15
+ function useClients(filters = {}) {
16
+ const { apiRequest, isReady, workOSOrganizationId } = useElevasisServices();
17
+ return useQuery({
18
+ queryKey: clientsKeys.list(workOSOrganizationId ?? void 0, filters),
19
+ queryFn: async () => {
20
+ const { status, source, search, limit, offset } = filters;
21
+ const params = new URLSearchParams();
22
+ if (status) params.set("status", status);
23
+ if (source) params.set("source", source);
24
+ if (search) params.set("search", search);
25
+ if (limit !== void 0) params.set("limit", String(limit));
26
+ if (offset !== void 0) params.set("offset", String(offset));
27
+ const query = params.toString();
28
+ return apiRequest(`/clients${query ? "?" + query : ""}`);
29
+ },
30
+ enabled: isReady
31
+ });
32
+ }
33
+ function useClientStatus() {
34
+ const { apiRequest, isReady, workOSOrganizationId } = useElevasisServices();
35
+ return useQuery({
36
+ queryKey: clientsKeys.status(workOSOrganizationId ?? void 0),
37
+ queryFn: async () => {
38
+ return apiRequest("/clients/status");
39
+ },
40
+ enabled: isReady
41
+ });
42
+ }
43
+ function useClient(clientId) {
44
+ const { apiRequest, isReady, workOSOrganizationId } = useElevasisServices();
45
+ return useQuery({
46
+ queryKey: clientsKeys.detail(workOSOrganizationId ?? void 0, clientId),
47
+ queryFn: async () => {
48
+ return apiRequest(`/clients/${clientId}`);
49
+ },
50
+ enabled: isReady && !!clientId
51
+ });
52
+ }
53
+ function useCreateClient() {
54
+ const { apiRequest } = useElevasisServices();
55
+ const queryClient = useQueryClient();
56
+ return useMutation({
57
+ mutationFn: async (data) => {
58
+ return apiRequest("/clients", {
59
+ method: "POST",
60
+ body: JSON.stringify(data)
61
+ });
62
+ },
63
+ onSuccess: () => {
64
+ void queryClient.invalidateQueries({ queryKey: clientsKeys.lists() });
65
+ void queryClient.invalidateQueries({ queryKey: clientsKeys.statuses() });
66
+ },
67
+ onError: (error) => {
68
+ console.error("Failed to create client:", error);
69
+ showApiErrorNotification(error);
70
+ }
71
+ });
72
+ }
73
+ function useUpdateClient() {
74
+ const { apiRequest, workOSOrganizationId } = useElevasisServices();
75
+ const queryClient = useQueryClient();
76
+ return useMutation({
77
+ mutationFn: async ({ clientId, updates }) => {
78
+ return apiRequest(`/clients/${clientId}`, {
79
+ method: "PATCH",
80
+ body: JSON.stringify(updates)
81
+ });
82
+ },
83
+ onSuccess: (_data, { clientId }) => {
84
+ void queryClient.invalidateQueries({ queryKey: clientsKeys.lists() });
85
+ void queryClient.invalidateQueries({
86
+ queryKey: clientsKeys.detail(workOSOrganizationId ?? void 0, clientId)
87
+ });
88
+ void queryClient.invalidateQueries({ queryKey: clientsKeys.statuses() });
89
+ },
90
+ onError: (error) => {
91
+ console.error("Failed to update client:", error);
92
+ showApiErrorNotification(error);
93
+ }
94
+ });
95
+ }
96
+ function useDeleteClient() {
97
+ const { apiRequest } = useElevasisServices();
98
+ const queryClient = useQueryClient();
99
+ return useMutation({
100
+ mutationFn: async (clientId) => {
101
+ await apiRequest(`/clients/${clientId}`, {
102
+ method: "DELETE"
103
+ });
104
+ },
105
+ onSuccess: () => {
106
+ void queryClient.invalidateQueries({ queryKey: clientsKeys.lists() });
107
+ void queryClient.invalidateQueries({ queryKey: clientsKeys.statuses() });
108
+ },
109
+ onError: (error) => {
110
+ console.error("Failed to delete client:", error);
111
+ showApiErrorNotification(error);
112
+ }
113
+ });
114
+ }
115
+
116
+ export { clientsKeys, useClient, useClientStatus, useClients, useCreateClient, useDeleteClient, useUpdateClient };
@@ -1,5 +1,5 @@
1
- import { getLeadGenStageCatalog } from './chunk-OCVSPAKM.js';
2
- import { SYSTEM_INTERFACE_PROFILES, formatOntologyId, registerBuiltInReadinessProfile, registerReadinessInterfaceMarker, requireContractReadiness, computeInterfaceReadiness, addReadinessIssue, formatInterfaceIdentity, resourceBindingIds, requireCatalogReadiness, requireScopedBinding } from './chunk-IBCEAVB2.js';
1
+ import { getLeadGenStageCatalog } from './chunk-SB3IHM5Y.js';
2
+ import { SYSTEM_INTERFACE_PROFILES, formatOntologyId, registerBuiltInReadinessProfile, registerReadinessInterfaceMarker, requireContractReadiness, computeInterfaceReadiness, addReadinessIssue, formatInterfaceIdentity, resourceBindingIds, requireCatalogReadiness, requireScopedBinding } from './chunk-A2SB32YV.js';
3
3
 
4
4
  // ../core/src/business/acquisition/ontology-validation.ts
5
5
  var LEAD_GEN_API_INTERFACE = SYSTEM_INTERFACE_PROFILES[0];
@@ -0,0 +1,24 @@
1
+ import { UuidSchema } from './chunk-TVTSASST.js';
2
+ import { z } from 'zod';
3
+
4
+ var NotificationCategorySchema = z.enum(["info", "queue", "alert", "error", "system"]);
5
+ var GetNotificationsQuerySchema = z.object({
6
+ limit: z.coerce.number().int().min(1).max(100).default(50),
7
+ offset: z.coerce.number().int().min(0).default(0)
8
+ });
9
+ var MarkAsReadParamsSchema = z.object({
10
+ id: UuidSchema
11
+ });
12
+ z.object({
13
+ userId: UuidSchema,
14
+ organizationId: UuidSchema,
15
+ category: NotificationCategorySchema,
16
+ title: z.string().trim().min(1).max(200),
17
+ message: z.string().trim().min(1).max(1e3),
18
+ actionUrl: z.string().url().optional()
19
+ }).strict();
20
+ z.object({
21
+ ids: z.array(UuidSchema).min(1).max(500)
22
+ }).strict();
23
+
24
+ export { GetNotificationsQuerySchema, MarkAsReadParamsSchema };
@@ -1,13 +1,15 @@
1
+ import { useScheduledTasks } from './chunk-N6K2Q5BM.js';
1
2
  import { ZodFormRenderer } from './chunk-3MEXPLWT.js';
2
3
  import { ResourceHealthChart } from './chunk-LGKLC5MG.js';
4
+ import { useTimeRangeDates } from './chunk-YQQ5GRUR.js';
3
5
  import { Graph_module_css_default, useDirectedChainHighlighting, useNodeSelection, useFitViewTrigger } from './chunk-HENXLGVD.js';
4
- import { AppShellCenteredContainer, AppShellLoader } from './chunk-3TS5U5BL.js';
5
- import { useCyberColors, GlowDot, JsonViewer, useExecuteResource, EmptyState, useDashboardMetrics, useResources, useTimeRangeDates, useUnresolvedErrors, useRecentExecutionsByResource, PageTitleCaption, HeroStatsRow, useCommandQueue, useScheduledTasks, TabCountBadge, useResourcesHealth } from './chunk-OCVSPAKM.js';
6
+ import { AppShellCenteredContainer, AppShellLoader } from './chunk-5RH6NYZH.js';
7
+ import { useCyberColors, GlowDot, JsonViewer, useExecuteResource, EmptyState, useDashboardMetrics, useResources, useUnresolvedErrors, useRecentExecutionsByResource, PageTitleCaption, HeroStatsRow, useCommandQueue, TabCountBadge, useResourcesHealth } from './chunk-SB3IHM5Y.js';
6
8
  import { glassBase } from './chunk-R6NMRXNO.js';
7
9
  import { CardHeader } from './chunk-62GVNH5U.js';
8
10
  import { useInitialization } from './chunk-P45GQ3ZW.js';
9
11
  import { STATUS_COLORS, getStatusIcon, formatDuration, getStatusColors, AGENT_CONSTANTS, shouldAnimateEdge, TIMELINE_CONSTANTS, calculateBarPosition, CONTAINER_CONSTANTS, useExecutionPath, useUnifiedWorkflowLayout, WORKFLOW_CONSTANTS, useReactFlowAgent } from './chunk-BLXJEIQS.js';
10
- import { formatTimeAgo, formatRelativeTime } from './chunk-IBCEAVB2.js';
12
+ import { formatTimeAgo, formatRelativeTime } from './chunk-A2SB32YV.js';
11
13
  import { getTimeRangeDates } from './chunk-Y6I3IC45.js';
12
14
  import { ResourceStatusColors } from './chunk-6SSQGWK7.js';
13
15
  import { memo, useMemo, useEffect, useState, useCallback, Fragment } from 'react';
@@ -0,0 +1,49 @@
1
+ import { useState, useMemo, useEffect, useCallback } from 'react';
2
+
3
+ // src/hooks/table/useTableSelection.ts
4
+ function useTableSelection(items, allItems) {
5
+ const [selectedIds, setSelectedIds] = useState(/* @__PURE__ */ new Set());
6
+ const pageIds = useMemo(() => new Set(items.map((i) => i.id)), [items]);
7
+ useEffect(() => {
8
+ setSelectedIds((prev) => {
9
+ const validIds = allItems ? new Set(allItems.map((i) => i.id)) : pageIds;
10
+ const next = new Set([...prev].filter((id) => validIds.has(id)));
11
+ return next.size === prev.size ? prev : next;
12
+ });
13
+ }, [allItems, pageIds]);
14
+ const toggle = useCallback((id) => {
15
+ setSelectedIds((prev) => {
16
+ const next = new Set(prev);
17
+ if (next.has(id)) next.delete(id);
18
+ else next.add(id);
19
+ return next;
20
+ });
21
+ }, []);
22
+ const togglePage = useCallback(() => {
23
+ setSelectedIds((prev) => {
24
+ const allPageSelected = items.every((i) => prev.has(i.id));
25
+ const next = new Set(prev);
26
+ if (allPageSelected) {
27
+ for (const item of items) next.delete(item.id);
28
+ } else {
29
+ for (const item of items) next.add(item.id);
30
+ }
31
+ return next;
32
+ });
33
+ }, [items]);
34
+ const clear = useCallback(() => setSelectedIds(/* @__PURE__ */ new Set()), []);
35
+ const isPageAllSelected = items.length > 0 && items.every((i) => selectedIds.has(i.id));
36
+ const isPagePartiallySelected = !isPageAllSelected && items.some((i) => selectedIds.has(i.id));
37
+ return {
38
+ selectedIds,
39
+ toggle,
40
+ togglePage,
41
+ clear,
42
+ isPageAllSelected,
43
+ isPagePartiallySelected,
44
+ selectedCount: selectedIds.size,
45
+ isSelected: (id) => selectedIds.has(id)
46
+ };
47
+ }
48
+
49
+ export { useTableSelection };
@@ -0,0 +1,21 @@
1
+ import { useMemo } from 'react';
2
+
3
+ // src/hooks/useTimeRangeDates.ts
4
+ var RANGE_MS = {
5
+ "1h": 60 * 60 * 1e3,
6
+ "24h": 24 * 60 * 60 * 1e3,
7
+ "7d": 7 * 24 * 60 * 60 * 1e3,
8
+ "30d": 30 * 24 * 60 * 60 * 1e3
9
+ };
10
+ function useTimeRangeDates(timeRange) {
11
+ return useMemo(() => {
12
+ const now = /* @__PURE__ */ new Date();
13
+ const start = new Date(now.getTime() - RANGE_MS[timeRange]);
14
+ return {
15
+ startDate: start.toISOString(),
16
+ endDate: now.toISOString()
17
+ };
18
+ }, [timeRange]);
19
+ }
20
+
21
+ export { useTimeRangeDates };
@@ -1,5 +1,5 @@
1
1
  import { OrganizationContext } from './chunk-DD3CCMCZ.js';
2
- import { APIClientError } from './chunk-IBCEAVB2.js';
2
+ import { APIClientError } from './chunk-A2SB32YV.js';
3
3
  import { createContext, useContext, useMemo, useCallback } from 'react';
4
4
  import { jsx } from 'react/jsx-runtime';
5
5
 
@@ -124,7 +124,8 @@ function useApiClient(apiUrl) {
124
124
  response.status,
125
125
  errorData.requestId,
126
126
  errorData.fields,
127
- errorData.retryAfter
127
+ errorData.retryAfter,
128
+ errorData.details
128
129
  );
129
130
  },
130
131
  [onError]
@@ -1895,6 +1895,64 @@ type Database = {
1895
1895
  }
1896
1896
  ];
1897
1897
  };
1898
+ content_distribution_metrics: {
1899
+ Row: {
1900
+ captured_at: string;
1901
+ created_at: string;
1902
+ distribution_id: string;
1903
+ id: string;
1904
+ metrics: Json;
1905
+ organization_id: string;
1906
+ raw: Json;
1907
+ source: string;
1908
+ source_execution_id: string | null;
1909
+ };
1910
+ Insert: {
1911
+ captured_at?: string;
1912
+ created_at?: string;
1913
+ distribution_id: string;
1914
+ id?: string;
1915
+ metrics?: Json;
1916
+ organization_id: string;
1917
+ raw?: Json;
1918
+ source: string;
1919
+ source_execution_id?: string | null;
1920
+ };
1921
+ Update: {
1922
+ captured_at?: string;
1923
+ created_at?: string;
1924
+ distribution_id?: string;
1925
+ id?: string;
1926
+ metrics?: Json;
1927
+ organization_id?: string;
1928
+ raw?: Json;
1929
+ source?: string;
1930
+ source_execution_id?: string | null;
1931
+ };
1932
+ Relationships: [
1933
+ {
1934
+ foreignKeyName: "content_distribution_metrics_distribution_fkey";
1935
+ columns: ["distribution_id", "organization_id"];
1936
+ isOneToOne: false;
1937
+ referencedRelation: "content_distributions";
1938
+ referencedColumns: ["id", "organization_id"];
1939
+ },
1940
+ {
1941
+ foreignKeyName: "content_distribution_metrics_organization_id_fkey";
1942
+ columns: ["organization_id"];
1943
+ isOneToOne: false;
1944
+ referencedRelation: "organizations";
1945
+ referencedColumns: ["id"];
1946
+ },
1947
+ {
1948
+ foreignKeyName: "content_distribution_metrics_source_execution_id_fkey";
1949
+ columns: ["source_execution_id"];
1950
+ isOneToOne: false;
1951
+ referencedRelation: "execution_logs";
1952
+ referencedColumns: ["execution_id"];
1953
+ }
1954
+ ];
1955
+ };
1898
1956
  content_distributions: {
1899
1957
  Row: {
1900
1958
  adapted_body: string | null;
@@ -4709,6 +4767,45 @@ declare const LinkSchema: z.ZodObject<{
4709
4767
  }, z.core.$strip>;
4710
4768
  type Link = z.infer<typeof LinkSchema>;
4711
4769
 
4770
+ /**
4771
+ * Registration surface for the generic readiness engine (`./engine`).
4772
+ *
4773
+ * This module owns two independent extension points so `./engine` never has
4774
+ * to import anything from `business/**`:
4775
+ *
4776
+ * - `registerBuiltInReadinessProfile` — a profile id (e.g. `sales.lead-gen.api`)
4777
+ * maps to structural validation logic plus an optional model-preparation
4778
+ * hook run before ontology compilation (e.g. injecting a derived catalog).
4779
+ * This is the ONE readiness-profile registry (`_builtInProfileValidators`
4780
+ * below) — `../domains/systems`'s `isBuiltInReadinessProfile` /
4781
+ * `lookupReadinessProfile` read it directly via `getBuiltInReadinessProfile`
4782
+ * rather than mirroring registrations into a second map, so a profile id
4783
+ * can never read as built-in without an actual registered validator.
4784
+ * - `registerReadinessInterfaceMarker` — a `(systemPath, interfaceKey)` pair
4785
+ * maps to a synthesized interface marker for interfaces that are not
4786
+ * authored on `system.apiInterface` (e.g. the lead-gen/CRM handoff bridge,
4787
+ * which is derived from scoped resources rather than declared directly).
4788
+ *
4789
+ * `business/acquisition/ontology-validation.ts` calls both at module load to
4790
+ * register its three built-in profiles. Both registries are module-level
4791
+ * mutable maps with no reset function. Reachable by a tenant via the
4792
+ * `./organization-model/readiness` subpath (see `./index`).
4793
+ */
4794
+
4795
+ type SystemInterfaceReadinessIssueFamily = 'SYSTEM_INTERFACE_MISSING' | 'SYSTEM_INTERFACE_DISABLED' | 'SYSTEM_INTERFACE_INVALID' | 'SYSTEM_INTERFACE_NOT_READY' | 'SYSTEM_BRIDGE_NOT_READY'
4796
+ /**
4797
+ * The deployed OM snapshot hash does not match the canonical source hash.
4798
+ * Redeploy with `pnpm operations:deploy` to refresh the snapshot.
4799
+ */
4800
+ | 'STALE_OM_SNAPSHOT';
4801
+ interface SystemInterfaceReadinessIssue {
4802
+ family: SystemInterfaceReadinessIssueFamily;
4803
+ code: string;
4804
+ path?: string;
4805
+ ref?: string;
4806
+ message: string;
4807
+ }
4808
+
4712
4809
  declare const OrganizationModelSchema: z.ZodObject<{
4713
4810
  version: z.ZodDefault<z.ZodLiteral<1>>;
4714
4811
  snapshotHash: z.ZodOptional<z.ZodString>;
@@ -5855,6 +5952,20 @@ interface OAuthState {
5855
5952
  timestamp: number;
5856
5953
  credentialName: string;
5857
5954
  provider: string;
5955
+ /**
5956
+ * Origin of the app that started this flow (e.g. 'https://app.contemplativerecords.com').
5957
+ *
5958
+ * Validated against the platform allowed-origins list in `authorizeHandler`
5959
+ * BEFORE it is sealed into the signed state, so the callback can hand it to
5960
+ * the callback page without re-checking. Every app that renders the OAuth
5961
+ * card runs on its own origin, and the callback page is served from a single
5962
+ * deploy-global one — it cannot read `window.opener.location.origin` across
5963
+ * that boundary, so the origin has to travel with the flow.
5964
+ *
5965
+ * Optional so a state issued before this field existed still decodes; the
5966
+ * callback falls back to `FRONTEND_URL` when it is absent.
5967
+ */
5968
+ appOrigin?: string;
5858
5969
  }
5859
5970
 
5860
5971
  /**
@@ -6290,12 +6401,16 @@ interface Activity {
6290
6401
  * - UI access checks (via useAccess() permission-backed AccessKeys)
6291
6402
  *
6292
6403
  * The DB table `org_rol_permissions` mirrors this constant. There is no
6293
- * runtime reconciler; parity is enforced two ways:
6404
+ * runtime reconciler and no automated CI gate enforcing parity it is
6405
+ * maintained by discipline:
6294
6406
  * 1. Each migration that adds/removes/modifies a permission must INSERT
6295
6407
  * (or UPDATE / DELETE) the corresponding `org_rol_permissions` row in
6296
6408
  * the same transaction.
6297
6409
  * 2. `apps/api/src/auth/multi-tenancy/__tests__/permissions-catalog-sync.integration.test.ts`
6298
- * asserts the TS catalog and the DB rows agree; CI fails on drift.
6410
+ * checks TS/DB agreement, but it never runs in CI (filtered out by
6411
+ * vitest.config.ts, and it self-skips via skipIf even if it did run).
6412
+ * Run it locally against a real dev Supabase instead:
6413
+ * `pnpm -C apps/api test:integration` with SUPABASE_SERVICE_KEY set.
6299
6414
  *
6300
6415
  * Adding a permission:
6301
6416
  * 1. Add an entry below.
@@ -6335,6 +6450,17 @@ interface PermissionDescriptor {
6335
6450
  isOrgGrantable: boolean;
6336
6451
  }
6337
6452
 
6453
+ declare const AccessKeyInputSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
6454
+ systemPath: z.ZodString;
6455
+ action: z.ZodDefault<z.ZodEnum<{
6456
+ view: "view";
6457
+ manage: "manage";
6458
+ }>>;
6459
+ }, z.core.$strict>]>;
6460
+ type AccessKeyInput = z.input<typeof AccessKeyInputSchema>;
6461
+
6462
+ type AccessReason = 'allowed' | 'platform-admin-bypass' | 'invalid-access-key' | 'unknown-access-key' | 'organization-mismatch' | 'missing-membership' | 'system-not-active' | 'role-permission-denied' | 'diagnostic-key-not-allowed';
6463
+
6338
6464
  /**
6339
6465
  * Deployment types — browser-safe
6340
6466
  *
@@ -6861,6 +6987,26 @@ interface FeatureUnavailableStateProps {
6861
6987
  }
6862
6988
  declare function FeatureUnavailableState({ path }: FeatureUnavailableStateProps): react_jsx_runtime.JSX.Element;
6863
6989
 
6990
+ interface SystemUnavailableStateProps {
6991
+ /** The access key the guard evaluated -- used to resolve the System's id, label, and lifecycle. */
6992
+ accessKey: AccessKeyInput;
6993
+ /** The denial reason returned by `checkAccess` / `useAccess`. */
6994
+ reason: AccessReason;
6995
+ }
6996
+ /**
6997
+ * Route-level denial state for a System `AccessGuard`. Unlike the guard's own
6998
+ * `fallback = null` default (never changed -- see access-model.ts), this
6999
+ * component turns the specific {@link AccessReason} `checkAccess` already
7000
+ * computed into a message that names the System instead of rendering a blank
7001
+ * pane. `unknown-access-key` and `system-not-active` get a dedicated message
7002
+ * because they are configuration problems (the System isn't declared, or
7003
+ * isn't in an accessible lifecycle state) rather than a per-user permission
7004
+ * gap; every other denial reason falls through to the shared
7005
+ * {@link NoAccessState}, which already covers "you personally can't see
7006
+ * this."
7007
+ */
7008
+ declare function SystemUnavailableState({ accessKey, reason }: SystemUnavailableStateProps): react_jsx_runtime.JSX.Element;
7009
+
6864
7010
  interface ResourceCardProps {
6865
7011
  resource: ResourceDefinition;
6866
7012
  onClick: (resource: ResourceDefinition) => void;
@@ -6930,6 +7076,65 @@ interface ActivityTimelineProps {
6930
7076
  }
6931
7077
  declare function ActivityTimeline({ activities }: ActivityTimelineProps): react_jsx_runtime.JSX.Element;
6932
7078
 
7079
+ /**
7080
+ * The structured 503 payload a System Interface readiness failure carries
7081
+ * (`APIErrorResponse.details` shape produced by `createInterfaceReadinessApiError`
7082
+ * in `apps/api/src/platform/organization-model/interface-readiness.ts`). Pass
7083
+ * this when a caller catches a server-side readiness failure rather than
7084
+ * computing readiness from the local Organization Model.
7085
+ *
7086
+ * The alert renders a remedy for whichever family came back, read from the
7087
+ * structured field rather than parsed out of message text. Until 2026-08-23 it
7088
+ * rendered one only for `STALE_OM_SNAPSHOT`, so every other failure — including
7089
+ * `MODEL_PARSE_FAILED`, whose fix is the same redeploy — showed bare issue text
7090
+ * with no next step.
7091
+ */
7092
+ interface SystemReadinessServerErrorDetails {
7093
+ systemPath: string;
7094
+ interfaceKey: string;
7095
+ readinessProfile?: string;
7096
+ readinessCode: SystemInterfaceReadinessIssueFamily;
7097
+ issues: SystemInterfaceReadinessIssue[];
7098
+ }
7099
+ interface SystemReadinessAlertProps {
7100
+ /**
7101
+ * Whether the System's API interface readiness check has passed. Renders
7102
+ * nothing when `true` and no `serverError` is supplied.
7103
+ */
7104
+ ready: boolean;
7105
+ /**
7106
+ * Label for what is disabled while readiness has not passed, e.g.
7107
+ * "Lead-gen API actions". Used to build the default message.
7108
+ */
7109
+ actionLabel: string;
7110
+ /**
7111
+ * Optional note appended after the disabled-actions message describing
7112
+ * what still works, e.g. "Read-only list detail can still render when
7113
+ * data is available."
7114
+ */
7115
+ fallbackNote?: string;
7116
+ /**
7117
+ * Reason string from a local (client-side) readiness computation, e.g.
7118
+ * `useLeadGenConfig().leadGenApiInterface.reason`.
7119
+ */
7120
+ reason?: string;
7121
+ /**
7122
+ * Structured 503 payload from a server-side readiness failure. When
7123
+ * provided, its `issues[]` render as a list and the remedy for its first
7124
+ * issue renders below them.
7125
+ */
7126
+ serverError?: SystemReadinessServerErrorDetails;
7127
+ }
7128
+ /**
7129
+ * Displays a warning alert when a System's API interface readiness check has
7130
+ * not passed. Generalized from the lead-gen-only `LeadGenReadinessAlert` so
7131
+ * any System can reuse the same rendering for both a local-model readiness
7132
+ * failure (`reason`) and a structured server 503 (`serverError`).
7133
+ *
7134
+ * Renders nothing when `ready` is `true` and no `serverError` is supplied.
7135
+ */
7136
+ declare function SystemReadinessAlert({ ready, actionLabel, fallbackNote, reason, serverError }: SystemReadinessAlertProps): react_jsx_runtime.JSX.Element | null;
7137
+
6933
7138
  interface ICustomModalProps {
6934
7139
  opened: boolean;
6935
7140
  onClose: () => void;
@@ -8420,10 +8625,16 @@ interface EditApiKeyModalProps {
8420
8625
  declare function EditApiKeyModal({ apiKey, onClose }: EditApiKeyModalProps): react_jsx_runtime.JSX.Element | null;
8421
8626
 
8422
8627
  interface CredentialSettingsProps {
8423
- /** Optional slot for rendering an OAuth integrations section above the credentials list */
8628
+ /**
8629
+ * Override for the OAuth integrations section above the credentials list.
8630
+ *
8631
+ * Omit it to get `OAuthIntegrationsCard`, which is what every app wants — it
8632
+ * reads the API URL from the service context, so there is nothing to wire.
8633
+ * Pass `null` to hide the section, or a node to render something else.
8634
+ */
8424
8635
  oauthSection?: React.ReactNode;
8425
8636
  }
8426
- declare function CredentialSettings({ oauthSection }: CredentialSettingsProps): react_jsx_runtime.JSX.Element;
8637
+ declare function CredentialSettings({ oauthSection }?: CredentialSettingsProps): react_jsx_runtime.JSX.Element;
8427
8638
 
8428
8639
  interface CredentialListProps {
8429
8640
  credentials: CredentialListItem[];
@@ -8450,6 +8661,17 @@ interface OAuthConnectModalProps {
8450
8661
  }
8451
8662
  declare function OAuthConnectModal({ opened, onClose, provider, onConnect, error, isLoading }: OAuthConnectModalProps): react_jsx_runtime.JSX.Element;
8452
8663
 
8664
+ interface OAuthIntegrationsCardProps {
8665
+ /**
8666
+ * Base API URL used to construct the OAuth authorize endpoint.
8667
+ *
8668
+ * Optional: defaults to the `apiUrl` on the service context, which every app
8669
+ * already supplies at startup. Pass it explicitly only to override.
8670
+ */
8671
+ apiUrl?: string;
8672
+ }
8673
+ declare function OAuthIntegrationsCard({ apiUrl }?: OAuthIntegrationsCardProps): react_jsx_runtime.JSX.Element;
8674
+
8453
8675
  declare function DeploymentSettings(): react_jsx_runtime.JSX.Element;
8454
8676
 
8455
8677
  interface DeploymentListProps {
@@ -9134,5 +9356,5 @@ declare const OperationsSidebarMiddle: () => react_jsx_runtime.JSX.Element;
9134
9356
 
9135
9357
  declare const operationsManifest: SystemModule;
9136
9358
 
9137
- 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, 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 };
9138
- 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, TabSectionProps, TaskFilterStatus, TrendIndicatorProps, ZodFormRendererProps };
9359
+ 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, 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 };
9360
+ 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, OAuthIntegrationsCardProps, PermissionRow, ProjectsSidebarMiddleProps, ResourceHealthPanelProps, RichTextEditorProps, RunResourceButtonProps, RunResourceInputResolver, SavedViewPreset, ScheduleType, StatCardProps, StepConfigComponent, StepConfigFieldHint, StepConfigFormProps, StepConfigLayout, StepConfigSection, StyledMarkdownProps, SystemReadinessAlertProps, SystemReadinessServerErrorDetails, SystemUnavailableStateProps, TabSectionProps, TaskFilterStatus, TrendIndicatorProps, ZodFormRendererProps };