@elevasis/ui 2.38.1 → 2.39.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.
- package/dist/{CoreAuthKitInner-QC62UHTZ.js → CoreAuthKitInner-PSTKG4B3.js} +3 -1
- package/dist/api/index.js +4 -2
- package/dist/app/index.d.ts +12 -0
- package/dist/app/index.js +17 -14
- package/dist/auth/context.d.ts +7 -1
- package/dist/auth/index.d.ts +80 -74
- package/dist/auth/index.js +10 -7
- package/dist/charts/index.js +13 -10
- package/dist/{chunk-C6BDBZRO.js → chunk-23YQ2WH5.js} +2 -1
- package/dist/{chunk-KJ3QUBNU.js → chunk-2FTX4WO2.js} +2 -2
- package/dist/chunk-43ZU647H.js +612 -0
- package/dist/{chunk-4UCAUBOL.js → chunk-5GZVSTVH.js} +2 -2
- package/dist/{chunk-7ZWXTH5J.js → chunk-5JYKCULK.js} +1 -1
- package/dist/{chunk-533DUEQY.js → chunk-6DO4PE3O.js} +1 -1
- package/dist/{chunk-PGWANFNE.js → chunk-CXLDZSAQ.js} +6 -6
- package/dist/{chunk-Y3JQBSKQ.js → chunk-FAO7SWSL.js} +1 -1
- package/dist/{chunk-566XWGPP.js → chunk-GLBPGEDD.js} +53 -611
- package/dist/{chunk-P34FFSOX.js → chunk-HOAMD35V.js} +2 -1
- package/dist/{chunk-JXVNHVK7.js → chunk-K7E352VG.js} +1 -1
- package/dist/{chunk-H2MEFUQD.js → chunk-L2H5CIQF.js} +25 -22
- package/dist/chunk-MQZE7SUI.js +9 -0
- package/dist/{chunk-7GQFIWP4.js → chunk-O53S32QR.js} +3 -3
- package/dist/{chunk-LWDVD3XR.js → chunk-PVXM4O6V.js} +309 -187
- package/dist/{chunk-I53EX4VU.js → chunk-RG2S6NIU.js} +1 -1
- package/dist/{chunk-JBWJ6WHZ.js → chunk-SJHM4WDG.js} +1 -1
- package/dist/{chunk-M7Q4UBRY.js → chunk-SNDRAYMF.js} +1 -1
- package/dist/chunk-TVTSASST.js +28 -0
- package/dist/{chunk-2Q2JQSQO.js → chunk-W2SFTXMT.js} +1 -1
- package/dist/chunk-ZJ3FG7FE.js +801 -0
- package/dist/{chunk-YGUNUIME.js → chunk-ZRZYRDXX.js} +5 -4
- package/dist/components/index.d.ts +12 -0
- package/dist/components/index.js +20 -17
- package/dist/components/navigation/index.js +4 -3
- package/dist/features/auth/index.js +21 -18
- package/dist/features/clients/index.js +20 -17
- package/dist/features/crm/index.js +20 -17
- package/dist/features/dashboard/index.d.ts +12 -0
- package/dist/features/dashboard/index.js +20 -17
- package/dist/features/delivery/index.js +20 -17
- package/dist/features/knowledge/index.js +4 -3
- package/dist/features/lead-gen/index.d.ts +58 -12
- package/dist/features/lead-gen/index.js +20 -17
- package/dist/features/monitoring/index.js +20 -17
- package/dist/features/monitoring/requests/index.js +20 -17
- package/dist/features/notes/index.js +6 -4
- package/dist/features/operations/index.d.ts +12 -0
- package/dist/features/operations/index.js +20 -17
- package/dist/features/settings/index.js +20 -17
- package/dist/hooks/access/index.js +9 -6
- package/dist/hooks/delivery/index.js +20 -17
- package/dist/hooks/index.d.ts +260 -203
- package/dist/hooks/index.js +20 -17
- package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +12 -0
- package/dist/hooks/published.d.ts +260 -203
- package/dist/hooks/published.js +20 -17
- package/dist/hooks/user-notes/index.js +4 -2
- package/dist/index.d.ts +147 -87
- package/dist/index.js +20 -17
- package/dist/initialization/index.js +6 -4
- package/dist/knowledge/index.d.ts +12 -0
- package/dist/knowledge/index.js +5 -4
- package/dist/organization/index.d.ts +50 -13
- package/dist/organization/index.js +20 -17
- package/dist/profile/index.js +4 -2
- package/dist/provider/ElevasisServiceContext.d.ts +13 -4
- package/dist/provider/ElevasisServiceContext.js +3 -1
- package/dist/provider/index.d.ts +25 -4
- package/dist/provider/index.js +16 -13
- package/dist/provider/published.d.ts +25 -4
- package/dist/provider/published.js +14 -11
- package/dist/test-utils/index.d.ts +13 -4
- package/dist/test-utils/index.js +6 -3
- package/dist/theme/index.js +1 -1
- package/dist/types/index.d.ts +12 -0
- package/dist/utils/index.d.ts +12 -0
- package/dist/utils/index.js +3 -1
- package/package.json +5 -5
- package/dist/chunk-X66MVMZT.js +0 -373
|
@@ -1,42 +1,45 @@
|
|
|
1
1
|
import { useAvailablePresets } from './chunk-B2DZLPDL.js';
|
|
2
2
|
import { useSupabase } from './chunk-BRXELOHC.js';
|
|
3
|
-
import { useBreadcrumbs } from './chunk-
|
|
3
|
+
import { useBreadcrumbs } from './chunk-SNDRAYMF.js';
|
|
4
4
|
import { ChatHeader, ChatSidebar } from './chunk-CXY7FMUM.js';
|
|
5
|
-
import { observabilityKeys, useCyberColors, CyberLegendItem, CyberAreaChart, CyberDonut, HeroStatsRow, CostTrendChart, ActivityTrendChart } from './chunk-
|
|
5
|
+
import { observabilityKeys, useCyberColors, CyberLegendItem, CyberAreaChart, CyberDonut, HeroStatsRow, CostTrendChart, ActivityTrendChart } from './chunk-O53S32QR.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';
|
|
9
9
|
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
|
-
import { glassBase } from './chunk-
|
|
13
|
-
import { useNotificationAdapter, useCrmActions, useListActions } from './chunk-
|
|
14
|
-
import { EmptyState, CenteredErrorState, StatsCardSkeleton, TrendIndicator, DetailCardSkeleton, GlowDot, JsonViewer, ListSkeleton, PageTitleCaption, StatCard, APIErrorAlert, CollapsibleSection, ActivityTimeline, ContextViewer, StatusBadge, TabCountBadge, ResourceCard } from './chunk-
|
|
12
|
+
import { glassBase } from './chunk-5JYKCULK.js';
|
|
13
|
+
import { useNotificationAdapter, useCrmActions, useListActions } from './chunk-L2H5CIQF.js';
|
|
14
|
+
import { EmptyState, CenteredErrorState, StatsCardSkeleton, TrendIndicator, DetailCardSkeleton, GlowDot, JsonViewer, ListSkeleton, PageTitleCaption, StatCard, APIErrorAlert, CollapsibleSection, ActivityTimeline, ContextViewer, StatusBadge, TabCountBadge, ResourceCard } from './chunk-RG2S6NIU.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-
|
|
18
|
+
import { HTTP_HEADERS } from './chunk-FAO7SWSL.js';
|
|
19
19
|
import { topbarHeight } from './chunk-DT3QYZVU.js';
|
|
20
20
|
import { useRouterContext } from './chunk-Q7DJKLEN.js';
|
|
21
|
-
import {
|
|
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-ZJ3FG7FE.js';
|
|
22
22
|
import { ResourceStatusColors, toWorkflowLogMessages } from './chunk-KRWALB24.js';
|
|
23
|
-
import { useStableAccessToken } from './chunk-
|
|
24
|
-
import { useAccess, AccessKeys } from './chunk-
|
|
25
|
-
import { useOptionalElevasisSystems, useElevasisSystems } from './chunk-
|
|
26
|
-
import { useInitialization } from './chunk-
|
|
27
|
-
import { defineEntities, OrgKnowledgeNodeSchema, defineResources, defineActions, defineTopology, topologyRef,
|
|
23
|
+
import { useStableAccessToken } from './chunk-5GZVSTVH.js';
|
|
24
|
+
import { useAccess, AccessKeys } from './chunk-ZRZYRDXX.js';
|
|
25
|
+
import { useOptionalElevasisSystems, useElevasisSystems } from './chunk-23YQ2WH5.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-GLBPGEDD.js';
|
|
28
28
|
import { useOrganization } from './chunk-DD3CCMCZ.js';
|
|
29
|
-
import { useUserProfile } from './chunk-
|
|
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 {
|
|
31
|
+
import { listAllSystems, getSystem, getAllBuildTemplates, getLeadGenStageCatalog, getResourcesForSystem, compileOrganizationOntology, getSystemAncestors } from './chunk-43ZU647H.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
|
-
|
|
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) => [
|
|
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
|
|
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 {
|
|
4332
|
-
const organizationName = currentMembership?.organization?.name;
|
|
4337
|
+
const { currentSupabaseOrganizationId } = useOrganization();
|
|
4333
4338
|
return useQuery({
|
|
4334
|
-
queryKey: sessionsKeys.sessions(
|
|
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 {
|
|
4345
|
-
const organizationName = currentMembership?.organization?.name;
|
|
4349
|
+
const { currentSupabaseOrganizationId } = useOrganization();
|
|
4346
4350
|
return useQuery({
|
|
4347
|
-
queryKey: sessionsKeys.session(
|
|
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 {
|
|
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(
|
|
4369
|
+
queryClient.invalidateQueries({ queryKey: sessionsKeys.sessions(currentSupabaseOrganizationId) });
|
|
4367
4370
|
}
|
|
4368
4371
|
});
|
|
4369
4372
|
}
|
|
4370
4373
|
function useDeleteSession() {
|
|
4371
4374
|
const { apiRequest } = useElevasisServices();
|
|
4372
|
-
const {
|
|
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(
|
|
4386
|
+
queryKey: sessionsKeys.session(currentSupabaseOrganizationId, sessionId)
|
|
4385
4387
|
});
|
|
4386
4388
|
queryClient.invalidateQueries({
|
|
4387
|
-
queryKey: sessionsKeys.sessions(
|
|
4389
|
+
queryKey: sessionsKeys.sessions(currentSupabaseOrganizationId)
|
|
4388
4390
|
});
|
|
4389
4391
|
}
|
|
4390
4392
|
});
|
|
4391
4393
|
}
|
|
4392
4394
|
function useArchiveSession() {
|
|
4393
4395
|
const { apiRequest } = useElevasisServices();
|
|
4394
|
-
const {
|
|
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(
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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: [
|
|
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": {
|
|
@@ -17368,6 +17378,13 @@ var platformSystems = {
|
|
|
17368
17378
|
surfaces: [],
|
|
17369
17379
|
icon: "settings"
|
|
17370
17380
|
},
|
|
17381
|
+
config: {
|
|
17382
|
+
onboarding: {
|
|
17383
|
+
welcomeFlow: {
|
|
17384
|
+
enabled: false
|
|
17385
|
+
}
|
|
17386
|
+
}
|
|
17387
|
+
},
|
|
17371
17388
|
ontology: {}
|
|
17372
17389
|
},
|
|
17373
17390
|
clients: {
|
|
@@ -17464,6 +17481,18 @@ var platformSystems = {
|
|
|
17464
17481
|
governedByKnowledge: [],
|
|
17465
17482
|
drivesGoals: [],
|
|
17466
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
|
+
},
|
|
17467
17496
|
actions: Object.values(LEAD_GEN_ACTION_ENTRIES).map((action) => ({
|
|
17468
17497
|
actionId: action.id,
|
|
17469
17498
|
intent: "exposes"
|
|
@@ -17678,11 +17707,7 @@ var platformSystems = {
|
|
|
17678
17707
|
label: "Sync campaign list",
|
|
17679
17708
|
description: "Create or update the lead list associated with an Instantly campaign.",
|
|
17680
17709
|
ownerSystemId: "sales.lead-gen",
|
|
17681
|
-
actsOn: [
|
|
17682
|
-
"sales.lead-gen:object/campaign",
|
|
17683
|
-
"sales.lead-gen:object/list",
|
|
17684
|
-
"sales.lead-gen:object/contact"
|
|
17685
|
-
],
|
|
17710
|
+
actsOn: ["sales.lead-gen:object/campaign", "sales.lead-gen:object/list", "sales.lead-gen:object/contact"],
|
|
17686
17711
|
effects: [{ kind: "write", objectType: "sales.lead-gen:object/list" }]
|
|
17687
17712
|
}
|
|
17688
17713
|
},
|
|
@@ -18048,6 +18073,17 @@ var platformSystems = {
|
|
|
18048
18073
|
governedByKnowledge: [],
|
|
18049
18074
|
drivesGoals: [],
|
|
18050
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
|
+
},
|
|
18051
18087
|
actions: Object.values(CRM_ACTION_ENTRIES).map((action) => ({
|
|
18052
18088
|
actionId: action.id,
|
|
18053
18089
|
intent: "exposes"
|
|
@@ -18240,7 +18276,7 @@ var platformSystems = {
|
|
|
18240
18276
|
id: "projects",
|
|
18241
18277
|
order: 90,
|
|
18242
18278
|
label: "Projects",
|
|
18243
|
-
description: "Projects, milestones, and
|
|
18279
|
+
description: "Projects, milestones, and work execution.",
|
|
18244
18280
|
kind: "operational",
|
|
18245
18281
|
governedByKnowledge: [],
|
|
18246
18282
|
drivesGoals: [],
|
|
@@ -18260,7 +18296,7 @@ var platformSystems = {
|
|
|
18260
18296
|
"projects:object/project": {
|
|
18261
18297
|
id: "projects:object/project",
|
|
18262
18298
|
label: "Project",
|
|
18263
|
-
description: "A
|
|
18299
|
+
description: "A project tracked from active work through completion.",
|
|
18264
18300
|
ownerSystemId: "projects",
|
|
18265
18301
|
properties: {
|
|
18266
18302
|
id: { valueType: "global:value-type/uuid", identity: true },
|
|
@@ -18270,7 +18306,7 @@ var platformSystems = {
|
|
|
18270
18306
|
"projects:object/milestone": {
|
|
18271
18307
|
id: "projects:object/milestone",
|
|
18272
18308
|
label: "Milestone",
|
|
18273
|
-
description: "A major project checkpoint used to coordinate
|
|
18309
|
+
description: "A major project checkpoint used to coordinate progress.",
|
|
18274
18310
|
ownerSystemId: "projects",
|
|
18275
18311
|
properties: {
|
|
18276
18312
|
id: { valueType: "global:value-type/uuid", identity: true },
|
|
@@ -18494,6 +18530,27 @@ var platformTopology = defineTopology(
|
|
|
18494
18530
|
triggersWorkflow("lgn-apollo-decision-maker-triggers-email-verification", resource("lgn-04b-apollo-decision-maker-enrich-workflow"), "lgn-05-email-verification-workflow"),
|
|
18495
18531
|
triggersWorkflow("lgn-company-qualification-triggers-email-discovery", resource("lgn-03-company-qualification-workflow"), "lgn-04-email-discovery-workflow"),
|
|
18496
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
|
+
],
|
|
18497
18554
|
triggersWorkflow("ist-campaign-create-triggers-personalization", resource("ist-campaign-create-workflow"), "ist-personalization-workflow"),
|
|
18498
18555
|
triggersWorkflow("ist-personalization-triggers-upload-contacts", resource("ist-personalization-workflow"), "ist-upload-contacts-workflow"),
|
|
18499
18556
|
triggersWorkflow("ist-upload-contacts-triggers-analytics", resource("ist-upload-contacts-workflow"), "ist-analytics-workflow"),
|
|
@@ -18557,7 +18614,7 @@ var canonicalOrganizationModel = resolveOrganizationModel(
|
|
|
18557
18614
|
entities: { version: 1, lastModified: "2026-05-11" },
|
|
18558
18615
|
policies: { version: 1, lastModified: "2026-05-11" },
|
|
18559
18616
|
knowledge: { version: 1, lastModified: "2026-05-11" },
|
|
18560
|
-
topology: { version: 1, lastModified: "2026-05-
|
|
18617
|
+
topology: { version: 1, lastModified: "2026-05-24" }
|
|
18561
18618
|
},
|
|
18562
18619
|
branding: platformBranding,
|
|
18563
18620
|
navigation: platformNavigation,
|
|
@@ -21190,11 +21247,48 @@ function getDefaultBuildSteps(templates, defaultBuildTemplateId) {
|
|
|
21190
21247
|
const template = templates.find((item) => item.id === defaultBuildTemplateId) ?? templates[0];
|
|
21191
21248
|
return template?.steps.map((step) => toBuildStepDefinition(step)) ?? [];
|
|
21192
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
|
+
}
|
|
21193
21282
|
function useLeadGenConfig() {
|
|
21194
21283
|
const systems = useOptionalElevasisSystems();
|
|
21195
21284
|
const organizationModel2 = systems?.organizationModel;
|
|
21196
21285
|
return useMemo(() => {
|
|
21197
|
-
|
|
21286
|
+
const leadGenApiInterface = getLeadGenApiInterfaceReadiness(organizationModel2);
|
|
21287
|
+
const interfaceState = {
|
|
21288
|
+
leadGenApiInterface,
|
|
21289
|
+
canUseLeadGenApiActions: leadGenApiInterface.ready
|
|
21290
|
+
};
|
|
21291
|
+
if (!organizationModel2) return interfaceState;
|
|
21198
21292
|
const buildTemplates = getAllBuildTemplates(organizationModel2);
|
|
21199
21293
|
const defaultBuildTemplateId = getDefaultBuildTemplateId(organizationModel2, buildTemplates);
|
|
21200
21294
|
return {
|
|
@@ -21202,7 +21296,8 @@ function useLeadGenConfig() {
|
|
|
21202
21296
|
exportWorkflowId: getLeadGenExportWorkflowId(organizationModel2),
|
|
21203
21297
|
defaultBuildTemplateId,
|
|
21204
21298
|
defaultBuildSteps: getDefaultBuildSteps(buildTemplates, defaultBuildTemplateId),
|
|
21205
|
-
buildTemplates
|
|
21299
|
+
buildTemplates,
|
|
21300
|
+
...interfaceState
|
|
21206
21301
|
};
|
|
21207
21302
|
}, [organizationModel2]);
|
|
21208
21303
|
}
|
|
@@ -21534,6 +21629,9 @@ function LeadGenListsPage() {
|
|
|
21534
21629
|
const selection = useTableSelection(paginatedLists, sortedLists);
|
|
21535
21630
|
const selectedBuildTemplateId = newBuildTemplateId || defaultBuildTemplateId;
|
|
21536
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;
|
|
21537
21635
|
function resetCreateListModal() {
|
|
21538
21636
|
setNewListName("");
|
|
21539
21637
|
setNewListDescription("");
|
|
@@ -21542,7 +21640,7 @@ function LeadGenListsPage() {
|
|
|
21542
21640
|
setShowCreateList(false);
|
|
21543
21641
|
}
|
|
21544
21642
|
function handleCreateList() {
|
|
21545
|
-
if (!
|
|
21643
|
+
if (!canCreateOrDeleteLists) return;
|
|
21546
21644
|
const trimmedName = newListName.trim();
|
|
21547
21645
|
if (!trimmedName) return;
|
|
21548
21646
|
const body = {
|
|
@@ -21573,11 +21671,14 @@ function LeadGenListsPage() {
|
|
|
21573
21671
|
onClick: () => setShowCreateList(true),
|
|
21574
21672
|
variant: "light",
|
|
21575
21673
|
size: "xs",
|
|
21674
|
+
disabled: !canUseApiActions,
|
|
21675
|
+
title: !canUseApiActions ? apiDisabledReason : void 0,
|
|
21576
21676
|
children: "New List"
|
|
21577
21677
|
}
|
|
21578
21678
|
) : null
|
|
21579
21679
|
}
|
|
21580
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,
|
|
21581
21682
|
/* @__PURE__ */ jsx(Paper, { children: /* @__PURE__ */ jsxs(Stack, { children: [
|
|
21582
21683
|
/* @__PURE__ */ jsxs(
|
|
21583
21684
|
FilterBar,
|
|
@@ -21586,7 +21687,7 @@ function LeadGenListsPage() {
|
|
|
21586
21687
|
TableSelectionToolbar,
|
|
21587
21688
|
{
|
|
21588
21689
|
selectedCount: selection.selectedCount,
|
|
21589
|
-
onDelete:
|
|
21690
|
+
onDelete: canCreateOrDeleteLists ? () => setShowBatchDelete(true) : void 0,
|
|
21590
21691
|
isDeleting: deleteListsMutation.isPending
|
|
21591
21692
|
}
|
|
21592
21693
|
),
|
|
@@ -21620,8 +21721,8 @@ function LeadGenListsPage() {
|
|
|
21620
21721
|
{
|
|
21621
21722
|
icon: IconList,
|
|
21622
21723
|
title: searchQuery.trim() || statusFilter ? "No lists match your filters" : "No lists yet",
|
|
21623
|
-
description: searchQuery.trim() || statusFilter ? void 0 : "Create one to get started.",
|
|
21624
|
-
action: searchQuery.trim() || statusFilter || !
|
|
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 : {
|
|
21625
21726
|
label: "Create List",
|
|
21626
21727
|
onClick: () => setShowCreateList(true),
|
|
21627
21728
|
icon: /* @__PURE__ */ jsx(IconPlus, { size: 16 })
|
|
@@ -21772,7 +21873,15 @@ function LeadGenListsPage() {
|
|
|
21772
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." }),
|
|
21773
21874
|
/* @__PURE__ */ jsxs(Group, { justify: "flex-end", children: [
|
|
21774
21875
|
/* @__PURE__ */ jsx(Button, { variant: "light", onClick: resetCreateListModal, disabled: createListMutation.isPending, children: "Cancel" }),
|
|
21775
|
-
/* @__PURE__ */ jsx(
|
|
21876
|
+
/* @__PURE__ */ jsx(
|
|
21877
|
+
Button,
|
|
21878
|
+
{
|
|
21879
|
+
onClick: handleCreateList,
|
|
21880
|
+
loading: createListMutation.isPending,
|
|
21881
|
+
disabled: !newListName.trim() || !canCreateOrDeleteLists,
|
|
21882
|
+
children: "Create List"
|
|
21883
|
+
}
|
|
21884
|
+
)
|
|
21776
21885
|
] })
|
|
21777
21886
|
] })
|
|
21778
21887
|
}
|
|
@@ -21816,9 +21925,9 @@ function LeadGenListsPage() {
|
|
|
21816
21925
|
{
|
|
21817
21926
|
color: "red",
|
|
21818
21927
|
loading: deleteListsMutation.isPending,
|
|
21819
|
-
disabled: !
|
|
21928
|
+
disabled: !canCreateOrDeleteLists,
|
|
21820
21929
|
onClick: () => {
|
|
21821
|
-
if (!
|
|
21930
|
+
if (!canCreateOrDeleteLists) return;
|
|
21822
21931
|
deleteListsMutation.mutate([...selection.selectedIds], {
|
|
21823
21932
|
onSuccess: () => {
|
|
21824
21933
|
setShowBatchDelete(false);
|
|
@@ -21888,7 +21997,8 @@ function ArtifactsPanel({ listMemberId }) {
|
|
|
21888
21997
|
] }) }, artifact.id)) });
|
|
21889
21998
|
}
|
|
21890
21999
|
function ListMemberDrawerContent({ member, listId }) {
|
|
21891
|
-
const
|
|
22000
|
+
const leadGenConfig = useLeadGenConfig();
|
|
22001
|
+
const { stageCatalog = {} } = leadGenConfig;
|
|
21892
22002
|
const transitionMember = useTransitionListMember();
|
|
21893
22003
|
const statefulItem = useMemo(
|
|
21894
22004
|
() => ({
|
|
@@ -21926,7 +22036,9 @@ function ListMemberDrawerContent({ member, listId }) {
|
|
|
21926
22036
|
variant: "light",
|
|
21927
22037
|
size: "xs",
|
|
21928
22038
|
loading: transitionMember.isPending,
|
|
22039
|
+
disabled: !leadGenConfig.canUseLeadGenApiActions,
|
|
21929
22040
|
onClick: () => {
|
|
22041
|
+
if (!leadGenConfig.canUseLeadGenApiActions) return;
|
|
21930
22042
|
transitionMember.mutate({
|
|
21931
22043
|
memberId: member.id,
|
|
21932
22044
|
listId,
|
|
@@ -21941,6 +22053,7 @@ function ListMemberDrawerContent({ member, listId }) {
|
|
|
21941
22053
|
},
|
|
21942
22054
|
action.key
|
|
21943
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,
|
|
21944
22057
|
/* @__PURE__ */ jsx(ArtifactsPanel, { listMemberId: member.id })
|
|
21945
22058
|
] });
|
|
21946
22059
|
}
|
|
@@ -24124,8 +24237,11 @@ function LeadGenListDetailPage({ listId }) {
|
|
|
24124
24237
|
const buildResolution = resolveBuildState(list, businessProgress, actions, leadGenConfig);
|
|
24125
24238
|
const buildSteps = buildResolution.steps;
|
|
24126
24239
|
const recommendedBuildStep = buildResolution.recommendedStep;
|
|
24240
|
+
const canUseApiActions = leadGenConfig.canUseLeadGenApiActions;
|
|
24241
|
+
const apiDisabledReason = leadGenConfig.leadGenApiInterface.reason;
|
|
24242
|
+
const canManageLeadGenApi = canManageLeadGen.allowed && canUseApiActions;
|
|
24127
24243
|
const runStep = async (step, inputAtSubmit) => {
|
|
24128
|
-
if (!
|
|
24244
|
+
if (!canManageLeadGenApi) return null;
|
|
24129
24245
|
const resourceId = step.action?.resourceId;
|
|
24130
24246
|
if (!resourceId) return null;
|
|
24131
24247
|
try {
|
|
@@ -24162,7 +24278,7 @@ function LeadGenListDetailPage({ listId }) {
|
|
|
24162
24278
|
showSuccessNotification("Copied list command to clipboard");
|
|
24163
24279
|
};
|
|
24164
24280
|
const handleDeleteList = () => {
|
|
24165
|
-
if (!
|
|
24281
|
+
if (!canManageLeadGenApi) return;
|
|
24166
24282
|
deleteListMutation.mutate(list.id, {
|
|
24167
24283
|
onSuccess: () => {
|
|
24168
24284
|
setDeleteModalOpen(false);
|
|
@@ -24200,7 +24316,7 @@ function LeadGenListDetailPage({ listId }) {
|
|
|
24200
24316
|
color: "red",
|
|
24201
24317
|
size: "sm",
|
|
24202
24318
|
"aria-label": "Delete list",
|
|
24203
|
-
disabled: !
|
|
24319
|
+
disabled: !canManageLeadGenApi,
|
|
24204
24320
|
loading: deleteListMutation.isPending,
|
|
24205
24321
|
onClick: () => setDeleteModalOpen(true),
|
|
24206
24322
|
children: /* @__PURE__ */ jsx(IconTrash, { size: 14 })
|
|
@@ -24209,6 +24325,10 @@ function LeadGenListDetailPage({ listId }) {
|
|
|
24209
24325
|
backButton
|
|
24210
24326
|
] })
|
|
24211
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,
|
|
24212
24332
|
/* @__PURE__ */ jsx(Paper, { withBorder: true, children: /* @__PURE__ */ jsxs(Tabs, { value: activeTab, onChange: setActiveTab, keepMounted: false, children: [
|
|
24213
24333
|
/* @__PURE__ */ jsxs(Tabs.List, { children: [
|
|
24214
24334
|
/* @__PURE__ */ jsx(Tabs.Tab, { value: "overview", leftSection: /* @__PURE__ */ jsx(IconBuilding, { size: 14 }), children: "Overview" }),
|
|
@@ -24221,7 +24341,7 @@ function LeadGenListDetailPage({ listId }) {
|
|
|
24221
24341
|
{
|
|
24222
24342
|
list,
|
|
24223
24343
|
progress: businessProgress,
|
|
24224
|
-
canManage:
|
|
24344
|
+
canManage: canManageLeadGenApi,
|
|
24225
24345
|
leadGenConfig
|
|
24226
24346
|
}
|
|
24227
24347
|
) }),
|
|
@@ -24244,7 +24364,7 @@ function LeadGenListDetailPage({ listId }) {
|
|
|
24244
24364
|
optimisticRuns,
|
|
24245
24365
|
exportWorkflowId: leadGenConfig.exportWorkflowId,
|
|
24246
24366
|
stageCatalog,
|
|
24247
|
-
canManage:
|
|
24367
|
+
canManage: canManageLeadGenApi,
|
|
24248
24368
|
onRunStep: runStep,
|
|
24249
24369
|
onRetryStep: runStep,
|
|
24250
24370
|
onViewRunLog: (resourceId, executionId) => {
|
|
@@ -24294,7 +24414,7 @@ function LeadGenListDetailPage({ listId }) {
|
|
|
24294
24414
|
{
|
|
24295
24415
|
color: "red",
|
|
24296
24416
|
loading: deleteListMutation.isPending,
|
|
24297
|
-
disabled: !
|
|
24417
|
+
disabled: !canManageLeadGenApi,
|
|
24298
24418
|
onClick: handleDeleteList,
|
|
24299
24419
|
children: "Delete"
|
|
24300
24420
|
}
|
|
@@ -25824,7 +25944,7 @@ function ProjectsListPage({ onProjectClick } = {}) {
|
|
|
25824
25944
|
};
|
|
25825
25945
|
return /* @__PURE__ */ jsxs(SubshellContentContainer, { children: [
|
|
25826
25946
|
/* @__PURE__ */ jsxs(PageContainer, { children: [
|
|
25827
|
-
/* @__PURE__ */ jsx(Stack, { children: /* @__PURE__ */ jsx(PageTitleCaption, { title: "Projects", caption: "
|
|
25947
|
+
/* @__PURE__ */ jsx(Stack, { children: /* @__PURE__ */ jsx(PageTitleCaption, { title: "Projects", caption: "Project tracking and milestone management" }) }),
|
|
25828
25948
|
/* @__PURE__ */ jsx(Paper, { withBorder: true, children: /* @__PURE__ */ jsxs(Stack, { children: [
|
|
25829
25949
|
/* @__PURE__ */ jsxs(
|
|
25830
25950
|
FilterBar,
|
|
@@ -39295,7 +39415,7 @@ var createOrganizationsSlice = (set, _get, _store) => ({
|
|
|
39295
39415
|
set(
|
|
39296
39416
|
(state) => {
|
|
39297
39417
|
state.organizations.currentMembership = membership;
|
|
39298
|
-
state.organizations.currentSupabaseOrganizationId = membership?.organization?.id
|
|
39418
|
+
state.organizations.currentSupabaseOrganizationId = brandSupabaseOrgId(membership?.organization?.id ?? null);
|
|
39299
39419
|
},
|
|
39300
39420
|
void 0,
|
|
39301
39421
|
"organizations/setCurrentMembership"
|
|
@@ -39373,20 +39493,20 @@ function createUseOrgInitialization(useOrganizations, useApiClient) {
|
|
|
39373
39493
|
const selectOrganization = useCallback(
|
|
39374
39494
|
async (data) => {
|
|
39375
39495
|
let selectedMembership = null;
|
|
39376
|
-
if (
|
|
39496
|
+
if (workosOrgId) {
|
|
39497
|
+
selectedMembership = data.find((m) => m.organization?.workos_org_id === workosOrgId) || null;
|
|
39498
|
+
}
|
|
39499
|
+
if (!selectedMembership && profile?.last_visited_org) {
|
|
39377
39500
|
const supabaseLastVisitedOrgId = profile.last_visited_org;
|
|
39378
39501
|
selectedMembership = data.find((m) => m.organizationId === supabaseLastVisitedOrgId) || null;
|
|
39379
39502
|
}
|
|
39380
|
-
if (!selectedMembership && workosOrgId) {
|
|
39381
|
-
selectedMembership = data.find((m) => m.organization?.workos_org_id === workosOrgId) || null;
|
|
39382
|
-
}
|
|
39383
39503
|
if (!selectedMembership && data.length > 0) {
|
|
39384
39504
|
selectedMembership = data[0];
|
|
39385
39505
|
}
|
|
39386
39506
|
if (selectedMembership) {
|
|
39387
39507
|
const workosSelectedOrgId = selectedMembership.organization?.workos_org_id;
|
|
39388
39508
|
if (workosSelectedOrgId) {
|
|
39389
|
-
setCurrentWorkOSOrganizationId(workosSelectedOrgId);
|
|
39509
|
+
setCurrentWorkOSOrganizationId(brandWorkOsOrgId(workosSelectedOrgId));
|
|
39390
39510
|
setCurrentMembership(selectedMembership);
|
|
39391
39511
|
}
|
|
39392
39512
|
}
|
|
@@ -39404,7 +39524,7 @@ function createUseOrgInitialization(useOrganizations, useApiClient) {
|
|
|
39404
39524
|
const fallbackOrg = data[0];
|
|
39405
39525
|
const workosFallbackOrgId = fallbackOrg.organization?.workos_org_id;
|
|
39406
39526
|
if (workosFallbackOrgId) {
|
|
39407
|
-
setCurrentWorkOSOrganizationId(workosFallbackOrgId);
|
|
39527
|
+
setCurrentWorkOSOrganizationId(brandWorkOsOrgId(workosFallbackOrgId));
|
|
39408
39528
|
setCurrentMembership(fallbackOrg);
|
|
39409
39529
|
}
|
|
39410
39530
|
}
|
|
@@ -39437,7 +39557,9 @@ function createUseOrgInitialization(useOrganizations, useApiClient) {
|
|
|
39437
39557
|
}
|
|
39438
39558
|
setMemberships(data);
|
|
39439
39559
|
if (data.length === 0) {
|
|
39440
|
-
setOrganizationsError(
|
|
39560
|
+
setOrganizationsError(
|
|
39561
|
+
"No organization memberships found. Please contact your administrator or try refreshing the page."
|
|
39562
|
+
);
|
|
39441
39563
|
hasInitializedRef.current = true;
|
|
39442
39564
|
return;
|
|
39443
39565
|
}
|
|
@@ -39509,4 +39631,4 @@ function createUseOrgInitialization(useOrganizations, useApiClient) {
|
|
|
39509
39631
|
};
|
|
39510
39632
|
}
|
|
39511
39633
|
|
|
39512
|
-
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 };
|