@elevasis/ui 2.38.2 → 2.39.1

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 (76) hide show
  1. package/dist/{CoreAuthKitInner-QC62UHTZ.js → CoreAuthKitInner-PSTKG4B3.js} +3 -1
  2. package/dist/api/index.js +4 -2
  3. package/dist/app/index.d.ts +12 -0
  4. package/dist/app/index.js +16 -13
  5. package/dist/auth/context.d.ts +7 -1
  6. package/dist/auth/index.d.ts +80 -74
  7. package/dist/auth/index.js +10 -7
  8. package/dist/charts/index.js +13 -10
  9. package/dist/{chunk-KJ3QUBNU.js → chunk-2FTX4WO2.js} +2 -2
  10. package/dist/{chunk-C6BDBZRO.js → chunk-2XBCYJS3.js} +2 -1
  11. package/dist/{chunk-533DUEQY.js → chunk-6DO4PE3O.js} +1 -1
  12. package/dist/{chunk-I53EX4VU.js → chunk-AIP3GC2N.js} +1 -1
  13. package/dist/{chunk-P34FFSOX.js → chunk-AVQPF7PE.js} +2 -1
  14. package/dist/{chunk-YGUNUIME.js → chunk-D3EWFGLF.js} +5 -4
  15. package/dist/{chunk-566XWGPP.js → chunk-FZIPSE3S.js} +53 -611
  16. package/dist/{chunk-M7Q4UBRY.js → chunk-GTTMOKIB.js} +1 -1
  17. package/dist/{chunk-Y3JQBSKQ.js → chunk-IOSJHARH.js} +1 -1
  18. package/dist/{chunk-JXVNHVK7.js → chunk-K7E352VG.js} +1 -1
  19. package/dist/{chunk-OPKXEGE4.js → chunk-MEOXQKW6.js} +297 -182
  20. package/dist/chunk-MQZE7SUI.js +9 -0
  21. package/dist/{chunk-4UCAUBOL.js → chunk-MWRFFGOH.js} +2 -2
  22. package/dist/{chunk-7GQFIWP4.js → chunk-N4IO4CQO.js} +3 -3
  23. package/dist/chunk-PE3FAAW3.js +622 -0
  24. package/dist/chunk-PFPM654Z.js +801 -0
  25. package/dist/{chunk-BEVGBPHW.js → chunk-PRMWQA5R.js} +11 -10
  26. package/dist/{chunk-JBWJ6WHZ.js → chunk-SJHM4WDG.js} +1 -1
  27. package/dist/chunk-TVTSASST.js +28 -0
  28. package/dist/{chunk-2Q2JQSQO.js → chunk-W2SFTXMT.js} +1 -1
  29. package/dist/{chunk-AUB3T7OY.js → chunk-ZPRCGNZT.js} +5 -5
  30. package/dist/components/index.d.ts +12 -0
  31. package/dist/components/index.js +19 -16
  32. package/dist/components/navigation/index.js +4 -3
  33. package/dist/features/auth/index.js +20 -17
  34. package/dist/features/clients/index.js +19 -16
  35. package/dist/features/crm/index.js +19 -16
  36. package/dist/features/dashboard/index.d.ts +12 -0
  37. package/dist/features/dashboard/index.js +19 -16
  38. package/dist/features/delivery/index.js +19 -16
  39. package/dist/features/knowledge/index.js +4 -3
  40. package/dist/features/lead-gen/index.d.ts +58 -12
  41. package/dist/features/lead-gen/index.js +19 -16
  42. package/dist/features/monitoring/index.js +19 -16
  43. package/dist/features/monitoring/requests/index.js +19 -16
  44. package/dist/features/notes/index.js +6 -4
  45. package/dist/features/operations/index.d.ts +12 -0
  46. package/dist/features/operations/index.js +19 -16
  47. package/dist/features/settings/index.js +19 -16
  48. package/dist/hooks/access/index.js +9 -6
  49. package/dist/hooks/delivery/index.js +19 -16
  50. package/dist/hooks/index.d.ts +260 -203
  51. package/dist/hooks/index.js +19 -16
  52. package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +12 -0
  53. package/dist/hooks/published.d.ts +260 -203
  54. package/dist/hooks/published.js +19 -16
  55. package/dist/hooks/user-notes/index.js +4 -2
  56. package/dist/index.d.ts +141 -84
  57. package/dist/index.js +19 -16
  58. package/dist/initialization/index.js +6 -4
  59. package/dist/knowledge/index.d.ts +12 -0
  60. package/dist/knowledge/index.js +5 -4
  61. package/dist/organization/index.d.ts +44 -10
  62. package/dist/organization/index.js +19 -16
  63. package/dist/profile/index.js +4 -2
  64. package/dist/provider/ElevasisServiceContext.d.ts +13 -4
  65. package/dist/provider/ElevasisServiceContext.js +3 -1
  66. package/dist/provider/index.d.ts +25 -4
  67. package/dist/provider/index.js +15 -12
  68. package/dist/provider/published.d.ts +25 -4
  69. package/dist/provider/published.js +14 -11
  70. package/dist/test-utils/index.d.ts +13 -4
  71. package/dist/test-utils/index.js +6 -3
  72. package/dist/types/index.d.ts +12 -0
  73. package/dist/utils/index.d.ts +12 -0
  74. package/dist/utils/index.js +3 -1
  75. package/package.json +5 -5
  76. package/dist/chunk-X66MVMZT.js +0 -373
@@ -1,8 +1,8 @@
1
1
  import { useAvailablePresets } from './chunk-B2DZLPDL.js';
2
2
  import { useSupabase } from './chunk-BRXELOHC.js';
3
- import { useBreadcrumbs } from './chunk-M7Q4UBRY.js';
3
+ import { useBreadcrumbs } from './chunk-GTTMOKIB.js';
4
4
  import { ChatHeader, ChatSidebar } from './chunk-CXY7FMUM.js';
5
- import { observabilityKeys, useCyberColors, CyberLegendItem, CyberAreaChart, CyberDonut, HeroStatsRow, CostTrendChart, ActivityTrendChart } from './chunk-7GQFIWP4.js';
5
+ import { observabilityKeys, useCyberColors, CyberLegendItem, CyberAreaChart, CyberDonut, HeroStatsRow, CostTrendChart, ActivityTrendChart } from './chunk-N4IO4CQO.js';
6
6
  import { DEFAULT_ORGANIZATION_GRAPH_FILTERS, ORGANIZATION_GRAPH_NODE_KIND_ORDER, ORGANIZATION_GRAPH_NODE_KIND_LABELS, ORGANIZATION_GRAPH_EDGE_KIND_LABELS, ORGANIZATION_GRAPH_NODE_KIND_DETAIL_LABELS, ORGANIZATION_GRAPH_NODE_KIND_MEANINGS, ORGANIZATION_GRAPH_EDGE_KIND_MEANINGS } from './chunk-5EYJ2GIN.js';
7
7
  import { AppShellLoader, SubshellSidebarLoader, PageContainer, SubshellLoader, AppShellCenteredContainer } from './chunk-DA6I5VEY.js';
8
8
  import { SubshellNavItem } from './chunk-X4WBGKJQ.js';
@@ -10,33 +10,36 @@ import { SubshellSidebarSection } from './chunk-IIMU5YAJ.js';
10
10
  import { Graph_module_css_default, useDirectedChainHighlighting, useNodeSelection, useFitViewTrigger, useGraphHighlighting, calculateGraphHeight, GRAPH_CONSTANTS } from './chunk-HENXLGVD.js';
11
11
  import { STATUS_COLORS, getStatusIcon, formatDuration, getStatusColors, AGENT_CONSTANTS, shouldAnimateEdge, TIMELINE_CONSTANTS, calculateBarPosition, CONTAINER_CONSTANTS, useExecutionPath, useUnifiedWorkflowLayout, WORKFLOW_CONSTANTS, useReactFlowAgent, getResourceStatusColor, useMergedExecution, useTimelineData, useAgentIterationData } from './chunk-7FPLLSHN.js';
12
12
  import { glassBase } from './chunk-5JYKCULK.js';
13
- import { useNotificationAdapter, useCrmActions, useListActions } from './chunk-BEVGBPHW.js';
14
- import { EmptyState, CenteredErrorState, StatsCardSkeleton, TrendIndicator, DetailCardSkeleton, GlowDot, JsonViewer, ListSkeleton, PageTitleCaption, StatCard, APIErrorAlert, CollapsibleSection, ActivityTimeline, ContextViewer, StatusBadge, TabCountBadge, ResourceCard } from './chunk-I53EX4VU.js';
13
+ import { useNotificationAdapter, useCrmActions, useListActions } from './chunk-PRMWQA5R.js';
14
+ import { EmptyState, CenteredErrorState, StatsCardSkeleton, TrendIndicator, DetailCardSkeleton, GlowDot, JsonViewer, ListSkeleton, PageTitleCaption, StatCard, APIErrorAlert, CollapsibleSection, ActivityTimeline, ContextViewer, StatusBadge, TabCountBadge, ResourceCard } from './chunk-AIP3GC2N.js';
15
15
  import { StyledMarkdown } from './chunk-3KMDHCAR.js';
16
16
  import { CardHeader } from './chunk-S3XR4II4.js';
17
17
  import { useAppearance, SubshellContentContainer } from './chunk-A7IG36LB.js';
18
- import { HTTP_HEADERS } from './chunk-Y3JQBSKQ.js';
18
+ import { HTTP_HEADERS } from './chunk-IOSJHARH.js';
19
19
  import { topbarHeight } from './chunk-DT3QYZVU.js';
20
20
  import { useRouterContext } from './chunk-Q7DJKLEN.js';
21
- import { ResourceTypeSchema, NonEmptyStringSchema, OriginResourceTypeSchema, UuidSchema, CredentialNameSchema, getErrorInfo, formatErrorMessage, getErrorTitle, isAPIClientError, getTimeRangeDates, formatBucketTime, PAGE_SIZE_DEFAULT, REFETCH_INTERVAL_DASHBOARD, REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, APIClientError, formatDateTime, getResourceIcon, formatTimeAgo, formatDate, formatRelativeTime, debounce, OAUTH_FLOW_TIMEOUT } from './chunk-X66MVMZT.js';
21
+ import { getErrorInfo, formatErrorMessage, getErrorTitle, isAPIClientError, getTimeRangeDates, formatBucketTime, PAGE_SIZE_DEFAULT, REFETCH_INTERVAL_DASHBOARD, REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, APIClientError, formatDateTime, getResourceIcon, formatTimeAgo, LEAD_GEN_API_INTERFACE, computeInterfaceReadiness, formatDate, formatRelativeTime, debounce, OAUTH_FLOW_TIMEOUT } from './chunk-PFPM654Z.js';
22
22
  import { ResourceStatusColors, toWorkflowLogMessages } from './chunk-KRWALB24.js';
23
- import { useStableAccessToken } from './chunk-4UCAUBOL.js';
24
- import { useAccess, AccessKeys } from './chunk-YGUNUIME.js';
25
- import { useOptionalElevasisSystems, useElevasisSystems } from './chunk-C6BDBZRO.js';
26
- import { useInitialization } from './chunk-533DUEQY.js';
27
- import { defineEntities, OrgKnowledgeNodeSchema, defineResources, defineActions, defineTopology, topologyRef, resolveOrganizationModel, listAllSystems, projectOrganizationSurfaces, topologyRelationship, PROJECTS_VIEW_ACTION_ID, resolveSemanticIconComponent, getAllBuildTemplates, getLeadGenStageCatalog, buildOrganizationGraph, getResourcesForSystem, getSystem, SemanticIcon, compileOrganizationOntology, getSystemAncestors } from './chunk-566XWGPP.js';
23
+ import { useStableAccessToken } from './chunk-MWRFFGOH.js';
24
+ import { useAccess, AccessKeys } from './chunk-D3EWFGLF.js';
25
+ import { useOptionalElevasisSystems, useElevasisSystems } from './chunk-2XBCYJS3.js';
26
+ import { useInitialization } from './chunk-6DO4PE3O.js';
27
+ import { defineEntities, OrgKnowledgeNodeSchema, defineResources, defineActions, defineTopology, topologyRef, topologyRelationship, resolveOrganizationModel, projectOrganizationSurfaces, PROJECTS_VIEW_ACTION_ID, resolveSemanticIconComponent, buildOrganizationGraph, SemanticIcon } from './chunk-FZIPSE3S.js';
28
28
  import { useOrganization } from './chunk-DD3CCMCZ.js';
29
- import { useUserProfile } from './chunk-2Q2JQSQO.js';
29
+ import { useUserProfile } from './chunk-W2SFTXMT.js';
30
30
  import { STALE_TIME_MONITORING, STALE_TIME_DEFAULT, STALE_TIME_ADMIN, GC_TIME_MEDIUM, GC_TIME_SHORT } from './chunk-6ROXVZ3L.js';
31
- import { useElevasisServices } from './chunk-KJ3QUBNU.js';
31
+ import { listAllSystems, getSystem, getAllBuildTemplates, getLeadGenStageCatalog, getResourcesForSystem, compileOrganizationOntology, getSystemAncestors } from './chunk-PE3FAAW3.js';
32
+ import { useElevasisServices } from './chunk-2FTX4WO2.js';
33
+ import { brandWorkOsOrgId, brandSupabaseOrgId } from './chunk-MQZE7SUI.js';
34
+ import { ResourceTypeSchema, NonEmptyStringSchema, OriginResourceTypeSchema, UuidSchema, CredentialNameSchema } from './chunk-TVTSASST.js';
32
35
  import { useAuthContext } from './chunk-BRJ3QZ4E.js';
36
+ import { z } from 'zod';
33
37
  import { memo, useMemo, useRef, useEffect, cloneElement, useState, useCallback, useId, Fragment as Fragment$1, useDeferredValue, useEffectEvent } from 'react';
34
38
  import { createUseExternalEvents, Paper, Stack, Text, Group, Badge, Box, useComputedColorScheme, Card, Title, Checkbox, Tooltip, Center, Modal, TextInput, Textarea, Loader, Alert, Button, Space, Table, Select, ActionIcon, SegmentedControl, NumberFormatter, Switch, Pagination, UnstyledButton, Divider, ScrollArea, Popover, Indicator, Collapse, ThemeIcon, SimpleGrid, Code, CopyButton, PasswordInput, Anchor, Menu, Timeline, useMantineTheme, RangeSlider, Progress, Tabs, Breadcrumbs as Breadcrumbs$1, NumberInput, ColorSwatch, RingProgress, Grid, LoadingOverlay, Accordion, MultiSelect, Radio, Pill, Drawer, Chip, JsonInput, TagsInput } from '@mantine/core';
35
39
  import { IconPlayerPlay, IconPlayerStop, IconArrowsSplit, IconSquare, IconBrain, IconFileText, IconLayoutGrid, IconColumns, IconFileInvoice, IconNotes, IconBriefcase, IconChecklist, IconFlag, IconList, IconBuilding, IconAddressBook, IconMail, IconSend, IconClock, IconArrowUp, IconMessageCircle, IconRocket, IconEye, IconEdit, IconAlertTriangle, IconRefresh, IconX, IconCheck, IconTarget, IconActivity, IconCode, IconSettings, IconLock, IconShieldOff, IconChevronUp, IconChevronDown, IconSelector, IconTrash, IconChartBar, IconCircleCheck, IconThumbDown, IconThumbUp, IconCircleX, IconSearch, IconFilterOff, IconArrowUpRight, IconAlertCircle, IconExternalLink, IconChartPie, IconHeartbeat, IconDownload, IconCpu, IconTrendingUp, IconCash, IconInfoCircle, IconExclamationCircle, IconBug, IconChecks, IconCircle, IconCircleFilled, IconBell, IconFocus2, IconChevronRight, IconTool, IconClockHour4, IconVersions, IconNetwork, IconSitemap, IconPencil, IconKey, IconCalendar, IconExclamationMark, IconShieldLock, IconCopy, IconPlus, IconPower, IconTag, IconUsers, IconWebhook, IconReload, IconTerminal2, IconMessage, IconArrowLeft, IconCalendarRepeat, IconCalendarEvent, IconCalendarTime, IconRobot, IconGitBranch, IconDotsVertical, IconPlayerPause, IconCalendarDue, IconCalendarStats, IconCalendarOff, IconListCheck, IconFilter, IconCategory, IconDatabase, IconTrophy, IconClockExclamation, IconUser, IconHistory, IconCurrencyDollar, IconTargetArrow, IconMessages, IconInbox, IconBolt, IconRestore, IconArrowRight, IconSparkles, IconListDetails, IconLayoutDashboard, IconBuildingFactory2, IconFileDescription, IconApps, IconRoute, IconHandStop, IconAdjustmentsHorizontal, IconCircleDashed, IconFolders, IconBraces, IconTopologyStar3, IconLayoutSidebarRightExpand, IconNote, IconArchive, IconTimeline, IconPalette, IconBrandDropbox, IconBrandGoogleDrive, IconPlug, IconMailForward, IconArrowDown, IconUserX, IconUserCheck, IconFileOff, IconCheckbox, IconPhone, IconActivityHeartbeat, IconClockPause, IconArrowsMaximize, IconShare2, IconFolder, IconScript, IconPlugConnected } from '@tabler/icons-react';
36
40
  import * as runtime from 'react/jsx-runtime';
37
41
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
38
42
  import { useForm } from '@mantine/form';
39
- import { z } from 'zod';
40
43
  import { useDisclosure, useClipboard, randomId } from '@mantine/hooks';
41
44
  import { notifications } from '@mantine/notifications';
42
45
  import { useQueryClient, useMutation, useQuery, useQueries } from '@tanstack/react-query';
@@ -59,111 +62,6 @@ import '@mantine/charts/styles.css';
59
62
  import cytoscape from 'cytoscape';
60
63
  import { useAuth } from '@workos-inc/authkit-react';
61
64
 
62
- function RoleBadge({ name, isSystem }) {
63
- return /* @__PURE__ */ jsx(Badge, { color: isSystem ? "gray" : "primary", variant: "light", children: /* @__PURE__ */ jsxs(Group, { gap: 4, wrap: "nowrap", children: [
64
- isSystem && /* @__PURE__ */ jsx(IconLock, { size: 10 }),
65
- name
66
- ] }) });
67
- }
68
- function groupByDomain(catalog) {
69
- const groups = /* @__PURE__ */ new Map();
70
- for (const row of catalog) {
71
- const domain = row.key.split(".")[0] ?? row.key;
72
- const existing = groups.get(domain);
73
- if (existing) {
74
- existing.push(row);
75
- } else {
76
- groups.set(domain, [row]);
77
- }
78
- }
79
- return groups;
80
- }
81
- var DOMAIN_LABELS = {
82
- org: "Organization",
83
- members: "Members",
84
- roles: "Roles",
85
- secrets: "Secrets",
86
- operations: "Operations",
87
- work: "Work"
88
- };
89
- function domainLabel(domain) {
90
- return DOMAIN_LABELS[domain] ?? domain.charAt(0).toUpperCase() + domain.slice(1);
91
- }
92
- function PermissionMatrix({ catalog, selectedKeys, onChange, systemLocked }) {
93
- const groups = groupByDomain(catalog);
94
- const isDisplayOnly = !onChange || systemLocked;
95
- function handleToggle(key, checked) {
96
- if (!onChange || systemLocked) return;
97
- if (checked) {
98
- onChange([...selectedKeys, key]);
99
- } else {
100
- onChange(selectedKeys.filter((k) => k !== key));
101
- }
102
- }
103
- return /* @__PURE__ */ jsx(Stack, { gap: "md", children: Array.from(groups.entries()).map(([domain, rows]) => /* @__PURE__ */ jsxs(Card, { withBorder: true, padding: "md", children: [
104
- /* @__PURE__ */ jsx(Title, { order: 5, mb: "sm", style: { textTransform: "capitalize" }, children: domainLabel(domain) }),
105
- /* @__PURE__ */ jsx(Stack, { gap: "xs", children: rows.map((row) => {
106
- const isLocked = !row.isOrgGrantable;
107
- const isChecked = selectedKeys.includes(row.key);
108
- const isDisabled = isDisplayOnly || isLocked;
109
- const checkbox = /* @__PURE__ */ jsx(
110
- Checkbox,
111
- {
112
- checked: isChecked,
113
- disabled: isDisabled,
114
- onChange: (e) => handleToggle(row.key, e.currentTarget.checked),
115
- label: /* @__PURE__ */ jsxs(Group, { gap: 6, wrap: "nowrap", children: [
116
- /* @__PURE__ */ jsx(Text, { size: "sm", ff: "monospace", c: isLocked ? "var(--color-text-subtle)" : void 0, children: row.key }),
117
- isLocked && /* @__PURE__ */ jsx(IconLock, { size: 14, style: { color: "var(--color-text-subtle)", flexShrink: 0 } }),
118
- /* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", children: row.description })
119
- ] })
120
- },
121
- row.key
122
- );
123
- if (isLocked) {
124
- return /* @__PURE__ */ jsx(Tooltip, { label: "Reserved for built-in roles", position: "right", children: /* @__PURE__ */ jsx("div", { children: checkbox }) }, row.key);
125
- }
126
- return checkbox;
127
- }) })
128
- ] }, domain)) });
129
- }
130
- function NoAccessState() {
131
- return /* @__PURE__ */ jsx(Center, { style: { flex: 1, minHeight: "100%", width: "100%", padding: 24 }, children: /* @__PURE__ */ jsxs(Stack, { align: "center", gap: "xs", style: { maxWidth: 480, textAlign: "center" }, children: [
132
- /* @__PURE__ */ jsx(IconLock, { size: 44, stroke: 1.8, color: "var(--color-text-subtle)" }),
133
- /* @__PURE__ */ jsx(Title, { order: 3, children: "Access restricted" }),
134
- /* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", children: "You don't have permission to view this page. Contact an org admin if you need access." })
135
- ] }) });
136
- }
137
- var [useModalsEvents, createEvent] = createUseExternalEvents("mantine-modals");
138
- var openModal = (payload) => {
139
- const id = payload.modalId || randomId();
140
- createEvent("openModal")({ ...payload, modalId: id });
141
- return id;
142
- };
143
- var openConfirmModal = (payload) => {
144
- const id = payload.modalId || randomId();
145
- createEvent("openConfirmModal")({ ...payload, modalId: id });
146
- return id;
147
- };
148
- var openContextModal = (payload) => {
149
- const id = payload.modalId || randomId();
150
- createEvent("openContextModal")({ ...payload, modalId: id });
151
- return id;
152
- };
153
- var closeModal = createEvent("closeModal");
154
- var closeAllModals = createEvent("closeAllModals");
155
- var updateModal = (payload) => createEvent("updateModal")(payload);
156
- var updateContextModal = (payload) => createEvent("updateContextModal")(payload);
157
- var modals = {
158
- open: openModal,
159
- close: closeModal,
160
- closeAll: closeAllModals,
161
- openConfirmModal,
162
- openContextModal,
163
- updateModal,
164
- updateContextModal
165
- };
166
-
167
65
  // ../core/src/auth/multi-tenancy/memberships/membership.ts
168
66
  function transformMembershipToTableRow(membership) {
169
67
  return {
@@ -792,8 +690,110 @@ var CredentialSchemas = {
792
690
  VerifyParams: VerifyCredentialParamsSchema,
793
691
  VerifyResponse: VerifyCredentialResponseSchema
794
692
  };
795
-
796
- // src/components/notify.tsx
693
+ function RoleBadge({ name, isSystem }) {
694
+ return /* @__PURE__ */ jsx(Badge, { color: isSystem ? "gray" : "primary", variant: "light", children: /* @__PURE__ */ jsxs(Group, { gap: 4, wrap: "nowrap", children: [
695
+ isSystem && /* @__PURE__ */ jsx(IconLock, { size: 10 }),
696
+ name
697
+ ] }) });
698
+ }
699
+ function groupByDomain(catalog) {
700
+ const groups = /* @__PURE__ */ new Map();
701
+ for (const row of catalog) {
702
+ const domain = row.key.split(".")[0] ?? row.key;
703
+ const existing = groups.get(domain);
704
+ if (existing) {
705
+ existing.push(row);
706
+ } else {
707
+ groups.set(domain, [row]);
708
+ }
709
+ }
710
+ return groups;
711
+ }
712
+ var DOMAIN_LABELS = {
713
+ org: "Organization",
714
+ members: "Members",
715
+ roles: "Roles",
716
+ secrets: "Secrets",
717
+ operations: "Operations",
718
+ work: "Work"
719
+ };
720
+ function domainLabel(domain) {
721
+ return DOMAIN_LABELS[domain] ?? domain.charAt(0).toUpperCase() + domain.slice(1);
722
+ }
723
+ function PermissionMatrix({ catalog, selectedKeys, onChange, systemLocked }) {
724
+ const groups = groupByDomain(catalog);
725
+ const isDisplayOnly = !onChange || systemLocked;
726
+ function handleToggle(key, checked) {
727
+ if (!onChange || systemLocked) return;
728
+ if (checked) {
729
+ onChange([...selectedKeys, key]);
730
+ } else {
731
+ onChange(selectedKeys.filter((k) => k !== key));
732
+ }
733
+ }
734
+ return /* @__PURE__ */ jsx(Stack, { gap: "md", children: Array.from(groups.entries()).map(([domain, rows]) => /* @__PURE__ */ jsxs(Card, { withBorder: true, padding: "md", children: [
735
+ /* @__PURE__ */ jsx(Title, { order: 5, mb: "sm", style: { textTransform: "capitalize" }, children: domainLabel(domain) }),
736
+ /* @__PURE__ */ jsx(Stack, { gap: "xs", children: rows.map((row) => {
737
+ const isLocked = !row.isOrgGrantable;
738
+ const isChecked = selectedKeys.includes(row.key);
739
+ const isDisabled = isDisplayOnly || isLocked;
740
+ const checkbox = /* @__PURE__ */ jsx(
741
+ Checkbox,
742
+ {
743
+ checked: isChecked,
744
+ disabled: isDisabled,
745
+ onChange: (e) => handleToggle(row.key, e.currentTarget.checked),
746
+ label: /* @__PURE__ */ jsxs(Group, { gap: 6, wrap: "nowrap", children: [
747
+ /* @__PURE__ */ jsx(Text, { size: "sm", ff: "monospace", c: isLocked ? "var(--color-text-subtle)" : void 0, children: row.key }),
748
+ isLocked && /* @__PURE__ */ jsx(IconLock, { size: 14, style: { color: "var(--color-text-subtle)", flexShrink: 0 } }),
749
+ /* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", children: row.description })
750
+ ] })
751
+ },
752
+ row.key
753
+ );
754
+ if (isLocked) {
755
+ return /* @__PURE__ */ jsx(Tooltip, { label: "Reserved for built-in roles", position: "right", children: /* @__PURE__ */ jsx("div", { children: checkbox }) }, row.key);
756
+ }
757
+ return checkbox;
758
+ }) })
759
+ ] }, domain)) });
760
+ }
761
+ function NoAccessState() {
762
+ return /* @__PURE__ */ jsx(Center, { style: { flex: 1, minHeight: "100%", width: "100%", padding: 24 }, children: /* @__PURE__ */ jsxs(Stack, { align: "center", gap: "xs", style: { maxWidth: 480, textAlign: "center" }, children: [
763
+ /* @__PURE__ */ jsx(IconLock, { size: 44, stroke: 1.8, color: "var(--color-text-subtle)" }),
764
+ /* @__PURE__ */ jsx(Title, { order: 3, children: "Access restricted" }),
765
+ /* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", children: "You don't have permission to view this page. Contact an org admin if you need access." })
766
+ ] }) });
767
+ }
768
+ var [useModalsEvents, createEvent] = createUseExternalEvents("mantine-modals");
769
+ var openModal = (payload) => {
770
+ const id = payload.modalId || randomId();
771
+ createEvent("openModal")({ ...payload, modalId: id });
772
+ return id;
773
+ };
774
+ var openConfirmModal = (payload) => {
775
+ const id = payload.modalId || randomId();
776
+ createEvent("openConfirmModal")({ ...payload, modalId: id });
777
+ return id;
778
+ };
779
+ var openContextModal = (payload) => {
780
+ const id = payload.modalId || randomId();
781
+ createEvent("openContextModal")({ ...payload, modalId: id });
782
+ return id;
783
+ };
784
+ var closeModal = createEvent("closeModal");
785
+ var closeAllModals = createEvent("closeAllModals");
786
+ var updateModal = (payload) => createEvent("updateModal")(payload);
787
+ var updateContextModal = (payload) => createEvent("updateContextModal")(payload);
788
+ var modals = {
789
+ open: openModal,
790
+ close: closeModal,
791
+ closeAll: closeAllModals,
792
+ openConfirmModal,
793
+ openContextModal,
794
+ updateModal,
795
+ updateContextModal
796
+ };
797
797
  var showInfoNotification = (message) => {
798
798
  notifications.show({
799
799
  title: "Info",
@@ -2621,7 +2621,12 @@ var executionsKeys = {
2621
2621
  resources: (orgId) => [...executionsKeys.all, "resources", orgId],
2622
2622
  resourceDefinition: (orgId, resourceId) => [...executionsKeys.all, "definition", orgId, resourceId],
2623
2623
  executionsListBase: (orgId, resourceId) => [...executionsKeys.all, "list", orgId, resourceId],
2624
- executions: (orgId, resourceId, resourceStatus, limit, offset) => [...executionsKeys.executionsListBase(orgId, resourceId), resourceStatus ?? "all", limit ?? null, offset ?? 0],
2624
+ executions: (orgId, resourceId, resourceStatus, limit, offset) => [
2625
+ ...executionsKeys.executionsListBase(orgId, resourceId),
2626
+ resourceStatus ?? "all",
2627
+ limit ?? null,
2628
+ offset ?? 0
2629
+ ],
2625
2630
  execution: (orgId, resourceId, executionId) => [...executionsKeys.all, "execution", orgId, resourceId, executionId]
2626
2631
  };
2627
2632
  function useExecutions(resourceId, resourceStatus, limit, offset) {
@@ -3015,7 +3020,8 @@ function useExecutionSSE(resourceId, options = {}) {
3015
3020
  const disabledManager = useMemo(() => createDisabledManager(), []);
3016
3021
  const apiUrl = apiUrlOverride ?? systems?.operationsApiUrl;
3017
3022
  const manager = managerOverride ?? systems?.operationsSSEManager ?? disabledManager;
3018
- const workOSOrganizationId = currentMembership?.organization?.workos_org_id ?? serviceWorkOSOrganizationId;
3023
+ const membershipWorkOsOrgId = currentMembership?.organization?.workos_org_id;
3024
+ const workOSOrganizationId = membershipWorkOsOrgId ? brandWorkOsOrgId(membershipWorkOsOrgId) : serviceWorkOSOrganizationId;
3019
3025
  const connectionKey = `execution-sse-${workOSOrganizationId ?? "unknown"}-${resourceId}`;
3020
3026
  const headers = useMemo(() => {
3021
3027
  if (!workOSOrganizationId) return {};
@@ -4328,10 +4334,9 @@ var sessionsKeys = {
4328
4334
  };
4329
4335
  function useSessions(params, options) {
4330
4336
  const { apiRequest, isReady } = useElevasisServices();
4331
- const { currentMembership } = useOrganization();
4332
- const organizationName = currentMembership?.organization?.name;
4337
+ const { currentSupabaseOrganizationId } = useOrganization();
4333
4338
  return useQuery({
4334
- queryKey: sessionsKeys.sessions(organizationName || "", params),
4339
+ queryKey: sessionsKeys.sessions(currentSupabaseOrganizationId, params),
4335
4340
  queryFn: async () => {
4336
4341
  const service = new OperationsService(apiRequest);
4337
4342
  return service.listSessions(params);
@@ -4341,10 +4346,9 @@ function useSessions(params, options) {
4341
4346
  }
4342
4347
  function useSession(sessionId) {
4343
4348
  const { apiRequest, isReady } = useElevasisServices();
4344
- const { currentMembership } = useOrganization();
4345
- const organizationName = currentMembership?.organization?.name;
4349
+ const { currentSupabaseOrganizationId } = useOrganization();
4346
4350
  return useQuery({
4347
- queryKey: sessionsKeys.session(organizationName || "", sessionId),
4351
+ queryKey: sessionsKeys.session(currentSupabaseOrganizationId, sessionId),
4348
4352
  queryFn: () => {
4349
4353
  const service = new OperationsService(apiRequest);
4350
4354
  return service.getSession(sessionId);
@@ -4354,8 +4358,7 @@ function useSession(sessionId) {
4354
4358
  }
4355
4359
  function useCreateSession() {
4356
4360
  const { apiRequest } = useElevasisServices();
4357
- const { currentMembership } = useOrganization();
4358
- const organizationName = currentMembership?.organization?.name;
4361
+ const { currentSupabaseOrganizationId } = useOrganization();
4359
4362
  const queryClient = useQueryClient();
4360
4363
  return useMutation({
4361
4364
  mutationFn: async (resourceId) => {
@@ -4363,14 +4366,13 @@ function useCreateSession() {
4363
4366
  return service.createSession(resourceId);
4364
4367
  },
4365
4368
  onSuccess: () => {
4366
- queryClient.invalidateQueries({ queryKey: sessionsKeys.sessions(organizationName || "") });
4369
+ queryClient.invalidateQueries({ queryKey: sessionsKeys.sessions(currentSupabaseOrganizationId) });
4367
4370
  }
4368
4371
  });
4369
4372
  }
4370
4373
  function useDeleteSession() {
4371
4374
  const { apiRequest } = useElevasisServices();
4372
- const { currentMembership } = useOrganization();
4373
- const organizationName = currentMembership?.organization?.name;
4375
+ const { currentSupabaseOrganizationId } = useOrganization();
4374
4376
  const queryClient = useQueryClient();
4375
4377
  return useMutation({
4376
4378
  mutationFn: async (sessionId) => {
@@ -4381,18 +4383,17 @@ function useDeleteSession() {
4381
4383
  },
4382
4384
  onSuccess: (_, sessionId) => {
4383
4385
  queryClient.removeQueries({
4384
- queryKey: sessionsKeys.session(organizationName || "", sessionId)
4386
+ queryKey: sessionsKeys.session(currentSupabaseOrganizationId, sessionId)
4385
4387
  });
4386
4388
  queryClient.invalidateQueries({
4387
- queryKey: sessionsKeys.sessions(organizationName || "")
4389
+ queryKey: sessionsKeys.sessions(currentSupabaseOrganizationId)
4388
4390
  });
4389
4391
  }
4390
4392
  });
4391
4393
  }
4392
4394
  function useArchiveSession() {
4393
4395
  const { apiRequest } = useElevasisServices();
4394
- const { currentMembership } = useOrganization();
4395
- const organizationName = currentMembership?.organization?.name;
4396
+ const { currentSupabaseOrganizationId } = useOrganization();
4396
4397
  const queryClient = useQueryClient();
4397
4398
  return useMutation({
4398
4399
  mutationFn: (sessionId) => {
@@ -4400,7 +4401,7 @@ function useArchiveSession() {
4400
4401
  return service.archiveSession(sessionId);
4401
4402
  },
4402
4403
  onSuccess: () => {
4403
- queryClient.invalidateQueries({ queryKey: sessionsKeys.sessions(organizationName || "") });
4404
+ queryClient.invalidateQueries({ queryKey: sessionsKeys.sessions(currentSupabaseOrganizationId) });
4404
4405
  }
4405
4406
  });
4406
4407
  }
@@ -4408,7 +4409,7 @@ function useSessionExecutions(sessionId) {
4408
4409
  const { apiRequest, isReady } = useElevasisServices();
4409
4410
  const { currentSupabaseOrganizationId } = useOrganization();
4410
4411
  return useQuery({
4411
- queryKey: sessionsKeys.executions(currentSupabaseOrganizationId || "", sessionId),
4412
+ queryKey: sessionsKeys.executions(currentSupabaseOrganizationId, sessionId),
4412
4413
  queryFn: async () => {
4413
4414
  SessionIdParamSchema.parse({ sessionId });
4414
4415
  return apiRequest(`/sessions/${sessionId}/executions`, {
@@ -4423,7 +4424,7 @@ function useSessionExecution(sessionId, executionId) {
4423
4424
  const { apiRequest, isReady } = useElevasisServices();
4424
4425
  const { currentSupabaseOrganizationId } = useOrganization();
4425
4426
  return useQuery({
4426
- queryKey: sessionsKeys.execution(currentSupabaseOrganizationId || "", sessionId, executionId),
4427
+ queryKey: sessionsKeys.execution(currentSupabaseOrganizationId, sessionId, executionId),
4427
4428
  queryFn: async () => {
4428
4429
  ExecutionIdParamsSchema.parse({ sessionId, executionId });
4429
4430
  return apiRequest(`/sessions/${sessionId}/executions/${executionId}`, {
@@ -4442,7 +4443,7 @@ function useSessionMessages(sessionId) {
4442
4443
  const { apiRequest, isReady } = useElevasisServices();
4443
4444
  const { currentSupabaseOrganizationId } = useOrganization();
4444
4445
  return useQuery({
4445
- queryKey: sessionsKeys.messages(currentSupabaseOrganizationId || "", sessionId),
4446
+ queryKey: sessionsKeys.messages(currentSupabaseOrganizationId, sessionId),
4446
4447
  queryFn: async () => {
4447
4448
  SessionIdParamSchema.parse({ sessionId });
4448
4449
  const response = await apiRequest(`/sessions/${sessionId}/messages`, {
@@ -14385,7 +14386,7 @@ var ENTITY_ENTRY_INPUTS = [
14385
14386
  id: "delivery.project",
14386
14387
  order: 60,
14387
14388
  label: "Project",
14388
- description: "A client delivery project.",
14389
+ description: "A project.",
14389
14390
  ownedBySystemId: "projects",
14390
14391
  table: "projects",
14391
14392
  links: [
@@ -14397,7 +14398,7 @@ var ENTITY_ENTRY_INPUTS = [
14397
14398
  id: "delivery.milestone",
14398
14399
  order: 70,
14399
14400
  label: "Milestone",
14400
- description: "A delivery checkpoint within a project.",
14401
+ description: "A checkpoint within a project.",
14401
14402
  ownedBySystemId: "projects",
14402
14403
  table: "project_milestones",
14403
14404
  links: [
@@ -14409,7 +14410,7 @@ var ENTITY_ENTRY_INPUTS = [
14409
14410
  id: "delivery.task",
14410
14411
  order: 80,
14411
14412
  label: "Task",
14412
- description: "A delivery task that can move through the task status catalog.",
14413
+ description: "A task that can move through the task status catalog.",
14413
14414
  ownedBySystemId: "projects",
14414
14415
  table: "project_tasks",
14415
14416
  stateCatalogId: "delivery.task",
@@ -15907,10 +15908,12 @@ var leadGenCampaign = "sales.lead-gen:object/campaign";
15907
15908
  var leadGenCompanyStage = "sales.lead-gen:catalog/company-stage";
15908
15909
  var leadGenContactStage = "sales.lead-gen:catalog/contact-stage";
15909
15910
  var leadGenBuildTemplate = "sales.lead-gen:catalog/build-template";
15911
+ var leadGenLocalServicesTemplateStep = "sales.lead-gen:catalog/template-step.local-services";
15912
+ var leadGenDtcSubscriptionTemplateStep = "sales.lead-gen:catalog/template-step.dtc-subscription";
15910
15913
  var leadGenCampaignStatus = "sales.lead-gen:catalog/campaign-status";
15911
15914
  var crmDeal = "sales.crm:object/deal";
15912
15915
  var crmContact = "sales.crm:object/contact";
15913
- var crmPipeline = "sales.crm:catalog/pipeline";
15916
+ var crmPipeline = "sales.crm:catalog/crm.pipeline";
15914
15917
  var clientSupportIssue = "clients:object/support-issue";
15915
15918
  var clientSupportIssueSeverity = "clients:catalog/support-issue-severity";
15916
15919
  var workflowOntologyBindingsByBuildActionKey = {
@@ -15918,13 +15921,13 @@ var workflowOntologyBindingsByBuildActionKey = {
15918
15921
  actions: ["sales.lead-gen:action/company.source"],
15919
15922
  primaryAction: "sales.lead-gen:action/company.source",
15920
15923
  writes: [leadGenCompany],
15921
- usesCatalogs: [leadGenBuildTemplate]
15924
+ usesCatalogs: [leadGenBuildTemplate, leadGenLocalServicesTemplateStep]
15922
15925
  },
15923
15926
  "lead-gen.company.apollo-import": {
15924
15927
  actions: ["sales.lead-gen:action/company.source"],
15925
15928
  primaryAction: "sales.lead-gen:action/company.source",
15926
15929
  writes: [leadGenCompany, leadGenContact],
15927
- usesCatalogs: [leadGenBuildTemplate]
15930
+ usesCatalogs: [leadGenBuildTemplate, leadGenDtcSubscriptionTemplateStep]
15928
15931
  },
15929
15932
  "lead-gen.company.apify-crawl": {
15930
15933
  actions: ["sales.lead-gen:action/company.website-extract"],
@@ -15951,7 +15954,7 @@ var workflowOntologyBindingsByBuildActionKey = {
15951
15954
  primaryAction: "sales.lead-gen:action/company.qualify",
15952
15955
  reads: [leadGenCompany],
15953
15956
  writes: [leadGenCompany],
15954
- usesCatalogs: [leadGenCompanyStage],
15957
+ usesCatalogs: [leadGenCompanyStage, leadGenDtcSubscriptionTemplateStep],
15955
15958
  emits: ["sales.lead-gen:event/company.qualified"]
15956
15959
  },
15957
15960
  "lead-gen.contact.discover": {
@@ -15994,9 +15997,16 @@ var workflowOntologyBindingsByBuildActionKey = {
15994
15997
  "lead-gen.export.list": {
15995
15998
  actions: ["sales.lead-gen:action/export.list"],
15996
15999
  primaryAction: "sales.lead-gen:action/export.list",
15997
- reads: [leadGenContact, leadGenList],
16000
+ reads: [leadGenCompany, leadGenContact, leadGenList],
15998
16001
  writes: [leadGenList],
15999
- usesCatalogs: [leadGenBuildTemplate],
16002
+ usesCatalogs: [
16003
+ leadGenBuildTemplate,
16004
+ leadGenLocalServicesTemplateStep,
16005
+ leadGenDtcSubscriptionTemplateStep,
16006
+ leadGenCompanyStage,
16007
+ leadGenContactStage,
16008
+ crmPipeline
16009
+ ],
16000
16010
  emits: ["sales.lead-gen:event/list.exported"]
16001
16011
  },
16002
16012
  "campaign.create": {
@@ -17471,6 +17481,18 @@ var platformSystems = {
17471
17481
  governedByKnowledge: [],
17472
17482
  drivesGoals: [],
17473
17483
  lifecycle: "active",
17484
+ apiInterface: {
17485
+ lifecycle: "active",
17486
+ readinessProfile: "sales.lead-gen.api",
17487
+ resourceIds: [
17488
+ "lgn-import-workflow",
17489
+ "lgn-02-website-extract-workflow",
17490
+ "lgn-03-company-qualification-workflow",
17491
+ "lgn-04-email-discovery-workflow",
17492
+ "lgn-05-email-verification-workflow",
17493
+ "lgn-06-export-list-workflow"
17494
+ ]
17495
+ },
17474
17496
  actions: Object.values(LEAD_GEN_ACTION_ENTRIES).map((action) => ({
17475
17497
  actionId: action.id,
17476
17498
  intent: "exposes"
@@ -17685,11 +17707,7 @@ var platformSystems = {
17685
17707
  label: "Sync campaign list",
17686
17708
  description: "Create or update the lead list associated with an Instantly campaign.",
17687
17709
  ownerSystemId: "sales.lead-gen",
17688
- actsOn: [
17689
- "sales.lead-gen:object/campaign",
17690
- "sales.lead-gen:object/list",
17691
- "sales.lead-gen:object/contact"
17692
- ],
17710
+ actsOn: ["sales.lead-gen:object/campaign", "sales.lead-gen:object/list", "sales.lead-gen:object/contact"],
17693
17711
  effects: [{ kind: "write", objectType: "sales.lead-gen:object/list" }]
17694
17712
  }
17695
17713
  },
@@ -18055,6 +18073,17 @@ var platformSystems = {
18055
18073
  governedByKnowledge: [],
18056
18074
  drivesGoals: [],
18057
18075
  lifecycle: "active",
18076
+ apiInterface: {
18077
+ lifecycle: "active",
18078
+ readinessProfile: "sales.crm.api",
18079
+ resourceIds: [
18080
+ "crm-send-reply-workflow",
18081
+ "crm-send-booking-link-workflow",
18082
+ "crm-send-nudge-workflow",
18083
+ "crm-rebook-workflow",
18084
+ "move_to_proposal-workflow"
18085
+ ]
18086
+ },
18058
18087
  actions: Object.values(CRM_ACTION_ENTRIES).map((action) => ({
18059
18088
  actionId: action.id,
18060
18089
  intent: "exposes"
@@ -18247,7 +18276,7 @@ var platformSystems = {
18247
18276
  id: "projects",
18248
18277
  order: 90,
18249
18278
  label: "Projects",
18250
- description: "Projects, milestones, and client work execution.",
18279
+ description: "Projects, milestones, and work execution.",
18251
18280
  kind: "operational",
18252
18281
  governedByKnowledge: [],
18253
18282
  drivesGoals: [],
@@ -18267,7 +18296,7 @@ var platformSystems = {
18267
18296
  "projects:object/project": {
18268
18297
  id: "projects:object/project",
18269
18298
  label: "Project",
18270
- description: "A client or internal delivery initiative tracked from active work through completion.",
18299
+ description: "A project tracked from active work through completion.",
18271
18300
  ownerSystemId: "projects",
18272
18301
  properties: {
18273
18302
  id: { valueType: "global:value-type/uuid", identity: true },
@@ -18277,7 +18306,7 @@ var platformSystems = {
18277
18306
  "projects:object/milestone": {
18278
18307
  id: "projects:object/milestone",
18279
18308
  label: "Milestone",
18280
- description: "A major project checkpoint used to coordinate delivery progress.",
18309
+ description: "A major project checkpoint used to coordinate progress.",
18281
18310
  ownerSystemId: "projects",
18282
18311
  properties: {
18283
18312
  id: { valueType: "global:value-type/uuid", identity: true },
@@ -18501,6 +18530,27 @@ var platformTopology = defineTopology(
18501
18530
  triggersWorkflow("lgn-apollo-decision-maker-triggers-email-verification", resource("lgn-04b-apollo-decision-maker-enrich-workflow"), "lgn-05-email-verification-workflow"),
18502
18531
  triggersWorkflow("lgn-company-qualification-triggers-email-discovery", resource("lgn-03-company-qualification-workflow"), "lgn-04-email-discovery-workflow"),
18503
18532
  triggersWorkflow("lgn-email-discovery-triggers-email-verification", resource("lgn-04-email-discovery-workflow"), "lgn-05-email-verification-workflow"),
18533
+ [
18534
+ "lgn-export-list-grants-crm-handoff",
18535
+ topologyRelationship.uses(resource("lgn-06-export-list-workflow"), resource("move_to_proposal-workflow"), {
18536
+ required: true,
18537
+ systemPath: "sales.lead-gen",
18538
+ metadata: {
18539
+ systemInterfaceGrant: {
18540
+ consumer: {
18541
+ systemPath: "sales.lead-gen",
18542
+ interfaceKey: "crm-handoff"
18543
+ },
18544
+ provider: {
18545
+ systemPath: "sales.crm",
18546
+ interfaceKey: "api"
18547
+ },
18548
+ resourceIds: ["lgn-06-export-list-workflow"],
18549
+ ontologyIds: ["sales.crm:catalog/crm.pipeline"]
18550
+ }
18551
+ }
18552
+ })
18553
+ ],
18504
18554
  triggersWorkflow("ist-campaign-create-triggers-personalization", resource("ist-campaign-create-workflow"), "ist-personalization-workflow"),
18505
18555
  triggersWorkflow("ist-personalization-triggers-upload-contacts", resource("ist-personalization-workflow"), "ist-upload-contacts-workflow"),
18506
18556
  triggersWorkflow("ist-upload-contacts-triggers-analytics", resource("ist-upload-contacts-workflow"), "ist-analytics-workflow"),
@@ -18564,7 +18614,7 @@ var canonicalOrganizationModel = resolveOrganizationModel(
18564
18614
  entities: { version: 1, lastModified: "2026-05-11" },
18565
18615
  policies: { version: 1, lastModified: "2026-05-11" },
18566
18616
  knowledge: { version: 1, lastModified: "2026-05-11" },
18567
- topology: { version: 1, lastModified: "2026-05-14" }
18617
+ topology: { version: 1, lastModified: "2026-05-24" }
18568
18618
  },
18569
18619
  branding: platformBranding,
18570
18620
  navigation: platformNavigation,
@@ -21197,11 +21247,48 @@ function getDefaultBuildSteps(templates, defaultBuildTemplateId) {
21197
21247
  const template = templates.find((item) => item.id === defaultBuildTemplateId) ?? templates[0];
21198
21248
  return template?.steps.map((step) => toBuildStepDefinition(step)) ?? [];
21199
21249
  }
21250
+ function summarizeReadinessIssues(issues) {
21251
+ return issues[0]?.message;
21252
+ }
21253
+ function getLeadGenApiInterfaceReadiness(model) {
21254
+ if (!model) {
21255
+ return {
21256
+ systemPath: LEAD_GEN_API_INTERFACE.systemPath,
21257
+ interfaceKey: LEAD_GEN_API_INTERFACE.interfaceKey,
21258
+ readinessProfile: LEAD_GEN_API_INTERFACE.readinessProfile,
21259
+ declared: false,
21260
+ ready: false,
21261
+ reason: "No Organization Model is available for lead-gen System Interface readiness.",
21262
+ issues: [
21263
+ {
21264
+ family: "SYSTEM_INTERFACE_MISSING",
21265
+ code: "missing-organization-model",
21266
+ message: "No Organization Model is available for lead-gen System Interface readiness."
21267
+ }
21268
+ ]
21269
+ };
21270
+ }
21271
+ const readiness = computeInterfaceReadiness(model, LEAD_GEN_API_INTERFACE);
21272
+ return {
21273
+ systemPath: LEAD_GEN_API_INTERFACE.systemPath,
21274
+ interfaceKey: LEAD_GEN_API_INTERFACE.interfaceKey,
21275
+ readinessProfile: readiness.readinessProfile,
21276
+ declared: getSystem(model, LEAD_GEN_API_INTERFACE.systemPath)?.apiInterface !== void 0,
21277
+ ready: readiness.ready,
21278
+ reason: summarizeReadinessIssues(readiness.issues),
21279
+ issues: readiness.issues
21280
+ };
21281
+ }
21200
21282
  function useLeadGenConfig() {
21201
21283
  const systems = useOptionalElevasisSystems();
21202
21284
  const organizationModel2 = systems?.organizationModel;
21203
21285
  return useMemo(() => {
21204
- if (!organizationModel2) return {};
21286
+ const leadGenApiInterface = getLeadGenApiInterfaceReadiness(organizationModel2);
21287
+ const interfaceState = {
21288
+ leadGenApiInterface,
21289
+ canUseLeadGenApiActions: leadGenApiInterface.ready
21290
+ };
21291
+ if (!organizationModel2) return interfaceState;
21205
21292
  const buildTemplates = getAllBuildTemplates(organizationModel2);
21206
21293
  const defaultBuildTemplateId = getDefaultBuildTemplateId(organizationModel2, buildTemplates);
21207
21294
  return {
@@ -21209,7 +21296,8 @@ function useLeadGenConfig() {
21209
21296
  exportWorkflowId: getLeadGenExportWorkflowId(organizationModel2),
21210
21297
  defaultBuildTemplateId,
21211
21298
  defaultBuildSteps: getDefaultBuildSteps(buildTemplates, defaultBuildTemplateId),
21212
- buildTemplates
21299
+ buildTemplates,
21300
+ ...interfaceState
21213
21301
  };
21214
21302
  }, [organizationModel2]);
21215
21303
  }
@@ -21541,6 +21629,9 @@ function LeadGenListsPage() {
21541
21629
  const selection = useTableSelection(paginatedLists, sortedLists);
21542
21630
  const selectedBuildTemplateId = newBuildTemplateId || defaultBuildTemplateId;
21543
21631
  const selectedBuildTemplate = leadGenConfig.buildTemplates?.find((template) => template.id === selectedBuildTemplateId);
21632
+ const canUseApiActions = leadGenConfig.canUseLeadGenApiActions;
21633
+ const apiDisabledReason = leadGenConfig.leadGenApiInterface.reason;
21634
+ const canCreateOrDeleteLists = canManageLeadGen.allowed && canUseApiActions;
21544
21635
  function resetCreateListModal() {
21545
21636
  setNewListName("");
21546
21637
  setNewListDescription("");
@@ -21549,7 +21640,7 @@ function LeadGenListsPage() {
21549
21640
  setShowCreateList(false);
21550
21641
  }
21551
21642
  function handleCreateList() {
21552
- if (!canManageLeadGen.allowed) return;
21643
+ if (!canCreateOrDeleteLists) return;
21553
21644
  const trimmedName = newListName.trim();
21554
21645
  if (!trimmedName) return;
21555
21646
  const body = {
@@ -21580,11 +21671,14 @@ function LeadGenListsPage() {
21580
21671
  onClick: () => setShowCreateList(true),
21581
21672
  variant: "light",
21582
21673
  size: "xs",
21674
+ disabled: !canUseApiActions,
21675
+ title: !canUseApiActions ? apiDisabledReason : void 0,
21583
21676
  children: "New List"
21584
21677
  }
21585
21678
  ) : null
21586
21679
  }
21587
21680
  ) }),
21681
+ !canUseApiActions ? /* @__PURE__ */ jsx(Alert, { icon: /* @__PURE__ */ jsx(IconAlertTriangle, { size: 16 }), color: "yellow", variant: "light", children: /* @__PURE__ */ jsx(Text, { size: "sm", children: "Lead-gen API actions are disabled until System Interface readiness passes. Existing list data can still be reviewed when available." }) }) : null,
21588
21682
  /* @__PURE__ */ jsx(Paper, { children: /* @__PURE__ */ jsxs(Stack, { children: [
21589
21683
  /* @__PURE__ */ jsxs(
21590
21684
  FilterBar,
@@ -21593,7 +21687,7 @@ function LeadGenListsPage() {
21593
21687
  TableSelectionToolbar,
21594
21688
  {
21595
21689
  selectedCount: selection.selectedCount,
21596
- onDelete: canManageLeadGen.allowed ? () => setShowBatchDelete(true) : void 0,
21690
+ onDelete: canCreateOrDeleteLists ? () => setShowBatchDelete(true) : void 0,
21597
21691
  isDeleting: deleteListsMutation.isPending
21598
21692
  }
21599
21693
  ),
@@ -21627,8 +21721,8 @@ function LeadGenListsPage() {
21627
21721
  {
21628
21722
  icon: IconList,
21629
21723
  title: searchQuery.trim() || statusFilter ? "No lists match your filters" : "No lists yet",
21630
- description: searchQuery.trim() || statusFilter ? void 0 : "Create one to get started.",
21631
- action: searchQuery.trim() || statusFilter || !canManageLeadGen.allowed ? void 0 : {
21724
+ description: searchQuery.trim() || statusFilter ? void 0 : !canUseApiActions ? "Lead-gen System Interface readiness is missing, so list creation is disabled." : "Create one to get started.",
21725
+ action: searchQuery.trim() || statusFilter || !canCreateOrDeleteLists ? void 0 : {
21632
21726
  label: "Create List",
21633
21727
  onClick: () => setShowCreateList(true),
21634
21728
  icon: /* @__PURE__ */ jsx(IconPlus, { size: 16 })
@@ -21779,7 +21873,15 @@ function LeadGenListsPage() {
21779
21873
  /* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", children: "The list will open in draft mode after creation so you can review configuration and run build steps from the list workspace." }),
21780
21874
  /* @__PURE__ */ jsxs(Group, { justify: "flex-end", children: [
21781
21875
  /* @__PURE__ */ jsx(Button, { variant: "light", onClick: resetCreateListModal, disabled: createListMutation.isPending, children: "Cancel" }),
21782
- /* @__PURE__ */ jsx(Button, { onClick: handleCreateList, loading: createListMutation.isPending, disabled: !newListName.trim(), children: "Create List" })
21876
+ /* @__PURE__ */ jsx(
21877
+ Button,
21878
+ {
21879
+ onClick: handleCreateList,
21880
+ loading: createListMutation.isPending,
21881
+ disabled: !newListName.trim() || !canCreateOrDeleteLists,
21882
+ children: "Create List"
21883
+ }
21884
+ )
21783
21885
  ] })
21784
21886
  ] })
21785
21887
  }
@@ -21823,9 +21925,9 @@ function LeadGenListsPage() {
21823
21925
  {
21824
21926
  color: "red",
21825
21927
  loading: deleteListsMutation.isPending,
21826
- disabled: !canManageLeadGen.allowed,
21928
+ disabled: !canCreateOrDeleteLists,
21827
21929
  onClick: () => {
21828
- if (!canManageLeadGen.allowed) return;
21930
+ if (!canCreateOrDeleteLists) return;
21829
21931
  deleteListsMutation.mutate([...selection.selectedIds], {
21830
21932
  onSuccess: () => {
21831
21933
  setShowBatchDelete(false);
@@ -21895,7 +21997,8 @@ function ArtifactsPanel({ listMemberId }) {
21895
21997
  ] }) }, artifact.id)) });
21896
21998
  }
21897
21999
  function ListMemberDrawerContent({ member, listId }) {
21898
- const { stageCatalog = {} } = useLeadGenConfig();
22000
+ const leadGenConfig = useLeadGenConfig();
22001
+ const { stageCatalog = {} } = leadGenConfig;
21899
22002
  const transitionMember = useTransitionListMember();
21900
22003
  const statefulItem = useMemo(
21901
22004
  () => ({
@@ -21933,7 +22036,9 @@ function ListMemberDrawerContent({ member, listId }) {
21933
22036
  variant: "light",
21934
22037
  size: "xs",
21935
22038
  loading: transitionMember.isPending,
22039
+ disabled: !leadGenConfig.canUseLeadGenApiActions,
21936
22040
  onClick: () => {
22041
+ if (!leadGenConfig.canUseLeadGenApiActions) return;
21937
22042
  transitionMember.mutate({
21938
22043
  memberId: member.id,
21939
22044
  listId,
@@ -21948,6 +22053,7 @@ function ListMemberDrawerContent({ member, listId }) {
21948
22053
  },
21949
22054
  action.key
21950
22055
  )) }),
22056
+ derivedActions.length > 0 && !leadGenConfig.canUseLeadGenApiActions ? /* @__PURE__ */ jsx(Alert, { icon: /* @__PURE__ */ jsx(IconAlertCircle, { size: 16 }), color: "yellow", variant: "light", children: "API-backed member actions require System Interface readiness." }) : null,
21951
22057
  /* @__PURE__ */ jsx(ArtifactsPanel, { listMemberId: member.id })
21952
22058
  ] });
21953
22059
  }
@@ -24131,8 +24237,11 @@ function LeadGenListDetailPage({ listId }) {
24131
24237
  const buildResolution = resolveBuildState(list, businessProgress, actions, leadGenConfig);
24132
24238
  const buildSteps = buildResolution.steps;
24133
24239
  const recommendedBuildStep = buildResolution.recommendedStep;
24240
+ const canUseApiActions = leadGenConfig.canUseLeadGenApiActions;
24241
+ const apiDisabledReason = leadGenConfig.leadGenApiInterface.reason;
24242
+ const canManageLeadGenApi = canManageLeadGen.allowed && canUseApiActions;
24134
24243
  const runStep = async (step, inputAtSubmit) => {
24135
- if (!canManageLeadGen.allowed) return null;
24244
+ if (!canManageLeadGenApi) return null;
24136
24245
  const resourceId = step.action?.resourceId;
24137
24246
  if (!resourceId) return null;
24138
24247
  try {
@@ -24169,7 +24278,7 @@ function LeadGenListDetailPage({ listId }) {
24169
24278
  showSuccessNotification("Copied list command to clipboard");
24170
24279
  };
24171
24280
  const handleDeleteList = () => {
24172
- if (!canManageLeadGen.allowed) return;
24281
+ if (!canManageLeadGenApi) return;
24173
24282
  deleteListMutation.mutate(list.id, {
24174
24283
  onSuccess: () => {
24175
24284
  setDeleteModalOpen(false);
@@ -24207,7 +24316,7 @@ function LeadGenListDetailPage({ listId }) {
24207
24316
  color: "red",
24208
24317
  size: "sm",
24209
24318
  "aria-label": "Delete list",
24210
- disabled: !canManageLeadGen.allowed,
24319
+ disabled: !canManageLeadGenApi,
24211
24320
  loading: deleteListMutation.isPending,
24212
24321
  onClick: () => setDeleteModalOpen(true),
24213
24322
  children: /* @__PURE__ */ jsx(IconTrash, { size: 14 })
@@ -24216,6 +24325,10 @@ function LeadGenListDetailPage({ listId }) {
24216
24325
  backButton
24217
24326
  ] })
24218
24327
  ] }),
24328
+ !canUseApiActions ? /* @__PURE__ */ jsxs(Alert, { icon: /* @__PURE__ */ jsx(IconAlertCircle, { size: 16 }), color: "yellow", variant: "light", children: [
24329
+ "Lead-gen API actions are disabled until System Interface readiness passes. Read-only list detail can still render when data is available.",
24330
+ apiDisabledReason ? ` ${apiDisabledReason}` : ""
24331
+ ] }) : null,
24219
24332
  /* @__PURE__ */ jsx(Paper, { withBorder: true, children: /* @__PURE__ */ jsxs(Tabs, { value: activeTab, onChange: setActiveTab, keepMounted: false, children: [
24220
24333
  /* @__PURE__ */ jsxs(Tabs.List, { children: [
24221
24334
  /* @__PURE__ */ jsx(Tabs.Tab, { value: "overview", leftSection: /* @__PURE__ */ jsx(IconBuilding, { size: 14 }), children: "Overview" }),
@@ -24228,7 +24341,7 @@ function LeadGenListDetailPage({ listId }) {
24228
24341
  {
24229
24342
  list,
24230
24343
  progress: businessProgress,
24231
- canManage: canManageLeadGen.allowed,
24344
+ canManage: canManageLeadGenApi,
24232
24345
  leadGenConfig
24233
24346
  }
24234
24347
  ) }),
@@ -24251,7 +24364,7 @@ function LeadGenListDetailPage({ listId }) {
24251
24364
  optimisticRuns,
24252
24365
  exportWorkflowId: leadGenConfig.exportWorkflowId,
24253
24366
  stageCatalog,
24254
- canManage: canManageLeadGen.allowed,
24367
+ canManage: canManageLeadGenApi,
24255
24368
  onRunStep: runStep,
24256
24369
  onRetryStep: runStep,
24257
24370
  onViewRunLog: (resourceId, executionId) => {
@@ -24301,7 +24414,7 @@ function LeadGenListDetailPage({ listId }) {
24301
24414
  {
24302
24415
  color: "red",
24303
24416
  loading: deleteListMutation.isPending,
24304
- disabled: !canManageLeadGen.allowed,
24417
+ disabled: !canManageLeadGenApi,
24305
24418
  onClick: handleDeleteList,
24306
24419
  children: "Delete"
24307
24420
  }
@@ -25831,7 +25944,7 @@ function ProjectsListPage({ onProjectClick } = {}) {
25831
25944
  };
25832
25945
  return /* @__PURE__ */ jsxs(SubshellContentContainer, { children: [
25833
25946
  /* @__PURE__ */ jsxs(PageContainer, { children: [
25834
- /* @__PURE__ */ jsx(Stack, { children: /* @__PURE__ */ jsx(PageTitleCaption, { title: "Projects", caption: "Client delivery tracking and milestone management" }) }),
25947
+ /* @__PURE__ */ jsx(Stack, { children: /* @__PURE__ */ jsx(PageTitleCaption, { title: "Projects", caption: "Project tracking and milestone management" }) }),
25835
25948
  /* @__PURE__ */ jsx(Paper, { withBorder: true, children: /* @__PURE__ */ jsxs(Stack, { children: [
25836
25949
  /* @__PURE__ */ jsxs(
25837
25950
  FilterBar,
@@ -39302,7 +39415,7 @@ var createOrganizationsSlice = (set, _get, _store) => ({
39302
39415
  set(
39303
39416
  (state) => {
39304
39417
  state.organizations.currentMembership = membership;
39305
- state.organizations.currentSupabaseOrganizationId = membership?.organization?.id || null;
39418
+ state.organizations.currentSupabaseOrganizationId = brandSupabaseOrgId(membership?.organization?.id ?? null);
39306
39419
  },
39307
39420
  void 0,
39308
39421
  "organizations/setCurrentMembership"
@@ -39393,7 +39506,7 @@ function createUseOrgInitialization(useOrganizations, useApiClient) {
39393
39506
  if (selectedMembership) {
39394
39507
  const workosSelectedOrgId = selectedMembership.organization?.workos_org_id;
39395
39508
  if (workosSelectedOrgId) {
39396
- setCurrentWorkOSOrganizationId(workosSelectedOrgId);
39509
+ setCurrentWorkOSOrganizationId(brandWorkOsOrgId(workosSelectedOrgId));
39397
39510
  setCurrentMembership(selectedMembership);
39398
39511
  }
39399
39512
  }
@@ -39411,7 +39524,7 @@ function createUseOrgInitialization(useOrganizations, useApiClient) {
39411
39524
  const fallbackOrg = data[0];
39412
39525
  const workosFallbackOrgId = fallbackOrg.organization?.workos_org_id;
39413
39526
  if (workosFallbackOrgId) {
39414
- setCurrentWorkOSOrganizationId(workosFallbackOrgId);
39527
+ setCurrentWorkOSOrganizationId(brandWorkOsOrgId(workosFallbackOrgId));
39415
39528
  setCurrentMembership(fallbackOrg);
39416
39529
  }
39417
39530
  }
@@ -39444,7 +39557,9 @@ function createUseOrgInitialization(useOrganizations, useApiClient) {
39444
39557
  }
39445
39558
  setMemberships(data);
39446
39559
  if (data.length === 0) {
39447
- setOrganizationsError("No organization memberships found. Please contact your administrator or try refreshing the page.");
39560
+ setOrganizationsError(
39561
+ "No organization memberships found. Please contact your administrator or try refreshing the page."
39562
+ );
39448
39563
  hasInitializedRef.current = true;
39449
39564
  return;
39450
39565
  }
@@ -39516,4 +39631,4 @@ function createUseOrgInitialization(useOrganizations, useApiClient) {
39516
39631
  };
39517
39632
  }
39518
39633
 
39519
- export { AbsoluteScheduleForm, AccountSettings, ActionModal, ActivityCard, ActivityFeed, ActivityFeedWidget, ActivityFilters, ActivityLog, ActivityTable, AgentDefinitionDisplay, AgentExecutionLogs, AgentExecutionPanel, AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationEdge, AgentIterationNode, AgentSessionGroup, AllTasksPage, ApiKeyDisplayModal, ApiKeyList, ApiKeyService, ApiKeySettings, AppearanceSettings, BaseEdge, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, BaseNode, Breadcrumbs, BusinessImpactCard, CRM_ITEMS, Checklist, CheckpointGroup, CollapsibleJsonSection, CommandQueueDetailPage, CommandQueuePage, CommandQueueShell, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, CommandViewPage, CompanyDetailPage, ConfigCard, ConfirmationInputModal, ConfirmationModal, ContactDetailPage, ContentSections, ContextUsageBadge, ContractDisplay, ConversationThread, CostAnalytics, CostBreakdownCard, CostByModelTable, CostMetricsCard, CreateApiKeyModal, CreateCredentialModal, CreateDeliveryEntityModal, CreateRoleModal, CreateScheduleModal, CreateWebhookEndpointModal, CredentialList, CredentialService, CredentialSettings, CrmOverview, CrmSettingsPage, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, CustomModal, DEAL_STAGES, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DEFAULT_KANBAN_CONFIG, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, Dashboard, DashboardOperationsOverview, DealDetailPage, DealKanbanCard, DealsListPage, DeleteScheduleModal, DeploymentDetailModal, DeploymentList, DeploymentService, DeploymentSettings, DeploymentStatusBadge, EditApiKeyModal, EditCredentialModal, EditWebhookEndpointModal, EmptyVisualizer, ErrorAnalysisCard, ErrorBreakdownTable, ErrorDetailsModal, ExecuteWorkflowModal, ExecutionBreakdownTable, ExecutionErrorSection, ExecutionHealth, ExecutionHealthCard, ExecutionLogsFilters, ExecutionLogsPage, ExecutionLogsTable, ExecutionPanel, ExecutionStats, ExecutionStatusBadge, FilterBar, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, HealthStatusCard, KanbanBoard, LEAD_GEN_ITEMS, LEAD_GEN_ROUTE_LINKS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, ListBuilderIndexPage, ListBuilderPage, LogEntry, LogGroup, MdxRenderer, MemberAccessModal, MembershipStatusBadge, MetricsStrip, MilestoneTimeline, MyTasksPanel, NewKnowledgeMapEdge, NewKnowledgeMapGraph, NewKnowledgeMapNode, NoAccessState, NotificationBell, NotificationCenter, NotificationItem, NotificationList, NotificationPanel, OAuthConnectModal, OAuthIntegrationsCard, ORPHAN_STAGE_ORDER, OperationsOverview, OperationsService, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, OrgMembersList, OrganizationGraphPage, OrganizationMembershipService, OrganizationMembershipsList, OrganizationSettings, OrganizationSwitcher, OrganizationSwitcherConnected, PIPELINE_FUNNEL_ORDER, PermissionMatrix, PipelineFunnelWidget, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, QuickCreateActions, RecentExecutionsByResource, RecurringScheduleForm, RelativeScheduleForm, ResourceDefinitionSection, ResourceDetailPage, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceHealthChart, ResourceHealthPanel, ResourceNotFoundState, ResourceOverview, ResourcesPage, ResourcesSidebar, RichTextEditor, RoleBadge, RunResourceButton, SAVED_VIEW_PRESETS, SavedViewsPanel, ScheduleCard, ScheduleDetailModal, ScheduleTypeSelector, SessionChatArea, SessionChatInterface, SessionChatPage, SessionDetailsSidebar, SessionExecutionLogs, SessionHeader, SessionListItem, SessionMemory, SessionsPage, SessionsSidebar, SortableHeader, StepConfigForm, SystemOpsView, TabSection, TableSelectionToolbar, TaskCard, TaskScheduler, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, ToolsListDisplay, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, UnresolvedErrorsTeaser, UpcomingMilestonesPage, VisualizerContainer, WebhookEndpointList, WebhookEndpointService, WebhookEndpointSettings, WebhookUrlDisplayModal, WorkflowDefinitionDisplay, WorkflowExecutionLogs, WorkflowExecutionPanel, WorkflowExecutionTimeline, ZodFormRenderer, acquisitionListKeys, aggregateSystemMetrics, calculateProgress, clientsKeys, collectResourceFilterFacets, companyKeys, contactKeys, createOrganizationsSlice, createUseOrgInitialization, createUseOrganizations, crmManifest, crmPrioritySettingsKeys, dealKeys, dealNoteKeys, dealTaskKeys, deliveryManifest, deriveBusinessProgress, executionsKeys, filterByDomainFilters, formatDate3 as formatDate, formatDealStageLabel, formatResourceAttribution, formatStatusLabel, getEnrichmentColor, getEnrichmentStatus, getExecutionStatusConfig, getGraphBackgroundStyles, getHealthColor, getIcon, getLeadGenExportWorkflowId, getLogLevelConfig, getResourceFilterFacetIds, getStateKeyColor, getStatusColor4 as getStatusColor, getStepActionLabel, iconMap, isLeadGenExportAction, isSessionCapable, labelResourceFilterFacet, leadGenArtifactKeys, leadGenListCompanyKeys, leadGenListMemberKeys, leadGenManifest, mdxComponents, milestoneKeys, milestoneStatusColors, monitoringManifest, noteKeys, noteTypeColors, operationsKeys, operationsManifest, projectActivityKeys, projectKeys, projectStatusColors, requestsKeys, resolveBuildPlanSteps, resolveBuildState, scheduleKeys, sessionsKeys, settingsManifest, showApiErrorNotification, showAuthError, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, sortData, sortStageKeys, taskKeys, taskStatusColors, taskTypeColors, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useAddCompaniesToList, useAddContactsToList, useArchiveSession, useArchivedLogs, useArtifacts, useAssignRole, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useClient, useClientStatus, useClients, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateArtifact, useCreateClient, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateMilestone, useCreateNote, useCreateOrgRole, useCreateProject, useCreateSchedule, useCreateSession, useCreateTask, useCreateWebhookEndpoint, useCredentials, useCrmPipelineSummary, useCrmPrioritySettings, useCrmQuickMetrics, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteClient, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteLists, useDeleteMilestone, useDeleteOrgRole, useDeleteProject, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteTask2, useDeleteWebhookEndpoint, useDeriveActions, useEffectivePermissions, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useExecuteAction, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutionSSE, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphBackgroundStyles, useGraphTheme, useInFlightExecutions, useLeadGenConfig, useList, useListApiKeys, useListDeployments, useListExecutions, useListMember, useListMembers, useListProgress, useListRecords, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useMilestones, useNewKnowledgeMapLayout, useNotificationCount, useNotifications, useOrgRoles, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, usePermissionCatalog, useProject, useProjectActivities, useProjectMilestones, useProjectNotes, useProjectRealtime, useProjectTasks, useProjects, useReactivateMembership, useRecentCrmActivity, useRecentExecutionsByResource, useRemoveCompaniesFromList, useRequest, useRequestsList, useResetCrmPrioritySettings, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useRevokeRole, useSSEConnection, useScheduledTasks, useSession, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSortedData, useStatusFilter, useSubmitAction, useSuccessNotification, useSystemHealth, useTableSelection, useTableSort, useTasks, useTestNotification, useTimeRangeDates, useTopFailingResources, useTransitionItem, useTransitionListCompany, useTransitionListMember, useTransitionState, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateClient, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateCrmPrioritySettings, useUpdateList, useUpdateListConfig, useUpdateListStatus, useUpdateMilestone, useUpdateOrgRole, useUpdateProject, useUpdateRequestStatus, useUpdateSchedule, useUpdateTask, useUpdateWebhookEndpoint, useUserMemberships, useVerifyCredential, useVisibleResources, useWarningNotification, useWorkflowExecution };
39634
+ export { AbsoluteScheduleForm, AccountSettings, ActionModal, ActivityCard, ActivityFeed, ActivityFeedWidget, ActivityFilters, ActivityLog, ActivityTable, AgentDefinitionDisplay, AgentExecutionLogs, AgentExecutionPanel, AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationEdge, AgentIterationNode, AgentSessionGroup, AllTasksPage, ApiKeyDisplayModal, ApiKeyList, ApiKeyService, ApiKeySettings, AppearanceSettings, BaseEdge, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, BaseNode, Breadcrumbs, BusinessImpactCard, CRM_ITEMS, Checklist, CheckpointGroup, CollapsibleJsonSection, CommandQueueDetailPage, CommandQueuePage, CommandQueueShell, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, CommandViewPage, CompanyDetailPage, ConfigCard, ConfirmationInputModal, ConfirmationModal, ContactDetailPage, ContentSections, ContextUsageBadge, ContractDisplay, ConversationThread, CostAnalytics, CostBreakdownCard, CostByModelTable, CostMetricsCard, CreateApiKeyModal, CreateCredentialModal, CreateDeliveryEntityModal, CreateRoleModal, CreateScheduleModal, CreateWebhookEndpointModal, CredentialList, CredentialService, CredentialSettings, CrmOverview, CrmSettingsPage, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, CustomModal, DEAL_STAGES, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DEFAULT_KANBAN_CONFIG, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, Dashboard, DashboardOperationsOverview, DealDetailPage, DealKanbanCard, DealsListPage, DeleteScheduleModal, DeploymentDetailModal, DeploymentList, DeploymentService, DeploymentSettings, DeploymentStatusBadge, EditApiKeyModal, EditCredentialModal, EditWebhookEndpointModal, EmptyVisualizer, ErrorAnalysisCard, ErrorBreakdownTable, ErrorDetailsModal, ExecuteWorkflowModal, ExecutionBreakdownTable, ExecutionErrorSection, ExecutionHealth, ExecutionHealthCard, ExecutionLogsFilters, ExecutionLogsPage, ExecutionLogsTable, ExecutionPanel, ExecutionStats, ExecutionStatusBadge, FilterBar, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, HealthStatusCard, KanbanBoard, LEAD_GEN_ITEMS, LEAD_GEN_ROUTE_LINKS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, ListBuilderIndexPage, ListBuilderPage, LogEntry, LogGroup, MdxRenderer, MemberAccessModal, MembershipStatusBadge, MetricsStrip, MilestoneTimeline, MyTasksPanel, NewKnowledgeMapEdge, NewKnowledgeMapGraph, NewKnowledgeMapNode, NoAccessState, NotificationBell, NotificationCenter, NotificationItem, NotificationList, NotificationPanel, OAuthConnectModal, OAuthIntegrationsCard, ORPHAN_STAGE_ORDER, OperationsOverview, OperationsService, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, OrgMembersList, OrganizationGraphPage, OrganizationMembershipService, OrganizationMembershipsList, OrganizationSettings, OrganizationSwitcher, OrganizationSwitcherConnected, PIPELINE_FUNNEL_ORDER, PermissionMatrix, PipelineFunnelWidget, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, QuickCreateActions, RecentExecutionsByResource, RecurringScheduleForm, RelativeScheduleForm, ResourceDefinitionSection, ResourceDetailPage, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceHealthChart, ResourceHealthPanel, ResourceNotFoundState, ResourceOverview, ResourcesPage, ResourcesSidebar, RichTextEditor, RoleBadge, RunResourceButton, SAVED_VIEW_PRESETS, SavedViewsPanel, ScheduleCard, ScheduleDetailModal, ScheduleTypeSelector, SessionChatArea, SessionChatInterface, SessionChatPage, SessionDetailsSidebar, SessionExecutionLogs, SessionHeader, SessionListItem, SessionMemory, SessionsPage, SessionsSidebar, SortableHeader, StepConfigForm, SystemOpsView, TabSection, TableSelectionToolbar, TaskCard, TaskScheduler, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, ToolsListDisplay, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, UnresolvedErrorsTeaser, UpcomingMilestonesPage, VisualizerContainer, WebhookEndpointList, WebhookEndpointService, WebhookEndpointSettings, WebhookUrlDisplayModal, WorkflowDefinitionDisplay, WorkflowExecutionLogs, WorkflowExecutionPanel, WorkflowExecutionTimeline, ZodFormRenderer, acquisitionListKeys, aggregateSystemMetrics, calculateProgress, clientsKeys, collectResourceFilterFacets, companyKeys, contactKeys, createOrganizationsSlice, createUseOrgInitialization, createUseOrganizations, crmManifest, crmPrioritySettingsKeys, dealKeys, dealNoteKeys, dealTaskKeys, deliveryManifest, deriveBusinessProgress, executionsKeys, filterByDomainFilters, formatDate3 as formatDate, formatDealStageLabel, formatResourceAttribution, formatStatusLabel, getEnrichmentColor, getEnrichmentStatus, getExecutionStatusConfig, getGraphBackgroundStyles, getHealthColor, getIcon, getLeadGenApiInterfaceReadiness, getLeadGenExportWorkflowId, getLogLevelConfig, getResourceFilterFacetIds, getStateKeyColor, getStatusColor4 as getStatusColor, getStepActionLabel, iconMap, isLeadGenExportAction, isSessionCapable, labelResourceFilterFacet, leadGenArtifactKeys, leadGenListCompanyKeys, leadGenListMemberKeys, leadGenManifest, mdxComponents, milestoneKeys, milestoneStatusColors, monitoringManifest, noteKeys, noteTypeColors, operationsKeys, operationsManifest, projectActivityKeys, projectKeys, projectStatusColors, requestsKeys, resolveBuildPlanSteps, resolveBuildState, scheduleKeys, sessionsKeys, settingsManifest, showApiErrorNotification, showAuthError, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, sortData, sortStageKeys, taskKeys, taskStatusColors, taskTypeColors, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useAddCompaniesToList, useAddContactsToList, useArchiveSession, useArchivedLogs, useArtifacts, useAssignRole, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useClient, useClientStatus, useClients, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateArtifact, useCreateClient, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateMilestone, useCreateNote, useCreateOrgRole, useCreateProject, useCreateSchedule, useCreateSession, useCreateTask, useCreateWebhookEndpoint, useCredentials, useCrmPipelineSummary, useCrmPrioritySettings, useCrmQuickMetrics, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteClient, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteLists, useDeleteMilestone, useDeleteOrgRole, useDeleteProject, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteTask2, useDeleteWebhookEndpoint, useDeriveActions, useEffectivePermissions, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useExecuteAction, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutionSSE, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphBackgroundStyles, useGraphTheme, useInFlightExecutions, useLeadGenConfig, useList, useListApiKeys, useListDeployments, useListExecutions, useListMember, useListMembers, useListProgress, useListRecords, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useMilestones, useNewKnowledgeMapLayout, useNotificationCount, useNotifications, useOrgRoles, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, usePermissionCatalog, useProject, useProjectActivities, useProjectMilestones, useProjectNotes, useProjectRealtime, useProjectTasks, useProjects, useReactivateMembership, useRecentCrmActivity, useRecentExecutionsByResource, useRemoveCompaniesFromList, useRequest, useRequestsList, useResetCrmPrioritySettings, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useRevokeRole, useSSEConnection, useScheduledTasks, useSession, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSortedData, useStatusFilter, useSubmitAction, useSuccessNotification, useSystemHealth, useTableSelection, useTableSort, useTasks, useTestNotification, useTimeRangeDates, useTopFailingResources, useTransitionItem, useTransitionListCompany, useTransitionListMember, useTransitionState, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateClient, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateCrmPrioritySettings, useUpdateList, useUpdateListConfig, useUpdateListStatus, useUpdateMilestone, useUpdateOrgRole, useUpdateProject, useUpdateRequestStatus, useUpdateSchedule, useUpdateTask, useUpdateWebhookEndpoint, useUserMemberships, useVerifyCredential, useVisibleResources, useWarningNotification, useWorkflowExecution };