@elevasis/ui 2.7.0 → 2.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-T6R3V4GW.js → chunk-4JPW5U5I.js} +8 -9
- package/dist/{chunk-V6Z2U6ZV.js → chunk-4PHPENKX.js} +3044 -1753
- package/dist/chunk-7M2VOCYN.js +1 -0
- package/dist/{chunk-VGBMSGYC.js → chunk-7PDDPNQS.js} +1 -1
- package/dist/{chunk-X4HUZINF.js → chunk-AQQYVAFK.js} +23 -15
- package/dist/{chunk-YIWLA2B6.js → chunk-C2OFFC7J.js} +0 -1
- package/dist/{chunk-Z5RHDI7T.js → chunk-CTWYIRKW.js} +1 -2
- package/dist/{chunk-IFH4L6CR.js → chunk-F5QSLYUB.js} +4 -6
- package/dist/{chunk-6FDGVZFL.js → chunk-KGEYEUR5.js} +1 -3
- package/dist/{chunk-SMJLS23U.js → chunk-NYMKWGKN.js} +18 -1
- package/dist/{chunk-SPMKW4VO.js → chunk-OPT74SGF.js} +96 -82
- package/dist/{chunk-HRIJZKFL.js → chunk-UE5QQDCR.js} +7 -8
- package/dist/{chunk-N6GYYWY3.js → chunk-YCHZ4U5V.js} +10 -2
- package/dist/{chunk-SBND6P3L.js → chunk-ZZ35VSNF.js} +1 -3
- package/dist/components/index.d.ts +147 -70
- package/dist/components/index.js +17 -17
- package/dist/features/auth/index.d.ts +3 -3
- package/dist/features/crm/index.d.ts +66 -6
- package/dist/features/crm/index.js +5 -5
- package/dist/features/dashboard/index.js +5 -5
- package/dist/features/delivery/index.d.ts +69 -5
- package/dist/features/delivery/index.js +5 -5
- package/dist/features/lead-gen/index.d.ts +66 -6
- package/dist/features/lead-gen/index.js +8 -8
- package/dist/features/monitoring/index.d.ts +20 -1
- package/dist/features/monitoring/index.js +6 -6
- package/dist/features/operations/index.d.ts +20 -1
- package/dist/features/operations/index.js +7 -7
- package/dist/features/seo/index.d.ts +20 -1
- package/dist/features/seo/index.js +1 -1
- package/dist/features/settings/index.d.ts +20 -1
- package/dist/features/settings/index.js +5 -5
- package/dist/hooks/index.d.ts +7735 -7720
- package/dist/hooks/index.js +4 -4
- package/dist/hooks/published.d.ts +3493 -47
- package/dist/hooks/published.js +3 -3
- package/dist/index.d.ts +1416 -1375
- package/dist/index.js +4 -4
- package/dist/layout/index.d.ts +60 -2
- package/dist/layout/index.js +1 -1
- package/dist/provider/index.d.ts +30 -4
- package/dist/provider/index.js +2 -2
- package/dist/provider/published.d.ts +20 -2
- package/dist/provider/published.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-TENLM2GN.js +0 -1303
|
@@ -6984,68 +6984,6 @@ interface SortState {
|
|
|
6984
6984
|
direction: SortDirection;
|
|
6985
6985
|
}
|
|
6986
6986
|
|
|
6987
|
-
interface ActivityFilters$1 {
|
|
6988
|
-
activityType?: ActivityType | 'all';
|
|
6989
|
-
status?: ActivityStatus | 'all';
|
|
6990
|
-
search?: string;
|
|
6991
|
-
}
|
|
6992
|
-
|
|
6993
|
-
interface ExecutionLogsFilters$1 {
|
|
6994
|
-
resourceId: string | undefined;
|
|
6995
|
-
status: 'all' | ExecutionStatus;
|
|
6996
|
-
resourceStatus: 'all' | 'dev' | 'prod';
|
|
6997
|
-
}
|
|
6998
|
-
|
|
6999
|
-
interface CreateApiKeyResponse {
|
|
7000
|
-
id: string;
|
|
7001
|
-
key: string;
|
|
7002
|
-
message: string;
|
|
7003
|
-
}
|
|
7004
|
-
|
|
7005
|
-
/**
|
|
7006
|
-
* GET /api/credentials - List credentials
|
|
7007
|
-
*/
|
|
7008
|
-
declare const ListCredentialsResponseSchema = z.object({
|
|
7009
|
-
credentials: z.array(
|
|
7010
|
-
z.object({
|
|
7011
|
-
id: UuidSchema,
|
|
7012
|
-
name: z.string(),
|
|
7013
|
-
type: z.string(),
|
|
7014
|
-
provider: z.string().nullable(), // OAuth provider or null for non-OAuth
|
|
7015
|
-
createdAt: z.string().datetime()
|
|
7016
|
-
})
|
|
7017
|
-
)
|
|
7018
|
-
})
|
|
7019
|
-
|
|
7020
|
-
/** API response type for a single credential list item */
|
|
7021
|
-
type CredentialListItem = z.infer<typeof ListCredentialsResponseSchema>['credentials'][number]
|
|
7022
|
-
|
|
7023
|
-
interface CreateCredentialResponse {
|
|
7024
|
-
id: string;
|
|
7025
|
-
name: string;
|
|
7026
|
-
type: string;
|
|
7027
|
-
}
|
|
7028
|
-
|
|
7029
|
-
/**
|
|
7030
|
-
* Response shape for a single webhook endpoint.
|
|
7031
|
-
* NOT strict — response schemas allow extra fields for forward compatibility.
|
|
7032
|
-
*/
|
|
7033
|
-
declare const WebhookEndpointResponseSchema = z.object({
|
|
7034
|
-
id: UuidSchema,
|
|
7035
|
-
organizationId: UuidSchema,
|
|
7036
|
-
key: z.string(),
|
|
7037
|
-
name: z.string(),
|
|
7038
|
-
description: z.string().nullable(),
|
|
7039
|
-
resourceId: z.string().nullable(),
|
|
7040
|
-
status: WebhookEndpointStatusSchema,
|
|
7041
|
-
lastTriggeredAt: z.string().datetime().nullable(),
|
|
7042
|
-
requestCount: z.number().int().min(0),
|
|
7043
|
-
createdAt: z.string().datetime(),
|
|
7044
|
-
updatedAt: z.string().datetime()
|
|
7045
|
-
})
|
|
7046
|
-
|
|
7047
|
-
type WebhookEndpointResponse = z.infer<typeof WebhookEndpointResponseSchema>
|
|
7048
|
-
|
|
7049
6987
|
interface DocFile {
|
|
7050
6988
|
path: string;
|
|
7051
6989
|
frontmatter: {
|
|
@@ -7168,6 +7106,68 @@ interface CommandViewGraph$1 {
|
|
|
7168
7106
|
edges: CommandViewEdge$1[];
|
|
7169
7107
|
}
|
|
7170
7108
|
|
|
7109
|
+
interface CreateApiKeyResponse {
|
|
7110
|
+
id: string;
|
|
7111
|
+
key: string;
|
|
7112
|
+
message: string;
|
|
7113
|
+
}
|
|
7114
|
+
|
|
7115
|
+
/**
|
|
7116
|
+
* GET /api/credentials - List credentials
|
|
7117
|
+
*/
|
|
7118
|
+
declare const ListCredentialsResponseSchema = z.object({
|
|
7119
|
+
credentials: z.array(
|
|
7120
|
+
z.object({
|
|
7121
|
+
id: UuidSchema,
|
|
7122
|
+
name: z.string(),
|
|
7123
|
+
type: z.string(),
|
|
7124
|
+
provider: z.string().nullable(), // OAuth provider or null for non-OAuth
|
|
7125
|
+
createdAt: z.string().datetime()
|
|
7126
|
+
})
|
|
7127
|
+
)
|
|
7128
|
+
})
|
|
7129
|
+
|
|
7130
|
+
/** API response type for a single credential list item */
|
|
7131
|
+
type CredentialListItem = z.infer<typeof ListCredentialsResponseSchema>['credentials'][number]
|
|
7132
|
+
|
|
7133
|
+
interface CreateCredentialResponse {
|
|
7134
|
+
id: string;
|
|
7135
|
+
name: string;
|
|
7136
|
+
type: string;
|
|
7137
|
+
}
|
|
7138
|
+
|
|
7139
|
+
/**
|
|
7140
|
+
* Response shape for a single webhook endpoint.
|
|
7141
|
+
* NOT strict — response schemas allow extra fields for forward compatibility.
|
|
7142
|
+
*/
|
|
7143
|
+
declare const WebhookEndpointResponseSchema = z.object({
|
|
7144
|
+
id: UuidSchema,
|
|
7145
|
+
organizationId: UuidSchema,
|
|
7146
|
+
key: z.string(),
|
|
7147
|
+
name: z.string(),
|
|
7148
|
+
description: z.string().nullable(),
|
|
7149
|
+
resourceId: z.string().nullable(),
|
|
7150
|
+
status: WebhookEndpointStatusSchema,
|
|
7151
|
+
lastTriggeredAt: z.string().datetime().nullable(),
|
|
7152
|
+
requestCount: z.number().int().min(0),
|
|
7153
|
+
createdAt: z.string().datetime(),
|
|
7154
|
+
updatedAt: z.string().datetime()
|
|
7155
|
+
})
|
|
7156
|
+
|
|
7157
|
+
type WebhookEndpointResponse = z.infer<typeof WebhookEndpointResponseSchema>
|
|
7158
|
+
|
|
7159
|
+
interface ActivityFilters$1 {
|
|
7160
|
+
activityType?: ActivityType | 'all';
|
|
7161
|
+
status?: ActivityStatus | 'all';
|
|
7162
|
+
search?: string;
|
|
7163
|
+
}
|
|
7164
|
+
|
|
7165
|
+
interface ExecutionLogsFilters$1 {
|
|
7166
|
+
resourceId: string | undefined;
|
|
7167
|
+
status: 'all' | ExecutionStatus;
|
|
7168
|
+
resourceStatus: 'all' | 'dev' | 'prod';
|
|
7169
|
+
}
|
|
7170
|
+
|
|
7171
7171
|
interface SortableHeaderProps {
|
|
7172
7172
|
column: string;
|
|
7173
7173
|
children: React.ReactNode;
|
|
@@ -8637,11 +8637,51 @@ interface DealDrawerProps {
|
|
|
8637
8637
|
}
|
|
8638
8638
|
declare function DealDrawer({ deal, config, opened, onClose, renderActions }: DealDrawerProps): react_jsx_runtime.JSX.Element | null;
|
|
8639
8639
|
|
|
8640
|
-
|
|
8640
|
+
interface CrmSidebarProps {
|
|
8641
|
+
/** Replace the default `CrmSidebarMiddle` with custom middle content. Leave unset for the default layout. */
|
|
8642
|
+
children?: ReactNode;
|
|
8643
|
+
}
|
|
8644
|
+
declare const CrmSidebar: ({ children }?: CrmSidebarProps) => react_jsx_runtime.JSX.Element;
|
|
8641
8645
|
|
|
8642
8646
|
declare const CrmSidebarTop: () => react_jsx_runtime.JSX.Element;
|
|
8643
8647
|
|
|
8644
|
-
|
|
8648
|
+
/**
|
|
8649
|
+
* Shared nav-item shape used by feature sidebar middle components.
|
|
8650
|
+
*
|
|
8651
|
+
* Matches the subset of {@link SubshellNavItemProps} that the existing
|
|
8652
|
+
* hardcoded item arrays use. Consumers import this type alongside the
|
|
8653
|
+
* exported item arrays (e.g. `CRM_ITEMS`) to type their custom arrays.
|
|
8654
|
+
*
|
|
8655
|
+
* @example
|
|
8656
|
+
* import { NavItem, CRM_ITEMS } from '@elevasis/ui/features/crm'
|
|
8657
|
+
*
|
|
8658
|
+
* const customItems: NavItem[] = [
|
|
8659
|
+
* ...CRM_ITEMS,
|
|
8660
|
+
* { label: 'Reports', to: '/crm/reports', icon: IconFileText, exact: false },
|
|
8661
|
+
* ]
|
|
8662
|
+
*/
|
|
8663
|
+
interface NavItem {
|
|
8664
|
+
/** Display label for the nav entry. */
|
|
8665
|
+
label: string;
|
|
8666
|
+
/** Route path the item links to. */
|
|
8667
|
+
to: string;
|
|
8668
|
+
/** Tabler icon component (or any component accepting `size` + `style`). */
|
|
8669
|
+
icon: ComponentType<{
|
|
8670
|
+
size?: number;
|
|
8671
|
+
style?: React.CSSProperties;
|
|
8672
|
+
}>;
|
|
8673
|
+
/**
|
|
8674
|
+
* When `true`, the item is only active when the path matches exactly.
|
|
8675
|
+
* When `false`, it is active for any path that starts with `to`.
|
|
8676
|
+
*/
|
|
8677
|
+
exact: boolean;
|
|
8678
|
+
}
|
|
8679
|
+
|
|
8680
|
+
interface CrmSidebarMiddleProps {
|
|
8681
|
+
/** Override the default nav items. Defaults to {@link CRM_ITEMS}. */
|
|
8682
|
+
items?: NavItem[];
|
|
8683
|
+
}
|
|
8684
|
+
declare const CrmSidebarMiddle: ({ items }?: CrmSidebarMiddleProps) => react_jsx_runtime.JSX.Element;
|
|
8645
8685
|
|
|
8646
8686
|
interface PipelineStageSummary {
|
|
8647
8687
|
stage: DealStage;
|
|
@@ -8777,14 +8817,33 @@ interface FeatureNavEntry {
|
|
|
8777
8817
|
}
|
|
8778
8818
|
type FeatureSidebarComponent = ComponentType;
|
|
8779
8819
|
interface FeatureModule {
|
|
8820
|
+
/** Unique stable identifier for this feature (e.g. `'crm'`, `'delivery'`). */
|
|
8780
8821
|
key: string;
|
|
8781
|
-
|
|
8822
|
+
/** Feature key used for access-flag gating in the organization model. */
|
|
8782
8823
|
accessFeatureKey: OrganizationModelFeatureKey;
|
|
8824
|
+
/**
|
|
8825
|
+
* Semantic domain identifiers contributed by this feature.
|
|
8826
|
+
* Merged with surface-derived domain IDs during resolution.
|
|
8827
|
+
*/
|
|
8783
8828
|
domainIds?: OrganizationModelSemanticDomain['id'][];
|
|
8829
|
+
/**
|
|
8830
|
+
* Capability identifiers contributed by this feature.
|
|
8831
|
+
* Merged into `ResolvedFeatureSemantics.capabilityIds` at resolution time.
|
|
8832
|
+
* Not queried at runtime — kept for semantic graph completeness so that
|
|
8833
|
+
* capability membership is fully represented in the resolved model even when
|
|
8834
|
+
* a surface does not declare it directly.
|
|
8835
|
+
*/
|
|
8784
8836
|
capabilityIds?: string[];
|
|
8837
|
+
/** Top-level navigation entry rendered in the app shell when this feature is enabled. */
|
|
8785
8838
|
navEntry?: FeatureNavEntry;
|
|
8839
|
+
/** Sidebar component rendered when a matching subshell route is active. */
|
|
8786
8840
|
sidebar?: FeatureSidebarComponent;
|
|
8841
|
+
/** Route path prefixes that activate this feature's sidebar and subshell context. */
|
|
8787
8842
|
subshellRoutes?: string[];
|
|
8843
|
+
/**
|
|
8844
|
+
* Operations-only bridge surface connecting this feature to the organization graph.
|
|
8845
|
+
* Ignored by all other features. Only one manifest in the registry should set this.
|
|
8846
|
+
*/
|
|
8788
8847
|
organizationGraph?: OrganizationGraphFeatureBridge;
|
|
8789
8848
|
}
|
|
8790
8849
|
interface OrganizationGraphFeatureBridge {
|
|
@@ -8802,11 +8861,19 @@ interface DealDetailPageProps {
|
|
|
8802
8861
|
}
|
|
8803
8862
|
declare function DealDetailPage({ dealId, renderActions, onDealLoaded }: DealDetailPageProps): react_jsx_runtime.JSX.Element;
|
|
8804
8863
|
|
|
8805
|
-
|
|
8864
|
+
interface LeadGenSidebarProps {
|
|
8865
|
+
/** Replace the default `LeadGenSidebarMiddle` with custom middle content. Leave unset for the default layout. */
|
|
8866
|
+
children?: ReactNode;
|
|
8867
|
+
}
|
|
8868
|
+
declare const LeadGenSidebar: ({ children }?: LeadGenSidebarProps) => react_jsx_runtime.JSX.Element;
|
|
8806
8869
|
|
|
8807
8870
|
declare const LeadGenSidebarTop: () => react_jsx_runtime.JSX.Element;
|
|
8808
8871
|
|
|
8809
|
-
|
|
8872
|
+
interface LeadGenSidebarMiddleProps {
|
|
8873
|
+
/** Override the default nav items. Defaults to {@link LEAD_GEN_ITEMS}. */
|
|
8874
|
+
items?: NavItem[];
|
|
8875
|
+
}
|
|
8876
|
+
declare const LeadGenSidebarMiddle: ({ items }?: LeadGenSidebarMiddleProps) => react_jsx_runtime.JSX.Element;
|
|
8810
8877
|
|
|
8811
8878
|
declare const leadGenManifest: FeatureModule;
|
|
8812
8879
|
|
|
@@ -8888,15 +8955,25 @@ interface TaskCardProps {
|
|
|
8888
8955
|
}
|
|
8889
8956
|
declare function TaskCard({ task }: TaskCardProps): react_jsx_runtime.JSX.Element;
|
|
8890
8957
|
|
|
8891
|
-
|
|
8958
|
+
interface ProjectsSidebarProps {
|
|
8959
|
+
/** Replace the default `ProjectsSidebarMiddle` with custom middle content. Leave unset for the default layout. */
|
|
8960
|
+
children?: ReactNode;
|
|
8961
|
+
}
|
|
8962
|
+
declare const ProjectsSidebar: ({ children }?: ProjectsSidebarProps) => react_jsx_runtime.JSX.Element;
|
|
8892
8963
|
|
|
8893
8964
|
declare const ProjectsSidebarTop: () => react_jsx_runtime.JSX.Element;
|
|
8894
8965
|
|
|
8895
8966
|
interface ProjectsSidebarMiddleProps {
|
|
8896
8967
|
currentPath?: string;
|
|
8897
8968
|
onNavigate?: (to: string) => void;
|
|
8898
|
-
}
|
|
8899
|
-
|
|
8969
|
+
/** Override the project section items. Defaults to {@link DELIVERY_PROJECT_ITEMS}. */
|
|
8970
|
+
projectItems?: NavItem[];
|
|
8971
|
+
/** Override the work section items. Defaults to {@link DELIVERY_WORK_ITEMS}. */
|
|
8972
|
+
workItems?: NavItem[];
|
|
8973
|
+
/** Override the communication section items. Defaults to {@link DELIVERY_COMMUNICATION_ITEMS}. */
|
|
8974
|
+
communicationItems?: NavItem[];
|
|
8975
|
+
}
|
|
8976
|
+
declare const ProjectsSidebarMiddle: ({ currentPath, onNavigate, projectItems, workItems, communicationItems }?: ProjectsSidebarMiddleProps) => react_jsx_runtime.JSX.Element;
|
|
8900
8977
|
|
|
8901
8978
|
declare const deliveryManifest: FeatureModule;
|
|
8902
8979
|
|
package/dist/components/index.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import '../chunk-
|
|
1
|
+
import '../chunk-NYMKWGKN.js';
|
|
2
2
|
import { useBreadcrumbs } from '../chunk-MG3NF7QL.js';
|
|
3
|
-
export { AllTasksPage, HealthStatusCard, MilestoneTimeline, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, TaskCard, UpcomingMilestonesPage, calculateProgress, deliveryManifest, formatStatusLabel, milestoneStatusColors, noteTypeColors, projectStatusColors, taskStatusColors, taskTypeColors } from '../chunk-
|
|
4
|
-
export { LEAD_GEN_ROUTE_LINKS, LIST_TEMPLATE_OPTIONS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenDeliverabilityPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, buildListConfig, getEnrichmentColor, getStatusColor, leadGenManifest, useDeleteLists } from '../chunk-
|
|
5
|
-
export { ActionModal, AgentDefinitionDisplay, AgentExecutionLogs, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, CheckpointGroup, CollapsibleJsonSection, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, ConfigCard, ContentSections, ContextUsageBadge, ContractDisplay, ExecutionErrorSection, FormFieldRenderer, LogEntry, LogGroup, NewKnowledgeMapEdge, NewKnowledgeMapGraph, NewKnowledgeMapNode, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, ResourceDefinitionSection, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceNotFoundState, SessionMemory, ToolsListDisplay, WorkflowDefinitionDisplay, WorkflowExecutionLogs, getExecutionStatusConfig, getIcon, getLogLevelConfig, iconMap, operationsManifest, useNewKnowledgeMapLayout } from '../chunk-
|
|
3
|
+
export { AllTasksPage, HealthStatusCard, MilestoneTimeline, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, TaskCard, UpcomingMilestonesPage, calculateProgress, deliveryManifest, formatStatusLabel, milestoneStatusColors, noteTypeColors, projectStatusColors, taskStatusColors, taskTypeColors } from '../chunk-AQQYVAFK.js';
|
|
4
|
+
export { LEAD_GEN_ROUTE_LINKS, LIST_TEMPLATE_OPTIONS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenDeliverabilityPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, buildListConfig, getEnrichmentColor, getStatusColor, leadGenManifest, useDeleteLists } from '../chunk-4JPW5U5I.js';
|
|
5
|
+
export { ActionModal, AgentDefinitionDisplay, AgentExecutionLogs, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, CheckpointGroup, CollapsibleJsonSection, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, ConfigCard, ContentSections, ContextUsageBadge, ContractDisplay, ExecutionErrorSection, FormFieldRenderer, LogEntry, LogGroup, NewKnowledgeMapEdge, NewKnowledgeMapGraph, NewKnowledgeMapNode, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, ResourceDefinitionSection, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceNotFoundState, SessionMemory, ToolsListDisplay, WorkflowDefinitionDisplay, WorkflowExecutionLogs, getExecutionStatusConfig, getIcon, getLogLevelConfig, iconMap, operationsManifest, useNewKnowledgeMapLayout } from '../chunk-F5QSLYUB.js';
|
|
6
6
|
import '../chunk-ROSMICXG.js';
|
|
7
7
|
import { SubshellLoader, CollapsibleSidebarGroup } from '../chunk-IDACMRGQ.js';
|
|
8
|
-
import { NotificationList } from '../chunk-
|
|
9
|
-
export { ActivityCard, ActivityFilters as ActivityFiltersBar, ActivityTable, BusinessImpactCard, CostBreakdownCard, CostByModelTable, CostMetricsCard, ErrorAnalysisCard, ErrorBreakdownTable, ExecutionBreakdownTable, ExecutionHealthCard, ExecutionLogsFilters as ExecutionLogsFilterBar, ExecutionLogsTable, NotificationItem, NotificationList, monitoringManifest } from '../chunk-
|
|
10
|
-
export { ResourceHealthPanel } from '../chunk-
|
|
11
|
-
export { SEOSidebar, SEOSidebarMiddle, SEOSidebarTop, seoManifest } from '../chunk-
|
|
12
|
-
export { CreateCredentialModal, CredentialList, CredentialSettings, MembershipFeaturePanel, MembershipStatusBadge, OAuthConnectModal, OrganizationMembershipsList, WebhookUrlDisplayModal, settingsManifest } from '../chunk-
|
|
13
|
-
export { ActivityFeedWidget, CrmOverview, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, DealDetailPage, DealsListPage, MetricsStrip, MyTasksPanel, PIPELINE_FUNNEL_ORDER, PipelineFunnelWidget, QuickCreateActions, SAVED_VIEW_PRESETS, SavedViewsPanel, TasksDueWidget, crmManifest, useCrmPipelineSummary, useCrmQuickMetrics, useRecentCrmActivity } from '../chunk-
|
|
8
|
+
import { NotificationList } from '../chunk-ZZ35VSNF.js';
|
|
9
|
+
export { ActivityCard, ActivityFilters as ActivityFiltersBar, ActivityTable, BusinessImpactCard, CostBreakdownCard, CostByModelTable, CostMetricsCard, ErrorAnalysisCard, ErrorBreakdownTable, ExecutionBreakdownTable, ExecutionHealthCard, ExecutionLogsFilters as ExecutionLogsFilterBar, ExecutionLogsTable, NotificationItem, NotificationList, monitoringManifest } from '../chunk-ZZ35VSNF.js';
|
|
10
|
+
export { ResourceHealthPanel } from '../chunk-7PDDPNQS.js';
|
|
11
|
+
export { SEOSidebar, SEOSidebarMiddle, SEOSidebarTop, seoManifest } from '../chunk-C2OFFC7J.js';
|
|
12
|
+
export { CreateCredentialModal, CredentialList, CredentialSettings, MembershipFeaturePanel, MembershipStatusBadge, OAuthConnectModal, OrganizationMembershipsList, WebhookUrlDisplayModal, settingsManifest } from '../chunk-KGEYEUR5.js';
|
|
13
|
+
export { ActivityFeedWidget, CrmOverview, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, DealDetailPage, DealsListPage, MetricsStrip, MyTasksPanel, PIPELINE_FUNNEL_ORDER, PipelineFunnelWidget, QuickCreateActions, SAVED_VIEW_PRESETS, SavedViewsPanel, TasksDueWidget, crmManifest, useCrmPipelineSummary, useCrmQuickMetrics, useRecentCrmActivity } from '../chunk-UE5QQDCR.js';
|
|
14
14
|
export { SortableHeader, TableSelectionToolbar } from '../chunk-TUMSNGTX.js';
|
|
15
15
|
import { PageContainer } from '../chunk-BZZCNLT6.js';
|
|
16
16
|
import { SubshellNavItem } from '../chunk-27COZ5AH.js';
|
|
@@ -18,23 +18,23 @@ import { FilterBar } from '../chunk-PDHTXPSF.js';
|
|
|
18
18
|
export { FilterBar } from '../chunk-PDHTXPSF.js';
|
|
19
19
|
import { CustomModal } from '../chunk-GBMNCNHX.js';
|
|
20
20
|
export { ConfirmationInputModal, ConfirmationModal, CustomModal } from '../chunk-GBMNCNHX.js';
|
|
21
|
-
import { BaseNode, useGraphTheme, BaseEdge, GraphBackground, GraphLegend, GraphFitViewButton } from '../chunk-
|
|
22
|
-
export { AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationEdge, AgentIterationNode, BaseEdge, BaseNode, EmptyVisualizer, ExecutionStats, ExecutionStatusBadge, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, VisualizerContainer, WorkflowExecutionTimeline, getGraphBackgroundStyles, useGraphBackgroundStyles, useGraphTheme } from '../chunk-
|
|
21
|
+
import { BaseNode, useGraphTheme, BaseEdge, GraphBackground, GraphLegend, GraphFitViewButton } from '../chunk-CTWYIRKW.js';
|
|
22
|
+
export { AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationEdge, AgentIterationNode, BaseEdge, BaseNode, EmptyVisualizer, ExecutionStats, ExecutionStatusBadge, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, VisualizerContainer, WorkflowExecutionTimeline, getGraphBackgroundStyles, useGraphBackgroundStyles, useGraphTheme } from '../chunk-CTWYIRKW.js';
|
|
23
23
|
export { ResourceHealthChart, getHealthColor } from '../chunk-LGKLC5MG.js';
|
|
24
24
|
import '../chunk-KFICYU6S.js';
|
|
25
25
|
import { AppShellLoader } from '../chunk-YEX4MQSY.js';
|
|
26
26
|
import '../chunk-VNUOQQNY.js';
|
|
27
27
|
export { CONTAINER_CONSTANTS, SHARED_VIZ_CONSTANTS } from '../chunk-XA34RETF.js';
|
|
28
|
-
import
|
|
29
|
-
import { useCommandViewLayout, usePaginationState, useDeploymentDocs, useResources, useCreateSchedule, useListSchedules, usePauseSchedule, useResumeSchedule, useCancelSchedule, useDeleteSchedule, useDealNotes, useCreateDealNote, useDeals, useSyncDealStage, dealKeys, useMarkAllAsRead, useNotifications, showErrorNotification, showSuccessNotification, showApiErrorNotification } from '../chunk-
|
|
30
|
-
export { showApiErrorNotification, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification } from '../chunk-
|
|
28
|
+
import '../chunk-7M2VOCYN.js';
|
|
29
|
+
import { useCommandViewLayout, useUpdateApiKey, useDeleteApiKey, useCreateApiKey, useListApiKeys, usePaginationState, useActivateDeployment, useDeactivateDeployment, useDeleteDeployment, useListDeployments, useDeploymentDocs, useResources, useCreateSchedule, useListSchedules, usePauseSchedule, useResumeSchedule, useCancelSchedule, useDeleteSchedule, useDealNotes, useCreateDealNote, useDeals, useSyncDealStage, dealKeys, useMarkAllAsRead, useNotifications, showErrorNotification, showSuccessNotification, showApiErrorNotification } from '../chunk-4PHPENKX.js';
|
|
30
|
+
export { showApiErrorNotification, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification } from '../chunk-4PHPENKX.js';
|
|
31
31
|
import '../chunk-LXHZYSMQ.js';
|
|
32
32
|
import { Graph_module_css_default, useDirectedChainHighlighting, useNodeSelection, GRAPH_CONSTANTS } from '../chunk-22UVE3RA.js';
|
|
33
33
|
export { Graph_module_css_default as graphStyles } from '../chunk-22UVE3RA.js';
|
|
34
|
-
import '../chunk-
|
|
34
|
+
import '../chunk-YCHZ4U5V.js';
|
|
35
35
|
import '../chunk-47YILFON.js';
|
|
36
36
|
import '../chunk-CYXZHBP4.js';
|
|
37
|
-
import '../chunk-
|
|
37
|
+
import '../chunk-OPT74SGF.js';
|
|
38
38
|
import { SubshellContainer, SubshellSidebar, SubshellRightSideContainer, SubshellContentContainer } from '../chunk-RX4UWZZR.js';
|
|
39
39
|
import { ListSkeleton, EmptyState, PageTitleCaption, StatCard, CenteredErrorState, CardHeader, ActivityTimeline } from '../chunk-Y3D3WFJG.js';
|
|
40
40
|
export { APIErrorAlert, ActivityTimeline, CardHeader, CenteredErrorState, CollapsibleSection, ContextViewer, CustomSelector, DetailCardSkeleton, ElevasisLoader, EmptyState, FeatureUnavailableState, GlowDot, JsonViewer, ListSkeleton, PageNotFound, PageTitleCaption, ResourceCard, StatCard, StatCardSkeleton, StatsCardSkeleton, StatusBadge, TabCountBadge, TimeRangeSelector, TrendIndicator, catalogItemToResourceDefinition } from '../chunk-Y3D3WFJG.js';
|
|
@@ -2708,7 +2708,7 @@ interface FeatureGuardProps {
|
|
|
2708
2708
|
deniedMessage?: string;
|
|
2709
2709
|
/**
|
|
2710
2710
|
* The `useFeatureAccess` hook instance to use for feature flag resolution.
|
|
2711
|
-
* Must be created via `
|
|
2711
|
+
* Must be created via `createFeatureAccessHook` from `@repo/ui/hooks`.
|
|
2712
2712
|
*/
|
|
2713
2713
|
useFeatureAccess: UseFeatureAccessHook;
|
|
2714
2714
|
}
|
|
@@ -2716,7 +2716,7 @@ interface FeatureGuardProps {
|
|
|
2716
2716
|
* Route guard that restricts access to a named feature.
|
|
2717
2717
|
*
|
|
2718
2718
|
* Reads feature flags from the provided `useFeatureAccess` hook instance
|
|
2719
|
-
* (created via `
|
|
2719
|
+
* (created via `createFeatureAccessHook` from `@repo/ui/hooks`). When the
|
|
2720
2720
|
* feature is not allowed, shows a Mantine notification and redirects to '/'.
|
|
2721
2721
|
*
|
|
2722
2722
|
* The `restrictedBy === 'membership'` branch surfaces a personal access
|
|
@@ -2725,7 +2725,7 @@ interface FeatureGuardProps {
|
|
|
2725
2725
|
* @example
|
|
2726
2726
|
* ```tsx
|
|
2727
2727
|
* // In your app, create the hook once:
|
|
2728
|
-
* export const useFeatureAccess =
|
|
2728
|
+
* export const useFeatureAccess = createFeatureAccessHook({ useInitialization, useOrganization })
|
|
2729
2729
|
*
|
|
2730
2730
|
* // Then use the guard:
|
|
2731
2731
|
* function MonitoringLayout() {
|
|
@@ -1,12 +1,53 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import { z } from 'zod';
|
|
3
2
|
import { ReactNode, ComponentType } from 'react';
|
|
3
|
+
import { z } from 'zod';
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
interface CrmSidebarProps {
|
|
6
|
+
/** Replace the default `CrmSidebarMiddle` with custom middle content. Leave unset for the default layout. */
|
|
7
|
+
children?: ReactNode;
|
|
8
|
+
}
|
|
9
|
+
declare const CrmSidebar: ({ children }?: CrmSidebarProps) => react_jsx_runtime.JSX.Element;
|
|
6
10
|
|
|
7
11
|
declare const CrmSidebarTop: () => react_jsx_runtime.JSX.Element;
|
|
8
12
|
|
|
9
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Shared nav-item shape used by feature sidebar middle components.
|
|
15
|
+
*
|
|
16
|
+
* Matches the subset of {@link SubshellNavItemProps} that the existing
|
|
17
|
+
* hardcoded item arrays use. Consumers import this type alongside the
|
|
18
|
+
* exported item arrays (e.g. `CRM_ITEMS`) to type their custom arrays.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* import { NavItem, CRM_ITEMS } from '@elevasis/ui/features/crm'
|
|
22
|
+
*
|
|
23
|
+
* const customItems: NavItem[] = [
|
|
24
|
+
* ...CRM_ITEMS,
|
|
25
|
+
* { label: 'Reports', to: '/crm/reports', icon: IconFileText, exact: false },
|
|
26
|
+
* ]
|
|
27
|
+
*/
|
|
28
|
+
interface NavItem {
|
|
29
|
+
/** Display label for the nav entry. */
|
|
30
|
+
label: string;
|
|
31
|
+
/** Route path the item links to. */
|
|
32
|
+
to: string;
|
|
33
|
+
/** Tabler icon component (or any component accepting `size` + `style`). */
|
|
34
|
+
icon: ComponentType<{
|
|
35
|
+
size?: number;
|
|
36
|
+
style?: React.CSSProperties;
|
|
37
|
+
}>;
|
|
38
|
+
/**
|
|
39
|
+
* When `true`, the item is only active when the path matches exactly.
|
|
40
|
+
* When `false`, it is active for any path that starts with `to`.
|
|
41
|
+
*/
|
|
42
|
+
exact: boolean;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
declare const CRM_ITEMS: NavItem[];
|
|
46
|
+
interface CrmSidebarMiddleProps {
|
|
47
|
+
/** Override the default nav items. Defaults to {@link CRM_ITEMS}. */
|
|
48
|
+
items?: NavItem[];
|
|
49
|
+
}
|
|
50
|
+
declare const CrmSidebarMiddle: ({ items }?: CrmSidebarMiddleProps) => react_jsx_runtime.JSX.Element;
|
|
10
51
|
|
|
11
52
|
type Json = string | number | boolean | null | {
|
|
12
53
|
[key: string]: Json | undefined;
|
|
@@ -2821,14 +2862,33 @@ interface FeatureNavEntry {
|
|
|
2821
2862
|
}
|
|
2822
2863
|
type FeatureSidebarComponent = ComponentType;
|
|
2823
2864
|
interface FeatureModule {
|
|
2865
|
+
/** Unique stable identifier for this feature (e.g. `'crm'`, `'delivery'`). */
|
|
2824
2866
|
key: string;
|
|
2825
|
-
|
|
2867
|
+
/** Feature key used for access-flag gating in the organization model. */
|
|
2826
2868
|
accessFeatureKey: OrganizationModelFeatureKey;
|
|
2869
|
+
/**
|
|
2870
|
+
* Semantic domain identifiers contributed by this feature.
|
|
2871
|
+
* Merged with surface-derived domain IDs during resolution.
|
|
2872
|
+
*/
|
|
2827
2873
|
domainIds?: OrganizationModelSemanticDomain['id'][];
|
|
2874
|
+
/**
|
|
2875
|
+
* Capability identifiers contributed by this feature.
|
|
2876
|
+
* Merged into `ResolvedFeatureSemantics.capabilityIds` at resolution time.
|
|
2877
|
+
* Not queried at runtime — kept for semantic graph completeness so that
|
|
2878
|
+
* capability membership is fully represented in the resolved model even when
|
|
2879
|
+
* a surface does not declare it directly.
|
|
2880
|
+
*/
|
|
2828
2881
|
capabilityIds?: string[];
|
|
2882
|
+
/** Top-level navigation entry rendered in the app shell when this feature is enabled. */
|
|
2829
2883
|
navEntry?: FeatureNavEntry;
|
|
2884
|
+
/** Sidebar component rendered when a matching subshell route is active. */
|
|
2830
2885
|
sidebar?: FeatureSidebarComponent;
|
|
2886
|
+
/** Route path prefixes that activate this feature's sidebar and subshell context. */
|
|
2831
2887
|
subshellRoutes?: string[];
|
|
2888
|
+
/**
|
|
2889
|
+
* Operations-only bridge surface connecting this feature to the organization graph.
|
|
2890
|
+
* Ignored by all other features. Only one manifest in the registry should set this.
|
|
2891
|
+
*/
|
|
2832
2892
|
organizationGraph?: OrganizationGraphFeatureBridge;
|
|
2833
2893
|
}
|
|
2834
2894
|
interface OrganizationGraphFeatureBridge {
|
|
@@ -2853,5 +2913,5 @@ interface DealDetailPageProps {
|
|
|
2853
2913
|
}
|
|
2854
2914
|
declare function DealDetailPage({ dealId, renderActions, onDealLoaded }: DealDetailPageProps): react_jsx_runtime.JSX.Element;
|
|
2855
2915
|
|
|
2856
|
-
export { ActivityFeedWidget, CrmOverview, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DealDetailPage, DealsListPage, MetricsStrip, MyTasksPanel, PIPELINE_FUNNEL_ORDER, PipelineFunnelWidget, QuickCreateActions, SAVED_VIEW_PRESETS, SavedViewsPanel, TasksDueWidget, crmManifest, formatDealStageLabel, useCrmPipelineSummary, useCrmQuickMetrics, useRecentCrmActivity };
|
|
2857
|
-
export type { ActivityFeedWidgetProps, RecentActivityEntry as CrmActivityEntry, CrmActivityKind, CrmOverviewProps, CrmQuickMetrics, MyTasksPanelProps, PipelineFunnelWidgetProps, PipelineStageSummary, QuickCreateActionsProps, SavedViewPreset, SavedViewsPanelProps, TasksDueWidgetProps };
|
|
2916
|
+
export { ActivityFeedWidget, CRM_ITEMS, CrmOverview, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DealDetailPage, DealsListPage, MetricsStrip, MyTasksPanel, PIPELINE_FUNNEL_ORDER, PipelineFunnelWidget, QuickCreateActions, SAVED_VIEW_PRESETS, SavedViewsPanel, TasksDueWidget, crmManifest, formatDealStageLabel, useCrmPipelineSummary, useCrmQuickMetrics, useRecentCrmActivity };
|
|
2917
|
+
export type { ActivityFeedWidgetProps, RecentActivityEntry as CrmActivityEntry, CrmActivityKind, CrmOverviewProps, CrmQuickMetrics, CrmSidebarMiddleProps, MyTasksPanelProps, PipelineFunnelWidgetProps, PipelineStageSummary, QuickCreateActionsProps, SavedViewPreset, SavedViewsPanelProps, TasksDueWidgetProps };
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export { ActivityFeedWidget, CrmOverview, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DealDetailPage, DealsListPage, MetricsStrip, MyTasksPanel, PIPELINE_FUNNEL_ORDER, PipelineFunnelWidget, QuickCreateActions, SAVED_VIEW_PRESETS, SavedViewsPanel, TasksDueWidget, crmManifest, formatDealStageLabel, useCrmPipelineSummary, useCrmQuickMetrics, useRecentCrmActivity } from '../../chunk-
|
|
1
|
+
export { ActivityFeedWidget, CRM_ITEMS, CrmOverview, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DealDetailPage, DealsListPage, MetricsStrip, MyTasksPanel, PIPELINE_FUNNEL_ORDER, PipelineFunnelWidget, QuickCreateActions, SAVED_VIEW_PRESETS, SavedViewsPanel, TasksDueWidget, crmManifest, formatDealStageLabel, useCrmPipelineSummary, useCrmQuickMetrics, useRecentCrmActivity } from '../../chunk-UE5QQDCR.js';
|
|
2
2
|
import '../../chunk-TUMSNGTX.js';
|
|
3
3
|
import '../../chunk-BZZCNLT6.js';
|
|
4
4
|
import '../../chunk-27COZ5AH.js';
|
|
5
5
|
import '../../chunk-PDHTXPSF.js';
|
|
6
6
|
import '../../chunk-GBMNCNHX.js';
|
|
7
|
-
import '../../chunk-
|
|
8
|
-
import '../../chunk-
|
|
7
|
+
import '../../chunk-7M2VOCYN.js';
|
|
8
|
+
import '../../chunk-4PHPENKX.js';
|
|
9
9
|
import '../../chunk-LXHZYSMQ.js';
|
|
10
10
|
import '../../chunk-22UVE3RA.js';
|
|
11
|
-
import '../../chunk-
|
|
11
|
+
import '../../chunk-YCHZ4U5V.js';
|
|
12
12
|
import '../../chunk-47YILFON.js';
|
|
13
13
|
import '../../chunk-CYXZHBP4.js';
|
|
14
|
-
import '../../chunk-
|
|
14
|
+
import '../../chunk-OPT74SGF.js';
|
|
15
15
|
import '../../chunk-RX4UWZZR.js';
|
|
16
16
|
import '../../chunk-Y3D3WFJG.js';
|
|
17
17
|
import '../../chunk-3KMDHCAR.js';
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
export { Dashboard, OperationsOverview, RecentExecutionsByResource, ResourceOverview, UnresolvedErrorsTeaser } from '../../chunk-
|
|
1
|
+
export { Dashboard, OperationsOverview, RecentExecutionsByResource, ResourceOverview, UnresolvedErrorsTeaser } from '../../chunk-CTWYIRKW.js';
|
|
2
2
|
import '../../chunk-LGKLC5MG.js';
|
|
3
3
|
import '../../chunk-KFICYU6S.js';
|
|
4
4
|
import '../../chunk-YEX4MQSY.js';
|
|
5
5
|
import '../../chunk-XA34RETF.js';
|
|
6
|
-
import '../../chunk-
|
|
7
|
-
import '../../chunk-
|
|
6
|
+
import '../../chunk-7M2VOCYN.js';
|
|
7
|
+
import '../../chunk-4PHPENKX.js';
|
|
8
8
|
import '../../chunk-LXHZYSMQ.js';
|
|
9
9
|
import '../../chunk-22UVE3RA.js';
|
|
10
|
-
import '../../chunk-
|
|
10
|
+
import '../../chunk-YCHZ4U5V.js';
|
|
11
11
|
import '../../chunk-47YILFON.js';
|
|
12
12
|
import '../../chunk-CYXZHBP4.js';
|
|
13
|
-
import '../../chunk-
|
|
13
|
+
import '../../chunk-OPT74SGF.js';
|
|
14
14
|
import '../../chunk-RX4UWZZR.js';
|
|
15
15
|
import '../../chunk-Y3D3WFJG.js';
|
|
16
16
|
import '../../chunk-3KMDHCAR.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode, ComponentType } from 'react';
|
|
2
3
|
import { z } from 'zod';
|
|
3
|
-
import { ComponentType } from 'react';
|
|
4
4
|
|
|
5
5
|
interface HealthStatusCardProps {
|
|
6
6
|
status: string;
|
|
@@ -2580,15 +2580,60 @@ interface TaskCardProps {
|
|
|
2580
2580
|
}
|
|
2581
2581
|
declare function TaskCard({ task }: TaskCardProps): react_jsx_runtime.JSX.Element;
|
|
2582
2582
|
|
|
2583
|
-
|
|
2583
|
+
interface ProjectsSidebarProps {
|
|
2584
|
+
/** Replace the default `ProjectsSidebarMiddle` with custom middle content. Leave unset for the default layout. */
|
|
2585
|
+
children?: ReactNode;
|
|
2586
|
+
}
|
|
2587
|
+
declare const ProjectsSidebar: ({ children }?: ProjectsSidebarProps) => react_jsx_runtime.JSX.Element;
|
|
2584
2588
|
|
|
2585
2589
|
declare const ProjectsSidebarTop: () => react_jsx_runtime.JSX.Element;
|
|
2586
2590
|
|
|
2591
|
+
/**
|
|
2592
|
+
* Shared nav-item shape used by feature sidebar middle components.
|
|
2593
|
+
*
|
|
2594
|
+
* Matches the subset of {@link SubshellNavItemProps} that the existing
|
|
2595
|
+
* hardcoded item arrays use. Consumers import this type alongside the
|
|
2596
|
+
* exported item arrays (e.g. `CRM_ITEMS`) to type their custom arrays.
|
|
2597
|
+
*
|
|
2598
|
+
* @example
|
|
2599
|
+
* import { NavItem, CRM_ITEMS } from '@elevasis/ui/features/crm'
|
|
2600
|
+
*
|
|
2601
|
+
* const customItems: NavItem[] = [
|
|
2602
|
+
* ...CRM_ITEMS,
|
|
2603
|
+
* { label: 'Reports', to: '/crm/reports', icon: IconFileText, exact: false },
|
|
2604
|
+
* ]
|
|
2605
|
+
*/
|
|
2606
|
+
interface NavItem {
|
|
2607
|
+
/** Display label for the nav entry. */
|
|
2608
|
+
label: string;
|
|
2609
|
+
/** Route path the item links to. */
|
|
2610
|
+
to: string;
|
|
2611
|
+
/** Tabler icon component (or any component accepting `size` + `style`). */
|
|
2612
|
+
icon: ComponentType<{
|
|
2613
|
+
size?: number;
|
|
2614
|
+
style?: React.CSSProperties;
|
|
2615
|
+
}>;
|
|
2616
|
+
/**
|
|
2617
|
+
* When `true`, the item is only active when the path matches exactly.
|
|
2618
|
+
* When `false`, it is active for any path that starts with `to`.
|
|
2619
|
+
*/
|
|
2620
|
+
exact: boolean;
|
|
2621
|
+
}
|
|
2622
|
+
|
|
2623
|
+
declare const DELIVERY_PROJECT_ITEMS: NavItem[];
|
|
2624
|
+
declare const DELIVERY_WORK_ITEMS: NavItem[];
|
|
2625
|
+
declare const DELIVERY_COMMUNICATION_ITEMS: NavItem[];
|
|
2587
2626
|
interface ProjectsSidebarMiddleProps {
|
|
2588
2627
|
currentPath?: string;
|
|
2589
2628
|
onNavigate?: (to: string) => void;
|
|
2629
|
+
/** Override the project section items. Defaults to {@link DELIVERY_PROJECT_ITEMS}. */
|
|
2630
|
+
projectItems?: NavItem[];
|
|
2631
|
+
/** Override the work section items. Defaults to {@link DELIVERY_WORK_ITEMS}. */
|
|
2632
|
+
workItems?: NavItem[];
|
|
2633
|
+
/** Override the communication section items. Defaults to {@link DELIVERY_COMMUNICATION_ITEMS}. */
|
|
2634
|
+
communicationItems?: NavItem[];
|
|
2590
2635
|
}
|
|
2591
|
-
declare const ProjectsSidebarMiddle: ({ currentPath, onNavigate }?: ProjectsSidebarMiddleProps) => react_jsx_runtime.JSX.Element;
|
|
2636
|
+
declare const ProjectsSidebarMiddle: ({ currentPath, onNavigate, projectItems, workItems, communicationItems }?: ProjectsSidebarMiddleProps) => react_jsx_runtime.JSX.Element;
|
|
2592
2637
|
|
|
2593
2638
|
declare const SemanticDomainSchema = DisplayMetadataSchema.extend({
|
|
2594
2639
|
id: ModelIdSchema,
|
|
@@ -2629,14 +2674,33 @@ interface FeatureNavEntry {
|
|
|
2629
2674
|
}
|
|
2630
2675
|
type FeatureSidebarComponent = ComponentType;
|
|
2631
2676
|
interface FeatureModule {
|
|
2677
|
+
/** Unique stable identifier for this feature (e.g. `'crm'`, `'delivery'`). */
|
|
2632
2678
|
key: string;
|
|
2633
|
-
|
|
2679
|
+
/** Feature key used for access-flag gating in the organization model. */
|
|
2634
2680
|
accessFeatureKey: OrganizationModelFeatureKey;
|
|
2681
|
+
/**
|
|
2682
|
+
* Semantic domain identifiers contributed by this feature.
|
|
2683
|
+
* Merged with surface-derived domain IDs during resolution.
|
|
2684
|
+
*/
|
|
2635
2685
|
domainIds?: OrganizationModelSemanticDomain['id'][];
|
|
2686
|
+
/**
|
|
2687
|
+
* Capability identifiers contributed by this feature.
|
|
2688
|
+
* Merged into `ResolvedFeatureSemantics.capabilityIds` at resolution time.
|
|
2689
|
+
* Not queried at runtime — kept for semantic graph completeness so that
|
|
2690
|
+
* capability membership is fully represented in the resolved model even when
|
|
2691
|
+
* a surface does not declare it directly.
|
|
2692
|
+
*/
|
|
2636
2693
|
capabilityIds?: string[];
|
|
2694
|
+
/** Top-level navigation entry rendered in the app shell when this feature is enabled. */
|
|
2637
2695
|
navEntry?: FeatureNavEntry;
|
|
2696
|
+
/** Sidebar component rendered when a matching subshell route is active. */
|
|
2638
2697
|
sidebar?: FeatureSidebarComponent;
|
|
2698
|
+
/** Route path prefixes that activate this feature's sidebar and subshell context. */
|
|
2639
2699
|
subshellRoutes?: string[];
|
|
2700
|
+
/**
|
|
2701
|
+
* Operations-only bridge surface connecting this feature to the organization graph.
|
|
2702
|
+
* Ignored by all other features. Only one manifest in the registry should set this.
|
|
2703
|
+
*/
|
|
2640
2704
|
organizationGraph?: OrganizationGraphFeatureBridge;
|
|
2641
2705
|
}
|
|
2642
2706
|
interface OrganizationGraphFeatureBridge {
|
|
@@ -2669,5 +2733,5 @@ declare const noteTypeColors: Record<string, string>;
|
|
|
2669
2733
|
declare function formatStatusLabel(status: string): string;
|
|
2670
2734
|
declare function calculateProgress(completed: number, total: number): number;
|
|
2671
2735
|
|
|
2672
|
-
export { AllTasksPage, HealthStatusCard, MilestoneTimeline, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, TaskCard, UpcomingMilestonesPage, calculateProgress, deliveryManifest, formatStatusLabel, milestoneStatusColors, noteTypeColors, projectStatusColors, taskStatusColors, taskTypeColors };
|
|
2736
|
+
export { AllTasksPage, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, HealthStatusCard, MilestoneTimeline, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, TaskCard, UpcomingMilestonesPage, calculateProgress, deliveryManifest, formatStatusLabel, milestoneStatusColors, noteTypeColors, projectStatusColors, taskStatusColors, taskTypeColors };
|
|
2673
2737
|
export type { ProjectsSidebarMiddleProps };
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export { AllTasksPage, HealthStatusCard, MilestoneTimeline, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, TaskCard, UpcomingMilestonesPage, calculateProgress, deliveryManifest, formatStatusLabel, milestoneStatusColors, noteTypeColors, projectStatusColors, taskStatusColors, taskTypeColors } from '../../chunk-
|
|
1
|
+
export { AllTasksPage, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, HealthStatusCard, MilestoneTimeline, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, TaskCard, UpcomingMilestonesPage, calculateProgress, deliveryManifest, formatStatusLabel, milestoneStatusColors, noteTypeColors, projectStatusColors, taskStatusColors, taskTypeColors } from '../../chunk-AQQYVAFK.js';
|
|
2
2
|
import '../../chunk-TUMSNGTX.js';
|
|
3
3
|
import '../../chunk-BZZCNLT6.js';
|
|
4
4
|
import '../../chunk-27COZ5AH.js';
|
|
5
5
|
import '../../chunk-PDHTXPSF.js';
|
|
6
6
|
import '../../chunk-GBMNCNHX.js';
|
|
7
|
-
import '../../chunk-
|
|
8
|
-
import '../../chunk-
|
|
7
|
+
import '../../chunk-7M2VOCYN.js';
|
|
8
|
+
import '../../chunk-4PHPENKX.js';
|
|
9
9
|
import '../../chunk-LXHZYSMQ.js';
|
|
10
10
|
import '../../chunk-22UVE3RA.js';
|
|
11
|
-
import '../../chunk-
|
|
11
|
+
import '../../chunk-YCHZ4U5V.js';
|
|
12
12
|
import '../../chunk-47YILFON.js';
|
|
13
13
|
import '../../chunk-CYXZHBP4.js';
|
|
14
|
-
import '../../chunk-
|
|
14
|
+
import '../../chunk-OPT74SGF.js';
|
|
15
15
|
import '../../chunk-RX4UWZZR.js';
|
|
16
16
|
import '../../chunk-Y3D3WFJG.js';
|
|
17
17
|
import '../../chunk-3KMDHCAR.js';
|