@elevasis/ui 2.20.0 → 2.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/api/index.js +2 -2
  2. package/dist/app/index.js +4 -4
  3. package/dist/charts/index.js +3 -3
  4. package/dist/{chunk-FMFX4K6E.js → chunk-7GG6OSD7.js} +34 -9
  5. package/dist/{chunk-GTYUP7MB.js → chunk-ATEHYDL3.js} +5 -21
  6. package/dist/{chunk-AL23U6C3.js → chunk-BIWHHWCJ.js} +1 -2
  7. package/dist/{chunk-JR5WNTLA.js → chunk-BJWIKEQG.js} +6 -11
  8. package/dist/{chunk-GP3AFJYG.js → chunk-CZK67OHH.js} +6 -11
  9. package/dist/{chunk-TO7QXDBX.js → chunk-DMYELNGA.js} +2 -2
  10. package/dist/{chunk-2CFOFSSG.js → chunk-EDX6WIN3.js} +6 -11
  11. package/dist/{chunk-PJVG3ISO.js → chunk-EGKNRM6P.js} +6 -8
  12. package/dist/{chunk-ZE2KQSHL.js → chunk-I5WRKH25.js} +4 -4
  13. package/dist/chunk-KVW56ERD.js +24 -0
  14. package/dist/{chunk-YP6T426C.js → chunk-LQU62KHD.js} +144 -432
  15. package/dist/{chunk-OUYH2SBS.js → chunk-LVUCBY7X.js} +2 -2
  16. package/dist/chunk-S7RL77QS.js +48 -0
  17. package/dist/{chunk-OD7GWIZS.js → chunk-SGXXJE52.js} +1 -121
  18. package/dist/{chunk-R7OJCNL3.js → chunk-T6INEVX6.js} +1 -1
  19. package/dist/{chunk-CTTY6FUT.js → chunk-TSSKOQBX.js} +2 -2
  20. package/dist/{chunk-Q4QJOSVS.js → chunk-ULZ2B3NC.js} +1 -1
  21. package/dist/chunk-VQESMHQV.js +336 -0
  22. package/dist/{chunk-MZFJWCPH.js → chunk-XLZZOFGM.js} +5 -19
  23. package/dist/{chunk-BHR7IV72.js → chunk-XUYBOO32.js} +1 -1
  24. package/dist/{chunk-M7W7CGPL.js → chunk-Z6FAH4XV.js} +1 -1
  25. package/dist/components/index.d.ts +46 -87
  26. package/dist/components/index.js +27 -26
  27. package/dist/components/navigation/index.d.ts +1 -13
  28. package/dist/components/navigation/index.js +11 -1
  29. package/dist/execution/index.d.ts +27 -0
  30. package/dist/features/crm/index.d.ts +12 -35
  31. package/dist/features/crm/index.js +11 -10
  32. package/dist/features/dashboard/index.d.ts +25 -27
  33. package/dist/features/dashboard/index.js +12 -11
  34. package/dist/features/delivery/index.d.ts +12 -35
  35. package/dist/features/delivery/index.js +11 -10
  36. package/dist/features/lead-gen/index.d.ts +14 -37
  37. package/dist/features/lead-gen/index.js +11 -10
  38. package/dist/features/monitoring/index.d.ts +12 -35
  39. package/dist/features/monitoring/index.js +13 -12
  40. package/dist/features/monitoring/requests/index.d.ts +13 -36
  41. package/dist/features/monitoring/requests/index.js +11 -10
  42. package/dist/features/operations/index.d.ts +44 -65
  43. package/dist/features/operations/index.js +14 -13
  44. package/dist/features/seo/index.d.ts +12 -35
  45. package/dist/features/seo/index.js +1 -1
  46. package/dist/features/settings/index.d.ts +12 -35
  47. package/dist/features/settings/index.js +11 -10
  48. package/dist/hooks/delivery/index.js +2 -2
  49. package/dist/hooks/index.d.ts +46 -66
  50. package/dist/hooks/index.js +10 -9
  51. package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +92 -121
  52. package/dist/hooks/published.d.ts +46 -66
  53. package/dist/hooks/published.js +10 -9
  54. package/dist/index.d.ts +365 -452
  55. package/dist/index.js +10 -9
  56. package/dist/provider/index.d.ts +62 -125
  57. package/dist/provider/index.js +8 -7
  58. package/dist/provider/published.d.ts +62 -125
  59. package/dist/provider/published.js +6 -5
  60. package/dist/test-utils/index.js +2 -2
  61. package/dist/types/index.d.ts +108 -135
  62. package/dist/utils/index.d.ts +26 -59
  63. package/dist/utils/index.js +1 -1
  64. package/package.json +4 -4
  65. package/dist/chunk-LR5CRY5A.js +0 -514
  66. package/dist/chunk-MG3NF7QL.js +0 -63
package/dist/api/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import '../chunk-XCYKC6OZ.js';
2
- export { ApiClientProvider, useApiClient, useApiClientContext } from '../chunk-R7OJCNL3.js';
3
- import '../chunk-OD7GWIZS.js';
2
+ export { ApiClientProvider, useApiClient, useApiClientContext } from '../chunk-T6INEVX6.js';
3
+ import '../chunk-SGXXJE52.js';
4
4
  import '../chunk-KRWALB24.js';
5
5
  import '../chunk-DD3CCMCZ.js';
6
6
  import '../chunk-I2KLQ2HA.js';
package/dist/app/index.js CHANGED
@@ -1,12 +1,12 @@
1
- import { ElevasisUIProvider } from '../chunk-TO7QXDBX.js';
1
+ import { ElevasisUIProvider } from '../chunk-DMYELNGA.js';
2
2
  import '../chunk-Q5HC6ENG.js';
3
3
  import '../chunk-WLOQ4IBG.js';
4
- import '../chunk-OUYH2SBS.js';
4
+ import '../chunk-LVUCBY7X.js';
5
5
  import '../chunk-SZHARWKU.js';
6
- import '../chunk-R7OJCNL3.js';
6
+ import '../chunk-T6INEVX6.js';
7
7
  import '../chunk-6IA2OMAE.js';
8
8
  import '../chunk-QJ2KCHKX.js';
9
- import '../chunk-OD7GWIZS.js';
9
+ import '../chunk-SGXXJE52.js';
10
10
  import '../chunk-KRWALB24.js';
11
11
  import { useInitialization } from '../chunk-DK2HVHCY.js';
12
12
  import '../chunk-DD3CCMCZ.js';
@@ -1,13 +1,13 @@
1
- export { ActivityTrendChart, ChartFrame, CombinedTrendChart, CostTrendChart, CyberAreaChart, CyberDonut, CyberDonutTooltip, CyberLegendItem, HeroStatsRow, getSeriesColor, useCyberColors } from '../chunk-CTTY6FUT.js';
1
+ export { ActivityTrendChart, ChartFrame, CombinedTrendChart, CostTrendChart, CyberAreaChart, CyberDonut, CyberDonutTooltip, CyberLegendItem, HeroStatsRow, getSeriesColor, useCyberColors } from '../chunk-TSSKOQBX.js';
2
2
  import '../chunk-QSTH6T77.js';
3
- import '../chunk-BHR7IV72.js';
3
+ import '../chunk-XUYBOO32.js';
4
4
  import '../chunk-SZHARWKU.js';
5
5
  import '../chunk-3KMDHCAR.js';
6
6
  import '../chunk-NYBEU5TE.js';
7
7
  import '../chunk-2IFYDILW.js';
8
8
  import '../chunk-Q7DJKLEN.js';
9
9
  import '../chunk-DT3QYZVU.js';
10
- import '../chunk-OD7GWIZS.js';
10
+ import '../chunk-SGXXJE52.js';
11
11
  import '../chunk-KRWALB24.js';
12
12
  import '../chunk-SLH2QLKV.js';
13
13
  import '../chunk-DK2HVHCY.js';
@@ -1,11 +1,11 @@
1
1
  import { useSupabase } from './chunk-BRXELOHC.js';
2
2
  import { observabilityKeys } from './chunk-QSTH6T77.js';
3
- import { showApiErrorNotification, showSuccessNotification, projectKeys, noteKeys, taskKeys, milestoneKeys } from './chunk-M7W7CGPL.js';
3
+ import { showApiErrorNotification, showSuccessNotification, projectKeys, noteKeys, taskKeys, milestoneKeys } from './chunk-Z6FAH4XV.js';
4
4
  import { GRAPH_CONSTANTS } from './chunk-22UVE3RA.js';
5
- import { useOptionalElevasisFeatures } from './chunk-LR5CRY5A.js';
6
- import { useNotificationAdapter } from './chunk-OUYH2SBS.js';
7
- import { HTTP_HEADERS } from './chunk-R7OJCNL3.js';
8
- import { UuidSchema, ResourceTypeSchema, NonEmptyStringSchema, OriginResourceTypeSchema, CredentialNameSchema, REFETCH_INTERVAL_DASHBOARD, getTimeRangeDates, STALE_TIME_MONITORING, REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, STALE_TIME_DEFAULT, STALE_TIME_ADMIN, APIClientError, GC_TIME_MEDIUM, GC_TIME_SHORT } from './chunk-OD7GWIZS.js';
5
+ import { useNotificationAdapter } from './chunk-LVUCBY7X.js';
6
+ import { useOptionalElevasisFeatures } from './chunk-VQESMHQV.js';
7
+ import { HTTP_HEADERS } from './chunk-T6INEVX6.js';
8
+ import { UuidSchema, ResourceTypeSchema, NonEmptyStringSchema, OriginResourceTypeSchema, CredentialNameSchema, REFETCH_INTERVAL_DASHBOARD, getTimeRangeDates, STALE_TIME_MONITORING, REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, STALE_TIME_DEFAULT, STALE_TIME_ADMIN, APIClientError, GC_TIME_MEDIUM, GC_TIME_SHORT } from './chunk-SGXXJE52.js';
9
9
  import { useStableAccessToken } from './chunk-SLH2QLKV.js';
10
10
  import { useOrganization } from './chunk-DD3CCMCZ.js';
11
11
  import { useElevasisServices } from './chunk-IRW7JMQ4.js';
@@ -4246,14 +4246,39 @@ function createDomainFiltersStore(storageKey) {
4246
4246
  }
4247
4247
  var useResourcesDomainFilters = createDomainFiltersStore("resources-domain-filters");
4248
4248
  var useCommandViewDomainFilters = createDomainFiltersStore("command-view-domain-filters");
4249
+ function getResourceFilterFacetIds(resource) {
4250
+ return [
4251
+ ...resource.category ? [`category:${resource.category}`] : [],
4252
+ ...resource.links?.map((link) => link.nodeId) ?? []
4253
+ ];
4254
+ }
4255
+ function labelResourceFilterFacet(id) {
4256
+ if (id.startsWith("category:")) {
4257
+ const category = id.slice("category:".length);
4258
+ return category.charAt(0).toUpperCase() + category.slice(1);
4259
+ }
4260
+ const [, path = id] = id.split(":");
4261
+ return path.split(".").map((part) => part.charAt(0).toUpperCase() + part.slice(1).replace(/-/g, " ")).join(" / ");
4262
+ }
4263
+ function collectResourceFilterFacets(items) {
4264
+ const facetIds = /* @__PURE__ */ new Set();
4265
+ items.forEach((resource) => getResourceFilterFacetIds(resource).forEach((facetId) => facetIds.add(facetId)));
4266
+ const bottomFacets = /* @__PURE__ */ new Set(["category:internal", "category:diagnostic", "category:testing"]);
4267
+ return Array.from(facetIds).sort((a, b) => {
4268
+ const aBottom = bottomFacets.has(a) ? 1 : 0;
4269
+ const bBottom = bottomFacets.has(b) ? 1 : 0;
4270
+ if (aBottom !== bBottom) return aBottom - bBottom;
4271
+ return labelResourceFilterFacet(a).localeCompare(labelResourceFilterFacet(b));
4272
+ }).map((id) => ({ id, label: labelResourceFilterFacet(id) }));
4273
+ }
4249
4274
  function filterByDomainFilters(items, filters) {
4250
4275
  const includes = Object.entries(filters).filter(([, v]) => v === "include").map(([k]) => k);
4251
4276
  const excludes = Object.entries(filters).filter(([, v]) => v === "exclude").map(([k]) => k);
4252
4277
  if (includes.length === 0 && excludes.length === 0) return items;
4253
4278
  return items.filter((r) => {
4254
- const domains = r.domains || [];
4255
- if (includes.length > 0 && !domains.some((d) => includes.includes(d))) return false;
4256
- if (excludes.length > 0 && domains.some((d) => excludes.includes(d))) return false;
4279
+ const facets = getResourceFilterFacetIds(r);
4280
+ if (includes.length > 0 && !facets.some((d) => includes.includes(d))) return false;
4281
+ if (excludes.length > 0 && facets.some((d) => excludes.includes(d))) return false;
4257
4282
  return true;
4258
4283
  });
4259
4284
  }
@@ -4410,4 +4435,4 @@ function useProjectRealtime(projectId) {
4410
4435
  });
4411
4436
  }
4412
4437
 
4413
- export { ApiKeyService, CredentialSchemas, CredentialService, DeploymentService, MEMBERSHIP_STATUS_COLORS, OperationsService, OrganizationMembershipService, WebhookEndpointService, acquisitionListKeys, companyKeys, contactKeys, dealKeys, dealNoteKeys, dealTaskKeys, executionsKeys, filterByDomainFilters, isSessionCapable, operationsKeys, projectActivityKeys, requestsKeys, scheduleKeys, sessionsKeys, sortData, transformMembershipToTableRow, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useArchiveSession, useArchivedLogs, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewLayout, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateSchedule, useCreateSession, useCreateWebhookEndpoint, useCredentials, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteWebhookEndpoint, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphStats, useList, useListApiKeys, useListDeployments, useListExecutions, useListProgress, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useNotificationCount, useNotifications, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, useProjectActivities, useProjectRealtime, useReactivateMembership, useRecentExecutionsByResource, useRequest, useRequestsList, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useSSEConnection, useScheduledTasks, useSession, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSortedData, useStatusFilter, useSubmitAction, useSuccessNotification, useSyncDealStage, useTableSelection, useTableSort, useTestNotification, useTimeRangeDates, useTopFailingResources, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateList, useUpdateListConfig, useUpdateMemberConfig, useUpdateRequestStatus, useUpdateSchedule, useUpdateWebhookEndpoint, useUserMemberships, useVisibleResources, useWarningNotification };
4438
+ export { ApiKeyService, CredentialSchemas, CredentialService, DeploymentService, MEMBERSHIP_STATUS_COLORS, OperationsService, OrganizationMembershipService, WebhookEndpointService, acquisitionListKeys, collectResourceFilterFacets, companyKeys, contactKeys, dealKeys, dealNoteKeys, dealTaskKeys, executionsKeys, filterByDomainFilters, getResourceFilterFacetIds, isSessionCapable, labelResourceFilterFacet, operationsKeys, projectActivityKeys, requestsKeys, scheduleKeys, sessionsKeys, sortData, transformMembershipToTableRow, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useArchiveSession, useArchivedLogs, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewLayout, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateSchedule, useCreateSession, useCreateWebhookEndpoint, useCredentials, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteWebhookEndpoint, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphStats, useList, useListApiKeys, useListDeployments, useListExecutions, useListProgress, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useNotificationCount, useNotifications, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, useProjectActivities, useProjectRealtime, useReactivateMembership, useRecentExecutionsByResource, useRequest, useRequestsList, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useSSEConnection, useScheduledTasks, useSession, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSortedData, useStatusFilter, useSubmitAction, useSuccessNotification, useSyncDealStage, useTableSelection, useTableSort, useTestNotification, useTimeRangeDates, useTopFailingResources, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateList, useUpdateListConfig, useUpdateMemberConfig, useUpdateRequestStatus, useUpdateSchedule, useUpdateWebhookEndpoint, useUserMemberships, useVisibleResources, useWarningNotification };
@@ -1,12 +1,12 @@
1
- import { CyberAreaChart, CostTrendChart, ActivityTrendChart } from './chunk-CTTY6FUT.js';
1
+ import { CyberAreaChart, CostTrendChart, ActivityTrendChart } from './chunk-TSSKOQBX.js';
2
2
  import { AppShellLoader } from './chunk-M25JL54Z.js';
3
3
  import { FilterBar } from './chunk-PDHTXPSF.js';
4
4
  import { CustomModal } from './chunk-GBMNCNHX.js';
5
5
  import { formatDuration } from './chunk-E4WQGJNS.js';
6
- import { useResolveError, useResolveAllErrors, usePaginationState, useErrorDetails, useMarkAsRead, useExecutionLogsFilters, useExecutionLogs, useExecutionHealth, useErrorAnalysis, useTimeRangeDates, useErrorDetail, useResolveErrorsByExecution, useResources, useCostTrends, useCostSummary, useCostByModel, useCostBreakdown, useActivityFilters, useActivityTrend, useActivities, useNotifications, useMarkAllAsRead, useTestNotification } from './chunk-FMFX4K6E.js';
7
- import { CenteredErrorState, CardHeader, StatsCardSkeleton, TrendIndicator, DetailCardSkeleton, EmptyState, PageTitleCaption, JsonViewer } from './chunk-BHR7IV72.js';
6
+ import { useResolveError, useResolveAllErrors, usePaginationState, useErrorDetails, useMarkAsRead, useExecutionLogsFilters, useExecutionLogs, useExecutionHealth, useErrorAnalysis, useTimeRangeDates, useErrorDetail, useResolveErrorsByExecution, useResources, useCostTrends, useCostSummary, useCostByModel, useCostBreakdown, useActivityFilters, useActivityTrend, useActivities, useNotifications, useMarkAllAsRead, useTestNotification } from './chunk-7GG6OSD7.js';
7
+ import { CenteredErrorState, CardHeader, StatsCardSkeleton, TrendIndicator, DetailCardSkeleton, EmptyState, PageTitleCaption, JsonViewer } from './chunk-XUYBOO32.js';
8
8
  import { useRouterContext } from './chunk-Q7DJKLEN.js';
9
- import { formatBucketTime, PAGE_SIZE_DEFAULT, getTimeRangeDates } from './chunk-OD7GWIZS.js';
9
+ import { formatBucketTime, PAGE_SIZE_DEFAULT, getTimeRangeDates } from './chunk-SGXXJE52.js';
10
10
  import { useState, useMemo, useCallback } from 'react';
11
11
  import { Table, Text, Badge, Tooltip, Card, Group, Select, SegmentedControl, Button, TextInput, Stack, Paper, Center, Loader, ActionIcon, NumberFormatter, Box, Alert, Switch, Pagination, UnstyledButton, Title, Divider, Code, CopyButton, Accordion } from '@mantine/core';
12
12
  import { IconActivity, IconFilterOff, IconCircleCheck, IconThumbDown, IconThumbUp, IconClock, IconCircleX, IconSearch, IconArrowUpRight, IconAlertTriangle, IconAlertCircle, IconExternalLink, IconChartPie, IconHeartbeat, IconDownload, IconCpu, IconTrendingUp, IconChartBar, IconCash, IconInfoCircle, IconExclamationCircle, IconBug, IconChecks, IconCircle, IconCircleFilled, IconCheck, IconCopy, IconCircleDashed, IconPlus, IconArrowUp, IconArrowDown, IconFileOff, IconRobot, IconKey, IconUser } from '@tabler/icons-react';
@@ -1789,23 +1789,7 @@ function NotificationCenter({ pageSize = 20 }) {
1789
1789
  var monitoringManifest = {
1790
1790
  key: "monitoring",
1791
1791
  featureId: "monitoring",
1792
- navEntry: {
1793
- label: "Monitoring",
1794
- icon: IconActivity,
1795
- dataOnboardingTourId: "sidebar-monitoring",
1796
- links: [
1797
- { label: "Activity Log", link: "/monitoring/activity-log" },
1798
- { label: "Execution Logs", link: "/monitoring/execution-logs" },
1799
- { label: "Execution Health", link: "/monitoring/execution-health" },
1800
- { label: "Cost Analytics", link: "/monitoring/cost-analytics" },
1801
- { label: "Notifications", link: "/monitoring/notifications" },
1802
- {
1803
- label: "Submitted Requests",
1804
- link: "/monitoring/requests",
1805
- featureKey: "submitted-requests"
1806
- }
1807
- ]
1808
- }
1792
+ icon: IconActivity
1809
1793
  };
1810
1794
 
1811
1795
  export { ActivityCard, ActivityFeed, ActivityFilters, ActivityLog, ActivityTable, BusinessImpactCard, CostAnalytics, CostBreakdownCard, CostByModelTable, CostMetricsCard, ErrorAnalysisCard, ErrorBreakdownTable, ErrorDetailsModal, ExecutionBreakdownTable, ExecutionHealth, ExecutionHealthCard, ExecutionLogsFilters, ExecutionLogsPage, ExecutionLogsTable, NotificationCenter, NotificationItem, NotificationList, monitoringManifest };
@@ -39,8 +39,7 @@ var SEOSidebar = () => {
39
39
  var seoManifest = {
40
40
  key: "seo",
41
41
  featureId: "seo",
42
- sidebar: SEOSidebar,
43
- subshellRoutes: ["/seo"]
42
+ sidebar: SEOSidebar
44
43
  };
45
44
 
46
45
  export { SEOSidebar, SEOSidebarMiddle, SEOSidebarTop, seoManifest };
@@ -5,12 +5,12 @@ import { SubshellNavItem } from './chunk-CEWTOKE7.js';
5
5
  import { SubshellSidebarSection } from './chunk-IIMU5YAJ.js';
6
6
  import { FilterBar } from './chunk-PDHTXPSF.js';
7
7
  import { CustomModal } from './chunk-GBMNCNHX.js';
8
- import { useProjectRealtime, useTableSort, sortData, usePaginationState, useTableSelection, useProjectActivities } from './chunk-FMFX4K6E.js';
9
- import { useCreateTask, useCreateMilestone, useProjectMilestones, useUpdateTask, useProjects, useDeleteProject, useProject, useProjectNotes, useUpdateMilestone, useCreateNote, showApiErrorNotification, projectKeys } from './chunk-M7W7CGPL.js';
8
+ import { useProjectRealtime, useTableSort, sortData, usePaginationState, useTableSelection, useProjectActivities } from './chunk-7GG6OSD7.js';
9
+ import { useCreateTask, useCreateMilestone, useProjectMilestones, useUpdateTask, useProjects, useDeleteProject, useProject, useProjectNotes, useUpdateMilestone, useCreateNote, showApiErrorNotification, projectKeys } from './chunk-Z6FAH4XV.js';
10
10
  import { SubshellContentContainer } from './chunk-RX4UWZZR.js';
11
- import { StatusBadge, EmptyState, PageTitleCaption, CenteredErrorState, StatCard, CardHeader } from './chunk-BHR7IV72.js';
11
+ import { StatusBadge, EmptyState, PageTitleCaption, CenteredErrorState, StatCard, CardHeader } from './chunk-XUYBOO32.js';
12
12
  import { useRouterContext } from './chunk-Q7DJKLEN.js';
13
- import { PAGE_SIZE_DEFAULT, formatTimeAgo, formatDate, formatRelativeTime } from './chunk-OD7GWIZS.js';
13
+ import { PAGE_SIZE_DEFAULT, formatTimeAgo, formatDate, formatRelativeTime } from './chunk-SGXXJE52.js';
14
14
  import { useElevasisServices } from './chunk-IRW7JMQ4.js';
15
15
  import { useState, useMemo, useCallback } from 'react';
16
16
  import { Stack, Text, Group, Checkbox, ActionIcon, TextInput, Button, Modal, Title, Textarea, Select, SimpleGrid, Card, ThemeIcon, RingProgress, Paper, Timeline, Badge, Collapse, Center, Loader, Table, Pagination, Alert, CopyButton, Tooltip, Space, Tabs, Divider, Anchor, Chip } from '@mantine/core';
@@ -545,13 +545,8 @@ var deliveryManifest = {
545
545
  key: "delivery",
546
546
  featureId: PROJECTS_FEATURE_ID,
547
547
  capabilityIds: [PROJECTS_VIEW_CAPABILITY_ID],
548
- navEntry: {
549
- label: "Projects",
550
- icon: IconBriefcase,
551
- link: "/projects"
552
- },
553
- sidebar: ProjectsSidebar,
554
- subshellRoutes: ["/projects"]
548
+ icon: IconBriefcase,
549
+ sidebar: ProjectsSidebar
555
550
  };
556
551
  function AllTasksPage() {
557
552
  return /* @__PURE__ */ jsx(SubshellContentContainer, { children: /* @__PURE__ */ jsxs(PageContainer, { children: [
@@ -4,10 +4,10 @@ import { SubshellNavItem } from './chunk-CEWTOKE7.js';
4
4
  import { SubshellSidebarSection } from './chunk-IIMU5YAJ.js';
5
5
  import { FilterBar } from './chunk-PDHTXPSF.js';
6
6
  import { CustomModal } from './chunk-GBMNCNHX.js';
7
- import { acquisitionListKeys, useListsTelemetry, useLists, useCreateList, useTableSort, sortData, usePaginationState, useTableSelection, useList, useListProgress, useListExecutions, useContacts, useCompanies, useCompanyFacets, useDeleteCompanies, useDeleteContacts } from './chunk-FMFX4K6E.js';
8
- import { showApiErrorNotification, showSuccessNotification } from './chunk-M7W7CGPL.js';
7
+ import { acquisitionListKeys, useListsTelemetry, useLists, useCreateList, useTableSort, sortData, usePaginationState, useTableSelection, useList, useListProgress, useListExecutions, useContacts, useCompanies, useCompanyFacets, useDeleteCompanies, useDeleteContacts } from './chunk-7GG6OSD7.js';
8
+ import { showApiErrorNotification, showSuccessNotification } from './chunk-Z6FAH4XV.js';
9
9
  import { SubshellContentContainer } from './chunk-RX4UWZZR.js';
10
- import { PageTitleCaption, CenteredErrorState, StatCard, CardHeader, EmptyState } from './chunk-BHR7IV72.js';
10
+ import { PageTitleCaption, CenteredErrorState, StatCard, CardHeader, EmptyState } from './chunk-XUYBOO32.js';
11
11
  import { useRouterContext } from './chunk-Q7DJKLEN.js';
12
12
  import { useElevasisServices } from './chunk-IRW7JMQ4.js';
13
13
  import { Stack, Paper, Text, Anchor, Group, Title, ActionIcon, Divider, Box, SimpleGrid, Badge, Card, Button, Center, Loader, Alert, Table, TextInput, Checkbox, Pagination, Textarea, Select, SegmentedControl } from '@mantine/core';
@@ -50,15 +50,10 @@ var LeadGenSidebar = ({ children } = {}) => {
50
50
  };
51
51
  var leadGenManifest = {
52
52
  key: "lead-gen",
53
- featureId: "lead-gen",
53
+ featureId: "sales.lead-gen",
54
54
  capabilityIds: ["leadgen.lists.manage"],
55
- sidebar: LeadGenSidebar,
56
- subshellRoutes: ["/lead-gen"],
57
- navEntry: {
58
- label: "Lead Gen",
59
- icon: IconTarget,
60
- link: "/lead-gen"
61
- }
55
+ icon: IconTarget,
56
+ sidebar: LeadGenSidebar
62
57
  };
63
58
  var LEAD_GEN_ROUTE_LINKS = [
64
59
  { label: "Overview", to: "/lead-gen" },
@@ -1,9 +1,9 @@
1
1
  import { PRESETS, getPreset, generateShades, mantineThemeOverride, createCssVariablesResolver, PresetsProvider } from './chunk-Q5HC6ENG.js';
2
2
  import { AppBackground } from './chunk-WLOQ4IBG.js';
3
- import { ElevasisCoreProvider } from './chunk-OUYH2SBS.js';
3
+ import { ElevasisCoreProvider } from './chunk-LVUCBY7X.js';
4
4
  import { ElevasisLoader } from './chunk-SZHARWKU.js';
5
5
  import { AppearanceProvider } from './chunk-QJ2KCHKX.js';
6
- import { getErrorInfo, formatErrorMessage, getErrorTitle } from './chunk-OD7GWIZS.js';
6
+ import { getErrorInfo, formatErrorMessage, getErrorTitle } from './chunk-SGXXJE52.js';
7
7
  import { useMemo, useEffect } from 'react';
8
8
  import { Loader, mergeThemeOverrides, MantineProvider } from '@mantine/core';
9
9
  import '@mantine/core/styles.css';
@@ -4,11 +4,11 @@ import { SubshellNavItem } from './chunk-CEWTOKE7.js';
4
4
  import { SubshellSidebarSection } from './chunk-IIMU5YAJ.js';
5
5
  import { FilterBar } from './chunk-PDHTXPSF.js';
6
6
  import { CustomModal } from './chunk-GBMNCNHX.js';
7
- import { useDealTasksDue, useDealsLookup, useCreateDealTask, useDealsSummary, useDeleteDeal, usePaginationState, useDeals, useTableSort, sortData, useTableSelection, useDealDetail, useCompany } from './chunk-FMFX4K6E.js';
7
+ import { useDealTasksDue, useDealsLookup, useCreateDealTask, useDealsSummary, useDeleteDeal, usePaginationState, useDeals, useTableSort, sortData, useTableSelection, useDealDetail, useCompany } from './chunk-7GG6OSD7.js';
8
8
  import { SubshellContentContainer } from './chunk-RX4UWZZR.js';
9
- import { CenteredErrorState, CardHeader, PageTitleCaption, EmptyState, ActivityTimeline } from './chunk-BHR7IV72.js';
9
+ import { CenteredErrorState, CardHeader, PageTitleCaption, EmptyState, ActivityTimeline } from './chunk-XUYBOO32.js';
10
10
  import { useRouterContext } from './chunk-Q7DJKLEN.js';
11
- import { PAGE_SIZE_DEFAULT, formatTimeAgo } from './chunk-OD7GWIZS.js';
11
+ import { PAGE_SIZE_DEFAULT, formatTimeAgo } from './chunk-SGXXJE52.js';
12
12
  import { useElevasisServices } from './chunk-IRW7JMQ4.js';
13
13
  import { Box, Stack, Group, Text, Badge, Center, Loader, UnstyledButton, Button, Modal, Title, Select, TextInput, Textarea, Paper, Alert, SimpleGrid, Table, Checkbox, Pagination, ActionIcon, Tabs, Card, Code, Divider, Anchor } from '@mantine/core';
14
14
  import { IconLayoutGrid, IconColumns, IconFileInvoice, IconAddressBook, IconTrophy, IconClockExclamation, IconUser, IconPlus, IconChecklist, IconAlertCircle, IconHistory, IconSearch, IconTargetArrow, IconAlertTriangle, IconArrowLeft, IconFileText, IconTrash, IconX, IconBuilding, IconCheckbox, IconCalendar, IconMail, IconPhone, IconArrowRight, IconNote } from '@tabler/icons-react';
@@ -664,15 +664,10 @@ function CrmOverview({
664
664
  }
665
665
  var crmManifest = {
666
666
  key: "crm",
667
- featureId: "crm",
667
+ featureId: "sales.crm",
668
668
  capabilityIds: ["crm.pipeline.manage"],
669
- sidebar: CrmSidebar,
670
- subshellRoutes: ["/crm"],
671
- navEntry: {
672
- label: "CRM",
673
- icon: IconAddressBook,
674
- link: "/crm"
675
- }
669
+ icon: IconAddressBook,
670
+ sidebar: CrmSidebar
676
671
  };
677
672
 
678
673
  // src/features/crm/pages/shared.ts
@@ -1,12 +1,12 @@
1
1
  import { ResourceHealthChart } from './chunk-LGKLC5MG.js';
2
- import { useCyberColors, HeroStatsRow } from './chunk-CTTY6FUT.js';
2
+ import { useCyberColors, HeroStatsRow } from './chunk-TSSKOQBX.js';
3
3
  import { AppShellCenteredContainer, AppShellLoader } from './chunk-M25JL54Z.js';
4
4
  import { STATUS_COLORS, getStatusIcon, formatDuration, getStatusColors, AGENT_CONSTANTS, shouldAnimateEdge, TIMELINE_CONSTANTS, calculateBarPosition, CONTAINER_CONSTANTS, useExecutionPath, useUnifiedWorkflowLayout, WORKFLOW_CONSTANTS, useReactFlowAgent } from './chunk-E4WQGJNS.js';
5
- import { useExecuteResource, useDashboardMetrics, useResources, useTimeRangeDates, useUnresolvedErrors, useRecentExecutionsByResource, useCommandQueue, useScheduledTasks, useResourcesHealth } from './chunk-FMFX4K6E.js';
5
+ import { useExecuteResource, useDashboardMetrics, useResources, useTimeRangeDates, useUnresolvedErrors, useRecentExecutionsByResource, useCommandQueue, useScheduledTasks, useResourcesHealth } from './chunk-7GG6OSD7.js';
6
6
  import { Graph_module_css_default, useDirectedChainHighlighting, useNodeSelection, useFitViewTrigger } from './chunk-22UVE3RA.js';
7
7
  import { glassBase } from './chunk-Q5HC6ENG.js';
8
- import { GlowDot, CardHeader, EmptyState, PageTitleCaption, TabCountBadge } from './chunk-BHR7IV72.js';
9
- import { formatTimeAgo, getTimeRangeDates, formatRelativeTime } from './chunk-OD7GWIZS.js';
8
+ import { GlowDot, CardHeader, EmptyState, PageTitleCaption, TabCountBadge } from './chunk-XUYBOO32.js';
9
+ import { formatTimeAgo, getTimeRangeDates, formatRelativeTime } from './chunk-SGXXJE52.js';
10
10
  import { ResourceStatusColors } from './chunk-KRWALB24.js';
11
11
  import { useInitialization } from './chunk-DK2HVHCY.js';
12
12
  import { memo, useMemo, useEffect, useState, useCallback, Fragment } from 'react';
@@ -1406,15 +1406,13 @@ function RunResourceButton({
1406
1406
  label,
1407
1407
  icon,
1408
1408
  color,
1409
- organizationModel,
1410
1409
  onSuccess,
1411
1410
  onError
1412
1411
  }) {
1413
1412
  const [modalState, setModalState] = useState(null);
1414
1413
  const { execute, isPending } = useExecuteResource({ resourceId, resourceType });
1415
- const mapping = organizationModel?.resourceMappings?.find((m) => m.resourceId === resourceId);
1416
- const resolvedLabel = label ?? mapping?.label ?? "Run";
1417
- const resolvedColor = color ?? mapping?.color ?? void 0;
1414
+ const resolvedLabel = label ?? "Run";
1415
+ const resolvedColor = color ?? void 0;
1418
1416
  const handleExecute = useCallback(
1419
1417
  async (input) => {
1420
1418
  try {
@@ -1,7 +1,7 @@
1
- import { useCyberColors, CyberLegendItem, CyberAreaChart } from './chunk-CTTY6FUT.js';
2
- import { useResourcesHealth } from './chunk-FMFX4K6E.js';
3
- import { CardHeader, EmptyState } from './chunk-BHR7IV72.js';
4
- import { getTimeRangeDates, formatBucketTime } from './chunk-OD7GWIZS.js';
1
+ import { useCyberColors, CyberLegendItem, CyberAreaChart } from './chunk-TSSKOQBX.js';
2
+ import { useResourcesHealth } from './chunk-7GG6OSD7.js';
3
+ import { CardHeader, EmptyState } from './chunk-XUYBOO32.js';
4
+ import { getTimeRangeDates, formatBucketTime } from './chunk-SGXXJE52.js';
5
5
  import { Paper, Center, Loader, Group } from '@mantine/core';
6
6
  import { IconActivity, IconChartBar } from '@tabler/icons-react';
7
7
  import { useMemo } from 'react';
@@ -0,0 +1,24 @@
1
+ import { useElevasisFeatures } from './chunk-VQESMHQV.js';
2
+ import { SubshellContainer, SubshellSidebar, SubshellRightSideContainer } from './chunk-RX4UWZZR.js';
3
+ import { FeatureUnavailableState } from './chunk-XUYBOO32.js';
4
+ import { useRouterContext } from './chunk-Q7DJKLEN.js';
5
+ import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
6
+
7
+ function FeatureShell({ children }) {
8
+ const { shellRuntime } = useElevasisFeatures();
9
+ const { currentPath } = useRouterContext();
10
+ const routeMatch = shellRuntime.resolveRoute(currentPath);
11
+ if (routeMatch.status === "hidden") {
12
+ return /* @__PURE__ */ jsx(FeatureUnavailableState, { path: currentPath });
13
+ }
14
+ if (routeMatch.status !== "matched" || !routeMatch.feature?.sidebar) {
15
+ return /* @__PURE__ */ jsx(Fragment, { children });
16
+ }
17
+ const SidebarComponent = routeMatch.feature.sidebar;
18
+ return /* @__PURE__ */ jsxs(SubshellContainer, { children: [
19
+ /* @__PURE__ */ jsx(SubshellSidebar, { width: 250, children: /* @__PURE__ */ jsx(SidebarComponent, {}) }),
20
+ /* @__PURE__ */ jsx(SubshellRightSideContainer, { children })
21
+ ] });
22
+ }
23
+
24
+ export { FeatureShell };