@optifye/dashboard-core 6.9.16 → 6.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -823,6 +823,7 @@ interface LineMonthlyMetric {
823
823
  avg_efficiency: number;
824
824
  underperforming_workspaces: number;
825
825
  total_workspaces: number;
826
+ compliance_percentage?: number;
826
827
  }
827
828
  interface UnderperformingWorkspace {
828
829
  workspace_name: string;
@@ -1110,6 +1111,8 @@ interface BottleneckVideoData {
1110
1111
  creation_timestamp?: string;
1111
1112
  percentile?: number;
1112
1113
  duration?: number;
1114
+ idle_start_time?: string;
1115
+ idle_end_time?: string;
1113
1116
  }
1114
1117
  interface VideoSummary {
1115
1118
  counts: Record<string, number>;
@@ -1942,6 +1945,12 @@ interface HealthFilterOptions {
1942
1945
  sortOrder?: 'asc' | 'desc';
1943
1946
  shiftConfig?: any;
1944
1947
  timezone?: string;
1948
+ /** Map of lineId -> ShiftConfig for multi-line factory view */
1949
+ lineShiftConfigs?: Map<string, any>;
1950
+ /** Override date for historical queries (YYYY-MM-DD format) */
1951
+ date?: string;
1952
+ /** Override shiftId for historical queries */
1953
+ shiftId?: number;
1945
1954
  }
1946
1955
  interface HealthMetrics {
1947
1956
  avgResponseTime?: number;
@@ -2276,6 +2285,53 @@ declare function withTimezone<P extends {
2276
2285
  timezone?: string;
2277
2286
  }>(Component: React__default.ComponentType<P>): React__default.ComponentType<Omit<P, 'timezone'>>;
2278
2287
 
2288
+ interface SessionTrackingContextValue {
2289
+ /** Current session stats (null if no active session) */
2290
+ sessionStats: {
2291
+ totalMs: number;
2292
+ activeMs: number;
2293
+ passiveMs: number;
2294
+ } | null;
2295
+ /** Manually end the current session */
2296
+ endSession: (reason: string) => Promise<void>;
2297
+ /** Whether tracking is active */
2298
+ isTracking: boolean;
2299
+ }
2300
+ declare const SessionTrackingContext: React__default.Context<SessionTrackingContextValue | null>;
2301
+ interface SessionTrackingProviderProps {
2302
+ children: ReactNode;
2303
+ /** Enable/disable tracking (default: true) */
2304
+ enabled?: boolean;
2305
+ /** Callback when session starts */
2306
+ onSessionStart?: (sessionId: string) => void;
2307
+ /** Callback when session ends */
2308
+ onSessionEnd?: (sessionId: string, reason: string) => void;
2309
+ }
2310
+ /**
2311
+ * Provider component for session tracking
2312
+ *
2313
+ * Wrap your app with this provider to enable session tracking.
2314
+ * Place after AuthProvider and DashboardProvider.
2315
+ *
2316
+ * Usage:
2317
+ * ```tsx
2318
+ * <AuthProvider>
2319
+ * <DashboardProvider>
2320
+ * <SessionTrackingProvider>
2321
+ * <App />
2322
+ * </SessionTrackingProvider>
2323
+ * </DashboardProvider>
2324
+ * </AuthProvider>
2325
+ * ```
2326
+ */
2327
+ declare function SessionTrackingProvider({ children, enabled, onSessionStart, onSessionEnd, }: SessionTrackingProviderProps): react_jsx_runtime.JSX.Element;
2328
+ /**
2329
+ * Hook to access session tracking context
2330
+ *
2331
+ * Must be used within a SessionTrackingProvider
2332
+ */
2333
+ declare function useSessionTrackingContext(): SessionTrackingContextValue;
2334
+
2279
2335
  /**
2280
2336
  * @hook useWorkspaceMetrics
2281
2337
  * @summary Fetches and subscribes to overview metrics for a specific workspace.
@@ -3588,6 +3644,24 @@ interface UseDynamicShiftConfigResult {
3588
3644
  */
3589
3645
  declare const useDynamicShiftConfig: (lineId?: string) => UseDynamicShiftConfigResult;
3590
3646
 
3647
+ interface UseMultiLineShiftConfigsResult {
3648
+ /** Map of lineId to ShiftConfig */
3649
+ shiftConfigMap: Map<string, ShiftConfig>;
3650
+ /** Whether the hook is loading data */
3651
+ isLoading: boolean;
3652
+ /** Error message if any */
3653
+ error: string | null;
3654
+ }
3655
+ /**
3656
+ * Custom hook to fetch shift configurations for multiple lines in a single query
3657
+ * Optimized for factory view where we need shift configs for all configured lines
3658
+ *
3659
+ * @param lineIds - Array of line UUIDs to fetch shift configs for
3660
+ * @param fallbackConfig - Optional fallback config to use if DB query fails for a line
3661
+ * @returns Map of lineId -> ShiftConfig with loading and error states
3662
+ */
3663
+ declare const useMultiLineShiftConfigs: (lineIds: string[], fallbackConfig?: ShiftConfig) => UseMultiLineShiftConfigsResult;
3664
+
3591
3665
  /**
3592
3666
  * Interface for navigation method used across packages
3593
3667
  * Abstracts navigation implementation details from components
@@ -3849,6 +3923,10 @@ interface UseWorkspaceUptimeTimelineOptions {
3849
3923
  lineId?: string;
3850
3924
  shiftConfig?: any;
3851
3925
  timezone?: string;
3926
+ /** Override date for historical queries (YYYY-MM-DD format) */
3927
+ date?: string;
3928
+ /** Override shift ID for historical queries */
3929
+ shiftId?: number;
3852
3930
  }
3853
3931
  interface UseWorkspaceUptimeTimelineResult {
3854
3932
  timeline: WorkspaceUptimeTimeline | null;
@@ -4158,6 +4236,404 @@ interface UseLineSupervisorReturn {
4158
4236
  */
4159
4237
  declare function useLineSupervisor(lineId: string | undefined): UseLineSupervisorReturn;
4160
4238
 
4239
+ /**
4240
+ * Idle Time Reason Service
4241
+ * Fetches aggregated idle time reason statistics from the backend API.
4242
+ *
4243
+ * The backend calculates weighted averages based on clip length to give
4244
+ * accurate representation of how much time each reason contributes to idle time.
4245
+ */
4246
+ /**
4247
+ * Single idle time reason with weighted statistics
4248
+ */
4249
+ interface IdleTimeReason {
4250
+ /** Normalized reason label (e.g., "Operator_Absent") */
4251
+ reason: string;
4252
+ /** Weighted percentage of total idle time */
4253
+ percentage: number;
4254
+ /** Total duration in seconds for this reason */
4255
+ total_duration_seconds: number;
4256
+ /** Number of clips with this reason */
4257
+ clip_count: number;
4258
+ }
4259
+ /**
4260
+ * Response data from idle time reasons API
4261
+ */
4262
+ interface IdleTimeReasonsData {
4263
+ /** Total idle time in seconds across all reasons */
4264
+ total_idle_time_seconds: number;
4265
+ /** Total number of clips analyzed */
4266
+ total_clips_analyzed: number;
4267
+ /** List of reasons sorted by percentage descending */
4268
+ reasons: IdleTimeReason[];
4269
+ }
4270
+ /**
4271
+ * API response wrapper
4272
+ */
4273
+ interface IdleTimeReasonsResponse {
4274
+ success: boolean;
4275
+ data: IdleTimeReasonsData;
4276
+ error?: string;
4277
+ }
4278
+ /**
4279
+ * Parameters for fetching idle time reasons
4280
+ */
4281
+ interface FetchIdleTimeReasonsParams {
4282
+ /** Filter by workspace ID */
4283
+ workspaceId?: string;
4284
+ /** Filter by line ID */
4285
+ lineId?: string;
4286
+ /** Single date filter (YYYY-MM-DD) */
4287
+ date?: string;
4288
+ /** Shift filter (0=day, 1=night) */
4289
+ shiftId?: number;
4290
+ /** Start of date range (YYYY-MM-DD) */
4291
+ startDate?: string;
4292
+ /** End of date range (YYYY-MM-DD) */
4293
+ endDate?: string;
4294
+ /** JWT auth token */
4295
+ token: string;
4296
+ }
4297
+ /**
4298
+ * Fetch aggregated idle time reasons from the backend API.
4299
+ *
4300
+ * @param params - Query parameters and auth token
4301
+ * @returns Promise with idle time reason data
4302
+ *
4303
+ * @example
4304
+ * // For workspace detail view (single shift)
4305
+ * const data = await fetchIdleTimeReasons({
4306
+ * workspaceId: 'uuid',
4307
+ * date: '2025-01-15',
4308
+ * shiftId: 0,
4309
+ * token: authToken
4310
+ * });
4311
+ *
4312
+ * @example
4313
+ * // For monthly history
4314
+ * const data = await fetchIdleTimeReasons({
4315
+ * workspaceId: 'uuid',
4316
+ * startDate: '2025-01-01',
4317
+ * endDate: '2025-01-31',
4318
+ * token: authToken
4319
+ * });
4320
+ */
4321
+ declare function fetchIdleTimeReasons(params: FetchIdleTimeReasonsParams): Promise<IdleTimeReasonsData>;
4322
+ /**
4323
+ * Transform API response to chart-friendly format
4324
+ *
4325
+ * @param data - Raw API response data
4326
+ * @returns Array of {name, value} for pie chart
4327
+ */
4328
+ declare function transformToChartData(data: IdleTimeReasonsData): Array<{
4329
+ name: string;
4330
+ value: number;
4331
+ }>;
4332
+ /**
4333
+ * Format a snake_case reason label to Title Case with spaces
4334
+ *
4335
+ * @param reason - Raw reason label (e.g., "Operator_Absent")
4336
+ * @returns Formatted label (e.g., "Operator Absent")
4337
+ */
4338
+ declare function formatReasonLabel(reason: string): string;
4339
+ /**
4340
+ * Get color for a reason label
4341
+ * Uses the centralized color configuration.
4342
+ *
4343
+ * @param reason - Reason label (snake_case)
4344
+ * @param index - Fallback index for unknown reasons
4345
+ * @returns Hex color string
4346
+ */
4347
+ declare function getReasonColor(reason: string, index?: number): string;
4348
+
4349
+ /**
4350
+ * useIdleTimeReasons Hook
4351
+ *
4352
+ * Fetches aggregated idle time reasons with weighted percentages.
4353
+ * Uses clip length as weight to calculate accurate time contribution.
4354
+ */
4355
+
4356
+ interface UseIdleTimeReasonsProps {
4357
+ /** Workspace ID - required for workspace-level views */
4358
+ workspaceId?: string;
4359
+ /** Line ID - required for line-level views */
4360
+ lineId?: string;
4361
+ /** Single date (YYYY-MM-DD) */
4362
+ date?: string;
4363
+ /** Shift ID (0=day, 1=night) */
4364
+ shiftId?: number;
4365
+ /** Start of date range (YYYY-MM-DD) for monthly/range views */
4366
+ startDate?: string;
4367
+ /** End of date range (YYYY-MM-DD) for monthly/range views */
4368
+ endDate?: string;
4369
+ /** Whether to enable the hook (default: true) */
4370
+ enabled?: boolean;
4371
+ /** Keep previously fetched data while refetching to prevent UI flicker */
4372
+ keepPreviousData?: boolean;
4373
+ }
4374
+ interface UseIdleTimeReasonsResult {
4375
+ /** Raw API data */
4376
+ data: IdleTimeReasonsData | null;
4377
+ /** Chart-ready format: [{name, value}] */
4378
+ chartData: Array<{
4379
+ name: string;
4380
+ value: number;
4381
+ }>;
4382
+ /** Loading state */
4383
+ isLoading: boolean;
4384
+ /** True when a request is in flight (initial load or refetch) */
4385
+ isFetching: boolean;
4386
+ /** True when refetching but preserving existing data */
4387
+ isRefetching: boolean;
4388
+ /** Error message if any */
4389
+ error: string | null;
4390
+ /** Manual refetch function */
4391
+ refetch: () => Promise<void>;
4392
+ }
4393
+ /**
4394
+ * Hook to fetch and manage idle time reason data.
4395
+ *
4396
+ * @example
4397
+ * // For workspace detail view (single shift)
4398
+ * const { chartData, isLoading } = useIdleTimeReasons({
4399
+ * workspaceId: 'uuid',
4400
+ * date: '2025-01-15',
4401
+ * shiftId: 0
4402
+ * });
4403
+ *
4404
+ * @example
4405
+ * // For monthly history view
4406
+ * const { data, chartData } = useIdleTimeReasons({
4407
+ * workspaceId: 'uuid',
4408
+ * startDate: '2025-01-01',
4409
+ * endDate: '2025-01-31'
4410
+ * });
4411
+ *
4412
+ * @example
4413
+ * // For line KPI view
4414
+ * const { chartData } = useIdleTimeReasons({
4415
+ * lineId: 'uuid',
4416
+ * date: '2025-01-15',
4417
+ * shiftId: 0
4418
+ * });
4419
+ */
4420
+ declare function useIdleTimeReasons({ workspaceId, lineId, date, shiftId, startDate, endDate, enabled, keepPreviousData, }: UseIdleTimeReasonsProps): UseIdleTimeReasonsResult;
4421
+
4422
+ /**
4423
+ * useSessionTracking Hook
4424
+ * Manages dashboard session lifecycle with active/passive time tracking
4425
+ */
4426
+ interface UseSessionTrackingOptions {
4427
+ /** Enable/disable tracking (default: true) */
4428
+ enabled?: boolean;
4429
+ /** Callback when session starts */
4430
+ onSessionStart?: (sessionId: string) => void;
4431
+ /** Callback when session ends */
4432
+ onSessionEnd?: (sessionId: string, reason: string) => void;
4433
+ }
4434
+ interface UseSessionTrackingReturn {
4435
+ /** Current session stats (null if no active session) */
4436
+ sessionStats: {
4437
+ totalMs: number;
4438
+ activeMs: number;
4439
+ passiveMs: number;
4440
+ } | null;
4441
+ /** Manually end the current session */
4442
+ endSession: (reason: string) => Promise<void>;
4443
+ /** Whether tracking is active */
4444
+ isTracking: boolean;
4445
+ }
4446
+ /**
4447
+ * Hook for tracking dashboard session usage
4448
+ *
4449
+ * Automatically starts tracking when user is authenticated
4450
+ * and stops when user logs out or navigates away.
4451
+ *
4452
+ * Usage:
4453
+ * ```tsx
4454
+ * function DashboardLayout() {
4455
+ * const { sessionStats, isTracking } = useSessionTracking();
4456
+ *
4457
+ * return (
4458
+ * <div>
4459
+ * {isTracking && sessionStats && (
4460
+ * <span>Active: {formatDuration(sessionStats.activeMs)}</span>
4461
+ * )}
4462
+ * </div>
4463
+ * );
4464
+ * }
4465
+ * ```
4466
+ */
4467
+ declare function useSessionTracking(options?: UseSessionTrackingOptions): UseSessionTrackingReturn;
4468
+
4469
+ /**
4470
+ * useUserUsage Hook
4471
+ * Fetches detailed usage data for a specific user (for modal view)
4472
+ */
4473
+ interface UsageBreakdown {
4474
+ date?: string;
4475
+ week_start?: string;
4476
+ total_duration_ms: number;
4477
+ active_duration_ms: number;
4478
+ passive_duration_ms: number;
4479
+ }
4480
+ interface UserUsageSummary {
4481
+ total_duration_ms: number;
4482
+ active_duration_ms: number;
4483
+ passive_duration_ms: number;
4484
+ }
4485
+ interface UserUsageDetail {
4486
+ user_id: string;
4487
+ email: string;
4488
+ full_name: string;
4489
+ role: string;
4490
+ summary: UserUsageSummary;
4491
+ daily_breakdown: UsageBreakdown[];
4492
+ weekly_breakdown: UsageBreakdown[];
4493
+ date_range: {
4494
+ start_date: string;
4495
+ end_date: string;
4496
+ };
4497
+ }
4498
+ interface UseUserUsageOptions {
4499
+ /** Start date YYYY-MM-DD (defaults to 30 days ago) */
4500
+ startDate?: string;
4501
+ /** End date YYYY-MM-DD (defaults to today) */
4502
+ endDate?: string;
4503
+ /** Whether to fetch immediately (default: true) */
4504
+ enabled?: boolean;
4505
+ }
4506
+ interface UseUserUsageReturn {
4507
+ /** Usage data for the user */
4508
+ data: UserUsageDetail | null;
4509
+ /** Whether data is loading */
4510
+ isLoading: boolean;
4511
+ /** Error message if fetch failed */
4512
+ error: string | null;
4513
+ /** Refetch the data */
4514
+ refetch: () => Promise<void>;
4515
+ }
4516
+ /**
4517
+ * Hook for fetching detailed usage data for a specific user
4518
+ *
4519
+ * Only accessible by owners (for users in their company) and optifye roles.
4520
+ *
4521
+ * Usage:
4522
+ * ```tsx
4523
+ * function UserUsageModal({ userId }: { userId: string }) {
4524
+ * const { data, isLoading, error } = useUserUsage(userId);
4525
+ *
4526
+ * if (isLoading) return <Spinner />;
4527
+ * if (error) return <Error message={error} />;
4528
+ *
4529
+ * return (
4530
+ * <div>
4531
+ * <h2>{data?.full_name}'s Usage</h2>
4532
+ * <p>Total: {formatDuration(data?.summary.total_duration_ms)}</p>
4533
+ * </div>
4534
+ * );
4535
+ * }
4536
+ * ```
4537
+ */
4538
+ declare function useUserUsage(userId: string, options?: UseUserUsageOptions): UseUserUsageReturn;
4539
+
4540
+ /**
4541
+ * useCompanyUsersUsage Hook
4542
+ * Fetches usage data for all plant_heads and supervisors in a company
4543
+ */
4544
+ interface CompanyUserUsageSummary {
4545
+ user_id: string;
4546
+ email: string;
4547
+ full_name: string;
4548
+ role: string;
4549
+ total_duration_ms: number;
4550
+ active_duration_ms: number;
4551
+ passive_duration_ms: number;
4552
+ }
4553
+ interface TodayUsageData {
4554
+ total_ms: number;
4555
+ active_ms: number;
4556
+ passive_ms: number;
4557
+ }
4558
+ interface CompanyUsageReport {
4559
+ users: CompanyUserUsageSummary[];
4560
+ total_users: number;
4561
+ date_range: {
4562
+ start_date: string;
4563
+ end_date: string;
4564
+ };
4565
+ }
4566
+ interface TodayUsageReport {
4567
+ users: Record<string, TodayUsageData>;
4568
+ date: string;
4569
+ }
4570
+ /** Normalized usage data for a single user */
4571
+ interface UserUsageInfo {
4572
+ userId: string;
4573
+ email: string;
4574
+ fullName: string;
4575
+ role: string;
4576
+ todayUsage: {
4577
+ totalMs: number;
4578
+ activeMs: number;
4579
+ passiveMs: number;
4580
+ };
4581
+ }
4582
+ interface UseCompanyUsersUsageOptions {
4583
+ /** Start date YYYY-MM-DD (defaults to 30 days ago) */
4584
+ startDate?: string;
4585
+ /** End date YYYY-MM-DD (defaults to today) */
4586
+ endDate?: string;
4587
+ /** Comma-separated roles to filter (defaults to 'plant_head,supervisor') */
4588
+ roleFilter?: string;
4589
+ /** Whether to fetch immediately (default: true) */
4590
+ enabled?: boolean;
4591
+ }
4592
+ interface UseCompanyUsersUsageReturn {
4593
+ /** Usage data for all users */
4594
+ data: CompanyUsageReport | null;
4595
+ /** Today's usage for quick inline display (raw API response) */
4596
+ todayUsage: TodayUsageReport | null;
4597
+ /** Normalized usage data array for easy iteration */
4598
+ usersUsage: UserUsageInfo[] | null;
4599
+ /** Whether data is loading */
4600
+ isLoading: boolean;
4601
+ /** Whether today's usage is loading */
4602
+ isTodayLoading: boolean;
4603
+ /** Error message if fetch failed */
4604
+ error: string | null;
4605
+ /** Refetch all data */
4606
+ refetch: () => Promise<void>;
4607
+ /** Refetch only today's usage */
4608
+ refetchToday: () => Promise<void>;
4609
+ }
4610
+ /**
4611
+ * Hook for fetching usage data for all plant_heads and supervisors in a company
4612
+ *
4613
+ * Only accessible by owners and optifye roles.
4614
+ *
4615
+ * Usage:
4616
+ * ```tsx
4617
+ * function TeamManagement() {
4618
+ * const { usersUsage, isLoading, error } = useCompanyUsersUsage(companyId);
4619
+ *
4620
+ * if (isLoading) return <Spinner />;
4621
+ *
4622
+ * return (
4623
+ * <table>
4624
+ * {usersUsage?.map(user => (
4625
+ * <tr key={user.userId}>
4626
+ * <td>{user.fullName}</td>
4627
+ * <td>{formatDuration(user.todayUsage.totalMs)}</td>
4628
+ * </tr>
4629
+ * ))}
4630
+ * </table>
4631
+ * );
4632
+ * }
4633
+ * ```
4634
+ */
4635
+ declare function useCompanyUsersUsage(companyId?: string, options?: UseCompanyUsersUsageOptions): UseCompanyUsersUsageReturn;
4636
+
4161
4637
  declare const actionService: {
4162
4638
  getActionsByName(actionNames: string[], companyIdInput?: string): Promise<Action[]>;
4163
4639
  };
@@ -4273,7 +4749,7 @@ declare class WorkspaceHealthService {
4273
4749
  private interpretUptimeValue;
4274
4750
  private deriveStatusForMinute;
4275
4751
  getWorkspaceHealthStatus(options?: HealthFilterOptions): Promise<WorkspaceHealthWithStatus[]>;
4276
- getWorkspaceUptimeTimeline(workspaceId: string, companyId: string, passedShiftConfig?: any, passedTimezone?: string): Promise<WorkspaceUptimeTimeline>;
4752
+ getWorkspaceUptimeTimeline(workspaceId: string, companyId: string, passedShiftConfig?: any, passedTimezone?: string, overrideDate?: string, overrideShiftId?: number): Promise<WorkspaceUptimeTimeline>;
4277
4753
  getWorkspaceHealthById(workspaceId: string): Promise<WorkspaceHealthWithStatus | null>;
4278
4754
  getHealthSummary(lineId?: string, companyId?: string): Promise<HealthSummary>;
4279
4755
  getHealthMetrics(workspaceId: string, startDate?: string, endDate?: string): Promise<HealthMetrics>;
@@ -4284,7 +4760,12 @@ declare class WorkspaceHealthService {
4284
4760
  companyId?: string;
4285
4761
  }): () => void;
4286
4762
  clearCache(): void;
4287
- calculateWorkspaceUptime(companyId: string, passedShiftConfig?: any, timezone?: string): Promise<Map<string, UptimeDetails>>;
4763
+ calculateWorkspaceUptime(companyId: string, passedShiftConfig?: any, timezone?: string, lineShiftConfigs?: Map<string, any>, overrideDate?: string, overrideShiftId?: number): Promise<Map<string, UptimeDetails>>;
4764
+ /**
4765
+ * Calculate uptime for workspaces across multiple lines with different shift configurations
4766
+ * Used in factory view where each line may have different shift schedules
4767
+ */
4768
+ private calculateWorkspaceUptimeMultiLine;
4288
4769
  }
4289
4770
  declare const workspaceHealthService: WorkspaceHealthService;
4290
4771
 
@@ -4984,6 +5465,68 @@ declare class InvitationService {
4984
5465
  */
4985
5466
  declare const createInvitationService: (supabase: SupabaseClient$1) => InvitationService;
4986
5467
 
5468
+ /**
5469
+ * Session Tracker Service
5470
+ * Tracks dashboard usage with active/passive time detection
5471
+ */
5472
+ interface SessionTrackerConfig {
5473
+ apiBaseUrl: string;
5474
+ getAccessToken: () => Promise<string | null>;
5475
+ onSessionStart?: (sessionId: string) => void;
5476
+ onSessionEnd?: (sessionId: string, reason: string) => void;
5477
+ }
5478
+ declare class SessionTracker {
5479
+ private session;
5480
+ private heartbeatInterval;
5481
+ private graceTimeout;
5482
+ private tickInterval;
5483
+ private config;
5484
+ private readonly HEARTBEAT_INTERVAL_MS;
5485
+ private readonly HIDDEN_GRACE_PERIOD_MS;
5486
+ private readonly IDLE_THRESHOLD_MS;
5487
+ private readonly TICK_INTERVAL_MS;
5488
+ private boundHandleActivity;
5489
+ private boundHandleVisibility;
5490
+ private boundHandleBeforeUnload;
5491
+ private boundHandleFocus;
5492
+ private boundHandleBlur;
5493
+ constructor(config: SessionTrackerConfig);
5494
+ /**
5495
+ * Start a new session
5496
+ */
5497
+ startSession(userId: string, companyId: string | null): Promise<void>;
5498
+ /**
5499
+ * End the current session
5500
+ */
5501
+ endSession(reason: string): Promise<void>;
5502
+ /**
5503
+ * Get current session stats (for debugging/display)
5504
+ */
5505
+ getSessionStats(): {
5506
+ totalMs: number;
5507
+ activeMs: number;
5508
+ passiveMs: number;
5509
+ } | null;
5510
+ private setupActivityListeners;
5511
+ private setupVisibilityListener;
5512
+ private setupFocusListeners;
5513
+ private setupBeforeUnloadListener;
5514
+ private handleUserActivity;
5515
+ private handleVisibilityChange;
5516
+ private handleWindowFocus;
5517
+ private handleWindowBlur;
5518
+ private handleBeforeUnload;
5519
+ private startTimeTick;
5520
+ private shouldTrackTime;
5521
+ private updateTimes;
5522
+ private startHeartbeat;
5523
+ private sendStartSession;
5524
+ private sendHeartbeat;
5525
+ private sendEndSession;
5526
+ private cleanup;
5527
+ }
5528
+ declare function createSessionTracker(config: SessionTrackerConfig): SessionTracker;
5529
+
4987
5530
  /**
4988
5531
  * Helper object for making authenticated API requests using Supabase auth token.
4989
5532
  * Assumes endpoints are relative to the apiBaseUrl configured in DashboardConfig.
@@ -6104,6 +6647,7 @@ interface LineMonthlyHistoryProps {
6104
6647
  }) => void;
6105
6648
  onCalendarDateSelect?: (date: string, shiftId: number) => void;
6106
6649
  onCalendarMonthChange?: (newMonthDate: Date) => void;
6650
+ isLoading?: boolean;
6107
6651
  className?: string;
6108
6652
  }
6109
6653
  declare const LineMonthlyHistory: React__default.FC<LineMonthlyHistoryProps>;
@@ -6736,6 +7280,29 @@ interface HealthStatusGridProps {
6736
7280
  }
6737
7281
  declare const HealthStatusGrid: React__default.FC<HealthStatusGridProps>;
6738
7282
 
7283
+ interface HealthDateShiftSelectorProps {
7284
+ /** Currently selected date in YYYY-MM-DD format */
7285
+ selectedDate: string;
7286
+ /** Currently selected shift ID */
7287
+ selectedShiftId: number;
7288
+ /** Shift configuration to get available shifts */
7289
+ shiftConfig?: ShiftConfig | null;
7290
+ /** Timezone for date calculations */
7291
+ timezone: string;
7292
+ /** Callback when date changes */
7293
+ onDateChange: (date: string) => void;
7294
+ /** Callback when shift changes */
7295
+ onShiftChange: (shiftId: number) => void;
7296
+ /** Whether currently viewing live/current data */
7297
+ isCurrentShift: boolean;
7298
+ /** Optional callback to return to live view */
7299
+ onReturnToLive?: () => void;
7300
+ }
7301
+ /**
7302
+ * Component for selecting historical dates and shifts to view workspace health data
7303
+ */
7304
+ declare const HealthDateShiftSelector: React__default.FC<HealthDateShiftSelectorProps>;
7305
+
6739
7306
  interface DashboardHeaderProps {
6740
7307
  lineTitle: string;
6741
7308
  className?: string;
@@ -6802,6 +7369,11 @@ interface SOPCategory {
6802
7369
  sort_order?: number;
6803
7370
  s3FolderName?: string;
6804
7371
  }
7372
+ interface ClipClassification {
7373
+ status: 'classified' | 'processing';
7374
+ label?: string;
7375
+ confidence?: number;
7376
+ }
6805
7377
  interface FileManagerFiltersProps {
6806
7378
  categories: SOPCategory[];
6807
7379
  videos: BottleneckVideoData[];
@@ -6816,6 +7388,7 @@ interface FileManagerFiltersProps {
6816
7388
  shift?: string | number;
6817
7389
  className?: string;
6818
7390
  targetCycleTime?: number | null;
7391
+ clipClassifications?: Record<string, ClipClassification>;
6819
7392
  }
6820
7393
  declare const FileManagerFilters: React__default.FC<FileManagerFiltersProps>;
6821
7394
 
@@ -8023,4 +8596,4 @@ interface ThreadSidebarProps {
8023
8596
  }
8024
8597
  declare const ThreadSidebar: React__default.FC<ThreadSidebarProps>;
8025
8598
 
8026
- export { ACTION_NAMES, AIAgentView, AcceptInvite, type AcceptInviteProps, AcceptInviteView, type AcceptInviteViewProps, type AccessControlReturn, type Action, type ActionName, type ActionService, type ActionThreshold, type ActiveBreak, AdvancedFilterDialog, AdvancedFilterPanel, type AnalyticsConfig, type AssignUserToFactoriesInput, type AssignUserToLinesInput, AudioService, AuthCallback, type AuthCallbackProps, AuthCallbackView, type AuthCallbackViewProps, type AuthConfig, AuthProvider, AuthService, type AuthUser, AuthenticatedBottleneckClipsView, AuthenticatedFactoryView, AuthenticatedHelpView, AuthenticatedHomeView, AuthenticatedShiftsView, AuthenticatedTargetsView, AuthenticatedTicketsView, AuthenticatedWorkspaceHealthView, AxelNotificationPopup, type AxelNotificationPopupProps, AxelOrb, type AxelOrbProps, type AxelSuggestion, BackButton, BackButtonMinimal, BarChart, type BarChartDataItem, type BarChartProps, type BarProps, BaseHistoryCalendar, type BaseHistoryCalendarProps, type BaseLineMetric, type BasePerformanceMetric, BottleneckClipsModal, type BottleneckClipsModalProps, type BottleneckClipsNavigationParams, BottleneckClipsView, type BottleneckClipsViewProps, type BottleneckFilterType, type BottleneckVideo, type BottleneckVideoData, BottlenecksContent, type BottlenecksContentProps, type BreadcrumbItem, type Break, BreakNotificationPopup, type BreakNotificationPopupProps, type BreakRowProps, type CacheEntryWithPrefetch, CachePrefetchStatus, type CachePrefetchStatusCallback, type CalendarShiftData, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type ChatMessage, type ChatThread, type CleanupFunction, type ClipCounts, type ClipCountsWithIndex, ClipFilterProvider, type ClipFilterState, type ClipsConfig, CompactWorkspaceHealthCard, type CompanyUser, type CompanyUserWithDetails, type ComponentOverride, CongratulationsOverlay, type CongratulationsOverlayProps, type CoreComponents, type CreateInvitationInput, type CropConfig, CroppedHlsVideoPlayer, type CroppedHlsVideoPlayerProps, CroppedVideoPlayer, type CroppedVideoPlayerProps, 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_MAP_VIEW_CONFIG, DEFAULT_SHIFT_CONFIG, DEFAULT_SHIFT_DATA, 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 DayData, type DayHistoryData, type DaySummaryData, DebugAuth, DebugAuthView, DetailedHealthStatus, type DiagnosisOption$1 as DiagnosisOption, DiagnosisVideoModal, type DynamicLineShiftConfig, EmptyStateMessage, type EmptyStateMessageProps, EncouragementOverlay, type EndpointsConfig, type EntityConfig, type ErrorCallback$1 as ErrorCallback, type ExtendedCacheMetrics, type FactoryOverviewMetrics, FactoryView, type FactoryViewProps, FileManagerFilters, FileManagerFilters as FileManagerFiltersProps, FilterDialogTrigger, FirstTimeLoginDebug, FirstTimeLoginHandler, type FormatNumberOptions, type FullyIndexedCallback$1 as FullyIndexedCallback, GaugeChart, type GaugeChartProps, GridComponentsPlaceholder, HamburgerButton, type HamburgerButtonProps, Header, type HeaderProps, type HealthAlertConfig, type HealthAlertHistory, type HealthFilterOptions, type HealthMetrics, type HealthStatus, HealthStatusGrid, HealthStatusIndicator, type HealthSummary, HelpView, type HelpViewProps, type HistoricWorkspaceMetrics, type HistoryCalendarProps, HlsVideoPlayer, type HlsVideoPlayerProps, type HlsVideoPlayerRef, HomeView, type HookOverride, type HourlyAchievement, HourlyOutputChart, type HourlyOutputChartProps, type HourlyPerformance, type IPrefetchManager, type ISTDateProps, ISTTimer, type ISTTimerProps, InlineEditableText, InteractiveOnboardingTour, InvitationService, type InvitationWithDetails, KPICard, type KPICardProps, KPIDetailViewWithDisplayNames as KPIDetailView, type KPIDetailViewProps, KPIGrid, type KPIGridProps, KPIHeader, type KPIHeaderProps, KPISection, type KPITrend, KPIsOverviewView, type KPIsOverviewViewProps, LINE_1_UUID, LINE_2_UUID, LargeOutputProgressChart, type LargeOutputProgressChartProps, LeaderboardDetailViewWithDisplayNames as LeaderboardDetailView, type LeaderboardDetailViewProps, type LeaderboardEntry, Legend, type Line$1 as Line, 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, LinesService, LiveTimer, LoadingInline, LoadingInline as LoadingInlineProps, LoadingOverlay, LoadingPage, LoadingSkeleton, LoadingSkeleton as LoadingSkeletonProps, LoadingState, LoadingState as LoadingStateProps, LoginPage, type LoginPageProps, LoginView, type LoginViewProps, Logo, type LogoProps, MainLayout, type MainLayoutProps, MapGridView, type MapViewConfig, type Metric, MetricCard, type MetricCardProps$1 as MetricCardProps, type MetricsError, MinimalOnboardingPopup, type NavItem, type NavItemTrackingEvent, type NavigationMethod, NewClipsNotification, type NewClipsNotificationProps, NoWorkspaceData, OnboardingDemo, OnboardingTour, type OperatorData, type OperatorInfo, OptifyeAgentClient, type OptifyeAgentContext, type OptifyeAgentRequest, type OptifyeAgentResponse, OptifyeLogoLoader, OutputProgressChart, type OutputProgressChartProps, type OverridesMap, type OverviewLineMetric, type OverviewWorkspaceMetric, PageHeader, type PageHeaderProps, type PageOverride, PieChart, type PieChartProps, PlayPauseIndicator, type PlayPauseIndicatorProps, type PoorPerformingWorkspace, PrefetchConfigurationError, PrefetchError, PrefetchEvents, type PrefetchKey, type PrefetchManagerConfig, type PrefetchManagerStats, type PrefetchOptions, type PrefetchParams$1 as PrefetchParams, type PrefetchRequest, type PrefetchResult, PrefetchStatus$1 as PrefetchStatus, type PrefetchStatusResult, type PrefetchSubscriptionCallbacks, PrefetchTimeoutError, type ProfileMenuItem, ProfileView, type QualityMetric, type QualityOverview, type QualityService, type RateLimitOptions, type RateLimitResult, type RealtimeLineMetricsProps, type RealtimeService, RegistryProvider, type RenderReadyCallback$1 as RenderReadyCallback, type RoutePath, type S3ClipsAPIParams, S3ClipsSupabaseService as S3ClipsService, type S3Config, type S3ListObjectsParams, S3Service, type S3ServiceConfig, type SKU, type SKUConfig, type SKUCreateInput, type SKUListProps, SKUManagementView, type SKUModalProps, type SKUSelectorProps, type SKUUpdateInput, type SOPCategory$1 as 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, type ShiftDefinition, ShiftDisplay, type ShiftHistoryData, type ShiftHoursMap, type ShiftPanelProps, type ShiftSummaryData, type ShiftTime, ShiftsView, type ShiftsViewProps, SideNavBar, type SideNavBarProps, SignupWithInvitation, type SignupWithInvitationProps, SilentErrorBoundary, type SimpleLine, SimpleOnboardingPopup, SingleVideoStream, type SingleVideoStreamProps, Skeleton, type StatusChangeCallback$1 as StatusChangeCallback, type StreamProxyConfig, type SubscriberId, SubscriptionManager, SubscriptionManagerProvider, type SupabaseClient, SupabaseProvider, type Supervisor, type SupervisorAssignment, type SupervisorConfig, SupervisorDropdown, type SupervisorDropdownProps, type SupervisorManagementData, SupervisorManagementView, type SupervisorManagementViewProps, SupervisorService, type Target, TargetWorkspaceGrid, type TargetWorkspaceGridProps, TargetsViewWithDisplayNames as TargetsView, type TargetsViewProps, type TeamManagementPermissions, TeamManagementView, type TeamManagementViewProps, type ThemeColorValue, type ThemeConfig, ThreadSidebar, TicketHistory, TicketHistoryService, type TicketsConfig, TicketsView, type TicketsViewProps, TimeDisplay, TimePickerDropdown, Timer, TimezoneProvider, TimezoneService, type TrackingEventProperties, type TrendDirection, type UnderperformingWorkspace, type UnderperformingWorkspaces, type UpdateUserRoleInput, type UptimeDetails, type UptimeStatus, type UseActiveBreaksResult, type UseAllWorkspaceMetricsOptions, type UseClipTypesResult, type UseDashboardMetricsProps, type UseDynamicShiftConfigResult, type UseFormatNumberResult, type UseLineShiftConfigResult, type UseLineWorkspaceMetricsOptions, type UseMessagesResult, type UsePrefetchClipCountsOptions$1 as UsePrefetchClipCountsOptions, type UsePrefetchClipCountsResult$1 as UsePrefetchClipCountsResult, type UseRealtimeLineMetricsProps, type UseTargetsOptions, type UseThreadsResult, type UseTicketHistoryReturn, type UseWorkspaceHealthByIdOptions, type UseWorkspaceHealthStatusReturn, type UseWorkspaceOperatorsOptions, type UseWorkspaceUptimeTimelineOptions, type UseWorkspaceUptimeTimelineResult, type UserInvitation, UserManagementService, type UserProfileConfig, type UserRole, UserService, VideoCard, type VideoConfig, type VideoCroppingConfig, type VideoCroppingRect, VideoGridView, type VideoIndex, type VideoIndexEntry, type VideoMetadata, VideoPlayer, type VideoPlayerProps, type VideoPlayerRef, 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, type WorkspaceDowntimeSegment, WorkspaceGrid, WorkspaceGridItem, type WorkspaceGridItemProps, type WorkspaceGridPosition, type WorkspaceHealth, WorkspaceHealthCard, type WorkspaceHealthInfo, type WorkspaceHealthStatusData, _default as WorkspaceHealthView, type WorkspaceHealthWithStatus, WorkspaceHistoryCalendar, WorkspaceMetricCards, WorkspaceMetricCardsImpl, type WorkspaceMetricCardsProps, type WorkspaceMetrics, WorkspaceMonthlyDataFetcher, type WorkspaceMonthlyDataFetcherProps, WorkspaceMonthlyHistory, type WorkspaceMonthlyMetric, WorkspaceMonthlyPdfGenerator, type WorkspaceMonthlyPdfGeneratorProps, type WorkspaceNavigationParams, WorkspacePdfExportButton, type WorkspacePdfExportButtonProps, WorkspacePdfGenerator, type WorkspacePdfGeneratorProps, type WorkspacePosition, type WorkspaceQualityData, type WorkspaceUptimeTimeline, type WorkspaceUptimeTimelinePoint, type WorkspaceUrlMapping, WorkspaceWhatsAppShareButton, type WorkspaceWhatsAppShareProps, actionService, apiUtils, authCoreService, authOTPService, authRateLimitService, checkRateLimit, clearAllRateLimits, clearRateLimit, clearS3VideoCache, clearS3VideoFromCache, clearWorkspaceDisplayNamesCache, cn, createInvitationService, createLinesService, createStreamProxyHandler, createSupabaseClient, createSupervisorService, createThrottledReload, createUserManagementService, createUserService, dashboardService, deleteThread, forceRefreshWorkspaceDisplayNames, formatDateInZone, formatDateTimeInZone, formatISTDate, formatIdleTime, formatRelativeTime, formatTimeInZone, fromUrlFriendlyName, getAllLineDisplayNames, getAllThreadMessages, getAllWorkspaceDisplayNamesAsync, getAnonClient, getAvailableShiftIds, getBrowserName, getCameraNumber, getCompanyMetricsTableName, getConfigurableShortWorkspaceDisplayName, getConfigurableWorkspaceDisplayName, getConfiguredLineIds, getCoreSessionRecordingProperties, getCoreSessionReplayUrl, getCurrentShift, getCurrentTimeInZone, getDashboardHeaderTimeInZone, getDaysDifferenceInZone, getDefaultCameraStreamUrl, getDefaultLineId, getDefaultTabForWorkspace, getLineDisplayName, getManufacturingInsights, getMetricsTablePrefix, getNextUpdateInterval, getOperationalDate, getS3SignedUrl, getS3VideoSrc, getShiftData, getShiftNameById, getShortShiftName, getShortWorkspaceDisplayName, getShortWorkspaceDisplayNameAsync, getStoredWorkspaceMappings, getSubscriptionManager, getThreadMessages, getUserThreads, getUserThreadsPaginated, getWorkspaceDisplayName, getWorkspaceDisplayNameAsync, getWorkspaceDisplayNamesMap, getWorkspaceFromUrl, getWorkspaceNavigationParams, hasAnyShiftData, identifyCoreUser, initializeCoreMixpanel, isLegacyConfiguration, isPrefetchError, isSafari, isTransitionPeriod, isUrlPermanentlyFailed, isValidFactoryViewConfiguration, isValidLineInfoPayload, isValidPrefetchParams, isValidPrefetchStatus, isValidWorkspaceDetailedMetricsPayload, isValidWorkspaceMetricsPayload, isWorkspaceDisplayNamesLoaded, isWorkspaceDisplayNamesLoading, linesService, mergeWithDefaultConfig, migrateLegacyConfiguration, optifyeAgentClient, parseS3Uri, preInitializeWorkspaceDisplayNames, preloadS3Video, preloadS3VideoUrl, preloadS3VideosUrl, preloadVideoUrl, preloadVideosUrl, qualityService, realtimeService, refreshWorkspaceDisplayNames, resetCoreMixpanel, resetFailedUrl, resetSubscriptionManager, s3VideoPreloader, shuffleArray, simulateApiDelay, skuService, startCoreSessionRecording, stopCoreSessionRecording, storeWorkspaceMapping, streamProxyConfig, throttledReloadDashboard, toUrlFriendlyName, trackCoreEvent, trackCorePageView, updateThreadTitle, useAccessControl, useActiveBreaks, useActiveLineId, useAllWorkspaceMetrics, useAnalyticsConfig, useAppTimezone, useAudioService, useAuth, useAuthConfig, useAxelNotifications, useCanSaveTargets, useClipFilter, useClipTypes, useClipTypesWithCounts, useComponentOverride, useCustomConfig, useDashboardConfig, useDashboardMetrics, useDatabaseConfig, useDateFormatter, useDateTimeConfig, useDynamicShiftConfig, useEndpointsConfig, useEntityConfig, useFactoryOverviewMetrics, useFeatureFlags, useFormatNumber, useHasLineAccess, useHistoricWorkspaceMetrics, useHlsStream, useHlsStreamWithCropping, useHookOverride, useHourEndTimer, useHourlyTargetAchievements, useHourlyTargetMisses, useLeaderboardMetrics, useLineDetailedMetrics, useLineKPIs, useLineMetrics, useLineShiftConfig, useLineSupervisor, useLineWorkspaceMetrics, useMessages, useMetrics, useNavigation, useOverrides, usePageOverride, usePrefetchClipCounts, useRealtimeLineMetrics, useRegistry, useSKUs, useSessionKeepAlive, useShiftConfig, useShifts, useSubscriptionManager, useSubscriptionManagerSafe, useSupabase, useSupabaseClient, useTargets, useTeamManagementPermissions, useTheme, useThemeConfig, useThreads, useTicketHistory, useTimezoneContext, useUserLineAccess, useVideoConfig, useWorkspaceConfig, useWorkspaceDetailedMetrics, useWorkspaceDisplayName, useWorkspaceDisplayNames, useWorkspaceDisplayNamesMap, useWorkspaceHealthById, useWorkspaceHealthStatus, useWorkspaceMetrics, useWorkspaceNavigation, useWorkspaceOperators, useWorkspaceUptimeTimeline, userService, videoPrefetchManager, videoPreloader, whatsappService, withAccessControl, withAuth, withRegistry, withTimezone, workspaceHealthService, workspaceService };
8599
+ export { ACTION_NAMES, AIAgentView, AcceptInvite, type AcceptInviteProps, AcceptInviteView, type AcceptInviteViewProps, type AccessControlReturn, type Action, type ActionName, type ActionService, type ActionThreshold, type ActiveBreak, AdvancedFilterDialog, AdvancedFilterPanel, type AnalyticsConfig, type AssignUserToFactoriesInput, type AssignUserToLinesInput, AudioService, AuthCallback, type AuthCallbackProps, AuthCallbackView, type AuthCallbackViewProps, type AuthConfig, AuthProvider, AuthService, type AuthUser, AuthenticatedBottleneckClipsView, AuthenticatedFactoryView, AuthenticatedHelpView, AuthenticatedHomeView, AuthenticatedShiftsView, AuthenticatedTargetsView, AuthenticatedTicketsView, AuthenticatedWorkspaceHealthView, AxelNotificationPopup, type AxelNotificationPopupProps, AxelOrb, type AxelOrbProps, type AxelSuggestion, BackButton, BackButtonMinimal, BarChart, type BarChartDataItem, type BarChartProps, type BarProps, BaseHistoryCalendar, type BaseHistoryCalendarProps, type BaseLineMetric, type BasePerformanceMetric, BottleneckClipsModal, type BottleneckClipsModalProps, type BottleneckClipsNavigationParams, BottleneckClipsView, type BottleneckClipsViewProps, type BottleneckFilterType, type BottleneckVideo, type BottleneckVideoData, BottlenecksContent, type BottlenecksContentProps, type BreadcrumbItem, type Break, BreakNotificationPopup, type BreakNotificationPopupProps, type BreakRowProps, type CacheEntryWithPrefetch, CachePrefetchStatus, type CachePrefetchStatusCallback, type CalendarShiftData, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type ChatMessage, type ChatThread, type CleanupFunction, type ClipCounts, type ClipCountsWithIndex, ClipFilterProvider, type ClipFilterState, type ClipsConfig, CompactWorkspaceHealthCard, type CompanyUsageReport, type CompanyUser, type CompanyUserUsageSummary, type CompanyUserWithDetails, type ComponentOverride, CongratulationsOverlay, type CongratulationsOverlayProps, type CoreComponents, type CreateInvitationInput, type CropConfig, CroppedHlsVideoPlayer, type CroppedHlsVideoPlayerProps, CroppedVideoPlayer, type CroppedVideoPlayerProps, 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_MAP_VIEW_CONFIG, DEFAULT_SHIFT_CONFIG, DEFAULT_SHIFT_DATA, 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 DayData, type DayHistoryData, type DaySummaryData, DebugAuth, DebugAuthView, DetailedHealthStatus, type DiagnosisOption$1 as DiagnosisOption, DiagnosisVideoModal, type DynamicLineShiftConfig, EmptyStateMessage, type EmptyStateMessageProps, EncouragementOverlay, type EndpointsConfig, type EntityConfig, type ErrorCallback$1 as ErrorCallback, type ExtendedCacheMetrics, type FactoryOverviewMetrics, FactoryView, type FactoryViewProps, type FetchIdleTimeReasonsParams, FileManagerFilters, FileManagerFilters as FileManagerFiltersProps, FilterDialogTrigger, FirstTimeLoginDebug, FirstTimeLoginHandler, type FormatNumberOptions, type FullyIndexedCallback$1 as FullyIndexedCallback, GaugeChart, type GaugeChartProps, GridComponentsPlaceholder, HamburgerButton, type HamburgerButtonProps, Header, type HeaderProps, type HealthAlertConfig, type HealthAlertHistory, HealthDateShiftSelector, type HealthFilterOptions, type HealthMetrics, type HealthStatus, HealthStatusGrid, HealthStatusIndicator, type HealthSummary, HelpView, type HelpViewProps, type HistoricWorkspaceMetrics, type HistoryCalendarProps, HlsVideoPlayer, type HlsVideoPlayerProps, type HlsVideoPlayerRef, HomeView, type HookOverride, type HourlyAchievement, HourlyOutputChart, type HourlyOutputChartProps, type HourlyPerformance, type IPrefetchManager, type ISTDateProps, ISTTimer, type ISTTimerProps, type IdleTimeReason, type IdleTimeReasonsData, type IdleTimeReasonsResponse, InlineEditableText, InteractiveOnboardingTour, InvitationService, type InvitationWithDetails, KPICard, type KPICardProps, KPIDetailViewWithDisplayNames as KPIDetailView, type KPIDetailViewProps, KPIGrid, type KPIGridProps, KPIHeader, type KPIHeaderProps, KPISection, type KPITrend, KPIsOverviewView, type KPIsOverviewViewProps, LINE_1_UUID, LINE_2_UUID, LargeOutputProgressChart, type LargeOutputProgressChartProps, LeaderboardDetailViewWithDisplayNames as LeaderboardDetailView, type LeaderboardDetailViewProps, type LeaderboardEntry, Legend, type Line$1 as Line, 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, LinesService, LiveTimer, LoadingInline, LoadingInline as LoadingInlineProps, LoadingOverlay, LoadingPage, LoadingSkeleton, LoadingSkeleton as LoadingSkeletonProps, LoadingState, LoadingState as LoadingStateProps, LoginPage, type LoginPageProps, LoginView, type LoginViewProps, Logo, type LogoProps, MainLayout, type MainLayoutProps, MapGridView, type MapViewConfig, type Metric, MetricCard, type MetricCardProps$1 as MetricCardProps, type MetricsError, MinimalOnboardingPopup, type NavItem, type NavItemTrackingEvent, type NavigationMethod, NewClipsNotification, type NewClipsNotificationProps, NoWorkspaceData, OnboardingDemo, OnboardingTour, type OperatorData, type OperatorInfo, OptifyeAgentClient, type OptifyeAgentContext, type OptifyeAgentRequest, type OptifyeAgentResponse, OptifyeLogoLoader, OutputProgressChart, type OutputProgressChartProps, type OverridesMap, type OverviewLineMetric, type OverviewWorkspaceMetric, PageHeader, type PageHeaderProps, type PageOverride, PieChart, type PieChartProps, PlayPauseIndicator, type PlayPauseIndicatorProps, type PoorPerformingWorkspace, PrefetchConfigurationError, PrefetchError, PrefetchEvents, type PrefetchKey, type PrefetchManagerConfig, type PrefetchManagerStats, type PrefetchOptions, type PrefetchParams$1 as PrefetchParams, type PrefetchRequest, type PrefetchResult, PrefetchStatus$1 as PrefetchStatus, type PrefetchStatusResult, type PrefetchSubscriptionCallbacks, PrefetchTimeoutError, type ProfileMenuItem, ProfileView, type QualityMetric, type QualityOverview, type QualityService, type RateLimitOptions, type RateLimitResult, type RealtimeLineMetricsProps, type RealtimeService, RegistryProvider, type RenderReadyCallback$1 as RenderReadyCallback, type RoutePath, type S3ClipsAPIParams, S3ClipsSupabaseService as S3ClipsService, type S3Config, type S3ListObjectsParams, S3Service, type S3ServiceConfig, type SKU, type SKUConfig, type SKUCreateInput, type SKUListProps, SKUManagementView, type SKUModalProps, type SKUSelectorProps, type SKUUpdateInput, type SOPCategory$1 as SOPCategory, SOPComplianceChart, type SOPComplianceChartProps, SSEChatClient, type SSEEvent, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SessionTracker, SessionTrackingContext, SessionTrackingProvider, type ShiftConfig, type ShiftConfiguration, type ShiftConfigurationRecord, type ShiftData, type ShiftDefinition, ShiftDisplay, type ShiftHistoryData, type ShiftHoursMap, type ShiftPanelProps, type ShiftSummaryData, type ShiftTime, ShiftsView, type ShiftsViewProps, SideNavBar, type SideNavBarProps, SignupWithInvitation, type SignupWithInvitationProps, SilentErrorBoundary, type SimpleLine, SimpleOnboardingPopup, SingleVideoStream, type SingleVideoStreamProps, Skeleton, type StatusChangeCallback$1 as StatusChangeCallback, type StreamProxyConfig, type SubscriberId, SubscriptionManager, SubscriptionManagerProvider, type SupabaseClient, SupabaseProvider, type Supervisor, type SupervisorAssignment, type SupervisorConfig, SupervisorDropdown, type SupervisorDropdownProps, type SupervisorManagementData, SupervisorManagementView, type SupervisorManagementViewProps, SupervisorService, type Target, TargetWorkspaceGrid, type TargetWorkspaceGridProps, TargetsViewWithDisplayNames as TargetsView, type TargetsViewProps, type TeamManagementPermissions, TeamManagementView, type TeamManagementViewProps, type ThemeColorValue, type ThemeConfig, ThreadSidebar, TicketHistory, TicketHistoryService, type TicketsConfig, TicketsView, type TicketsViewProps, TimeDisplay, TimePickerDropdown, Timer, TimezoneProvider, TimezoneService, type TodayUsageData, type TodayUsageReport, type TrackingEventProperties, type TrendDirection, type UnderperformingWorkspace, type UnderperformingWorkspaces, type UpdateUserRoleInput, type UptimeDetails, type UptimeStatus, type UsageBreakdown, type UseActiveBreaksResult, type UseAllWorkspaceMetricsOptions, type UseClipTypesResult, type UseCompanyUsersUsageOptions, type UseCompanyUsersUsageReturn, type UseDashboardMetricsProps, type UseDynamicShiftConfigResult, type UseFormatNumberResult, type UseIdleTimeReasonsProps, type UseIdleTimeReasonsResult, type UseLineShiftConfigResult, type UseLineWorkspaceMetricsOptions, type UseMessagesResult, type UseMultiLineShiftConfigsResult, type UsePrefetchClipCountsOptions$1 as UsePrefetchClipCountsOptions, type UsePrefetchClipCountsResult$1 as UsePrefetchClipCountsResult, type UseRealtimeLineMetricsProps, type UseTargetsOptions, type UseThreadsResult, type UseTicketHistoryReturn, type UseUserUsageOptions, type UseUserUsageReturn, type UseWorkspaceHealthByIdOptions, type UseWorkspaceHealthStatusReturn, type UseWorkspaceOperatorsOptions, type UseWorkspaceUptimeTimelineOptions, type UseWorkspaceUptimeTimelineResult, type UserInvitation, UserManagementService, type UserProfileConfig, type UserRole, UserService, type UserUsageDetail, type UserUsageInfo, type UserUsageSummary, VideoCard, type VideoConfig, type VideoCroppingConfig, type VideoCroppingRect, VideoGridView, type VideoIndex, type VideoIndexEntry, type VideoMetadata, VideoPlayer, type VideoPlayerProps, type VideoPlayerRef, 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, type WorkspaceDowntimeSegment, WorkspaceGrid, WorkspaceGridItem, type WorkspaceGridItemProps, type WorkspaceGridPosition, type WorkspaceHealth, WorkspaceHealthCard, type WorkspaceHealthInfo, type WorkspaceHealthStatusData, _default as WorkspaceHealthView, type WorkspaceHealthWithStatus, WorkspaceHistoryCalendar, WorkspaceMetricCards, WorkspaceMetricCardsImpl, type WorkspaceMetricCardsProps, type WorkspaceMetrics, WorkspaceMonthlyDataFetcher, type WorkspaceMonthlyDataFetcherProps, WorkspaceMonthlyHistory, type WorkspaceMonthlyMetric, WorkspaceMonthlyPdfGenerator, type WorkspaceMonthlyPdfGeneratorProps, type WorkspaceNavigationParams, WorkspacePdfExportButton, type WorkspacePdfExportButtonProps, WorkspacePdfGenerator, type WorkspacePdfGeneratorProps, type WorkspacePosition, type WorkspaceQualityData, type WorkspaceUptimeTimeline, type WorkspaceUptimeTimelinePoint, type WorkspaceUrlMapping, WorkspaceWhatsAppShareButton, type WorkspaceWhatsAppShareProps, actionService, apiUtils, authCoreService, authOTPService, authRateLimitService, checkRateLimit, clearAllRateLimits, clearRateLimit, clearS3VideoCache, clearS3VideoFromCache, clearWorkspaceDisplayNamesCache, cn, createInvitationService, createLinesService, createSessionTracker, createStreamProxyHandler, createSupabaseClient, createSupervisorService, createThrottledReload, createUserManagementService, createUserService, dashboardService, deleteThread, fetchIdleTimeReasons, forceRefreshWorkspaceDisplayNames, formatDateInZone, formatDateTimeInZone, formatISTDate, formatIdleTime, formatReasonLabel, formatRelativeTime, formatTimeInZone, fromUrlFriendlyName, getAllLineDisplayNames, getAllThreadMessages, getAllWorkspaceDisplayNamesAsync, getAnonClient, getAvailableShiftIds, getBrowserName, getCameraNumber, getCompanyMetricsTableName, getConfigurableShortWorkspaceDisplayName, getConfigurableWorkspaceDisplayName, getConfiguredLineIds, getCoreSessionRecordingProperties, getCoreSessionReplayUrl, getCurrentShift, getCurrentTimeInZone, getDashboardHeaderTimeInZone, getDaysDifferenceInZone, getDefaultCameraStreamUrl, getDefaultLineId, getDefaultTabForWorkspace, getLineDisplayName, getManufacturingInsights, getMetricsTablePrefix, getNextUpdateInterval, getOperationalDate, getReasonColor, getS3SignedUrl, getS3VideoSrc, getShiftData, getShiftNameById, getShortShiftName, getShortWorkspaceDisplayName, getShortWorkspaceDisplayNameAsync, getStoredWorkspaceMappings, getSubscriptionManager, getThreadMessages, getUserThreads, getUserThreadsPaginated, getWorkspaceDisplayName, getWorkspaceDisplayNameAsync, getWorkspaceDisplayNamesMap, getWorkspaceFromUrl, getWorkspaceNavigationParams, hasAnyShiftData, identifyCoreUser, initializeCoreMixpanel, isLegacyConfiguration, isPrefetchError, isSafari, isTransitionPeriod, isUrlPermanentlyFailed, isValidFactoryViewConfiguration, isValidLineInfoPayload, isValidPrefetchParams, isValidPrefetchStatus, isValidWorkspaceDetailedMetricsPayload, isValidWorkspaceMetricsPayload, isWorkspaceDisplayNamesLoaded, isWorkspaceDisplayNamesLoading, linesService, mergeWithDefaultConfig, migrateLegacyConfiguration, optifyeAgentClient, parseS3Uri, preInitializeWorkspaceDisplayNames, preloadS3Video, preloadS3VideoUrl, preloadS3VideosUrl, preloadVideoUrl, preloadVideosUrl, qualityService, realtimeService, refreshWorkspaceDisplayNames, resetCoreMixpanel, resetFailedUrl, resetSubscriptionManager, s3VideoPreloader, shuffleArray, simulateApiDelay, skuService, startCoreSessionRecording, stopCoreSessionRecording, storeWorkspaceMapping, streamProxyConfig, throttledReloadDashboard, toUrlFriendlyName, trackCoreEvent, trackCorePageView, transformToChartData, updateThreadTitle, useAccessControl, useActiveBreaks, useActiveLineId, useAllWorkspaceMetrics, useAnalyticsConfig, useAppTimezone, useAudioService, useAuth, useAuthConfig, useAxelNotifications, useCanSaveTargets, useClipFilter, useClipTypes, useClipTypesWithCounts, useCompanyUsersUsage, useComponentOverride, useCustomConfig, useDashboardConfig, useDashboardMetrics, useDatabaseConfig, useDateFormatter, useDateTimeConfig, useDynamicShiftConfig, useEndpointsConfig, useEntityConfig, useFactoryOverviewMetrics, useFeatureFlags, useFormatNumber, useHasLineAccess, useHistoricWorkspaceMetrics, useHlsStream, useHlsStreamWithCropping, useHookOverride, useHourEndTimer, useHourlyTargetAchievements, useHourlyTargetMisses, useIdleTimeReasons, useLeaderboardMetrics, useLineDetailedMetrics, useLineKPIs, useLineMetrics, useLineShiftConfig, useLineSupervisor, useLineWorkspaceMetrics, useMessages, useMetrics, useMultiLineShiftConfigs, useNavigation, useOverrides, usePageOverride, usePrefetchClipCounts, useRealtimeLineMetrics, useRegistry, useSKUs, useSessionKeepAlive, useSessionTracking, useSessionTrackingContext, useShiftConfig, useShifts, useSubscriptionManager, useSubscriptionManagerSafe, useSupabase, useSupabaseClient, useTargets, useTeamManagementPermissions, useTheme, useThemeConfig, useThreads, useTicketHistory, useTimezoneContext, useUserLineAccess, useUserUsage, useVideoConfig, useWorkspaceConfig, useWorkspaceDetailedMetrics, useWorkspaceDisplayName, useWorkspaceDisplayNames, useWorkspaceDisplayNamesMap, useWorkspaceHealthById, useWorkspaceHealthStatus, useWorkspaceMetrics, useWorkspaceNavigation, useWorkspaceOperators, useWorkspaceUptimeTimeline, userService, videoPrefetchManager, videoPreloader, whatsappService, withAccessControl, withAuth, withRegistry, withTimezone, workspaceHealthService, workspaceService };