@optifye/dashboard-core 6.0.3 → 6.0.5

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/index.d.ts CHANGED
@@ -160,6 +160,7 @@ interface DashboardConfig {
160
160
  edgeFunctionBaseUrl?: string;
161
161
  s3Config?: S3Config;
162
162
  videoConfig?: VideoConfig;
163
+ skuConfig?: SKUConfig;
163
164
  /** Feature flags or other arbitrary app-specific config values */
164
165
  featureFlags?: Record<string, boolean>;
165
166
  /** Generic object to allow any other custom config values needed by the app or overrides */
@@ -176,16 +177,28 @@ interface DatabaseConfig {
176
177
  lineThresholds?: string;
177
178
  shiftConfigurations?: string;
178
179
  qualityMetrics?: string;
180
+ skus?: string;
179
181
  };
180
182
  }
181
183
  interface EntityConfig {
182
184
  companyId?: string;
183
185
  factoryId?: string;
186
+ /** @deprecated Use `lines` object instead. Will be removed in next major version. */
184
187
  defaultLineId?: string;
188
+ /** @deprecated Use `lines` object instead. Will be removed in next major version. */
185
189
  secondaryLineId?: string;
186
190
  factoryViewId?: string;
187
- /** Optional mapping of line IDs to their display names */
191
+ /**
192
+ * @deprecated Use `lines` object instead for consistency.
193
+ * This field is maintained for backward compatibility.
194
+ */
188
195
  lineNames?: Record<string, string>;
196
+ /**
197
+ * Dynamic line configuration: UUID -> Display Name mapping.
198
+ * The first entry in the object will be treated as the default line.
199
+ * Example: { 'uuid-1': 'Line 1', 'uuid-2': 'Line 2', ... }
200
+ */
201
+ lines?: Record<string, string>;
189
202
  }
190
203
  interface ShiftConfig {
191
204
  dayShift?: {
@@ -304,6 +317,16 @@ interface VideoConfig {
304
317
  useRAF?: boolean;
305
318
  };
306
319
  }
320
+ interface SKUConfig {
321
+ /** Enable/disable SKU management features */
322
+ enabled: boolean;
323
+ /** Default production target for new SKUs */
324
+ defaultProductionTarget?: number;
325
+ /** Make SKU selection mandatory in targets page */
326
+ requireSKUSelection?: boolean;
327
+ /** Allow multiple SKUs per line */
328
+ allowMultipleSKUsPerLine?: boolean;
329
+ }
307
330
 
308
331
  interface BasePerformanceMetric {
309
332
  id: string;
@@ -748,6 +771,7 @@ interface ActionThreshold {
748
771
  total_day_output: number;
749
772
  action_name: string | null;
750
773
  updated_by: string;
774
+ sku_id?: string;
751
775
  created_at?: string;
752
776
  last_updated?: string;
753
777
  }
@@ -763,6 +787,7 @@ interface LineThreshold {
763
787
  product_code: string;
764
788
  threshold_day_output: number;
765
789
  threshold_pph: number;
790
+ sku_id?: string;
766
791
  }
767
792
  interface ShiftConfiguration {
768
793
  id?: string;
@@ -926,10 +951,14 @@ interface LineDisplayData {
926
951
  * Configuration properties for the FactoryView component
927
952
  */
928
953
  interface FactoryViewProps {
929
- /** UUID for line 1 */
930
- line1Id: string;
931
- /** UUID for line 2 */
932
- line2Id: string;
954
+ /** @deprecated Use lineIds array instead */
955
+ line1Id?: string;
956
+ /** @deprecated Use lineIds array instead */
957
+ line2Id?: string;
958
+ /** Array of line UUIDs to display */
959
+ lineIds?: string[];
960
+ /** Display names for each line, keyed by line ID */
961
+ lineNames?: Record<string, string>;
933
962
  /** Name of the factory to display in the header */
934
963
  factoryName?: string;
935
964
  /** Timezone to use for calculations - defaults to 'Asia/Kolkata' */
@@ -1038,6 +1067,57 @@ interface SSEEvent {
1038
1067
  data: any;
1039
1068
  }
1040
1069
 
1070
+ interface SKU {
1071
+ id: string;
1072
+ sku_id: string;
1073
+ company_id: string;
1074
+ production_target: number;
1075
+ attributes: {
1076
+ [key: string]: any;
1077
+ };
1078
+ is_active: boolean;
1079
+ created_at: string;
1080
+ updated_at: string;
1081
+ }
1082
+ interface SKUCreateInput {
1083
+ sku_id: string;
1084
+ company_id: string;
1085
+ production_target: number;
1086
+ attributes?: {
1087
+ [key: string]: any;
1088
+ };
1089
+ is_active?: boolean;
1090
+ }
1091
+ interface SKUUpdateInput {
1092
+ sku_id?: string;
1093
+ production_target?: number;
1094
+ attributes?: {
1095
+ [key: string]: any;
1096
+ };
1097
+ is_active?: boolean;
1098
+ }
1099
+ interface SKUModalProps {
1100
+ isOpen: boolean;
1101
+ onClose: () => void;
1102
+ onSave: (sku: SKUCreateInput) => Promise<void>;
1103
+ editingSKU?: SKU | null;
1104
+ }
1105
+ interface SKUSelectorProps {
1106
+ onSelect: (sku: SKU | null) => void;
1107
+ selectedSKU?: SKU | null;
1108
+ availableSKUs: SKU[];
1109
+ className?: string;
1110
+ lineId: string;
1111
+ disabled?: boolean;
1112
+ required?: boolean;
1113
+ }
1114
+ interface SKUListProps {
1115
+ skus: SKU[];
1116
+ onEdit: (sku: SKU) => void;
1117
+ onDelete: (sku: SKU) => void;
1118
+ isLoading?: boolean;
1119
+ }
1120
+
1041
1121
  interface DashboardProviderProps {
1042
1122
  config: Partial<DashboardConfig>;
1043
1123
  children: React$1.ReactNode;
@@ -1120,6 +1200,80 @@ declare const SupabaseProvider: React__default.FC<{
1120
1200
  */
1121
1201
  declare const useSupabase: () => SupabaseClient$1;
1122
1202
 
1203
+ type SubscriptionCallback = (payload: any) => void;
1204
+ interface SubscriptionConfig {
1205
+ table: string;
1206
+ schema?: string;
1207
+ event?: '*' | 'INSERT' | 'UPDATE' | 'DELETE';
1208
+ filter?: string;
1209
+ callback: SubscriptionCallback;
1210
+ }
1211
+ /**
1212
+ * Centralized manager for Supabase real-time subscriptions
1213
+ * Handles subscription deduplication, reference counting, and cleanup
1214
+ */
1215
+ declare class SubscriptionManager {
1216
+ private supabase;
1217
+ private subscriptions;
1218
+ private debounceTimers;
1219
+ constructor(supabase: SupabaseClient$1);
1220
+ /**
1221
+ * Generate a unique key for a subscription configuration
1222
+ */
1223
+ private generateKey;
1224
+ /**
1225
+ * Subscribe to real-time changes with automatic deduplication
1226
+ */
1227
+ subscribe(config: SubscriptionConfig): () => void;
1228
+ /**
1229
+ * Debounce callbacks to prevent excessive updates
1230
+ */
1231
+ private debouncedCallback;
1232
+ /**
1233
+ * Unsubscribe from a specific subscription
1234
+ */
1235
+ private unsubscribe;
1236
+ /**
1237
+ * Subscribe to multiple tables with a single callback
1238
+ */
1239
+ subscribeMultiple(configs: Omit<SubscriptionConfig, 'callback'>[], callback: SubscriptionCallback): () => void;
1240
+ /**
1241
+ * Get current subscription statistics
1242
+ */
1243
+ getStats(): {
1244
+ totalSubscriptions: number;
1245
+ totalCallbacks: number;
1246
+ };
1247
+ /**
1248
+ * Clean up all subscriptions
1249
+ */
1250
+ cleanup(): void;
1251
+ }
1252
+ /**
1253
+ * Get or create a SubscriptionManager instance
1254
+ */
1255
+ declare function getSubscriptionManager(supabase: SupabaseClient$1): SubscriptionManager;
1256
+ /**
1257
+ * Reset the singleton instance (useful for testing or cleanup)
1258
+ */
1259
+ declare function resetSubscriptionManager(): void;
1260
+
1261
+ interface SubscriptionManagerProviderProps {
1262
+ children: React__default.ReactNode;
1263
+ }
1264
+ /**
1265
+ * Provider component that creates and manages a SubscriptionManager instance
1266
+ */
1267
+ declare const SubscriptionManagerProvider: React__default.FC<SubscriptionManagerProviderProps>;
1268
+ /**
1269
+ * Hook to access the SubscriptionManager instance
1270
+ */
1271
+ declare const useSubscriptionManager: () => SubscriptionManager;
1272
+ /**
1273
+ * Hook to safely access the SubscriptionManager instance (returns null if not available)
1274
+ */
1275
+ declare const useSubscriptionManagerSafe: () => SubscriptionManager | null;
1276
+
1123
1277
  /**
1124
1278
  * @hook useWorkspaceMetrics
1125
1279
  * @summary Fetches and subscribes to overview metrics for a specific workspace.
@@ -1314,8 +1468,8 @@ declare const useHistoricWorkspaceMetrics: (workspaceId: string, date?: string,
1314
1468
  *
1315
1469
  * @description This hook retrieves comprehensive data for a line, including its operational metrics and descriptive details.
1316
1470
  * It utilizes the `DashboardService` to fetch this information. If the special `lineIdFromProp` 'factory'
1317
- * (or the configured `entityConfig.factoryViewId`) is provided, it fetches and aggregates data for the lines
1318
- * configured as `entityConfig.defaultLineId` and `entityConfig.secondaryLineId` to provide a factory-level overview.
1471
+ * (or the configured `entityConfig.factoryViewId`) is provided, it fetches and aggregates data for all
1472
+ * configured lines to provide a factory-level overview.
1319
1473
  * The hook also establishes real-time subscriptions to the line metrics table to update data automatically.
1320
1474
  *
1321
1475
  * @param {string} lineIdFromProp - The unique identifier of the production line. Use 'factory' (or the configured `factoryViewId`)
@@ -1480,8 +1634,8 @@ type LineKPIsProps = {
1480
1634
  * @description This hook retrieves and calculates KPIs such as efficiency, output progress, and underperforming workers.
1481
1635
  * It leverages the `DashboardService` to first fetch detailed line information (via `getDetailedLineInfo`)
1482
1636
  * and then to calculate the KPIs (via `calculateKPIs`). For a 'factory' view (identified by `lineId` matching
1483
- * `entityConfig.factoryViewId` or the string 'factory'), the service is expected to aggregate data from configured
1484
- * primary (`entityConfig.defaultLineId`) and secondary (`entityConfig.secondaryLineId`) lines.
1637
+ * `entityConfig.factoryViewId` or the string 'factory'), the service is expected to aggregate data from all
1638
+ * configured lines.
1485
1639
  * The hook implements localStorage caching for KPIs to provide a faster initial load and reduce redundant fetches.
1486
1640
  * Real-time subscriptions are established to relevant tables (`line_metrics` and the company-specific performance table)
1487
1641
  * to automatically update KPIs when underlying data changes.
@@ -2058,6 +2212,14 @@ declare const useAllWorkspaceMetrics: (options?: UseAllWorkspaceMetricsOptions)
2058
2212
  refreshWorkspaces: () => Promise<void>;
2059
2213
  };
2060
2214
 
2215
+ interface UseSKUsReturn {
2216
+ skus: SKU[];
2217
+ isLoading: boolean;
2218
+ error: Error | null;
2219
+ refetch: () => Promise<void>;
2220
+ }
2221
+ declare const useSKUs: (companyId: string) => UseSKUsReturn;
2222
+
2061
2223
  /**
2062
2224
  * Interface for navigation method used across packages
2063
2225
  * Abstracts navigation implementation details from components
@@ -2340,6 +2502,33 @@ declare const workspaceService: {
2340
2502
  updateShiftConfigurations(shiftConfig: ShiftConfiguration): Promise<void>;
2341
2503
  };
2342
2504
 
2505
+ declare const skuService: {
2506
+ /**
2507
+ * Fetch all active SKUs for a company
2508
+ */
2509
+ getSKUs(companyId: string): Promise<SKU[]>;
2510
+ /**
2511
+ * Get a single SKU by ID
2512
+ */
2513
+ getSKU(skuId: string): Promise<SKU | null>;
2514
+ /**
2515
+ * Create a new SKU
2516
+ */
2517
+ createSKU(skuData: SKUCreateInput): Promise<SKU>;
2518
+ /**
2519
+ * Update an existing SKU
2520
+ */
2521
+ updateSKU(skuId: string, updates: SKUUpdateInput): Promise<SKU>;
2522
+ /**
2523
+ * Soft delete a SKU (set is_active to false)
2524
+ */
2525
+ deleteSKU(skuId: string): Promise<void>;
2526
+ /**
2527
+ * Check if a SKU ID already exists for a company
2528
+ */
2529
+ checkSKUExists(companyId: string, skuId: string, excludeId?: string): Promise<boolean>;
2530
+ };
2531
+
2343
2532
  declare const authCoreService: {
2344
2533
  signInWithPassword(supabase: SupabaseClient$1, email: string, password: string): Promise<{
2345
2534
  user: User;
@@ -2475,6 +2664,48 @@ declare function getAllThreadMessages(threadId: string): Promise<ChatMessage[]>;
2475
2664
  declare function updateThreadTitle(threadId: string, newTitle: string): Promise<ChatThread>;
2476
2665
  declare function deleteThread(threadId: string): Promise<void>;
2477
2666
 
2667
+ interface CacheOptions {
2668
+ duration?: number;
2669
+ storage?: 'memory' | 'localStorage' | 'sessionStorage';
2670
+ }
2671
+ declare class CacheService {
2672
+ private memoryCache;
2673
+ private readonly DEFAULT_DURATION;
2674
+ /**
2675
+ * Generate a cache key from multiple parts
2676
+ */
2677
+ generateKey(...parts: (string | number | undefined | null)[]): string;
2678
+ /**
2679
+ * Get item from cache
2680
+ */
2681
+ get<T>(key: string, options?: CacheOptions): T | null;
2682
+ /**
2683
+ * Set item in cache
2684
+ */
2685
+ set<T>(key: string, data: T, options?: CacheOptions): void;
2686
+ /**
2687
+ * Delete item from cache
2688
+ */
2689
+ delete(key: string, options?: CacheOptions): void;
2690
+ /**
2691
+ * Clear all items from cache
2692
+ */
2693
+ clear(options?: CacheOptions): void;
2694
+ /**
2695
+ * Get or set item in cache with a factory function
2696
+ */
2697
+ getOrSet<T>(key: string, factory: () => Promise<T>, options?: CacheOptions): Promise<T>;
2698
+ /**
2699
+ * Invalidate cache entries matching a pattern
2700
+ */
2701
+ invalidatePattern(pattern: string | RegExp, options?: CacheOptions): void;
2702
+ /**
2703
+ * Clean up expired items
2704
+ */
2705
+ cleanup(options?: CacheOptions): void;
2706
+ }
2707
+ declare const cacheService: CacheService;
2708
+
2478
2709
  /**
2479
2710
  * Helper object for making authenticated API requests using Supabase auth token.
2480
2711
  * Assumes endpoints are relative to the apiBaseUrl configured in DashboardConfig.
@@ -2853,6 +3084,65 @@ declare const preloadS3VideosUrl: (urls: string[]) => void;
2853
3084
  declare const createThrottledReload: (interval?: number) => () => void;
2854
3085
  declare const throttledReloadDashboard: () => void;
2855
3086
 
3087
+ /**
3088
+ * Line configuration utilities for managing dynamic multi-line support
3089
+ */
3090
+ /**
3091
+ * Get all configured line IDs from the entity configuration.
3092
+ * Supports both legacy (defaultLineId/secondaryLineId) and new (lines object) formats.
3093
+ *
3094
+ * @param entityConfig - The entity configuration
3095
+ * @returns Array of line IDs
3096
+ */
3097
+ declare function getConfiguredLineIds(entityConfig: EntityConfig): string[];
3098
+ /**
3099
+ * Get the display name for a line ID.
3100
+ * Supports both legacy (lineNames) and new (lines object) formats.
3101
+ *
3102
+ * @param entityConfig - The entity configuration
3103
+ * @param lineId - The line ID to get the name for
3104
+ * @returns The display name or a fallback
3105
+ */
3106
+ declare function getLineDisplayName(entityConfig: EntityConfig, lineId: string): string;
3107
+ /**
3108
+ * Get all line display names as a mapping.
3109
+ * Merges both legacy and new formats, with new format taking precedence.
3110
+ *
3111
+ * @param entityConfig - The entity configuration
3112
+ * @returns Record of line ID to display name
3113
+ */
3114
+ declare function getAllLineDisplayNames(entityConfig: EntityConfig): Record<string, string>;
3115
+ /**
3116
+ * Get the default line ID from configuration.
3117
+ * In new format, it's the first key in the lines object.
3118
+ *
3119
+ * @param entityConfig - The entity configuration
3120
+ * @returns The default line ID or undefined
3121
+ */
3122
+ declare function getDefaultLineId(entityConfig: EntityConfig): string | undefined;
3123
+ /**
3124
+ * Check if the configuration is using the legacy format.
3125
+ *
3126
+ * @param entityConfig - The entity configuration
3127
+ * @returns True if using legacy format
3128
+ */
3129
+ declare function isLegacyConfiguration(entityConfig: EntityConfig): boolean;
3130
+ /**
3131
+ * Convert legacy configuration to new format.
3132
+ * This is a helper for migration purposes.
3133
+ *
3134
+ * @param entityConfig - The entity configuration
3135
+ * @returns Updated configuration with lines object
3136
+ */
3137
+ declare function migrateLegacyConfiguration(entityConfig: EntityConfig): EntityConfig;
3138
+ /**
3139
+ * Validate that required lines are configured for factory view.
3140
+ *
3141
+ * @param entityConfig - The entity configuration
3142
+ * @returns True if configuration is valid for factory view
3143
+ */
3144
+ declare function isValidFactoryViewConfiguration(entityConfig: EntityConfig): boolean;
3145
+
2856
3146
  /**
2857
3147
  * Format idle time from seconds to a human-readable format
2858
3148
  * @param idleTimeInSeconds - Idle time in seconds
@@ -2919,7 +3209,7 @@ interface BarChartProps {
2919
3209
  aspect?: number;
2920
3210
  [key: string]: any;
2921
3211
  }
2922
- declare const BarChart: React__default.FC<BarChartProps>;
3212
+ declare const BarChart: React__default.NamedExoticComponent<BarChartProps>;
2923
3213
 
2924
3214
  interface LineChartDataItem {
2925
3215
  name: string;
@@ -2961,14 +3251,14 @@ interface LineChartProps {
2961
3251
  aspect?: number;
2962
3252
  [key: string]: any;
2963
3253
  }
2964
- declare const LineChart: React__default.FC<LineChartProps>;
3254
+ declare const LineChart: React__default.NamedExoticComponent<LineChartProps>;
2965
3255
 
2966
3256
  interface OutputProgressChartProps {
2967
3257
  currentOutput: number;
2968
3258
  targetOutput: number;
2969
3259
  className?: string;
2970
3260
  }
2971
- declare const OutputProgressChart: React__default.FC<OutputProgressChartProps>;
3261
+ declare const OutputProgressChart: React__default.NamedExoticComponent<OutputProgressChartProps>;
2972
3262
 
2973
3263
  interface LargeOutputProgressChartProps {
2974
3264
  currentOutput: number;
@@ -2984,12 +3274,7 @@ interface CycleTimeChartProps {
2984
3274
  }>;
2985
3275
  className?: string;
2986
3276
  }
2987
- /**
2988
- * CycleTimeChart - A placeholder chart component for displaying cycle time data.
2989
- * Note: The original source file was empty, so this is a minimal implementation
2990
- * to satisfy the migration plan requirements.
2991
- */
2992
- declare const CycleTimeChart: React__default.FC<CycleTimeChartProps>;
3277
+ declare const CycleTimeChart: React__default.NamedExoticComponent<CycleTimeChartProps>;
2993
3278
 
2994
3279
  interface CycleTimeOverTimeChartProps {
2995
3280
  data: number[];
@@ -3971,6 +4256,41 @@ interface TimePickerDropdownProps {
3971
4256
  }
3972
4257
  declare const TimePickerDropdown: React__default.FC<TimePickerDropdownProps>;
3973
4258
 
4259
+ interface LoadingStateProps {
4260
+ message?: string;
4261
+ subMessage?: string;
4262
+ size?: 'sm' | 'md' | 'lg';
4263
+ className?: string;
4264
+ }
4265
+ /**
4266
+ * LoadingState - For full-page or section loading
4267
+ * Use this when loading an entire view or major section
4268
+ */
4269
+ declare const LoadingState: React__default.FC<LoadingStateProps>;
4270
+
4271
+ interface LoadingSkeletonProps {
4272
+ type: 'card' | 'chart' | 'table' | 'list' | 'kpi' | 'workspace-card' | 'video-grid';
4273
+ count?: number;
4274
+ className?: string;
4275
+ showLoadingIndicator?: boolean;
4276
+ }
4277
+ /**
4278
+ * LoadingSkeleton - For component-level loading with layout preservation
4279
+ * Use this to show placeholder content while data loads
4280
+ */
4281
+ declare const LoadingSkeleton: React__default.FC<LoadingSkeletonProps>;
4282
+
4283
+ interface LoadingInlineProps {
4284
+ message?: string;
4285
+ size?: 'sm' | 'md';
4286
+ className?: string;
4287
+ }
4288
+ /**
4289
+ * LoadingInline - For inline updates (small spinner)
4290
+ * Use this for data refreshes or small loading states within components
4291
+ */
4292
+ declare const LoadingInline: React__default.FC<LoadingInlineProps>;
4293
+
3974
4294
  declare const DEFAULT_HLS_CONFIG: {
3975
4295
  maxBufferLength: number;
3976
4296
  maxMaxBufferLength: number;
@@ -4354,6 +4674,8 @@ interface WorkspaceDetailViewProps {
4354
4674
  }
4355
4675
  declare const WrappedComponent: (props: WorkspaceDetailViewProps) => react_jsx_runtime.JSX.Element | null;
4356
4676
 
4677
+ declare const SKUManagementView: React__default.FC;
4678
+
4357
4679
  type CoreComponents = {
4358
4680
  Card: any;
4359
4681
  CardHeader: any;
@@ -4624,4 +4946,4 @@ interface ThreadSidebarProps {
4624
4946
  }
4625
4947
  declare const ThreadSidebar: React__default.FC<ThreadSidebarProps>;
4626
4948
 
4627
- export { ACTION_NAMES, AIAgentView, type Action, type ActionName, type ActionService, type ActionThreshold, type ActiveBreak, type AnalyticsConfig, AuthCallback, type AuthCallbackProps, AuthCallbackView, type AuthCallbackViewProps, type AuthConfig, AuthProvider, type AuthUser, AuthenticatedFactoryView, AuthenticatedHelpView, AuthenticatedHomeView, AuthenticatedTargetsView, BarChart, type BarChartDataItem, type BarChartProps, type BarProps, BaseHistoryCalendar, type BaseHistoryCalendarProps, type BaseLineMetric, type BasePerformanceMetric, type BottleneckFilterType, type BottleneckVideo, type BottleneckVideoData, BottlenecksContent, type BottlenecksContentProps, type BreadcrumbItem, type Break, BreakNotificationPopup, type BreakNotificationPopupProps, type BreakRowProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type ChatMessage, type ChatThread, type ClipCounts, type ComponentOverride, type CoreComponents, type CurrentShiftResult, CycleTimeChart, type CycleTimeChartProps, CycleTimeOverTimeChart, type CycleTimeOverTimeChartProps, DEFAULT_ANALYTICS_CONFIG, DEFAULT_AUTH_CONFIG, DEFAULT_CONFIG, DEFAULT_DATABASE_CONFIG, DEFAULT_DATE_TIME_CONFIG, DEFAULT_ENDPOINTS_CONFIG, DEFAULT_ENTITY_CONFIG, DEFAULT_SHIFT_CONFIG, DEFAULT_THEME_CONFIG, DEFAULT_VIDEO_CONFIG, DEFAULT_WORKSPACE_CONFIG, DEFAULT_WORKSPACE_POSITIONS, type DashboardConfig, DashboardHeader, type DashboardKPIs, DashboardLayout, type DashboardLayoutProps, DashboardOverridesProvider, DashboardProvider, type DashboardService, type DatabaseConfig, DateDisplay, type DateTimeConfig, DateTimeDisplay, type DateTimeDisplayProps, type DayHistoryData, type DaySummaryData, DebugAuth, DebugAuthView, EmptyStateMessage, type EmptyStateMessageProps, type EndpointsConfig, type EntityConfig, type FactoryOverviewData, FactoryView, type FactoryViewProps, type FormatNumberOptions, GaugeChart, type GaugeChartProps, GridComponentsPlaceholder, Header, type HeaderProps, HelpView, type HelpViewProps, type HistoryCalendarProps, HomeView, type HookOverride, HourlyOutputChart, type HourlyOutputChartProps, type HourlyPerformance, type ISTDateProps, ISTTimer, type ISTTimerProps, KPICard, type KPICardProps, KPIDetailView, type KPIDetailViewProps, KPIGrid, type KPIGridProps, KPIHeader, type KPIHeaderProps, KPISection, type KPITrend, KPIsOverviewView, type KPIsOverviewViewProps, LINE_1_UUID, LINE_2_UUID, LargeOutputProgressChart, type LargeOutputProgressChartProps, LeaderboardDetailView, type LeaderboardDetailViewProps, type LeaderboardEntry, Legend, LineChart, type LineChartDataItem, type LineChartProps, type LineDetails, type LineDisplayData, LineHistoryCalendar, type LineHistoryCalendarProps, type LineInfo, type LineMetrics, LineMonthlyHistory, type LineMonthlyHistoryProps, type LineMonthlyMetric, LineMonthlyPdfGenerator, type LineMonthlyPdfGeneratorProps, type LineNavigationParams, LinePdfExportButton, type LinePdfExportButtonProps, LinePdfGenerator, type LinePdfGeneratorProps, type LineProps, type LineShiftConfig, type LineSnapshot, type LineThreshold, LineWhatsAppShareButton, type LineWhatsAppShareProps, LiveTimer, LoadingOverlay, LoadingPage, LoadingSpinner, LoginPage, type LoginPageProps, LoginView, type LoginViewProps, MainLayout, type MainLayoutProps, type Metric, MetricCard, type MetricCardProps$1 as MetricCardProps, type MetricsError, type NavItem, type NavItemTrackingEvent, NoWorkspaceData, type OperatorData, type OperatorInfo, OptifyeAgentClient, type OptifyeAgentContext, type OptifyeAgentRequest, type OptifyeAgentResponse, OutputProgressChart, type OutputProgressChartProps, type OverridesMap, type OverviewLineMetric, type OverviewWorkspaceMetric, PageHeader, type PageHeaderProps, type PageOverride, PieChart, type PieChartProps, type PoorPerformingWorkspace, type ProfileMenuItem, ProfileView, type QualityMetric, type QualityOverview, type QualityService, type RateLimitOptions, type RateLimitResult, type RealtimeService, RegistryProvider, type RoutePath, type S3ClipsAPIParams, type S3Config, type S3ListObjectsParams, S3Service, type S3ServiceConfig, type SOPCategory, SOPComplianceChart, type SOPComplianceChartProps, SSEChatClient, type SSEEvent, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, type ShiftConfig, type ShiftConfiguration, type ShiftConfigurationRecord, type ShiftData$2 as ShiftData, ShiftDisplay, type ShiftHistoryData, type ShiftHoursMap, type ShiftPanelProps, type ShiftSummaryData, type ShiftTime, ShiftsView, type ShiftsViewProps, SideNavBar, type SideNavBarProps, type SimpleLine, SingleVideoStream, type SingleVideoStreamProps, Skeleton, SlackAPI, type StreamProxyConfig, type SupabaseClient, SupabaseProvider, type Target, TargetWorkspaceGrid, type TargetWorkspaceGridProps, TargetsView, type TargetsViewProps, type ThemeColorValue, type ThemeConfig, ThreadSidebar, TimeDisplay, TimePickerDropdown, type TrackingEventProperties, type TrendDirection, type UnderperformingWorkspace, type UnderperformingWorkspaces, type UseActiveBreaksResult, type UseDashboardMetricsProps, type UseFactoryOverviewOptions, type UseFormatNumberResult, type UseMessagesResult, type UseRealtimeLineMetricsProps, type UseTargetsOptions, type UseThreadsResult, type UseWorkspaceOperatorsOptions, type UserProfileConfig, VideoCard, type VideoConfig, type VideoCroppingConfig, type VideoCroppingRect, VideoGridView, type VideoMetadata, VideoPreloader, type VideoSeverity, type VideoSummary, type VideoType, WORKSPACE_POSITIONS, type WhatsAppSendResult, WhatsAppShareButton, type WhatsAppShareButtonProps, type WhatsappService, type Workspace, type WorkspaceActionUpdate, WorkspaceCard, type WorkspaceCardProps, type WorkspaceConfig, WrappedComponent as WorkspaceDetailView, type WorkspaceDetailedMetrics, WorkspaceDisplayNameExample, WorkspaceGrid, WorkspaceGridItem, type WorkspaceGridItemProps, WorkspaceHistoryCalendar, WorkspaceMetricCards, type WorkspaceMetricCardsProps, type WorkspaceMetrics, WorkspaceMonthlyDataFetcher, type WorkspaceMonthlyDataFetcherProps, type WorkspaceMonthlyMetric, WorkspaceMonthlyPdfGenerator, type WorkspaceMonthlyPdfGeneratorProps, type WorkspaceNavigationParams, WorkspacePdfExportButton, type WorkspacePdfExportButtonProps, WorkspacePdfGenerator, type WorkspacePdfGeneratorProps, type WorkspacePosition, type WorkspaceQualityData, type WorkspaceUrlMapping, WorkspaceWhatsAppShareButton, type WorkspaceWhatsAppShareProps, actionService, apiUtils, authCoreService, authOTPService, authRateLimitService, checkRateLimit, clearAllRateLimits, clearRateLimit, clearS3VideoCache, clearS3VideoFromCache, clearWorkspaceDisplayNamesCache, cn, createStreamProxyHandler, createSupabaseClient, createThrottledReload, dashboardService, deleteThread, forceRefreshWorkspaceDisplayNames, formatDateInZone, formatDateTimeInZone, formatISTDate, formatIdleTime, formatTimeInZone, fromUrlFriendlyName, getAllThreadMessages, getAllWorkspaceDisplayNamesAsync, getAnonClient, getCameraNumber, getCompanyMetricsTableName, getConfigurableShortWorkspaceDisplayName, getConfigurableWorkspaceDisplayName, getCurrentShift, getCurrentTimeInZone, getDashboardHeaderTimeInZone, getDaysDifferenceInZone, getDefaultCameraStreamUrl, getDefaultTabForWorkspace, getManufacturingInsights, getMetricsTablePrefix, getOperationalDate, getS3SignedUrl, getS3VideoSrc, getShortWorkspaceDisplayName, getShortWorkspaceDisplayNameAsync, getStoredWorkspaceMappings, getThreadMessages, getUserThreads, getUserThreadsPaginated, getWorkspaceDisplayName, getWorkspaceDisplayNameAsync, getWorkspaceDisplayNamesMap, getWorkspaceFromUrl, getWorkspaceNavigationParams, identifyCoreUser, initializeCoreMixpanel, isTransitionPeriod, isValidLineInfoPayload, isValidWorkspaceDetailedMetricsPayload, isValidWorkspaceMetricsPayload, isWorkspaceDisplayNamesLoaded, isWorkspaceDisplayNamesLoading, mergeWithDefaultConfig, optifyeAgentClient, preInitializeWorkspaceDisplayNames, preloadS3Video, preloadS3VideoUrl, preloadS3VideosUrl, preloadVideoUrl, preloadVideosUrl, qualityService, realtimeService, refreshWorkspaceDisplayNames, resetCoreMixpanel, s3VideoPreloader, storeWorkspaceMapping, streamProxyConfig, throttledReloadDashboard, toUrlFriendlyName, trackCoreEvent, trackCorePageView, updateThreadTitle, useActiveBreaks, useAllWorkspaceMetrics, useAnalyticsConfig, useAuth, useAuthConfig, useComponentOverride, useCustomConfig, useDashboardConfig, useDashboardMetrics, useDatabaseConfig, useDateFormatter, useDateTimeConfig, useEndpointsConfig, useEntityConfig, useFactoryOverviewMetrics, useFeatureFlags, useFormatNumber, useHistoricWorkspaceMetrics, useHlsStream, useHlsStreamWithCropping, useHookOverride, useLeaderboardMetrics, useLineDetailedMetrics, useLineKPIs, useLineMetrics, useLineWorkspaceMetrics, useMessages, useMetrics, useNavigation, useOverrides, usePageOverride, useRealtimeLineMetrics, useRegistry, useShiftConfig, useShifts, useSupabase, useSupabaseClient, useTargets, useTheme, useThemeConfig, useThreads, useVideoConfig, useWorkspaceConfig, useWorkspaceDetailedMetrics, useWorkspaceDisplayName, useWorkspaceDisplayNames, useWorkspaceDisplayNamesMap, useWorkspaceMetrics, useWorkspaceNavigation, useWorkspaceOperators, videoPreloader, whatsappService, withAuth, withRegistry, workspaceService };
4949
+ export { ACTION_NAMES, AIAgentView, type Action, type ActionName, type ActionService, type ActionThreshold, type ActiveBreak, type AnalyticsConfig, AuthCallback, type AuthCallbackProps, AuthCallbackView, type AuthCallbackViewProps, type AuthConfig, AuthProvider, type AuthUser, AuthenticatedFactoryView, AuthenticatedHelpView, AuthenticatedHomeView, AuthenticatedTargetsView, BarChart, type BarChartDataItem, type BarChartProps, type BarProps, BaseHistoryCalendar, type BaseHistoryCalendarProps, type BaseLineMetric, type BasePerformanceMetric, type BottleneckFilterType, type BottleneckVideo, type BottleneckVideoData, BottlenecksContent, type BottlenecksContentProps, type BreadcrumbItem, type Break, BreakNotificationPopup, type BreakNotificationPopupProps, type BreakRowProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type ChatMessage, type ChatThread, type ClipCounts, type ComponentOverride, type CoreComponents, type CurrentShiftResult, CycleTimeChart, type CycleTimeChartProps, CycleTimeOverTimeChart, type CycleTimeOverTimeChartProps, DEFAULT_ANALYTICS_CONFIG, DEFAULT_AUTH_CONFIG, DEFAULT_CONFIG, DEFAULT_DATABASE_CONFIG, DEFAULT_DATE_TIME_CONFIG, DEFAULT_ENDPOINTS_CONFIG, DEFAULT_ENTITY_CONFIG, DEFAULT_SHIFT_CONFIG, DEFAULT_THEME_CONFIG, DEFAULT_VIDEO_CONFIG, DEFAULT_WORKSPACE_CONFIG, DEFAULT_WORKSPACE_POSITIONS, type DashboardConfig, DashboardHeader, type DashboardKPIs, DashboardLayout, type DashboardLayoutProps, DashboardOverridesProvider, DashboardProvider, type DashboardService, type DatabaseConfig, DateDisplay, type DateTimeConfig, DateTimeDisplay, type DateTimeDisplayProps, type DayHistoryData, type DaySummaryData, DebugAuth, DebugAuthView, EmptyStateMessage, type EmptyStateMessageProps, type EndpointsConfig, type EntityConfig, type FactoryOverviewData, FactoryView, type FactoryViewProps, type FormatNumberOptions, GaugeChart, type GaugeChartProps, GridComponentsPlaceholder, Header, type HeaderProps, HelpView, type HelpViewProps, type HistoryCalendarProps, HomeView, type HookOverride, HourlyOutputChart, type HourlyOutputChartProps, type HourlyPerformance, type ISTDateProps, ISTTimer, type ISTTimerProps, KPICard, type KPICardProps, KPIDetailView, type KPIDetailViewProps, KPIGrid, type KPIGridProps, KPIHeader, type KPIHeaderProps, KPISection, type KPITrend, KPIsOverviewView, type KPIsOverviewViewProps, LINE_1_UUID, LINE_2_UUID, LargeOutputProgressChart, type LargeOutputProgressChartProps, LeaderboardDetailView, type LeaderboardDetailViewProps, type LeaderboardEntry, Legend, LineChart, type LineChartDataItem, type LineChartProps, type LineDetails, type LineDisplayData, LineHistoryCalendar, type LineHistoryCalendarProps, type LineInfo, type LineMetrics, LineMonthlyHistory, type LineMonthlyHistoryProps, type LineMonthlyMetric, LineMonthlyPdfGenerator, type LineMonthlyPdfGeneratorProps, type LineNavigationParams, LinePdfExportButton, type LinePdfExportButtonProps, LinePdfGenerator, type LinePdfGeneratorProps, type LineProps, type LineShiftConfig, type LineSnapshot, type LineThreshold, LineWhatsAppShareButton, type LineWhatsAppShareProps, LiveTimer, LoadingInline, LoadingInline as LoadingInlineProps, LoadingOverlay, LoadingPage, LoadingSkeleton, LoadingSkeleton as LoadingSkeletonProps, LoadingSpinner, LoadingState, LoadingState as LoadingStateProps, LoginPage, type LoginPageProps, LoginView, type LoginViewProps, MainLayout, type MainLayoutProps, type Metric, MetricCard, type MetricCardProps$1 as MetricCardProps, type MetricsError, type NavItem, type NavItemTrackingEvent, NoWorkspaceData, type OperatorData, type OperatorInfo, OptifyeAgentClient, type OptifyeAgentContext, type OptifyeAgentRequest, type OptifyeAgentResponse, OutputProgressChart, type OutputProgressChartProps, type OverridesMap, type OverviewLineMetric, type OverviewWorkspaceMetric, PageHeader, type PageHeaderProps, type PageOverride, PieChart, type PieChartProps, type PoorPerformingWorkspace, type ProfileMenuItem, ProfileView, type QualityMetric, type QualityOverview, type QualityService, type RateLimitOptions, type RateLimitResult, type RealtimeService, RegistryProvider, type RoutePath, type S3ClipsAPIParams, type S3Config, type S3ListObjectsParams, S3Service, type S3ServiceConfig, type SKU, type SKUConfig, type SKUCreateInput, type SKUListProps, SKUManagementView, type SKUModalProps, type SKUSelectorProps, type SKUUpdateInput, type SOPCategory, SOPComplianceChart, type SOPComplianceChartProps, SSEChatClient, type SSEEvent, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, type ShiftConfig, type ShiftConfiguration, type ShiftConfigurationRecord, type ShiftData$2 as ShiftData, ShiftDisplay, type ShiftHistoryData, type ShiftHoursMap, type ShiftPanelProps, type ShiftSummaryData, type ShiftTime, ShiftsView, type ShiftsViewProps, SideNavBar, type SideNavBarProps, type SimpleLine, SingleVideoStream, type SingleVideoStreamProps, Skeleton, SlackAPI, type StreamProxyConfig, SubscriptionManager, SubscriptionManagerProvider, type SupabaseClient, SupabaseProvider, type Target, TargetWorkspaceGrid, type TargetWorkspaceGridProps, TargetsView, type TargetsViewProps, type ThemeColorValue, type ThemeConfig, ThreadSidebar, TimeDisplay, TimePickerDropdown, type TrackingEventProperties, type TrendDirection, type UnderperformingWorkspace, type UnderperformingWorkspaces, type UseActiveBreaksResult, type UseDashboardMetricsProps, type UseFactoryOverviewOptions, type UseFormatNumberResult, type UseMessagesResult, type UseRealtimeLineMetricsProps, type UseTargetsOptions, type UseThreadsResult, type UseWorkspaceOperatorsOptions, type UserProfileConfig, VideoCard, type VideoConfig, type VideoCroppingConfig, type VideoCroppingRect, VideoGridView, type VideoMetadata, VideoPreloader, type VideoSeverity, type VideoSummary, type VideoType, WORKSPACE_POSITIONS, type WhatsAppSendResult, WhatsAppShareButton, type WhatsAppShareButtonProps, type WhatsappService, type Workspace, type WorkspaceActionUpdate, WorkspaceCard, type WorkspaceCardProps, type WorkspaceConfig, WrappedComponent as WorkspaceDetailView, type WorkspaceDetailedMetrics, WorkspaceDisplayNameExample, WorkspaceGrid, WorkspaceGridItem, type WorkspaceGridItemProps, WorkspaceHistoryCalendar, WorkspaceMetricCards, type WorkspaceMetricCardsProps, type WorkspaceMetrics, WorkspaceMonthlyDataFetcher, type WorkspaceMonthlyDataFetcherProps, type WorkspaceMonthlyMetric, WorkspaceMonthlyPdfGenerator, type WorkspaceMonthlyPdfGeneratorProps, type WorkspaceNavigationParams, WorkspacePdfExportButton, type WorkspacePdfExportButtonProps, WorkspacePdfGenerator, type WorkspacePdfGeneratorProps, type WorkspacePosition, type WorkspaceQualityData, type WorkspaceUrlMapping, WorkspaceWhatsAppShareButton, type WorkspaceWhatsAppShareProps, actionService, apiUtils, authCoreService, authOTPService, authRateLimitService, cacheService, checkRateLimit, clearAllRateLimits, clearRateLimit, clearS3VideoCache, clearS3VideoFromCache, clearWorkspaceDisplayNamesCache, cn, createStreamProxyHandler, createSupabaseClient, createThrottledReload, dashboardService, deleteThread, forceRefreshWorkspaceDisplayNames, formatDateInZone, formatDateTimeInZone, formatISTDate, formatIdleTime, formatTimeInZone, fromUrlFriendlyName, getAllLineDisplayNames, getAllThreadMessages, getAllWorkspaceDisplayNamesAsync, getAnonClient, getCameraNumber, getCompanyMetricsTableName, getConfigurableShortWorkspaceDisplayName, getConfigurableWorkspaceDisplayName, getConfiguredLineIds, getCurrentShift, getCurrentTimeInZone, getDashboardHeaderTimeInZone, getDaysDifferenceInZone, getDefaultCameraStreamUrl, getDefaultLineId, getDefaultTabForWorkspace, getLineDisplayName, getManufacturingInsights, getMetricsTablePrefix, getOperationalDate, getS3SignedUrl, getS3VideoSrc, getShortWorkspaceDisplayName, getShortWorkspaceDisplayNameAsync, getStoredWorkspaceMappings, getSubscriptionManager, getThreadMessages, getUserThreads, getUserThreadsPaginated, getWorkspaceDisplayName, getWorkspaceDisplayNameAsync, getWorkspaceDisplayNamesMap, getWorkspaceFromUrl, getWorkspaceNavigationParams, identifyCoreUser, initializeCoreMixpanel, isLegacyConfiguration, isTransitionPeriod, isValidFactoryViewConfiguration, isValidLineInfoPayload, isValidWorkspaceDetailedMetricsPayload, isValidWorkspaceMetricsPayload, isWorkspaceDisplayNamesLoaded, isWorkspaceDisplayNamesLoading, mergeWithDefaultConfig, migrateLegacyConfiguration, optifyeAgentClient, preInitializeWorkspaceDisplayNames, preloadS3Video, preloadS3VideoUrl, preloadS3VideosUrl, preloadVideoUrl, preloadVideosUrl, qualityService, realtimeService, refreshWorkspaceDisplayNames, resetCoreMixpanel, resetSubscriptionManager, s3VideoPreloader, skuService, storeWorkspaceMapping, streamProxyConfig, throttledReloadDashboard, toUrlFriendlyName, trackCoreEvent, trackCorePageView, updateThreadTitle, useActiveBreaks, useAllWorkspaceMetrics, useAnalyticsConfig, useAuth, useAuthConfig, useComponentOverride, useCustomConfig, useDashboardConfig, useDashboardMetrics, useDatabaseConfig, useDateFormatter, useDateTimeConfig, useEndpointsConfig, useEntityConfig, useFactoryOverviewMetrics, useFeatureFlags, useFormatNumber, useHistoricWorkspaceMetrics, useHlsStream, useHlsStreamWithCropping, useHookOverride, useLeaderboardMetrics, useLineDetailedMetrics, useLineKPIs, useLineMetrics, useLineWorkspaceMetrics, useMessages, useMetrics, useNavigation, useOverrides, usePageOverride, useRealtimeLineMetrics, useRegistry, useSKUs, useShiftConfig, useShifts, useSubscriptionManager, useSubscriptionManagerSafe, useSupabase, useSupabaseClient, useTargets, useTheme, useThemeConfig, useThreads, useVideoConfig, useWorkspaceConfig, useWorkspaceDetailedMetrics, useWorkspaceDisplayName, useWorkspaceDisplayNames, useWorkspaceDisplayNamesMap, useWorkspaceMetrics, useWorkspaceNavigation, useWorkspaceOperators, videoPreloader, whatsappService, withAuth, withRegistry, workspaceService };