andoncloud-dashboard-toolkit 1.5.64 → 1.5.65

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.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["styles","styles","en","pl","styles","FEATURE_KEY","styles","styles","styles","styles","styles","styles","styles","styles","styles","styles","locales","styles","Select","styles.container","locales"],"sources":["../src/components/ConfirmTooltip/styles.ts","../src/components/ConfirmTooltip/index.tsx","../src/graphql-sdk.ts","../src/helpers/filters.ts","../src/locales/en/translation.json","../src/locales/pl/translation.json","../src/locales/index.ts","../src/components/DashboardFilters/AccessDeniedModal/styles.ts","../src/components/DashboardFilters/AccessDeniedModal/index.tsx","../src/components/DashboardFilters/DayTypeSelector/styles.ts","../src/components/DashboardFilters/DayTypeSelector/index.tsx","../src/helpers/shifts.ts","../src/helpers/periods.ts","../src/components/DashboardFilters/PeriodList/styles.ts","../src/components/DashboardFilters/PeriodList/index.tsx","../src/components/DashboardFilters/DateRangePicker/styles.ts","../src/components/DashboardFilters/DateRangePicker/index.tsx","../src/components/DashboardFilters/ShiftSelector/styles.ts","../src/components/DashboardFilters/ShiftSelector/index.tsx","../src/components/DashboardFilters/useDashboardFilters.ts","../src/components/DashboardFilters/styles.ts","../src/components/DashboardFilters/index.tsx","../src/assets/bg-pattern.ts","../src/components/MetricCard/styles.ts","../src/components/MetricCard/index.tsx","../src/components/SortableSelect/index.tsx","../src/assets/DragIcon.tsx","../src/utils/actioncable-client.ts","../src/utils/graphql-ws-client.ts","../src/graphql-ws.ts","../src/helpers/sdk.ts","../src/hooks/useGqlClients.ts","../src/components/WidgetCard/errorBoundaryStyles.ts","../src/components/WidgetCard/ErrorBoundary.tsx","../src/assets/resize-icon.ts","../src/components/WidgetCard/styles.ts","../src/components/WidgetCard/index.tsx","../src/helpers/aggregation.ts","../src/helpers/time.ts","../src/version.ts"],"sourcesContent":["import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n buttons: {\n paddingTop: (theme) => theme.spacing(2),\n },\n cancelButton: {\n marginRight: '10px',\n },\n popper: {\n '.MuiTooltip-tooltip': {\n padding: '20px',\n fontSize: '14px',\n borderRadius: '8px',\n border: `1px solid #4E5A67`,\n background: '#1C1F25',\n boxShadow: '0px 4px 10.4px 0px rgba(255, 255, 255, 0.05)',\n },\n '.MuiTooltip-arrow': {\n color: '#4E5A67',\n },\n },\n};\n\nexport default styles;\n","import { Box, Button, Stack, Tooltip, TooltipProps, Typography } from '@mui/material';\n\nimport styles from './styles';\n\ninterface ConfirmTooltipProps extends Omit<TooltipProps, 'title'> {\n confirmMessage: string;\n confirmButtonText: string;\n cancelButtonText: string;\n onCancel: () => void;\n onConfirm: () => void;\n confirmButtonTestId?: string;\n cancelButtonTestId?: string;\n}\n\nconst ConfirmTooltip: React.FC<ConfirmTooltipProps> = ({\n children,\n confirmMessage,\n confirmButtonText,\n cancelButtonText,\n onCancel,\n onConfirm,\n confirmButtonTestId,\n cancelButtonTestId,\n ...props\n}) => {\n return (\n <Tooltip\n {...props}\n placement=\"bottom-end\"\n title={\n <Box>\n <Typography>{confirmMessage}</Typography>\n <Stack direction=\"row\" justifyContent=\"flex-end\" sx={styles.buttons}>\n <Button\n variant=\"outlined\"\n color=\"secondary\"\n onClick={(e) => {\n e.stopPropagation();\n\n onCancel();\n }}\n sx={styles.cancelButton}\n data-testid={cancelButtonTestId}\n >\n {cancelButtonText}\n </Button>\n <Button\n variant=\"contained\"\n color=\"error\"\n onClick={(e) => {\n e.stopPropagation();\n\n onConfirm();\n }}\n data-testid={confirmButtonTestId}\n >\n {confirmButtonText}\n </Button>\n </Stack>\n </Box>\n }\n PopperProps={{ sx: styles.popper }}\n arrow\n >\n {children}\n </Tooltip>\n );\n};\n\nexport default ConfirmTooltip;\n","import { GraphQLClient, RequestOptions } from 'graphql-request';\nimport gql from 'graphql-tag';\nexport type Maybe<T> = T | null;\nexport type InputMaybe<T> = Maybe<T>;\nexport type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };\nexport type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };\nexport type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };\nexport type MakeEmpty<T extends { [key: string]: unknown }, K extends keyof T> = { [_ in K]?: never };\nexport type Incremental<T> = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never };\ntype GraphQLClientRequestHeaders = RequestOptions['requestHeaders'];\n/** All built-in and custom scalars, mapped to their actual values */\nexport type Scalars = {\n ID: { input: string; output: string; }\n String: { input: string; output: string; }\n Boolean: { input: boolean; output: boolean; }\n Int: { input: number; output: number; }\n Float: { input: number; output: number; }\n /** An ISO 8601-encoded date */\n ISO8601Date: { input: any; output: any; }\n /** An ISO 8601-encoded datetime */\n ISO8601DateTime: { input: any; output: any; }\n /** Represents untyped JSON */\n JSON: { input: any; output: any; }\n};\n\nexport enum AccessRequestTypeEnum {\n FeatureAccess = 'FEATURE_ACCESS',\n Purchase = 'PURCHASE',\n TrialExpired = 'TRIAL_EXPIRED',\n Wishlist = 'WISHLIST'\n}\n\nexport type ActualStaffingCount = {\n __typename?: 'ActualStaffingCount';\n actualOperators: Scalars['Int']['output'];\n date: Scalars['ISO8601Date']['output'];\n hasDeviation: Scalars['Boolean']['output'];\n plannedOperators?: Maybe<Scalars['Int']['output']>;\n shift: Shift;\n workplace: Workplace;\n};\n\nexport type ActualStaffingCountFilter = {\n date?: InputMaybe<Scalars['ISO8601Date']['input']>;\n shift_id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplace_id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n};\n\nexport enum AndonLightColor {\n Gray = 'gray',\n Green = 'green',\n Red = 'red',\n Yellow = 'yellow'\n}\n\nexport type ApplicationInfo = {\n __typename?: 'ApplicationInfo';\n apiVersion: Scalars['String']['output'];\n};\n\nexport type AssignOperatorInput = {\n shiftId: Scalars['ID']['input'];\n userId: Scalars['ID']['input'];\n validFrom: Scalars['ISO8601Date']['input'];\n workplaceId: Scalars['ID']['input'];\n};\n\n/** Autogenerated return type of AssignOperatorToWorkplace */\nexport type AssignOperatorToWorkplacePayload = {\n __typename?: 'AssignOperatorToWorkplacePayload';\n assignment?: Maybe<WorkplaceAssignment>;\n errors?: Maybe<Array<MutationError>>;\n};\n\nexport type AssignedOperator = {\n __typename?: 'AssignedOperator';\n presenceStatus: PresenceStatusEnum;\n user: User;\n};\n\nexport type AssignmentSummary = {\n __typename?: 'AssignmentSummary';\n totalAssigned: Scalars['Int']['output'];\n totalCheckedIn: Scalars['Int']['output'];\n totalMissing: Scalars['Int']['output'];\n};\n\nexport type AvailabilityInsightsEntry = {\n __typename?: 'AvailabilityInsightsEntry';\n availability: Scalars['Float']['output'];\n label: Scalars['String']['output'];\n noData: Scalars['Boolean']['output'];\n};\n\nexport type AvailabilityInsightsInput = {\n comparedPeriods: Scalars['Int']['input'];\n dateFrom: Scalars['ISO8601DateTime']['input'];\n dateTo: Scalars['ISO8601DateTime']['input'];\n dayType: DayType;\n};\n\nexport type AvailabilityInsightsResult = {\n __typename?: 'AvailabilityInsightsResult';\n entries: Array<AvailabilityInsightsEntry>;\n};\n\nexport enum AvailabilityStatus {\n OffSchedule = 'OFF_SCHEDULE',\n PlannedStop = 'PLANNED_STOP',\n Stopped = 'STOPPED',\n Working = 'WORKING'\n}\n\nexport type BulkStaffingPlanInput = {\n plans: Array<StaffingPlanInput>;\n};\n\n/** Autogenerated return type of BulkUpsertStaffingPlans */\nexport type BulkUpsertStaffingPlansPayload = {\n __typename?: 'BulkUpsertStaffingPlansPayload';\n errors?: Maybe<Array<MutationError>>;\n staffingPlans?: Maybe<Array<StaffingPlan>>;\n};\n\nexport type CompanyConfig = {\n __typename?: 'CompanyConfig';\n devicesConfigs: Array<DeviceConfig>;\n displayedKpiItems: Array<Scalars['String']['output']>;\n reasonsRecommendationsEnabled: Scalars['Boolean']['output'];\n roleConfig: RoleConfig;\n statusChangeTransitionPermissionsUpdatedAt?: Maybe<Scalars['String']['output']>;\n workplacesConfigs: Array<WorkplaceConfig>;\n};\n\nexport type Counter = {\n __typename?: 'Counter';\n directoryId?: Maybe<Scalars['String']['output']>;\n hasNote: Scalars['Boolean']['output'];\n id: Scalars['ID']['output'];\n isDisabled: Scalars['Boolean']['output'];\n kind: CounterKindEnum;\n name: Scalars['String']['output'];\n position: Scalars['Int']['output'];\n value: Scalars['Float']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type CounterDirectory = {\n __typename?: 'CounterDirectory';\n directoryId?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name?: Maybe<Scalars['String']['output']>;\n position: Scalars['Int']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type CounterDirectoryFilter = {\n ancestry_cont?: InputMaybe<Scalars['String']['input']>;\n ancestry_contains?: InputMaybe<Scalars['String']['input']>;\n ancestry_end?: InputMaybe<Scalars['String']['input']>;\n ancestry_eq?: InputMaybe<Scalars['String']['input']>;\n ancestry_equals?: InputMaybe<Scalars['String']['input']>;\n ancestry_in?: InputMaybe<Array<Scalars['String']['input']>>;\n ancestry_not_eq?: InputMaybe<Scalars['String']['input']>;\n ancestry_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n ancestry_not_null?: InputMaybe<Scalars['String']['input']>;\n ancestry_null?: InputMaybe<Scalars['String']['input']>;\n ancestry_start?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n position_eq?: InputMaybe<Scalars['String']['input']>;\n position_equals?: InputMaybe<Scalars['String']['input']>;\n position_gt?: InputMaybe<Scalars['String']['input']>;\n position_gteq?: InputMaybe<Scalars['String']['input']>;\n position_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_lt?: InputMaybe<Scalars['String']['input']>;\n position_lteq?: InputMaybe<Scalars['String']['input']>;\n position_not_eq?: InputMaybe<Scalars['String']['input']>;\n position_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_not_null?: InputMaybe<Scalars['String']['input']>;\n position_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type CounterFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_eq?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_equals?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_gt?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_gteq?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n counter_directory_id_lt?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_lteq?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n counter_directory_id_not_null?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n handler_eq?: InputMaybe<Scalars['String']['input']>;\n handler_equals?: InputMaybe<Scalars['String']['input']>;\n handler_gt?: InputMaybe<Scalars['String']['input']>;\n handler_gteq?: InputMaybe<Scalars['String']['input']>;\n handler_in?: InputMaybe<Array<Scalars['String']['input']>>;\n handler_lt?: InputMaybe<Scalars['String']['input']>;\n handler_lteq?: InputMaybe<Scalars['String']['input']>;\n handler_not_eq?: InputMaybe<Scalars['String']['input']>;\n handler_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n handler_not_null?: InputMaybe<Scalars['String']['input']>;\n handler_null?: InputMaybe<Scalars['String']['input']>;\n has_note_eq?: InputMaybe<Scalars['String']['input']>;\n has_note_equals?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n incrementer_eq?: InputMaybe<Scalars['String']['input']>;\n incrementer_equals?: InputMaybe<Scalars['String']['input']>;\n incrementer_gt?: InputMaybe<Scalars['String']['input']>;\n incrementer_gteq?: InputMaybe<Scalars['String']['input']>;\n incrementer_in?: InputMaybe<Array<Scalars['String']['input']>>;\n incrementer_lt?: InputMaybe<Scalars['String']['input']>;\n incrementer_lteq?: InputMaybe<Scalars['String']['input']>;\n incrementer_not_eq?: InputMaybe<Scalars['String']['input']>;\n incrementer_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n incrementer_not_null?: InputMaybe<Scalars['String']['input']>;\n incrementer_null?: InputMaybe<Scalars['String']['input']>;\n is_disabled_eq?: InputMaybe<Scalars['String']['input']>;\n is_disabled_equals?: InputMaybe<Scalars['String']['input']>;\n kind_eq?: InputMaybe<Scalars['String']['input']>;\n kind_equals?: InputMaybe<Scalars['String']['input']>;\n kind_gt?: InputMaybe<Scalars['String']['input']>;\n kind_gteq?: InputMaybe<Scalars['String']['input']>;\n kind_in?: InputMaybe<Array<Scalars['String']['input']>>;\n kind_lt?: InputMaybe<Scalars['String']['input']>;\n kind_lteq?: InputMaybe<Scalars['String']['input']>;\n kind_not_eq?: InputMaybe<Scalars['String']['input']>;\n kind_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n kind_not_null?: InputMaybe<Scalars['String']['input']>;\n kind_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n order_resettable_eq?: InputMaybe<Scalars['String']['input']>;\n order_resettable_equals?: InputMaybe<Scalars['String']['input']>;\n platform_visible_eq?: InputMaybe<Scalars['String']['input']>;\n platform_visible_equals?: InputMaybe<Scalars['String']['input']>;\n position_eq?: InputMaybe<Scalars['String']['input']>;\n position_equals?: InputMaybe<Scalars['String']['input']>;\n position_gt?: InputMaybe<Scalars['String']['input']>;\n position_gteq?: InputMaybe<Scalars['String']['input']>;\n position_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_lt?: InputMaybe<Scalars['String']['input']>;\n position_lteq?: InputMaybe<Scalars['String']['input']>;\n position_not_eq?: InputMaybe<Scalars['String']['input']>;\n position_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_not_null?: InputMaybe<Scalars['String']['input']>;\n position_null?: InputMaybe<Scalars['String']['input']>;\n reason_id_eq?: InputMaybe<Scalars['String']['input']>;\n reason_id_equals?: InputMaybe<Scalars['String']['input']>;\n reason_id_gt?: InputMaybe<Scalars['String']['input']>;\n reason_id_gteq?: InputMaybe<Scalars['String']['input']>;\n reason_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_id_lt?: InputMaybe<Scalars['String']['input']>;\n reason_id_lteq?: InputMaybe<Scalars['String']['input']>;\n reason_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n reason_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_id_not_null?: InputMaybe<Scalars['String']['input']>;\n reason_id_null?: InputMaybe<Scalars['String']['input']>;\n reset_point_eq?: InputMaybe<Scalars['String']['input']>;\n reset_point_equals?: InputMaybe<Scalars['String']['input']>;\n reset_point_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n reset_point_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n reset_point_not_null?: InputMaybe<Scalars['String']['input']>;\n reset_point_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport enum CounterKindEnum {\n Bad = 'bad',\n Good = 'good'\n}\n\n/** Autogenerated return type of CreateDashboard */\nexport type CreateDashboardPayload = {\n __typename?: 'CreateDashboardPayload';\n dashboard?: Maybe<Dashboard>;\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of CreateOrder */\nexport type CreateOrderPayload = {\n __typename?: 'CreateOrderPayload';\n errors?: Maybe<Array<MutationError>>;\n order?: Maybe<Order>;\n};\n\n/** Autogenerated return type of CreateProduct */\nexport type CreateProductPayload = {\n __typename?: 'CreateProductPayload';\n errors?: Maybe<Array<MutationError>>;\n product?: Maybe<Product>;\n};\n\n/** Autogenerated return type of CreateStaffingPlan */\nexport type CreateStaffingPlanPayload = {\n __typename?: 'CreateStaffingPlanPayload';\n errors?: Maybe<Array<MutationError>>;\n staffingPlan?: Maybe<StaffingPlan>;\n};\n\n/** Autogenerated return type of CreateStatusChange */\nexport type CreateStatusChangePayload = {\n __typename?: 'CreateStatusChangePayload';\n errors?: Maybe<Array<MutationError>>;\n statusChange?: Maybe<StatusChange>;\n};\n\n/** Autogenerated return type of CreateUserPresence */\nexport type CreateUserPresencePayload = {\n __typename?: 'CreateUserPresencePayload';\n errors?: Maybe<Array<MutationError>>;\n userPresence?: Maybe<UserPresence>;\n};\n\n/** Autogenerated return type of CreateWidget */\nexport type CreateWidgetPayload = {\n __typename?: 'CreateWidgetPayload';\n errors?: Maybe<Array<MutationError>>;\n widget?: Maybe<Widget>;\n};\n\nexport type Dashboard = {\n __typename?: 'Dashboard';\n filters?: Maybe<Scalars['String']['output']>;\n gridLayout?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type DashboardFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n filters_cont?: InputMaybe<Scalars['String']['input']>;\n filters_contains?: InputMaybe<Scalars['String']['input']>;\n filters_end?: InputMaybe<Scalars['String']['input']>;\n filters_eq?: InputMaybe<Scalars['String']['input']>;\n filters_equals?: InputMaybe<Scalars['String']['input']>;\n filters_in?: InputMaybe<Array<Scalars['String']['input']>>;\n filters_not_eq?: InputMaybe<Scalars['String']['input']>;\n filters_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n filters_not_null?: InputMaybe<Scalars['String']['input']>;\n filters_null?: InputMaybe<Scalars['String']['input']>;\n filters_start?: InputMaybe<Scalars['String']['input']>;\n grid_layout_contains?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n settings_contains?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport enum DayType {\n Calendar = 'CALENDAR',\n Production = 'PRODUCTION'\n}\n\nexport type Department = {\n __typename?: 'Department';\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type DepartmentFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type DeviceConfig = {\n __typename?: 'DeviceConfig';\n defaultWorkplaceId: Scalars['String']['output'];\n deviceId: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type FloorPlan = {\n __typename?: 'FloorPlan';\n id: Scalars['ID']['output'];\n imageUrl: Scalars['String']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type FloorPlanFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport enum InsightsAggregation {\n Daily = 'DAILY',\n Hourly = 'HOURLY',\n Monthly = 'MONTHLY',\n Weekly = 'WEEKLY'\n}\n\nexport type Item = {\n __typename?: 'Item';\n count: Scalars['Float']['output'];\n id: Scalars['ID']['output'];\n order: Order;\n product?: Maybe<Product>;\n};\n\nexport type Metric = {\n __typename?: 'Metric';\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport enum MetricTypeEnum {\n Counter = 'COUNTER',\n Empty = 'EMPTY',\n Indicator = 'INDICATOR',\n Kpi = 'KPI',\n Timer = 'TIMER'\n}\n\nexport enum MetricUnitEnum {\n Duration = 'DURATION',\n Percent = 'PERCENT',\n Round = 'ROUND'\n}\n\nexport type MetricValue = {\n __typename?: 'MetricValue';\n active: Scalars['Boolean']['output'];\n id: Scalars['ID']['output'];\n metricId: Scalars['String']['output'];\n statusColor: AndonLightColor;\n textValue?: Maybe<Scalars['String']['output']>;\n timer?: Maybe<Scalars['Int']['output']>;\n type: MetricTypeEnum;\n unit?: Maybe<MetricUnitEnum>;\n workplaceId: Scalars['String']['output'];\n};\n\nexport type Mutation = {\n __typename?: 'Mutation';\n assignOperatorToWorkplace: AssignOperatorToWorkplacePayload;\n bulkUpsertStaffingPlans: BulkUpsertStaffingPlansPayload;\n createDashboard: CreateDashboardPayload;\n createOrder: CreateOrderPayload;\n createProduct: CreateProductPayload;\n createStaffingPlan: CreateStaffingPlanPayload;\n createStatusChange: CreateStatusChangePayload;\n createUserPresence: CreateUserPresencePayload;\n createWidget: CreateWidgetPayload;\n pauseOrderExecution: PauseOrderExecutionPayload;\n removeDashboard: RemoveDashboardPayload;\n removeStaffingPlan: RemoveStaffingPlanPayload;\n removeUserPresence: RemoveUserPresencePayload;\n removeWidget: RemoveWidgetPayload;\n removeWorkplaceUsersPresences: RemoveWorkplaceUsersPresencesPayload;\n requestFeatureAccess: RequestFeatureAccessMutationPayload;\n setCounter: SetCounterPayload;\n startOrderExecution: StartOrderExecutionPayload;\n startTrial: StartTrialMutationPayload;\n stopOrderExecution: StopOrderExecutionPayload;\n unassignOperatorFromWorkplace: UnassignOperatorFromWorkplacePayload;\n updateDashboard: UpdateDashboardPayload;\n updateNotification: UpdateNotificationPayload;\n updateOrder: UpdateOrderPayload;\n updateOrderExecution: UpdateOrderExecutionPayload;\n updateStaffingPlan: UpdateStaffingPlanPayload;\n updateStatusChange: UpdateStatusChangePayload;\n updateWidget: UpdateWidgetPayload;\n updateWorkOrder: UpdateWorkOrderPayload;\n};\n\n\nexport type MutationAssignOperatorToWorkplaceArgs = {\n input: AssignOperatorInput;\n};\n\n\nexport type MutationBulkUpsertStaffingPlansArgs = {\n input: BulkStaffingPlanInput;\n};\n\n\nexport type MutationCreateDashboardArgs = {\n filters?: InputMaybe<Scalars['String']['input']>;\n gridLayout?: InputMaybe<Scalars['String']['input']>;\n id: Scalars['ID']['input'];\n name: Scalars['String']['input'];\n};\n\n\nexport type MutationCreateOrderArgs = {\n id: Scalars['ID']['input'];\n number: Scalars['String']['input'];\n};\n\n\nexport type MutationCreateProductArgs = {\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n number: Scalars['String']['input'];\n};\n\n\nexport type MutationCreateStaffingPlanArgs = {\n input: StaffingPlanInput;\n};\n\n\nexport type MutationCreateStatusChangeArgs = {\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n reasonHasBeenRecommended?: InputMaybe<Scalars['Boolean']['input']>;\n reasonId: Scalars['ID']['input'];\n startedAt?: InputMaybe<Scalars['String']['input']>;\n userId?: InputMaybe<Scalars['ID']['input']>;\n workplaceId: Scalars['ID']['input'];\n};\n\n\nexport type MutationCreateUserPresenceArgs = {\n id: Scalars['ID']['input'];\n userToken: Scalars['String']['input'];\n workplaceId: Scalars['ID']['input'];\n};\n\n\nexport type MutationCreateWidgetArgs = {\n config?: InputMaybe<Scalars['String']['input']>;\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationPauseOrderExecutionArgs = {\n id: Scalars['ID']['input'];\n statusChangeId: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveDashboardArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveStaffingPlanArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveUserPresenceArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveWidgetArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveWorkplaceUsersPresencesArgs = {\n workplaceId: Scalars['ID']['input'];\n};\n\n\nexport type MutationRequestFeatureAccessArgs = {\n input: RequestFeatureAccessInput;\n};\n\n\nexport type MutationSetCounterArgs = {\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n orderExecutionId?: InputMaybe<Scalars['ID']['input']>;\n value: Scalars['Float']['input'];\n};\n\n\nexport type MutationStartOrderExecutionArgs = {\n id: Scalars['ID']['input'];\n itemCount?: InputMaybe<Scalars['Float']['input']>;\n order: OrderInput;\n product?: InputMaybe<ProductInput>;\n statusChangeId: Scalars['ID']['input'];\n workplaceId: Scalars['ID']['input'];\n};\n\n\nexport type MutationStartTrialArgs = {\n input: StartTrialInput;\n};\n\n\nexport type MutationStopOrderExecutionArgs = {\n id: Scalars['ID']['input'];\n statusChangeId: Scalars['ID']['input'];\n};\n\n\nexport type MutationUnassignOperatorFromWorkplaceArgs = {\n input: UnassignOperatorInput;\n};\n\n\nexport type MutationUpdateDashboardArgs = {\n filters?: InputMaybe<Scalars['String']['input']>;\n gridLayout: Scalars['String']['input'];\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n};\n\n\nexport type MutationUpdateNotificationArgs = {\n id: Scalars['ID']['input'];\n status: Scalars['String']['input'];\n};\n\n\nexport type MutationUpdateOrderArgs = {\n input: UpdateOrderInput;\n};\n\n\nexport type MutationUpdateOrderExecutionArgs = {\n id: Scalars['ID']['input'];\n standardRateId: Scalars['ID']['input'];\n};\n\n\nexport type MutationUpdateStaffingPlanArgs = {\n input: StaffingPlanUpdateInput;\n};\n\n\nexport type MutationUpdateStatusChangeArgs = {\n input: UpdateStatusChangeInput;\n};\n\n\nexport type MutationUpdateWidgetArgs = {\n config: Scalars['String']['input'];\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationUpdateWorkOrderArgs = {\n id: Scalars['ID']['input'];\n input: UpdateWorkOrderInput;\n};\n\nexport type MutationError = {\n __typename?: 'MutationError';\n field?: Maybe<Scalars['String']['output']>;\n messages: Array<Scalars['String']['output']>;\n};\n\nexport type Notification = {\n __typename?: 'Notification';\n channel?: Maybe<Scalars['String']['output']>;\n details?: Maybe<Scalars['String']['output']>;\n emitterId: Scalars['String']['output'];\n emitterType: Scalars['String']['output'];\n id: Scalars['ID']['output'];\n message: Scalars['String']['output'];\n receiverId: Scalars['String']['output'];\n receiverType: Scalars['String']['output'];\n status?: Maybe<Scalars['String']['output']>;\n};\n\nexport type NotificationFilter = {\n channel_eq?: InputMaybe<Scalars['String']['input']>;\n channel_equals?: InputMaybe<Scalars['String']['input']>;\n channel_gt?: InputMaybe<Scalars['String']['input']>;\n channel_gteq?: InputMaybe<Scalars['String']['input']>;\n channel_in?: InputMaybe<Array<Scalars['String']['input']>>;\n channel_lt?: InputMaybe<Scalars['String']['input']>;\n channel_lteq?: InputMaybe<Scalars['String']['input']>;\n channel_not_eq?: InputMaybe<Scalars['String']['input']>;\n channel_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n channel_not_null?: InputMaybe<Scalars['String']['input']>;\n channel_null?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n details_cont?: InputMaybe<Scalars['String']['input']>;\n details_contains?: InputMaybe<Scalars['String']['input']>;\n details_end?: InputMaybe<Scalars['String']['input']>;\n details_eq?: InputMaybe<Scalars['String']['input']>;\n details_equals?: InputMaybe<Scalars['String']['input']>;\n details_in?: InputMaybe<Array<Scalars['String']['input']>>;\n details_not_eq?: InputMaybe<Scalars['String']['input']>;\n details_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n details_not_null?: InputMaybe<Scalars['String']['input']>;\n details_null?: InputMaybe<Scalars['String']['input']>;\n details_start?: InputMaybe<Scalars['String']['input']>;\n emitter_id_eq?: InputMaybe<Scalars['String']['input']>;\n emitter_id_equals?: InputMaybe<Scalars['String']['input']>;\n emitter_id_gt?: InputMaybe<Scalars['String']['input']>;\n emitter_id_gteq?: InputMaybe<Scalars['String']['input']>;\n emitter_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n emitter_id_lt?: InputMaybe<Scalars['String']['input']>;\n emitter_id_lteq?: InputMaybe<Scalars['String']['input']>;\n emitter_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n emitter_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n emitter_id_not_null?: InputMaybe<Scalars['String']['input']>;\n emitter_id_null?: InputMaybe<Scalars['String']['input']>;\n emitter_type_cont?: InputMaybe<Scalars['String']['input']>;\n emitter_type_contains?: InputMaybe<Scalars['String']['input']>;\n emitter_type_end?: InputMaybe<Scalars['String']['input']>;\n emitter_type_eq?: InputMaybe<Scalars['String']['input']>;\n emitter_type_equals?: InputMaybe<Scalars['String']['input']>;\n emitter_type_in?: InputMaybe<Array<Scalars['String']['input']>>;\n emitter_type_not_eq?: InputMaybe<Scalars['String']['input']>;\n emitter_type_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n emitter_type_not_null?: InputMaybe<Scalars['String']['input']>;\n emitter_type_null?: InputMaybe<Scalars['String']['input']>;\n emitter_type_start?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n message_cont?: InputMaybe<Scalars['String']['input']>;\n message_contains?: InputMaybe<Scalars['String']['input']>;\n message_end?: InputMaybe<Scalars['String']['input']>;\n message_eq?: InputMaybe<Scalars['String']['input']>;\n message_equals?: InputMaybe<Scalars['String']['input']>;\n message_in?: InputMaybe<Array<Scalars['String']['input']>>;\n message_not_eq?: InputMaybe<Scalars['String']['input']>;\n message_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n message_not_null?: InputMaybe<Scalars['String']['input']>;\n message_null?: InputMaybe<Scalars['String']['input']>;\n message_start?: InputMaybe<Scalars['String']['input']>;\n message_symbol_cont?: InputMaybe<Scalars['String']['input']>;\n message_symbol_contains?: InputMaybe<Scalars['String']['input']>;\n message_symbol_end?: InputMaybe<Scalars['String']['input']>;\n message_symbol_eq?: InputMaybe<Scalars['String']['input']>;\n message_symbol_equals?: InputMaybe<Scalars['String']['input']>;\n message_symbol_in?: InputMaybe<Array<Scalars['String']['input']>>;\n message_symbol_not_eq?: InputMaybe<Scalars['String']['input']>;\n message_symbol_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n message_symbol_not_null?: InputMaybe<Scalars['String']['input']>;\n message_symbol_null?: InputMaybe<Scalars['String']['input']>;\n message_symbol_start?: InputMaybe<Scalars['String']['input']>;\n message_variables_contains?: InputMaybe<Scalars['String']['input']>;\n receiver_id_eq?: InputMaybe<Scalars['String']['input']>;\n receiver_id_equals?: InputMaybe<Scalars['String']['input']>;\n receiver_id_gt?: InputMaybe<Scalars['String']['input']>;\n receiver_id_gteq?: InputMaybe<Scalars['String']['input']>;\n receiver_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n receiver_id_lt?: InputMaybe<Scalars['String']['input']>;\n receiver_id_lteq?: InputMaybe<Scalars['String']['input']>;\n receiver_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n receiver_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n receiver_id_not_null?: InputMaybe<Scalars['String']['input']>;\n receiver_id_null?: InputMaybe<Scalars['String']['input']>;\n receiver_type_cont?: InputMaybe<Scalars['String']['input']>;\n receiver_type_contains?: InputMaybe<Scalars['String']['input']>;\n receiver_type_end?: InputMaybe<Scalars['String']['input']>;\n receiver_type_eq?: InputMaybe<Scalars['String']['input']>;\n receiver_type_equals?: InputMaybe<Scalars['String']['input']>;\n receiver_type_in?: InputMaybe<Array<Scalars['String']['input']>>;\n receiver_type_not_eq?: InputMaybe<Scalars['String']['input']>;\n receiver_type_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n receiver_type_not_null?: InputMaybe<Scalars['String']['input']>;\n receiver_type_null?: InputMaybe<Scalars['String']['input']>;\n receiver_type_start?: InputMaybe<Scalars['String']['input']>;\n status_eq?: InputMaybe<Scalars['String']['input']>;\n status_equals?: InputMaybe<Scalars['String']['input']>;\n status_gt?: InputMaybe<Scalars['String']['input']>;\n status_gteq?: InputMaybe<Scalars['String']['input']>;\n status_in?: InputMaybe<Array<Scalars['String']['input']>>;\n status_lt?: InputMaybe<Scalars['String']['input']>;\n status_lteq?: InputMaybe<Scalars['String']['input']>;\n status_not_eq?: InputMaybe<Scalars['String']['input']>;\n status_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n status_not_null?: InputMaybe<Scalars['String']['input']>;\n status_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type Order = {\n __typename?: 'Order';\n executedCount: Scalars['Int']['output'];\n finishedAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n items: Array<Item>;\n note?: Maybe<Scalars['String']['output']>;\n number: Scalars['String']['output'];\n plannedCount: Scalars['Int']['output'];\n position?: Maybe<Scalars['Int']['output']>;\n startedAt?: Maybe<Scalars['String']['output']>;\n workplaces: Array<Workplace>;\n};\n\nexport type OrderConfig = {\n __typename?: 'OrderConfig';\n alternativeName: Scalars['Boolean']['output'];\n numberPrefix?: Maybe<Scalars['String']['output']>;\n numberRegexp?: Maybe<Scalars['String']['output']>;\n};\n\nexport type OrderExecution = {\n __typename?: 'OrderExecution';\n finishedAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n item?: Maybe<Item>;\n itemCount?: Maybe<Scalars['Float']['output']>;\n note?: Maybe<Scalars['String']['output']>;\n order: Order;\n product?: Maybe<Product>;\n standardRateMismatched: Scalars['Boolean']['output'];\n startedAt: Scalars['String']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type OrderExecutionConfig = {\n __typename?: 'OrderExecutionConfig';\n afterPauseReasonId?: Maybe<Scalars['String']['output']>;\n afterStartReasonId?: Maybe<Scalars['String']['output']>;\n afterStopReasonId?: Maybe<Scalars['String']['output']>;\n featureEnabled: Scalars['Boolean']['output'];\n formOrderFields: Array<Scalars['String']['output']>;\n formProductFields: Array<Scalars['String']['output']>;\n formQuantityFields: Array<Scalars['String']['output']>;\n itemCountUnit: Scalars['String']['output'];\n noPlanCanCreateOrderNote?: Maybe<Scalars['String']['output']>;\n noPlanNeedVerificationNote?: Maybe<Scalars['String']['output']>;\n orderInternalNoteText?: Maybe<Scalars['String']['output']>;\n orderInternalNoteTitle?: Maybe<Scalars['String']['output']>;\n productInternalNoteText?: Maybe<Scalars['String']['output']>;\n productInternalNoteTitle?: Maybe<Scalars['String']['output']>;\n quantityInternalNoteText?: Maybe<Scalars['String']['output']>;\n quantityInternalNoteTitle?: Maybe<Scalars['String']['output']>;\n stopEnabled: Scalars['Boolean']['output'];\n};\n\nexport type OrderExecutionFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_eq?: InputMaybe<Scalars['String']['input']>;\n finished_at_equals?: InputMaybe<Scalars['String']['input']>;\n finished_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_not_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n note_cont?: InputMaybe<Scalars['String']['input']>;\n note_contains?: InputMaybe<Scalars['String']['input']>;\n note_end?: InputMaybe<Scalars['String']['input']>;\n note_eq?: InputMaybe<Scalars['String']['input']>;\n note_equals?: InputMaybe<Scalars['String']['input']>;\n note_in?: InputMaybe<Array<Scalars['String']['input']>>;\n note_not_eq?: InputMaybe<Scalars['String']['input']>;\n note_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n note_not_null?: InputMaybe<Scalars['String']['input']>;\n note_null?: InputMaybe<Scalars['String']['input']>;\n note_start?: InputMaybe<Scalars['String']['input']>;\n order_id_eq?: InputMaybe<Scalars['String']['input']>;\n order_id_equals?: InputMaybe<Scalars['String']['input']>;\n order_id_gt?: InputMaybe<Scalars['String']['input']>;\n order_id_gteq?: InputMaybe<Scalars['String']['input']>;\n order_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n order_id_lt?: InputMaybe<Scalars['String']['input']>;\n order_id_lteq?: InputMaybe<Scalars['String']['input']>;\n order_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n order_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n order_id_not_null?: InputMaybe<Scalars['String']['input']>;\n order_id_null?: InputMaybe<Scalars['String']['input']>;\n period?: InputMaybe<Period>;\n product_id_eq?: InputMaybe<Scalars['String']['input']>;\n product_id_equals?: InputMaybe<Scalars['String']['input']>;\n product_id_gt?: InputMaybe<Scalars['String']['input']>;\n product_id_gteq?: InputMaybe<Scalars['String']['input']>;\n product_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_id_lt?: InputMaybe<Scalars['String']['input']>;\n product_id_lteq?: InputMaybe<Scalars['String']['input']>;\n product_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n product_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_id_not_null?: InputMaybe<Scalars['String']['input']>;\n product_id_null?: InputMaybe<Scalars['String']['input']>;\n quantity_eq?: InputMaybe<Scalars['String']['input']>;\n quantity_equals?: InputMaybe<Scalars['String']['input']>;\n quantity_gt?: InputMaybe<Scalars['String']['input']>;\n quantity_gteq?: InputMaybe<Scalars['String']['input']>;\n quantity_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quantity_lt?: InputMaybe<Scalars['String']['input']>;\n quantity_lteq?: InputMaybe<Scalars['String']['input']>;\n quantity_not_eq?: InputMaybe<Scalars['String']['input']>;\n quantity_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quantity_not_null?: InputMaybe<Scalars['String']['input']>;\n quantity_null?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_eq?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_equals?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_gt?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_gteq?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n standard_rate_id_lt?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_lteq?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n standard_rate_id_not_null?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_null?: InputMaybe<Scalars['String']['input']>;\n started_at_eq?: InputMaybe<Scalars['String']['input']>;\n started_at_equals?: InputMaybe<Scalars['String']['input']>;\n started_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_not_null?: InputMaybe<Scalars['String']['input']>;\n started_at_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type OrderFilter = {\n closure_reason_eq?: InputMaybe<Scalars['String']['input']>;\n closure_reason_equals?: InputMaybe<Scalars['String']['input']>;\n closure_reason_gt?: InputMaybe<Scalars['String']['input']>;\n closure_reason_gteq?: InputMaybe<Scalars['String']['input']>;\n closure_reason_in?: InputMaybe<Array<Scalars['String']['input']>>;\n closure_reason_lt?: InputMaybe<Scalars['String']['input']>;\n closure_reason_lteq?: InputMaybe<Scalars['String']['input']>;\n closure_reason_not_eq?: InputMaybe<Scalars['String']['input']>;\n closure_reason_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n closure_reason_not_null?: InputMaybe<Scalars['String']['input']>;\n closure_reason_null?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_eq?: InputMaybe<Scalars['String']['input']>;\n finished_at_equals?: InputMaybe<Scalars['String']['input']>;\n finished_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_not_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n item_count_eq?: InputMaybe<Scalars['String']['input']>;\n item_count_equals?: InputMaybe<Scalars['String']['input']>;\n item_count_gt?: InputMaybe<Scalars['String']['input']>;\n item_count_gteq?: InputMaybe<Scalars['String']['input']>;\n item_count_in?: InputMaybe<Array<Scalars['String']['input']>>;\n item_count_lt?: InputMaybe<Scalars['String']['input']>;\n item_count_lteq?: InputMaybe<Scalars['String']['input']>;\n item_count_not_eq?: InputMaybe<Scalars['String']['input']>;\n item_count_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n item_count_not_null?: InputMaybe<Scalars['String']['input']>;\n item_count_null?: InputMaybe<Scalars['String']['input']>;\n item_number_cont?: InputMaybe<Scalars['String']['input']>;\n item_number_contains?: InputMaybe<Scalars['String']['input']>;\n item_number_end?: InputMaybe<Scalars['String']['input']>;\n item_number_eq?: InputMaybe<Scalars['String']['input']>;\n item_number_equals?: InputMaybe<Scalars['String']['input']>;\n item_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n item_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n item_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n item_number_not_null?: InputMaybe<Scalars['String']['input']>;\n item_number_null?: InputMaybe<Scalars['String']['input']>;\n item_number_start?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_eq?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_equals?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_not_null?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_null?: InputMaybe<Scalars['String']['input']>;\n note_cont?: InputMaybe<Scalars['String']['input']>;\n note_contains?: InputMaybe<Scalars['String']['input']>;\n note_end?: InputMaybe<Scalars['String']['input']>;\n note_eq?: InputMaybe<Scalars['String']['input']>;\n note_equals?: InputMaybe<Scalars['String']['input']>;\n note_in?: InputMaybe<Array<Scalars['String']['input']>>;\n note_not_eq?: InputMaybe<Scalars['String']['input']>;\n note_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n note_not_null?: InputMaybe<Scalars['String']['input']>;\n note_null?: InputMaybe<Scalars['String']['input']>;\n note_start?: InputMaybe<Scalars['String']['input']>;\n order_number_cont?: InputMaybe<Scalars['String']['input']>;\n order_number_contains?: InputMaybe<Scalars['String']['input']>;\n order_number_end?: InputMaybe<Scalars['String']['input']>;\n order_number_eq?: InputMaybe<Scalars['String']['input']>;\n order_number_equals?: InputMaybe<Scalars['String']['input']>;\n order_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n order_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n order_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n order_number_not_null?: InputMaybe<Scalars['String']['input']>;\n order_number_null?: InputMaybe<Scalars['String']['input']>;\n order_number_start?: InputMaybe<Scalars['String']['input']>;\n position_eq?: InputMaybe<Scalars['String']['input']>;\n position_equals?: InputMaybe<Scalars['String']['input']>;\n position_gt?: InputMaybe<Scalars['String']['input']>;\n position_gteq?: InputMaybe<Scalars['String']['input']>;\n position_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_lt?: InputMaybe<Scalars['String']['input']>;\n position_lteq?: InputMaybe<Scalars['String']['input']>;\n position_not_eq?: InputMaybe<Scalars['String']['input']>;\n position_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_not_null?: InputMaybe<Scalars['String']['input']>;\n position_null?: InputMaybe<Scalars['String']['input']>;\n product_number_cont?: InputMaybe<Scalars['String']['input']>;\n product_number_contains?: InputMaybe<Scalars['String']['input']>;\n product_number_end?: InputMaybe<Scalars['String']['input']>;\n product_number_eq?: InputMaybe<Scalars['String']['input']>;\n product_number_equals?: InputMaybe<Scalars['String']['input']>;\n product_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n product_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_number_not_null?: InputMaybe<Scalars['String']['input']>;\n product_number_null?: InputMaybe<Scalars['String']['input']>;\n product_number_start?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_cont?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_contains?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_end?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_eq?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_equals?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_sap_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_sap_number_not_null?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_null?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_start?: InputMaybe<Scalars['String']['input']>;\n sap_number_cont?: InputMaybe<Scalars['String']['input']>;\n sap_number_contains?: InputMaybe<Scalars['String']['input']>;\n sap_number_end?: InputMaybe<Scalars['String']['input']>;\n sap_number_eq?: InputMaybe<Scalars['String']['input']>;\n sap_number_equals?: InputMaybe<Scalars['String']['input']>;\n sap_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sap_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n sap_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sap_number_not_null?: InputMaybe<Scalars['String']['input']>;\n sap_number_null?: InputMaybe<Scalars['String']['input']>;\n sap_number_start?: InputMaybe<Scalars['String']['input']>;\n started_at_eq?: InputMaybe<Scalars['String']['input']>;\n started_at_equals?: InputMaybe<Scalars['String']['input']>;\n started_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_not_null?: InputMaybe<Scalars['String']['input']>;\n started_at_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n user_id_eq?: InputMaybe<Scalars['String']['input']>;\n user_id_equals?: InputMaybe<Scalars['String']['input']>;\n user_id_gt?: InputMaybe<Scalars['String']['input']>;\n user_id_gteq?: InputMaybe<Scalars['String']['input']>;\n user_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n user_id_lt?: InputMaybe<Scalars['String']['input']>;\n user_id_lteq?: InputMaybe<Scalars['String']['input']>;\n user_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n user_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n user_id_not_null?: InputMaybe<Scalars['String']['input']>;\n user_id_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n workplaces_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplaces_id_equals?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type OrderInput = {\n id: Scalars['ID']['input'];\n number: Scalars['String']['input'];\n};\n\n/** Autogenerated return type of PauseOrderExecution */\nexport type PauseOrderExecutionPayload = {\n __typename?: 'PauseOrderExecutionPayload';\n errors?: Maybe<Array<MutationError>>;\n orderExecution?: Maybe<OrderExecution>;\n};\n\nexport enum Period {\n CurrentShift = 'CURRENT_SHIFT',\n LastShift = 'LAST_SHIFT'\n}\n\nexport enum PresenceStatusEnum {\n NotPresent = 'NOT_PRESENT',\n Present = 'PRESENT',\n PresentElsewhere = 'PRESENT_ELSEWHERE'\n}\n\nexport type Product = {\n __typename?: 'Product';\n assemblyManual?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name?: Maybe<Scalars['String']['output']>;\n number?: Maybe<Scalars['String']['output']>;\n};\n\nexport type ProductConfig = {\n __typename?: 'ProductConfig';\n alternativeName: Scalars['Boolean']['output'];\n numberPrefix?: Maybe<Scalars['String']['output']>;\n numberRegexp?: Maybe<Scalars['String']['output']>;\n};\n\nexport type ProductFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_or_number_cont?: InputMaybe<Scalars['String']['input']>;\n name_or_number_contains?: InputMaybe<Scalars['String']['input']>;\n name_or_number_end?: InputMaybe<Scalars['String']['input']>;\n name_or_number_eq?: InputMaybe<Scalars['String']['input']>;\n name_or_number_equals?: InputMaybe<Scalars['String']['input']>;\n name_or_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_or_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_or_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_or_number_not_null?: InputMaybe<Scalars['String']['input']>;\n name_or_number_null?: InputMaybe<Scalars['String']['input']>;\n name_or_number_start?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n number_cont?: InputMaybe<Scalars['String']['input']>;\n number_contains?: InputMaybe<Scalars['String']['input']>;\n number_end?: InputMaybe<Scalars['String']['input']>;\n number_eq?: InputMaybe<Scalars['String']['input']>;\n number_equals?: InputMaybe<Scalars['String']['input']>;\n number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n number_not_eq?: InputMaybe<Scalars['String']['input']>;\n number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n number_not_null?: InputMaybe<Scalars['String']['input']>;\n number_null?: InputMaybe<Scalars['String']['input']>;\n number_start?: InputMaybe<Scalars['String']['input']>;\n orders_order_number_eq?: InputMaybe<Scalars['String']['input']>;\n orders_order_number_equals?: InputMaybe<Scalars['String']['input']>;\n sap_number_cont?: InputMaybe<Scalars['String']['input']>;\n sap_number_contains?: InputMaybe<Scalars['String']['input']>;\n sap_number_end?: InputMaybe<Scalars['String']['input']>;\n sap_number_eq?: InputMaybe<Scalars['String']['input']>;\n sap_number_equals?: InputMaybe<Scalars['String']['input']>;\n sap_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sap_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n sap_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sap_number_not_null?: InputMaybe<Scalars['String']['input']>;\n sap_number_null?: InputMaybe<Scalars['String']['input']>;\n sap_number_start?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type ProductInput = {\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n number?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type ProductionInsightsEntry = {\n __typename?: 'ProductionInsightsEntry';\n count: Scalars['Int']['output'];\n label: Scalars['String']['output'];\n};\n\nexport type ProductionInsightsInput = {\n aggregation: InsightsAggregation;\n dateFrom: Scalars['ISO8601DateTime']['input'];\n dateTo: Scalars['ISO8601DateTime']['input'];\n dayType: DayType;\n};\n\nexport type ProductionInsightsResult = {\n __typename?: 'ProductionInsightsResult';\n entries: Array<ProductionInsightsEntry>;\n};\n\nexport enum ProductionMode {\n Manual = 'MANUAL',\n Planned = 'PLANNED'\n}\n\nexport type Query = {\n __typename?: 'Query';\n /**\n * Returns actual staffing counts based on user presences, compared against staffing plans.\n * Shows how many operators are checked in vs. the planned number.\n */\n actualStaffingCounts: Array<ActualStaffingCount>;\n /** Returns application information, including the current API version. */\n applicationInfo: ApplicationInfo;\n availabilityInsights: AvailabilityInsightsResult;\n /**\n * Returns the company configuration for the currently logged-in user,\n * including managed devices, displayed KPIs, role permissions,\n * status transition settings, and workplace configurations.\n */\n companyConfig: CompanyConfig;\n /**\n * Returns a list of counter directories, used to group counters at a workplace\n * into a logical hierarchical structure.\n */\n counterDirectories: Array<CounterDirectory>;\n /**\n * Returns production counters recorded per workplace.\n * - Each counter tracks either GOOD (produced pieces / good parts) or BAD (scrap / bad parts / defects).\n * - A workplace may have multiple counters.\n * - Counters may be grouped into counter directories for better organization.\n * - Counter values can be entered manually by operators or collected automatically from machines.\n * - A counter may also be locked, in which case no new pieces can be added.\n */\n counters: Array<Counter>;\n /** Returns the currently authenticated user. */\n currentUser: User;\n /**\n * Returns the list of dashboards available to the current user.\n *\n * A dashboard is a user-configured workspace containing widgets\n * (charts, KPIs, tables, status blocks, etc.) arranged in a chosen layout.\n * Dashboards are typically used for real-time production monitoring:\n * - displayed on large TV screens in factory halls,\n * - by supervisors, team leaders, or maintenance departments,\n * - to observe multiple workplaces at once.\n */\n dashboards: Array<Dashboard>;\n /**\n * Returns a list of departments available to the current user.\n *\n * A department is an organizational unit used to group workplaces,\n * employees, machines, and orders.\n */\n departments: Array<Department>;\n /**\n * Returns floor plans available to the current user.\n *\n * A floor plan is a dashboard widget showing a factory hall map with workplaces\n * placed on it. Workplaces change color and display information based on their\n * current production status.\n */\n floorPlans: Array<FloorPlan>;\n /**\n * Returns live KPI metric values for the current shift at workplaces\n * (e.g. performance, quality, availability, OEE, good and bad pieces).\n */\n metricValues: Array<MetricValue>;\n /**\n * Returns the list of all metrics available in the system (e.g. performance, quality, availability, OEE).\n * Use this query to discover metric names and definitions, not their live values.\n */\n metrics: Array<Metric>;\n /**\n * Returns system notifications (e.g. shift ended, too few operators at a workplace),\n * which are received and displayed on workplaces.\n */\n notifications: Array<Notification>;\n /**\n * Returns up to 100 most recent production orders available in the system.\n * Orders can have different planning states and execution statuses.\n */\n orders: Array<Order>;\n /**\n * Returns executions of production orders, representing individual runs of an order\n * (with produced quantities, operator, and status), from start until completion.\n * An order may have multiple executions, as it can be paused and resumed at different stages.\n */\n ordersExecutions: Array<OrderExecution>;\n productionInsights: ProductionInsightsResult;\n /**\n * Returns products from the system, which are used in production orders.\n * Supports search by product number and returns up to 10 matching results,\n * typically used when adding an existing product to an order form.\n */\n products: Array<Product>;\n /**\n * Returns the list of available statuses (reasons) that can be selected on a workplace.\n *\n * - Each status has a visual color (red, green, yellow, gray) shown in the UI.\n * - Each status also carries an availability state (working, stopped, planned_stop).\n * - Statuses are organized hierarchically and belong to a status dictionary (ReasonGroup),\n * which can be reused across multiple workplaces.\n * - When operators select statuses at a workplace, this creates a history of status changes,\n * representing how the workplace has been operating over time.\n */\n reasons: Array<Reason>;\n /**\n * Returns AI-based recommendations of the most likely next status (reason)\n * for a given workplace, based on analysis of previous operator activity.\n * Part of the SmartStatusAI module.\n */\n reasonsRecommendation?: Maybe<ReasonsRecommendation>;\n /**\n * Returns the list of work shifts configured for the organization.\n * A shift defines the working period of operators (start and end times),\n * used for scheduling, reporting, and tracking production activities.\n */\n shifts: Array<Shift>;\n /**\n * Returns staffing plans for workplaces.\n * Defines the recommended number of operators for a specific workplace, shift, and date.\n */\n staffingPlans: Array<StaffingPlan>;\n /**\n * Returns standard production rates defined for an order execution.\n * Standard rates specify expected output (e.g. good or bad pieces per hour,\n * per number of operators, and within a given time), allowing comparison of\n * actual performance with targets and supporting KPI calculations like quality or OEE.\n */\n standardRates: Array<StandardRate>;\n /**\n * Returns status change transition permissions, which define the allowed moves\n * between statuses (reasons) in the status dictionary.\n * These permissions form a transition matrix that can restrict changing\n * from one status to another depending on role and workplace.\n */\n statusChangeTransitionPermissions: Array<StatusChangeTransitionPermission>;\n /**\n * Returns status change records for workplaces, limited to the current shift.\n * A status change represents a continuous period in which a workplace has a given status (reason).\n * - Each change has a start and an optional end; if `finished_at` is null, the status is currently active.\n * - Only one status change can be active at a workplace at a time, ensuring linear continuity.\n * - Status changes may be created manually by operators or automatically by the system\n * (e.g. at order start/stop, shift change, operator log in/out).\n */\n statusChanges: Array<StatusChange>;\n statusInsights: StatusInsightsResult;\n /** Returns all users belonging to the company of the currently logged-in user. */\n users: Array<User>;\n /**\n * Returns user presence records at workplaces limited to the current shift.\n * A presence is created when an operator checks in at a workplace\n * and ends when they check out.\n *\n * These records indicate how many operators are working on a workplace during the shift,\n * provide history of who worked where and when, and are used in production metrics.\n */\n usersPresences: Array<UserPresence>;\n /**\n * DEPRECATED - use the widgets query instead.\n * Returns a single widget already placed on a dashboard.\n */\n widget: Widget;\n /**\n * Returns all widgets available on dashboards.\n * A widget is an autonomous element of a dashboard (e.g. floor plan, KPI metrics,\n * workplace monitor, list of orders, or PromQL-based charts).\n */\n widgets: Array<Widget>;\n /**\n * Returns all work orders from the CMMS module.\n * Work orders are used by the maintenance department to plan and track actions\n * such as inspections, repairs, and other maintenance tasks.\n */\n workOrders: Array<WorkOrder>;\n workOrdersInsights: WorkOrdersInsightsResult;\n /**\n * Returns workplace staffing overview for a specific shift and date.\n * Shows workplaces with assigned operators, their check-in status,\n * unassigned operators pool, and global summary.\n */\n workplaceAssignments: WorkplaceAssignmentsView;\n /** Returns performance analysis for workplaces within a specified time period. */\n workplacePerformanceInsights: WorkplacePerformanceInsightsResult;\n /**\n * Returns all workplaces available in the current organization.\n * A workplace represents a production station in the factory,\n * where operators perform tasks, orders are executed, and KPIs are tracked.\n */\n workplaces: Array<Workplace>;\n};\n\n\nexport type QueryActualStaffingCountsArgs = {\n filter?: InputMaybe<ActualStaffingCountFilter>;\n};\n\n\nexport type QueryAvailabilityInsightsArgs = {\n input: AvailabilityInsightsInput;\n};\n\n\nexport type QueryCounterDirectoriesArgs = {\n filter?: InputMaybe<CounterDirectoryFilter>;\n};\n\n\nexport type QueryCountersArgs = {\n filter?: InputMaybe<CounterFilter>;\n};\n\n\nexport type QueryDashboardsArgs = {\n filter?: InputMaybe<DashboardFilter>;\n};\n\n\nexport type QueryDepartmentsArgs = {\n filter?: InputMaybe<DepartmentFilter>;\n};\n\n\nexport type QueryFloorPlansArgs = {\n filter?: InputMaybe<FloorPlanFilter>;\n};\n\n\nexport type QueryMetricValuesArgs = {\n metricIds?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplaceIds?: InputMaybe<Array<Scalars['ID']['input']>>;\n};\n\n\nexport type QueryNotificationsArgs = {\n filter?: InputMaybe<NotificationFilter>;\n};\n\n\nexport type QueryOrdersArgs = {\n filter?: InputMaybe<OrderFilter>;\n};\n\n\nexport type QueryOrdersExecutionsArgs = {\n filter?: InputMaybe<OrderExecutionFilter>;\n};\n\n\nexport type QueryProductionInsightsArgs = {\n input: ProductionInsightsInput;\n};\n\n\nexport type QueryProductsArgs = {\n filter?: InputMaybe<ProductFilter>;\n};\n\n\nexport type QueryReasonsArgs = {\n filter?: InputMaybe<ReasonFilter>;\n};\n\n\nexport type QueryReasonsRecommendationArgs = {\n workplaceId: Scalars['String']['input'];\n};\n\n\nexport type QueryStaffingPlansArgs = {\n filter?: InputMaybe<StaffingPlanFilter>;\n};\n\n\nexport type QueryStandardRatesArgs = {\n orderExecutionId: Scalars['ID']['input'];\n};\n\n\nexport type QueryStatusChangeTransitionPermissionsArgs = {\n filter?: InputMaybe<StatusChangeTransitionPermissionFilter>;\n};\n\n\nexport type QueryStatusChangesArgs = {\n filter?: InputMaybe<StatusChangeFilter>;\n};\n\n\nexport type QueryStatusInsightsArgs = {\n input: StatusInsightsInput;\n};\n\n\nexport type QueryUsersArgs = {\n filter?: InputMaybe<UserFilter>;\n};\n\n\nexport type QueryUsersPresencesArgs = {\n filter?: InputMaybe<UserPresenceFilter>;\n};\n\n\nexport type QueryWidgetArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type QueryWidgetsArgs = {\n filter?: InputMaybe<WidgetFilter>;\n};\n\n\nexport type QueryWorkOrdersArgs = {\n filter?: InputMaybe<WorkOrderFilter>;\n};\n\n\nexport type QueryWorkOrdersInsightsArgs = {\n input: WorkOrdersInsightsInput;\n};\n\n\nexport type QueryWorkplaceAssignmentsArgs = {\n input: WorkplaceAssignmentsInput;\n};\n\n\nexport type QueryWorkplacePerformanceInsightsArgs = {\n input: WorkplacePerformanceInsightsInput;\n};\n\n\nexport type QueryWorkplacesArgs = {\n filter?: InputMaybe<WorkplaceFilter>;\n};\n\nexport type Reason = {\n __typename?: 'Reason';\n acceptanceMonit: Scalars['Boolean']['output'];\n canBeRecommended: Scalars['Boolean']['output'];\n hasNote: Scalars['Boolean']['output'];\n id: Scalars['ID']['output'];\n isNoteRequired: Scalars['Boolean']['output'];\n leaf: Scalars['Boolean']['output'];\n name: Scalars['String']['output'];\n parentId?: Maybe<Scalars['String']['output']>;\n position: Scalars['Int']['output'];\n reasonGroupId: Scalars['String']['output'];\n statusColor: AndonLightColor;\n temporary: Scalars['Boolean']['output'];\n};\n\nexport type ReasonFilter = {\n acceptance_monit_eq?: InputMaybe<Scalars['String']['input']>;\n acceptance_monit_equals?: InputMaybe<Scalars['String']['input']>;\n ancestry_cont?: InputMaybe<Scalars['String']['input']>;\n ancestry_contains?: InputMaybe<Scalars['String']['input']>;\n ancestry_end?: InputMaybe<Scalars['String']['input']>;\n ancestry_eq?: InputMaybe<Scalars['String']['input']>;\n ancestry_equals?: InputMaybe<Scalars['String']['input']>;\n ancestry_in?: InputMaybe<Array<Scalars['String']['input']>>;\n ancestry_not_eq?: InputMaybe<Scalars['String']['input']>;\n ancestry_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n ancestry_not_null?: InputMaybe<Scalars['String']['input']>;\n ancestry_null?: InputMaybe<Scalars['String']['input']>;\n ancestry_start?: InputMaybe<Scalars['String']['input']>;\n availability_status_eq?: InputMaybe<Scalars['String']['input']>;\n availability_status_equals?: InputMaybe<Scalars['String']['input']>;\n availability_status_gt?: InputMaybe<Scalars['String']['input']>;\n availability_status_gteq?: InputMaybe<Scalars['String']['input']>;\n availability_status_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_status_lt?: InputMaybe<Scalars['String']['input']>;\n availability_status_lteq?: InputMaybe<Scalars['String']['input']>;\n availability_status_not_eq?: InputMaybe<Scalars['String']['input']>;\n availability_status_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_status_not_null?: InputMaybe<Scalars['String']['input']>;\n availability_status_null?: InputMaybe<Scalars['String']['input']>;\n can_be_recommended_eq?: InputMaybe<Scalars['String']['input']>;\n can_be_recommended_equals?: InputMaybe<Scalars['String']['input']>;\n changeable_eq?: InputMaybe<Scalars['String']['input']>;\n changeable_equals?: InputMaybe<Scalars['String']['input']>;\n children_count_eq?: InputMaybe<Scalars['String']['input']>;\n children_count_equals?: InputMaybe<Scalars['String']['input']>;\n children_count_gt?: InputMaybe<Scalars['String']['input']>;\n children_count_gteq?: InputMaybe<Scalars['String']['input']>;\n children_count_in?: InputMaybe<Array<Scalars['String']['input']>>;\n children_count_lt?: InputMaybe<Scalars['String']['input']>;\n children_count_lteq?: InputMaybe<Scalars['String']['input']>;\n children_count_not_eq?: InputMaybe<Scalars['String']['input']>;\n children_count_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n children_count_not_null?: InputMaybe<Scalars['String']['input']>;\n children_count_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n creates_order_eq?: InputMaybe<Scalars['String']['input']>;\n creates_order_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n note_required_eq?: InputMaybe<Scalars['String']['input']>;\n note_required_equals?: InputMaybe<Scalars['String']['input']>;\n note_status_eq?: InputMaybe<Scalars['String']['input']>;\n note_status_equals?: InputMaybe<Scalars['String']['input']>;\n position_eq?: InputMaybe<Scalars['String']['input']>;\n position_equals?: InputMaybe<Scalars['String']['input']>;\n position_gt?: InputMaybe<Scalars['String']['input']>;\n position_gteq?: InputMaybe<Scalars['String']['input']>;\n position_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_lt?: InputMaybe<Scalars['String']['input']>;\n position_lteq?: InputMaybe<Scalars['String']['input']>;\n position_not_eq?: InputMaybe<Scalars['String']['input']>;\n position_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_not_null?: InputMaybe<Scalars['String']['input']>;\n position_null?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_eq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_equals?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_gt?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_gteq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_group_id_lt?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_lteq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_group_id_not_null?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_null?: InputMaybe<Scalars['String']['input']>;\n skip_shift_end_reason_automation_eq?: InputMaybe<Scalars['String']['input']>;\n skip_shift_end_reason_automation_equals?: InputMaybe<Scalars['String']['input']>;\n status_eq?: InputMaybe<Scalars['String']['input']>;\n status_equals?: InputMaybe<Scalars['String']['input']>;\n status_gt?: InputMaybe<Scalars['String']['input']>;\n status_gteq?: InputMaybe<Scalars['String']['input']>;\n status_in?: InputMaybe<Array<Scalars['String']['input']>>;\n status_lt?: InputMaybe<Scalars['String']['input']>;\n status_lteq?: InputMaybe<Scalars['String']['input']>;\n status_not_eq?: InputMaybe<Scalars['String']['input']>;\n status_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n status_not_null?: InputMaybe<Scalars['String']['input']>;\n status_null?: InputMaybe<Scalars['String']['input']>;\n tags_contains_all?: InputMaybe<Array<Scalars['String']['input']>>;\n tags_contains_any?: InputMaybe<Array<Scalars['String']['input']>>;\n temporary_eq?: InputMaybe<Scalars['String']['input']>;\n temporary_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_eq?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_equals?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_gt?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_gteq?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n work_order_template_id_lt?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_lteq?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n work_order_template_id_not_null?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type ReasonsRecommendation = {\n __typename?: 'ReasonsRecommendation';\n reasons: Array<Reason>;\n trainingStatus: TrainingStatus;\n};\n\n/** Autogenerated return type of RemoveDashboard */\nexport type RemoveDashboardPayload = {\n __typename?: 'RemoveDashboardPayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of RemoveStaffingPlan */\nexport type RemoveStaffingPlanPayload = {\n __typename?: 'RemoveStaffingPlanPayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of RemoveUserPresence */\nexport type RemoveUserPresencePayload = {\n __typename?: 'RemoveUserPresencePayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of RemoveWidget */\nexport type RemoveWidgetPayload = {\n __typename?: 'RemoveWidgetPayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of RemoveWorkplaceUsersPresences */\nexport type RemoveWorkplaceUsersPresencesPayload = {\n __typename?: 'RemoveWorkplaceUsersPresencesPayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\nexport type RequestFeatureAccessInput = {\n featureKey: Scalars['String']['input'];\n requestType: AccessRequestTypeEnum;\n workplaceId?: InputMaybe<Scalars['ID']['input']>;\n};\n\n/** Autogenerated return type of RequestFeatureAccessMutation */\nexport type RequestFeatureAccessMutationPayload = {\n __typename?: 'RequestFeatureAccessMutationPayload';\n errors?: Maybe<Array<MutationError>>;\n success: Scalars['Boolean']['output'];\n};\n\nexport type RoleConfig = {\n __typename?: 'RoleConfig';\n historyVisibilityEnabled: Scalars['Boolean']['output'];\n orderCreationAllowed: Scalars['Boolean']['output'];\n};\n\nexport enum ScreenEnum {\n Cmms = 'CMMS',\n Counters = 'COUNTERS',\n Statuses = 'STATUSES',\n StatusScreen = 'STATUS_SCREEN',\n Workplaces = 'WORKPLACES'\n}\n\nexport type ScreenSaverConfig = {\n __typename?: 'ScreenSaverConfig';\n autoSignOut: Scalars['Boolean']['output'];\n displayAfterIdle: Scalars['Boolean']['output'];\n displayAfterOrderCreated: Scalars['Boolean']['output'];\n displayAfterStatusChangeCreated: Scalars['Boolean']['output'];\n enabled: Scalars['Boolean']['output'];\n idleTime: Scalars['Int']['output'];\n};\n\n/** Autogenerated return type of SetCounter */\nexport type SetCounterPayload = {\n __typename?: 'SetCounterPayload';\n counter?: Maybe<Counter>;\n errors?: Maybe<Array<MutationError>>;\n};\n\nexport type Shift = {\n __typename?: 'Shift';\n finishedAt: Scalars['String']['output'];\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n startedAt: Scalars['String']['output'];\n};\n\nexport type StaffingPlan = {\n __typename?: 'StaffingPlan';\n author: User;\n createdAt: Scalars['ISO8601DateTime']['output'];\n date: Scalars['ISO8601Date']['output'];\n id: Scalars['ID']['output'];\n recommendedOperators: Scalars['Int']['output'];\n shift: Shift;\n updatedAt: Scalars['ISO8601DateTime']['output'];\n workplace: Workplace;\n};\n\nexport type StaffingPlanFilter = {\n date_from?: InputMaybe<Scalars['ISO8601Date']['input']>;\n date_to?: InputMaybe<Scalars['ISO8601Date']['input']>;\n period?: InputMaybe<Period>;\n shift_id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplace_id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n};\n\nexport type StaffingPlanInput = {\n date: Scalars['ISO8601Date']['input'];\n recommendedOperators: Scalars['Int']['input'];\n shiftId: Scalars['ID']['input'];\n workplaceId: Scalars['ID']['input'];\n};\n\nexport type StaffingPlanUpdateInput = {\n id: Scalars['ID']['input'];\n recommendedOperators: Scalars['Int']['input'];\n};\n\nexport type StandardRate = {\n __typename?: 'StandardRate';\n id: Scalars['ID']['output'];\n label: Scalars['String']['output'];\n};\n\n/** Autogenerated return type of StartOrderExecution */\nexport type StartOrderExecutionPayload = {\n __typename?: 'StartOrderExecutionPayload';\n errors?: Maybe<Array<MutationError>>;\n orderExecution?: Maybe<OrderExecution>;\n};\n\nexport type StartTrialInput = {\n featureKey: Scalars['String']['input'];\n};\n\n/** Autogenerated return type of StartTrialMutation */\nexport type StartTrialMutationPayload = {\n __typename?: 'StartTrialMutationPayload';\n errors?: Maybe<Array<MutationError>>;\n success: Scalars['Boolean']['output'];\n};\n\nexport type StatusChange = {\n __typename?: 'StatusChange';\n author: User;\n finishedAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n note?: Maybe<Scalars['String']['output']>;\n order?: Maybe<Order>;\n product?: Maybe<Product>;\n reason: Reason;\n reasonHasBeenRecommended: Scalars['Boolean']['output'];\n startedAt: Scalars['String']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type StatusChangeFilter = {\n period?: InputMaybe<Period>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type StatusChangeTransitionPermission = {\n __typename?: 'StatusChangeTransitionPermission';\n fromReasonId: Scalars['String']['output'];\n roleId: Scalars['String']['output'];\n toReasonId: Scalars['String']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type StatusChangeTransitionPermissionFilter = {\n allowed_eq?: InputMaybe<Scalars['String']['input']>;\n allowed_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_eq?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_equals?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_gt?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_gteq?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n from_reason_id_lt?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_lteq?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n from_reason_id_not_null?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n role_id_eq?: InputMaybe<Scalars['String']['input']>;\n role_id_equals?: InputMaybe<Scalars['String']['input']>;\n role_id_gt?: InputMaybe<Scalars['String']['input']>;\n role_id_gteq?: InputMaybe<Scalars['String']['input']>;\n role_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n role_id_lt?: InputMaybe<Scalars['String']['input']>;\n role_id_lteq?: InputMaybe<Scalars['String']['input']>;\n role_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n role_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n role_id_not_null?: InputMaybe<Scalars['String']['input']>;\n role_id_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_eq?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_equals?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_gt?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_gteq?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n to_reason_id_lt?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_lteq?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n to_reason_id_not_null?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type StatusInsightsEntry = {\n __typename?: 'StatusInsightsEntry';\n averageDurationMinutes: Scalars['Float']['output'];\n label: Scalars['String']['output'];\n occurrenceCount: Scalars['Int']['output'];\n};\n\nexport type StatusInsightsInput = {\n aggregation: InsightsAggregation;\n dateFrom: Scalars['ISO8601DateTime']['input'];\n dateTo: Scalars['ISO8601DateTime']['input'];\n dayType: DayType;\n reasonId: Scalars['ID']['input'];\n shiftIds: Array<Scalars['ID']['input']>;\n};\n\nexport type StatusInsightsResult = {\n __typename?: 'StatusInsightsResult';\n entries: Array<StatusInsightsEntry>;\n};\n\nexport enum StatusScreenDisplayBlocksEnum {\n Kpi = 'KPI',\n Livetime = 'LIVETIME',\n Orders = 'ORDERS',\n Presences = 'PRESENCES'\n}\n\n/** Autogenerated return type of StopOrderExecution */\nexport type StopOrderExecutionPayload = {\n __typename?: 'StopOrderExecutionPayload';\n errors?: Maybe<Array<MutationError>>;\n orderExecution?: Maybe<OrderExecution>;\n};\n\nexport type Subscription = {\n __typename?: 'Subscription';\n workplaceEvent: WorkplaceEventSubscriptionPayload;\n};\n\n\nexport type SubscriptionWorkplaceEventArgs = {\n id: Scalars['ID']['input'];\n};\n\nexport enum TrainingStatus {\n Disabled = 'DISABLED',\n InsufficientData = 'INSUFFICIENT_DATA',\n ServerError = 'SERVER_ERROR',\n Trained = 'TRAINED',\n Training = 'TRAINING'\n}\n\n/** Autogenerated return type of UnassignOperatorFromWorkplace */\nexport type UnassignOperatorFromWorkplacePayload = {\n __typename?: 'UnassignOperatorFromWorkplacePayload';\n assignment?: Maybe<WorkplaceAssignment>;\n errors?: Maybe<Array<MutationError>>;\n};\n\nexport type UnassignOperatorInput = {\n shiftId: Scalars['ID']['input'];\n userId: Scalars['ID']['input'];\n validFrom: Scalars['ISO8601Date']['input'];\n};\n\nexport type UnplannedOperator = {\n __typename?: 'UnplannedOperator';\n plannedWorkplace?: Maybe<Workplace>;\n user: User;\n};\n\n/** Autogenerated return type of UpdateDashboard */\nexport type UpdateDashboardPayload = {\n __typename?: 'UpdateDashboardPayload';\n dashboard?: Maybe<Dashboard>;\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of UpdateNotification */\nexport type UpdateNotificationPayload = {\n __typename?: 'UpdateNotificationPayload';\n errors?: Maybe<Array<MutationError>>;\n notification?: Maybe<Notification>;\n};\n\n/** Autogenerated return type of UpdateOrderExecution */\nexport type UpdateOrderExecutionPayload = {\n __typename?: 'UpdateOrderExecutionPayload';\n errors?: Maybe<Array<MutationError>>;\n orderExecution?: Maybe<OrderExecution>;\n};\n\nexport type UpdateOrderInput = {\n id: Scalars['ID']['input'];\n workplaceIds: Array<Scalars['ID']['input']>;\n};\n\n/** Autogenerated return type of UpdateOrder */\nexport type UpdateOrderPayload = {\n __typename?: 'UpdateOrderPayload';\n errors?: Maybe<Array<MutationError>>;\n order?: Maybe<Order>;\n};\n\n/** Autogenerated return type of UpdateStaffingPlan */\nexport type UpdateStaffingPlanPayload = {\n __typename?: 'UpdateStaffingPlanPayload';\n errors?: Maybe<Array<MutationError>>;\n staffingPlan?: Maybe<StaffingPlan>;\n};\n\nexport type UpdateStatusChangeInput = {\n authorId?: InputMaybe<Scalars['ID']['input']>;\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n reasonHasBeenRecommended?: InputMaybe<Scalars['Boolean']['input']>;\n reasonId?: InputMaybe<Scalars['ID']['input']>;\n};\n\n/** Autogenerated return type of UpdateStatusChange */\nexport type UpdateStatusChangePayload = {\n __typename?: 'UpdateStatusChangePayload';\n errors?: Maybe<Array<MutationError>>;\n statusChange?: Maybe<StatusChange>;\n};\n\n/** Autogenerated return type of UpdateWidget */\nexport type UpdateWidgetPayload = {\n __typename?: 'UpdateWidgetPayload';\n errors?: Maybe<Array<MutationError>>;\n widget?: Maybe<Widget>;\n};\n\nexport type UpdateWorkOrderInput = {\n note?: InputMaybe<Scalars['String']['input']>;\n procedureResponse?: InputMaybe<Scalars['JSON']['input']>;\n status?: InputMaybe<WorkOrderStatusEnum>;\n timeSpentHours?: InputMaybe<Scalars['Int']['input']>;\n timeSpentMinutes?: InputMaybe<Scalars['Int']['input']>;\n};\n\n/** Autogenerated return type of UpdateWorkOrder */\nexport type UpdateWorkOrderPayload = {\n __typename?: 'UpdateWorkOrderPayload';\n errors?: Maybe<Array<MutationError>>;\n workOrder?: Maybe<WorkOrder>;\n};\n\nexport type User = {\n __typename?: 'User';\n id: Scalars['ID']['output'];\n login: Scalars['String']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type UserFilter = {\n bot_name_cont?: InputMaybe<Scalars['String']['input']>;\n bot_name_contains?: InputMaybe<Scalars['String']['input']>;\n bot_name_end?: InputMaybe<Scalars['String']['input']>;\n bot_name_eq?: InputMaybe<Scalars['String']['input']>;\n bot_name_equals?: InputMaybe<Scalars['String']['input']>;\n bot_name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n bot_name_not_eq?: InputMaybe<Scalars['String']['input']>;\n bot_name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n bot_name_not_null?: InputMaybe<Scalars['String']['input']>;\n bot_name_null?: InputMaybe<Scalars['String']['input']>;\n bot_name_start?: InputMaybe<Scalars['String']['input']>;\n communications_locale_cont?: InputMaybe<Scalars['String']['input']>;\n communications_locale_contains?: InputMaybe<Scalars['String']['input']>;\n communications_locale_end?: InputMaybe<Scalars['String']['input']>;\n communications_locale_eq?: InputMaybe<Scalars['String']['input']>;\n communications_locale_equals?: InputMaybe<Scalars['String']['input']>;\n communications_locale_in?: InputMaybe<Array<Scalars['String']['input']>>;\n communications_locale_not_eq?: InputMaybe<Scalars['String']['input']>;\n communications_locale_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n communications_locale_not_null?: InputMaybe<Scalars['String']['input']>;\n communications_locale_null?: InputMaybe<Scalars['String']['input']>;\n communications_locale_start?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_eq?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_equals?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_not_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_cont?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_contains?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_end?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_eq?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_equals?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_in?: InputMaybe<Array<Scalars['String']['input']>>;\n confirmation_token_not_eq?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n confirmation_token_not_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_start?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_eq?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_equals?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_not_null?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_eq?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_equals?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_not_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_cont?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_contains?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_end?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_eq?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_equals?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_in?: InputMaybe<Array<Scalars['String']['input']>>;\n current_sign_in_ip_not_eq?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n current_sign_in_ip_not_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_start?: InputMaybe<Scalars['String']['input']>;\n deactivated_eq?: InputMaybe<Scalars['String']['input']>;\n deactivated_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n email_cont?: InputMaybe<Scalars['String']['input']>;\n email_contains?: InputMaybe<Scalars['String']['input']>;\n email_end?: InputMaybe<Scalars['String']['input']>;\n email_eq?: InputMaybe<Scalars['String']['input']>;\n email_equals?: InputMaybe<Scalars['String']['input']>;\n email_in?: InputMaybe<Array<Scalars['String']['input']>>;\n email_not_eq?: InputMaybe<Scalars['String']['input']>;\n email_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n email_not_null?: InputMaybe<Scalars['String']['input']>;\n email_null?: InputMaybe<Scalars['String']['input']>;\n email_start?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_cont?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_contains?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_end?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_eq?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_equals?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_in?: InputMaybe<Array<Scalars['String']['input']>>;\n encrypted_password_not_eq?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n encrypted_password_not_null?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_null?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_start?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n image_cont?: InputMaybe<Scalars['String']['input']>;\n image_contains?: InputMaybe<Scalars['String']['input']>;\n image_end?: InputMaybe<Scalars['String']['input']>;\n image_eq?: InputMaybe<Scalars['String']['input']>;\n image_equals?: InputMaybe<Scalars['String']['input']>;\n image_in?: InputMaybe<Array<Scalars['String']['input']>>;\n image_not_eq?: InputMaybe<Scalars['String']['input']>;\n image_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n image_not_null?: InputMaybe<Scalars['String']['input']>;\n image_null?: InputMaybe<Scalars['String']['input']>;\n image_start?: InputMaybe<Scalars['String']['input']>;\n is_support_eq?: InputMaybe<Scalars['String']['input']>;\n is_support_equals?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_eq?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_equals?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_not_null?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_null?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_cont?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_contains?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_end?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_eq?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_equals?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_in?: InputMaybe<Array<Scalars['String']['input']>>;\n last_sign_in_ip_not_eq?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n last_sign_in_ip_not_null?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_null?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_start?: InputMaybe<Scalars['String']['input']>;\n locale_cont?: InputMaybe<Scalars['String']['input']>;\n locale_contains?: InputMaybe<Scalars['String']['input']>;\n locale_end?: InputMaybe<Scalars['String']['input']>;\n locale_eq?: InputMaybe<Scalars['String']['input']>;\n locale_equals?: InputMaybe<Scalars['String']['input']>;\n locale_in?: InputMaybe<Array<Scalars['String']['input']>>;\n locale_not_eq?: InputMaybe<Scalars['String']['input']>;\n locale_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n locale_not_null?: InputMaybe<Scalars['String']['input']>;\n locale_null?: InputMaybe<Scalars['String']['input']>;\n locale_start?: InputMaybe<Scalars['String']['input']>;\n login_code_cont?: InputMaybe<Scalars['String']['input']>;\n login_code_contains?: InputMaybe<Scalars['String']['input']>;\n login_code_end?: InputMaybe<Scalars['String']['input']>;\n login_code_eq?: InputMaybe<Scalars['String']['input']>;\n login_code_equals?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_eq?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_equals?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_null?: InputMaybe<Scalars['String']['input']>;\n login_code_in?: InputMaybe<Array<Scalars['String']['input']>>;\n login_code_not_eq?: InputMaybe<Scalars['String']['input']>;\n login_code_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n login_code_not_null?: InputMaybe<Scalars['String']['input']>;\n login_code_null?: InputMaybe<Scalars['String']['input']>;\n login_code_start?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n nickname_cont?: InputMaybe<Scalars['String']['input']>;\n nickname_contains?: InputMaybe<Scalars['String']['input']>;\n nickname_end?: InputMaybe<Scalars['String']['input']>;\n nickname_eq?: InputMaybe<Scalars['String']['input']>;\n nickname_equals?: InputMaybe<Scalars['String']['input']>;\n nickname_in?: InputMaybe<Array<Scalars['String']['input']>>;\n nickname_not_eq?: InputMaybe<Scalars['String']['input']>;\n nickname_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n nickname_not_null?: InputMaybe<Scalars['String']['input']>;\n nickname_null?: InputMaybe<Scalars['String']['input']>;\n nickname_start?: InputMaybe<Scalars['String']['input']>;\n notification_browser_eq?: InputMaybe<Scalars['String']['input']>;\n notification_browser_equals?: InputMaybe<Scalars['String']['input']>;\n notification_email_eq?: InputMaybe<Scalars['String']['input']>;\n notification_email_equals?: InputMaybe<Scalars['String']['input']>;\n notification_rtc_eq?: InputMaybe<Scalars['String']['input']>;\n notification_rtc_equals?: InputMaybe<Scalars['String']['input']>;\n notification_sms_eq?: InputMaybe<Scalars['String']['input']>;\n notification_sms_equals?: InputMaybe<Scalars['String']['input']>;\n notification_vms_eq?: InputMaybe<Scalars['String']['input']>;\n notification_vms_equals?: InputMaybe<Scalars['String']['input']>;\n phone_cont?: InputMaybe<Scalars['String']['input']>;\n phone_contains?: InputMaybe<Scalars['String']['input']>;\n phone_end?: InputMaybe<Scalars['String']['input']>;\n phone_eq?: InputMaybe<Scalars['String']['input']>;\n phone_equals?: InputMaybe<Scalars['String']['input']>;\n phone_in?: InputMaybe<Array<Scalars['String']['input']>>;\n phone_not_eq?: InputMaybe<Scalars['String']['input']>;\n phone_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n phone_not_null?: InputMaybe<Scalars['String']['input']>;\n phone_null?: InputMaybe<Scalars['String']['input']>;\n phone_start?: InputMaybe<Scalars['String']['input']>;\n provider_cont?: InputMaybe<Scalars['String']['input']>;\n provider_contains?: InputMaybe<Scalars['String']['input']>;\n provider_end?: InputMaybe<Scalars['String']['input']>;\n provider_eq?: InputMaybe<Scalars['String']['input']>;\n provider_equals?: InputMaybe<Scalars['String']['input']>;\n provider_in?: InputMaybe<Array<Scalars['String']['input']>>;\n provider_not_eq?: InputMaybe<Scalars['String']['input']>;\n provider_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n provider_not_null?: InputMaybe<Scalars['String']['input']>;\n provider_null?: InputMaybe<Scalars['String']['input']>;\n provider_start?: InputMaybe<Scalars['String']['input']>;\n registration_token_cont?: InputMaybe<Scalars['String']['input']>;\n registration_token_contains?: InputMaybe<Scalars['String']['input']>;\n registration_token_end?: InputMaybe<Scalars['String']['input']>;\n registration_token_eq?: InputMaybe<Scalars['String']['input']>;\n registration_token_equals?: InputMaybe<Scalars['String']['input']>;\n registration_token_in?: InputMaybe<Array<Scalars['String']['input']>>;\n registration_token_not_eq?: InputMaybe<Scalars['String']['input']>;\n registration_token_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n registration_token_not_null?: InputMaybe<Scalars['String']['input']>;\n registration_token_null?: InputMaybe<Scalars['String']['input']>;\n registration_token_start?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_eq?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_equals?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_eq?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_equals?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_not_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_cont?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_contains?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_end?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_eq?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_equals?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reset_password_token_not_eq?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reset_password_token_not_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_start?: InputMaybe<Scalars['String']['input']>;\n role_id_eq?: InputMaybe<Scalars['String']['input']>;\n role_id_equals?: InputMaybe<Scalars['String']['input']>;\n role_id_gt?: InputMaybe<Scalars['String']['input']>;\n role_id_gteq?: InputMaybe<Scalars['String']['input']>;\n role_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n role_id_lt?: InputMaybe<Scalars['String']['input']>;\n role_id_lteq?: InputMaybe<Scalars['String']['input']>;\n role_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n role_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n role_id_not_null?: InputMaybe<Scalars['String']['input']>;\n role_id_null?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_eq?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_equals?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_gt?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_gteq?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sign_in_count_lt?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_lteq?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_not_eq?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sign_in_count_not_null?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_null?: InputMaybe<Scalars['String']['input']>;\n team_id_eq?: InputMaybe<Scalars['String']['input']>;\n team_id_equals?: InputMaybe<Scalars['String']['input']>;\n team_id_gt?: InputMaybe<Scalars['String']['input']>;\n team_id_gteq?: InputMaybe<Scalars['String']['input']>;\n team_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n team_id_lt?: InputMaybe<Scalars['String']['input']>;\n team_id_lteq?: InputMaybe<Scalars['String']['input']>;\n team_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n team_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n team_id_not_null?: InputMaybe<Scalars['String']['input']>;\n team_id_null?: InputMaybe<Scalars['String']['input']>;\n tokens_cont?: InputMaybe<Scalars['String']['input']>;\n tokens_contains?: InputMaybe<Scalars['String']['input']>;\n tokens_end?: InputMaybe<Scalars['String']['input']>;\n tokens_eq?: InputMaybe<Scalars['String']['input']>;\n tokens_equals?: InputMaybe<Scalars['String']['input']>;\n tokens_in?: InputMaybe<Array<Scalars['String']['input']>>;\n tokens_not_eq?: InputMaybe<Scalars['String']['input']>;\n tokens_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n tokens_not_null?: InputMaybe<Scalars['String']['input']>;\n tokens_null?: InputMaybe<Scalars['String']['input']>;\n tokens_start?: InputMaybe<Scalars['String']['input']>;\n uid_cont?: InputMaybe<Scalars['String']['input']>;\n uid_contains?: InputMaybe<Scalars['String']['input']>;\n uid_end?: InputMaybe<Scalars['String']['input']>;\n uid_eq?: InputMaybe<Scalars['String']['input']>;\n uid_equals?: InputMaybe<Scalars['String']['input']>;\n uid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uid_not_null?: InputMaybe<Scalars['String']['input']>;\n uid_null?: InputMaybe<Scalars['String']['input']>;\n uid_start?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_cont?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_contains?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_end?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_eq?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_equals?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_in?: InputMaybe<Array<Scalars['String']['input']>>;\n unconfirmed_email_not_eq?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n unconfirmed_email_not_null?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_null?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_start?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n username_cont?: InputMaybe<Scalars['String']['input']>;\n username_contains?: InputMaybe<Scalars['String']['input']>;\n username_end?: InputMaybe<Scalars['String']['input']>;\n username_eq?: InputMaybe<Scalars['String']['input']>;\n username_equals?: InputMaybe<Scalars['String']['input']>;\n username_in?: InputMaybe<Array<Scalars['String']['input']>>;\n username_not_eq?: InputMaybe<Scalars['String']['input']>;\n username_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n username_not_null?: InputMaybe<Scalars['String']['input']>;\n username_null?: InputMaybe<Scalars['String']['input']>;\n username_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type UserPresence = {\n __typename?: 'UserPresence';\n author: User;\n finishedAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n startedAt: Scalars['String']['output'];\n user: User;\n workplaceId: Scalars['String']['output'];\n};\n\nexport type UserPresenceFilter = {\n author_id_eq?: InputMaybe<Scalars['String']['input']>;\n author_id_equals?: InputMaybe<Scalars['String']['input']>;\n author_id_gt?: InputMaybe<Scalars['String']['input']>;\n author_id_gteq?: InputMaybe<Scalars['String']['input']>;\n author_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n author_id_lt?: InputMaybe<Scalars['String']['input']>;\n author_id_lteq?: InputMaybe<Scalars['String']['input']>;\n author_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n author_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n author_id_not_null?: InputMaybe<Scalars['String']['input']>;\n author_id_null?: InputMaybe<Scalars['String']['input']>;\n auto_closed_eq?: InputMaybe<Scalars['String']['input']>;\n auto_closed_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_eq?: InputMaybe<Scalars['String']['input']>;\n finished_at_equals?: InputMaybe<Scalars['String']['input']>;\n finished_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_not_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n period?: InputMaybe<Period>;\n shift_id_eq?: InputMaybe<Scalars['String']['input']>;\n shift_id_equals?: InputMaybe<Scalars['String']['input']>;\n shift_id_gt?: InputMaybe<Scalars['String']['input']>;\n shift_id_gteq?: InputMaybe<Scalars['String']['input']>;\n shift_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n shift_id_lt?: InputMaybe<Scalars['String']['input']>;\n shift_id_lteq?: InputMaybe<Scalars['String']['input']>;\n shift_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n shift_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n shift_id_not_null?: InputMaybe<Scalars['String']['input']>;\n shift_id_null?: InputMaybe<Scalars['String']['input']>;\n started_at_eq?: InputMaybe<Scalars['String']['input']>;\n started_at_equals?: InputMaybe<Scalars['String']['input']>;\n started_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_not_null?: InputMaybe<Scalars['String']['input']>;\n started_at_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n user_id_eq?: InputMaybe<Scalars['String']['input']>;\n user_id_equals?: InputMaybe<Scalars['String']['input']>;\n user_id_gt?: InputMaybe<Scalars['String']['input']>;\n user_id_gteq?: InputMaybe<Scalars['String']['input']>;\n user_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n user_id_lt?: InputMaybe<Scalars['String']['input']>;\n user_id_lteq?: InputMaybe<Scalars['String']['input']>;\n user_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n user_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n user_id_not_null?: InputMaybe<Scalars['String']['input']>;\n user_id_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type Widget = {\n __typename?: 'Widget';\n config?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n};\n\nexport type WidgetFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n config_contains?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type WorkOrder = {\n __typename?: 'WorkOrder';\n assignees: Array<User>;\n category?: Maybe<WorkOrderCategory>;\n closedAt?: Maybe<Scalars['String']['output']>;\n createdAt: Scalars['String']['output'];\n creationMethod: WorkOrderCreationMethodEnum;\n description?: Maybe<Scalars['String']['output']>;\n dtrUrl?: Maybe<Scalars['String']['output']>;\n dueAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n note?: Maybe<Scalars['String']['output']>;\n originalOccurrenceAt?: Maybe<Scalars['String']['output']>;\n priority: WorkOrderPriorityEnum;\n procedureDescription?: Maybe<Scalars['String']['output']>;\n procedureName?: Maybe<Scalars['String']['output']>;\n procedureResponse: Scalars['JSON']['output'];\n procedureTemplate: Scalars['JSON']['output'];\n startAt?: Maybe<Scalars['String']['output']>;\n status: WorkOrderStatusEnum;\n timeSpentHours?: Maybe<Scalars['Int']['output']>;\n timeSpentMinutes?: Maybe<Scalars['Int']['output']>;\n updatedAt: Scalars['String']['output'];\n workplaces: Array<Workplace>;\n};\n\nexport type WorkOrderCategory = {\n __typename?: 'WorkOrderCategory';\n description?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport enum WorkOrderCreationMethodEnum {\n ConditionBased = 'CONDITION_BASED',\n EventBased = 'EVENT_BASED',\n Manual = 'MANUAL',\n Scheduled = 'SCHEDULED'\n}\n\nexport type WorkOrderFilter = {\n creation_method_eq?: InputMaybe<WorkOrderCreationMethodEnum>;\n creation_method_equals?: InputMaybe<WorkOrderCreationMethodEnum>;\n creation_method_in?: InputMaybe<Array<WorkOrderCreationMethodEnum>>;\n creation_method_not_in?: InputMaybe<Array<WorkOrderCreationMethodEnum>>;\n id_eq?: InputMaybe<Scalars['ID']['input']>;\n id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n id_not_eq?: InputMaybe<Scalars['ID']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n priority_eq?: InputMaybe<WorkOrderPriorityEnum>;\n priority_equals?: InputMaybe<WorkOrderPriorityEnum>;\n priority_in?: InputMaybe<Array<WorkOrderPriorityEnum>>;\n priority_not_in?: InputMaybe<Array<WorkOrderPriorityEnum>>;\n s?: InputMaybe<Scalars['String']['input']>;\n status_eq?: InputMaybe<WorkOrderStatusEnum>;\n status_equals?: InputMaybe<WorkOrderStatusEnum>;\n status_in?: InputMaybe<Array<WorkOrderStatusEnum>>;\n status_not_in?: InputMaybe<Array<WorkOrderStatusEnum>>;\n workplace_ids_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplace_ids_not_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n};\n\nexport enum WorkOrderPriorityEnum {\n Critical = 'CRITICAL',\n High = 'HIGH',\n Low = 'LOW',\n Normal = 'NORMAL'\n}\n\nexport enum WorkOrderStatusEnum {\n Canceled = 'CANCELED',\n Done = 'DONE',\n InProgress = 'IN_PROGRESS',\n OnHold = 'ON_HOLD',\n Open = 'OPEN'\n}\n\nexport type WorkOrdersInsightsCategoryEntry = {\n __typename?: 'WorkOrdersInsightsCategoryEntry';\n categoryId: Scalars['ID']['output'];\n categoryName: Scalars['String']['output'];\n durations: Array<WorkOrdersInsightsDurationEntry>;\n totalCount: Scalars['Int']['output'];\n};\n\nexport type WorkOrdersInsightsDurationEntry = {\n __typename?: 'WorkOrdersInsightsDurationEntry';\n count: Scalars['Int']['output'];\n lowerBoundMinutes?: Maybe<Scalars['Int']['output']>;\n upperBoundMinutes?: Maybe<Scalars['Int']['output']>;\n};\n\nexport type WorkOrdersInsightsInput = {\n categoryIds?: InputMaybe<Array<Scalars['ID']['input']>>;\n dateFrom: Scalars['ISO8601DateTime']['input'];\n dateTo: Scalars['ISO8601DateTime']['input'];\n dayType: DayType;\n durationBoundaries: Array<Scalars['Int']['input']>;\n};\n\nexport type WorkOrdersInsightsResult = {\n __typename?: 'WorkOrdersInsightsResult';\n categories: Array<WorkOrdersInsightsCategoryEntry>;\n};\n\nexport type Workplace = {\n __typename?: 'Workplace';\n colorHex?: Maybe<Scalars['String']['output']>;\n currentStatusChange?: Maybe<StatusChange>;\n deactivated: Scalars['Boolean']['output'];\n departmentId?: Maybe<Scalars['String']['output']>;\n dtrUrl?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n minOperators: Scalars['Int']['output'];\n name: Scalars['String']['output'];\n reasonGroupId: Scalars['String']['output'];\n reasonsRecommendationsEnabled: Scalars['Boolean']['output'];\n};\n\nexport type WorkplaceAssignment = {\n __typename?: 'WorkplaceAssignment';\n createdAt: Scalars['ISO8601DateTime']['output'];\n id: Scalars['ID']['output'];\n shift: Shift;\n user: User;\n validFrom: Scalars['ISO8601Date']['output'];\n workplace?: Maybe<Workplace>;\n};\n\nexport type WorkplaceAssignmentsInput = {\n date: Scalars['ISO8601DateTime']['input'];\n departmentId?: InputMaybe<Scalars['ID']['input']>;\n shiftId: Scalars['ID']['input'];\n};\n\nexport type WorkplaceAssignmentsView = {\n __typename?: 'WorkplaceAssignmentsView';\n summary: AssignmentSummary;\n unassignedOperators: Array<User>;\n workplaces: Array<WorkplaceWithAssignment>;\n};\n\nexport type WorkplaceConfig = {\n __typename?: 'WorkplaceConfig';\n defaultScreen: ScreenEnum;\n menuDisplayItems: Array<ScreenEnum>;\n orderConfig: OrderConfig;\n orderExecutionConfig: OrderExecutionConfig;\n productConfig: ProductConfig;\n productionMode: ProductionMode;\n screenSaverConfig: ScreenSaverConfig;\n statusScreenDisplayBlocks?: Maybe<Array<StatusScreenDisplayBlocksEnum>>;\n workplaceId: Scalars['ID']['output'];\n};\n\nexport enum WorkplaceEvent {\n AllStatusChangeTransitionPermissionsUpdated = 'ALL_STATUS_CHANGE_TRANSITION_PERMISSIONS_UPDATED',\n CounterUpdated = 'COUNTER_UPDATED',\n CurrentShiftChanged = 'CURRENT_SHIFT_CHANGED',\n MetricValueUpdated = 'METRIC_VALUE_UPDATED',\n NotificationCreated = 'NOTIFICATION_CREATED',\n OrderExecutionUpdated = 'ORDER_EXECUTION_UPDATED',\n OrderUpdated = 'ORDER_UPDATED',\n StatusChangeCreated = 'STATUS_CHANGE_CREATED',\n StatusChangeUpdated = 'STATUS_CHANGE_UPDATED',\n UserPresenceCreated = 'USER_PRESENCE_CREATED',\n UserPresenceUpdated = 'USER_PRESENCE_UPDATED'\n}\n\nexport type WorkplaceEventSubjectUnion = Counter | Item | MetricValue | Notification | Order | OrderExecution | Shift | StatusChange | UserPresence;\n\n/** Autogenerated return type of WorkplaceEventSubscription */\nexport type WorkplaceEventSubscriptionPayload = {\n __typename?: 'WorkplaceEventSubscriptionPayload';\n event: WorkplaceEvent;\n subject?: Maybe<WorkplaceEventSubjectUnion>;\n};\n\nexport type WorkplaceFilter = {\n availability_boost_eq?: InputMaybe<Scalars['String']['input']>;\n availability_boost_equals?: InputMaybe<Scalars['String']['input']>;\n availability_boost_gt?: InputMaybe<Scalars['String']['input']>;\n availability_boost_gteq?: InputMaybe<Scalars['String']['input']>;\n availability_boost_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_boost_lt?: InputMaybe<Scalars['String']['input']>;\n availability_boost_lteq?: InputMaybe<Scalars['String']['input']>;\n availability_boost_not_eq?: InputMaybe<Scalars['String']['input']>;\n availability_boost_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_boost_not_null?: InputMaybe<Scalars['String']['input']>;\n availability_boost_null?: InputMaybe<Scalars['String']['input']>;\n availability_target_eq?: InputMaybe<Scalars['String']['input']>;\n availability_target_equals?: InputMaybe<Scalars['String']['input']>;\n availability_target_gt?: InputMaybe<Scalars['String']['input']>;\n availability_target_gteq?: InputMaybe<Scalars['String']['input']>;\n availability_target_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_target_lt?: InputMaybe<Scalars['String']['input']>;\n availability_target_lteq?: InputMaybe<Scalars['String']['input']>;\n availability_target_not_eq?: InputMaybe<Scalars['String']['input']>;\n availability_target_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_target_not_null?: InputMaybe<Scalars['String']['input']>;\n availability_target_null?: InputMaybe<Scalars['String']['input']>;\n color_hex_cont?: InputMaybe<Scalars['String']['input']>;\n color_hex_contains?: InputMaybe<Scalars['String']['input']>;\n color_hex_end?: InputMaybe<Scalars['String']['input']>;\n color_hex_eq?: InputMaybe<Scalars['String']['input']>;\n color_hex_equals?: InputMaybe<Scalars['String']['input']>;\n color_hex_in?: InputMaybe<Array<Scalars['String']['input']>>;\n color_hex_not_eq?: InputMaybe<Scalars['String']['input']>;\n color_hex_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n color_hex_not_null?: InputMaybe<Scalars['String']['input']>;\n color_hex_null?: InputMaybe<Scalars['String']['input']>;\n color_hex_start?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n current_order_id_eq?: InputMaybe<Scalars['String']['input']>;\n current_order_id_equals?: InputMaybe<Scalars['String']['input']>;\n current_order_id_gt?: InputMaybe<Scalars['String']['input']>;\n current_order_id_gteq?: InputMaybe<Scalars['String']['input']>;\n current_order_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n current_order_id_lt?: InputMaybe<Scalars['String']['input']>;\n current_order_id_lteq?: InputMaybe<Scalars['String']['input']>;\n current_order_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n current_order_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n current_order_id_not_null?: InputMaybe<Scalars['String']['input']>;\n current_order_id_null?: InputMaybe<Scalars['String']['input']>;\n deactivated_eq?: InputMaybe<Scalars['String']['input']>;\n deactivated_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n department_id_eq?: InputMaybe<Scalars['String']['input']>;\n department_id_equals?: InputMaybe<Scalars['String']['input']>;\n department_id_gt?: InputMaybe<Scalars['String']['input']>;\n department_id_gteq?: InputMaybe<Scalars['String']['input']>;\n department_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n department_id_lt?: InputMaybe<Scalars['String']['input']>;\n department_id_lteq?: InputMaybe<Scalars['String']['input']>;\n department_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n department_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n department_id_not_null?: InputMaybe<Scalars['String']['input']>;\n department_id_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n meta_contains?: InputMaybe<Scalars['String']['input']>;\n min_operators_eq?: InputMaybe<Scalars['String']['input']>;\n min_operators_equals?: InputMaybe<Scalars['String']['input']>;\n min_operators_gt?: InputMaybe<Scalars['String']['input']>;\n min_operators_gteq?: InputMaybe<Scalars['String']['input']>;\n min_operators_in?: InputMaybe<Array<Scalars['String']['input']>>;\n min_operators_lt?: InputMaybe<Scalars['String']['input']>;\n min_operators_lteq?: InputMaybe<Scalars['String']['input']>;\n min_operators_not_eq?: InputMaybe<Scalars['String']['input']>;\n min_operators_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n min_operators_not_null?: InputMaybe<Scalars['String']['input']>;\n min_operators_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n oee_boost_eq?: InputMaybe<Scalars['String']['input']>;\n oee_boost_equals?: InputMaybe<Scalars['String']['input']>;\n oee_boost_gt?: InputMaybe<Scalars['String']['input']>;\n oee_boost_gteq?: InputMaybe<Scalars['String']['input']>;\n oee_boost_in?: InputMaybe<Array<Scalars['String']['input']>>;\n oee_boost_lt?: InputMaybe<Scalars['String']['input']>;\n oee_boost_lteq?: InputMaybe<Scalars['String']['input']>;\n oee_boost_not_eq?: InputMaybe<Scalars['String']['input']>;\n oee_boost_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n oee_boost_not_null?: InputMaybe<Scalars['String']['input']>;\n oee_boost_null?: InputMaybe<Scalars['String']['input']>;\n oee_target_eq?: InputMaybe<Scalars['String']['input']>;\n oee_target_equals?: InputMaybe<Scalars['String']['input']>;\n oee_target_gt?: InputMaybe<Scalars['String']['input']>;\n oee_target_gteq?: InputMaybe<Scalars['String']['input']>;\n oee_target_in?: InputMaybe<Array<Scalars['String']['input']>>;\n oee_target_lt?: InputMaybe<Scalars['String']['input']>;\n oee_target_lteq?: InputMaybe<Scalars['String']['input']>;\n oee_target_not_eq?: InputMaybe<Scalars['String']['input']>;\n oee_target_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n oee_target_not_null?: InputMaybe<Scalars['String']['input']>;\n oee_target_null?: InputMaybe<Scalars['String']['input']>;\n performance_boost_eq?: InputMaybe<Scalars['String']['input']>;\n performance_boost_equals?: InputMaybe<Scalars['String']['input']>;\n performance_boost_gt?: InputMaybe<Scalars['String']['input']>;\n performance_boost_gteq?: InputMaybe<Scalars['String']['input']>;\n performance_boost_in?: InputMaybe<Array<Scalars['String']['input']>>;\n performance_boost_lt?: InputMaybe<Scalars['String']['input']>;\n performance_boost_lteq?: InputMaybe<Scalars['String']['input']>;\n performance_boost_not_eq?: InputMaybe<Scalars['String']['input']>;\n performance_boost_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n performance_boost_not_null?: InputMaybe<Scalars['String']['input']>;\n performance_boost_null?: InputMaybe<Scalars['String']['input']>;\n performance_target_eq?: InputMaybe<Scalars['String']['input']>;\n performance_target_equals?: InputMaybe<Scalars['String']['input']>;\n performance_target_gt?: InputMaybe<Scalars['String']['input']>;\n performance_target_gteq?: InputMaybe<Scalars['String']['input']>;\n performance_target_in?: InputMaybe<Array<Scalars['String']['input']>>;\n performance_target_lt?: InputMaybe<Scalars['String']['input']>;\n performance_target_lteq?: InputMaybe<Scalars['String']['input']>;\n performance_target_not_eq?: InputMaybe<Scalars['String']['input']>;\n performance_target_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n performance_target_not_null?: InputMaybe<Scalars['String']['input']>;\n performance_target_null?: InputMaybe<Scalars['String']['input']>;\n production_mode_eq?: InputMaybe<Scalars['String']['input']>;\n production_mode_equals?: InputMaybe<Scalars['String']['input']>;\n production_mode_gt?: InputMaybe<Scalars['String']['input']>;\n production_mode_gteq?: InputMaybe<Scalars['String']['input']>;\n production_mode_in?: InputMaybe<Array<Scalars['String']['input']>>;\n production_mode_lt?: InputMaybe<Scalars['String']['input']>;\n production_mode_lteq?: InputMaybe<Scalars['String']['input']>;\n production_mode_not_eq?: InputMaybe<Scalars['String']['input']>;\n production_mode_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n production_mode_not_null?: InputMaybe<Scalars['String']['input']>;\n production_mode_null?: InputMaybe<Scalars['String']['input']>;\n quality_boost_eq?: InputMaybe<Scalars['String']['input']>;\n quality_boost_equals?: InputMaybe<Scalars['String']['input']>;\n quality_boost_gt?: InputMaybe<Scalars['String']['input']>;\n quality_boost_gteq?: InputMaybe<Scalars['String']['input']>;\n quality_boost_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quality_boost_lt?: InputMaybe<Scalars['String']['input']>;\n quality_boost_lteq?: InputMaybe<Scalars['String']['input']>;\n quality_boost_not_eq?: InputMaybe<Scalars['String']['input']>;\n quality_boost_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quality_boost_not_null?: InputMaybe<Scalars['String']['input']>;\n quality_boost_null?: InputMaybe<Scalars['String']['input']>;\n quality_target_eq?: InputMaybe<Scalars['String']['input']>;\n quality_target_equals?: InputMaybe<Scalars['String']['input']>;\n quality_target_gt?: InputMaybe<Scalars['String']['input']>;\n quality_target_gteq?: InputMaybe<Scalars['String']['input']>;\n quality_target_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quality_target_lt?: InputMaybe<Scalars['String']['input']>;\n quality_target_lteq?: InputMaybe<Scalars['String']['input']>;\n quality_target_not_eq?: InputMaybe<Scalars['String']['input']>;\n quality_target_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quality_target_not_null?: InputMaybe<Scalars['String']['input']>;\n quality_target_null?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_eq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_equals?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_gt?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_gteq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_group_id_lt?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_lteq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_group_id_not_null?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_null?: InputMaybe<Scalars['String']['input']>;\n reasons_recommendations_enabled_eq?: InputMaybe<Scalars['String']['input']>;\n reasons_recommendations_enabled_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_auto_sign_out_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_auto_sign_out_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_idle_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_idle_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_order_created_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_order_created_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_status_change_created_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_status_change_created_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_enabled_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_enabled_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_gt?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_gteq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_in?: InputMaybe<Array<Scalars['String']['input']>>;\n screen_saver_idle_time_lt?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_lteq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_not_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n screen_saver_idle_time_not_null?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_null?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_eq?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_equals?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_gt?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_gteq?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n shift_end_reason_id_lt?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_lteq?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n shift_end_reason_id_not_null?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n verify_existence_of_standard_rate_for_order_eq?: InputMaybe<Scalars['String']['input']>;\n verify_existence_of_standard_rate_for_order_equals?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type WorkplacePerformanceInsightsInput = {\n availabilityStatuses?: InputMaybe<Array<AvailabilityStatus>>;\n dayType?: InputMaybe<DayType>;\n endDate: Scalars['ISO8601DateTime']['input'];\n shiftIds: Array<Scalars['ID']['input']>;\n sortOrder?: InputMaybe<Scalars['String']['input']>;\n startDate: Scalars['ISO8601DateTime']['input'];\n userIds?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplaceId: Scalars['ID']['input'];\n};\n\nexport type WorkplacePerformanceInsightsReason = {\n __typename?: 'WorkplacePerformanceInsightsReason';\n availabilityStatus: AvailabilityStatus;\n averageDuration: Scalars['String']['output'];\n averageDurationSeconds: Scalars['Float']['output'];\n maxDuration: Scalars['String']['output'];\n maxDurationSeconds: Scalars['Float']['output'];\n occurrences: Scalars['Int']['output'];\n percentage: Scalars['Float']['output'];\n reasonColor: AndonLightColor;\n reasonId: Scalars['ID']['output'];\n reasonName: Scalars['String']['output'];\n statusChanges: Array<WorkplacePerformanceInsightsStatusChange>;\n totalDuration: Scalars['String']['output'];\n totalSeconds: Scalars['Float']['output'];\n};\n\nexport type WorkplacePerformanceInsightsResult = {\n __typename?: 'WorkplacePerformanceInsightsResult';\n endDate: Scalars['ISO8601DateTime']['output'];\n mtbf: Scalars['String']['output'];\n mtbfSeconds?: Maybe<Scalars['Float']['output']>;\n mttr: Scalars['String']['output'];\n mttrSeconds?: Maybe<Scalars['Float']['output']>;\n offScheduleDuration: Scalars['String']['output'];\n offScheduleSeconds: Scalars['Float']['output'];\n reasons: Array<WorkplacePerformanceInsightsReason>;\n startDate: Scalars['ISO8601DateTime']['output'];\n totalDowntime: Scalars['String']['output'];\n totalDowntimePercentage: Scalars['Float']['output'];\n totalDowntimeSeconds: Scalars['Float']['output'];\n totalDuration: Scalars['String']['output'];\n totalSeconds: Scalars['Float']['output'];\n totalUptime: Scalars['String']['output'];\n totalUptimePercentage: Scalars['Float']['output'];\n totalUptimeSeconds: Scalars['Float']['output'];\n workplaceId: Scalars['ID']['output'];\n workplaceName: Scalars['String']['output'];\n};\n\nexport type WorkplacePerformanceInsightsStatusChange = {\n __typename?: 'WorkplacePerformanceInsightsStatusChange';\n firstSegmentStart: Scalars['ISO8601DateTime']['output'];\n id: Scalars['ID']['output'];\n lastSegmentEnd: Scalars['ISO8601DateTime']['output'];\n note?: Maybe<Scalars['String']['output']>;\n originalEnd?: Maybe<Scalars['ISO8601DateTime']['output']>;\n originalStart: Scalars['ISO8601DateTime']['output'];\n segments?: Maybe<Scalars['JSON']['output']>;\n totalSegmentDuration: Scalars['String']['output'];\n totalSegmentSeconds: Scalars['Float']['output'];\n uuid: Scalars['String']['output'];\n};\n\nexport type WorkplaceWithAssignment = {\n __typename?: 'WorkplaceWithAssignment';\n assignedCount: Scalars['Int']['output'];\n assignedOperators: Array<AssignedOperator>;\n isOvercapacity: Scalars['Boolean']['output'];\n missingCount: Scalars['Int']['output'];\n recommendedOperators: Scalars['Int']['output'];\n unplannedOperators: Array<UnplannedOperator>;\n workplace: Workplace;\n};\n\nexport type AssignOperatorToWorkplaceMutationVariables = Exact<{\n input: AssignOperatorInput;\n}>;\n\n\nexport type AssignOperatorToWorkplaceMutation = { __typename?: 'Mutation', assignOperatorToWorkplace: { __typename?: 'AssignOperatorToWorkplacePayload', assignment?: { __typename?: 'WorkplaceAssignment', createdAt: any, id: string, validFrom: any, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, user: { __typename?: 'User', id: string, login: string, name: string }, workplace?: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null } | null } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type BulkUpsertStaffingPlansMutationVariables = Exact<{\n input: BulkStaffingPlanInput;\n}>;\n\n\nexport type BulkUpsertStaffingPlansMutation = { __typename?: 'Mutation', bulkUpsertStaffingPlans: { __typename?: 'BulkUpsertStaffingPlansPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, staffingPlans?: Array<{ __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, createdAt: any, updatedAt: any, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, author: { __typename?: 'User', id: string, login: string, name: string } }> | null } };\n\nexport type CreateDashboardMutationVariables = Exact<{\n filters?: InputMaybe<Scalars['String']['input']>;\n gridLayout?: InputMaybe<Scalars['String']['input']>;\n id: Scalars['ID']['input'];\n name: Scalars['String']['input'];\n}>;\n\n\nexport type CreateDashboardMutation = { __typename?: 'Mutation', createDashboard: { __typename?: 'CreateDashboardPayload', dashboard?: { __typename?: 'Dashboard', filters?: string | null, gridLayout?: string | null, id: string, name: string } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type CreateOrderMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n number: Scalars['String']['input'];\n}>;\n\n\nexport type CreateOrderMutation = { __typename?: 'Mutation', createOrder: { __typename?: 'CreateOrderPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } };\n\nexport type CreateProductMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n number: Scalars['String']['input'];\n}>;\n\n\nexport type CreateProductMutation = { __typename?: 'Mutation', createProduct: { __typename?: 'CreateProductPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } };\n\nexport type CreateStaffingPlanMutationVariables = Exact<{\n input: StaffingPlanInput;\n}>;\n\n\nexport type CreateStaffingPlanMutation = { __typename?: 'Mutation', createStaffingPlan: { __typename?: 'CreateStaffingPlanPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, staffingPlan?: { __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, createdAt: any, updatedAt: any, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, author: { __typename?: 'User', id: string, login: string, name: string } } | null } };\n\nexport type CreateStatusChangeMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n reasonHasBeenRecommended?: InputMaybe<Scalars['Boolean']['input']>;\n reasonId: Scalars['ID']['input'];\n startedAt?: InputMaybe<Scalars['String']['input']>;\n userId?: InputMaybe<Scalars['ID']['input']>;\n workplaceId: Scalars['ID']['input'];\n}>;\n\n\nexport type CreateStatusChangeMutation = { __typename?: 'Mutation', createStatusChange: { __typename?: 'CreateStatusChangePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, statusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null } };\n\nexport type CreateUserPresenceMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n userToken: Scalars['String']['input'];\n workplaceId: Scalars['ID']['input'];\n}>;\n\n\nexport type CreateUserPresenceMutation = { __typename?: 'Mutation', createUserPresence: { __typename?: 'CreateUserPresencePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, userPresence?: { __typename?: 'UserPresence', finishedAt?: string | null, id: string, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, user: { __typename?: 'User', id: string, login: string, name: string } } | null } };\n\nexport type CreateWidgetMutationVariables = Exact<{\n config?: InputMaybe<Scalars['String']['input']>;\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type CreateWidgetMutation = { __typename?: 'Mutation', createWidget: { __typename?: 'CreateWidgetPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, widget?: { __typename?: 'Widget', config?: string | null, id: string } | null } };\n\nexport type PauseOrderExecutionMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n statusChangeId: Scalars['ID']['input'];\n}>;\n\n\nexport type PauseOrderExecutionMutation = { __typename?: 'Mutation', pauseOrderExecution: { __typename?: 'PauseOrderExecutionPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, orderExecution?: { __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null } };\n\nexport type RemoveDashboardMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveDashboardMutation = { __typename?: 'Mutation', removeDashboard: { __typename?: 'RemoveDashboardPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RemoveStaffingPlanMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveStaffingPlanMutation = { __typename?: 'Mutation', removeStaffingPlan: { __typename?: 'RemoveStaffingPlanPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RemoveUserPresenceMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveUserPresenceMutation = { __typename?: 'Mutation', removeUserPresence: { __typename?: 'RemoveUserPresencePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RemoveWidgetMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveWidgetMutation = { __typename?: 'Mutation', removeWidget: { __typename?: 'RemoveWidgetPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RemoveWorkplaceUsersPresencesMutationVariables = Exact<{\n workplaceId: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveWorkplaceUsersPresencesMutation = { __typename?: 'Mutation', removeWorkplaceUsersPresences: { __typename?: 'RemoveWorkplaceUsersPresencesPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RequestFeatureAccessMutationVariables = Exact<{\n input: RequestFeatureAccessInput;\n}>;\n\n\nexport type RequestFeatureAccessMutation = { __typename?: 'Mutation', requestFeatureAccess: { __typename?: 'RequestFeatureAccessMutationPayload', success: boolean, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type SetCounterMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n orderExecutionId?: InputMaybe<Scalars['ID']['input']>;\n value: Scalars['Float']['input'];\n}>;\n\n\nexport type SetCounterMutation = { __typename?: 'Mutation', setCounter: { __typename?: 'SetCounterPayload', counter?: { __typename?: 'Counter', directoryId?: string | null, hasNote: boolean, id: string, isDisabled: boolean, kind: CounterKindEnum, name: string, position: number, value: number, workplaceId: string } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type StartOrderExecutionMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n itemCount?: InputMaybe<Scalars['Float']['input']>;\n order: OrderInput;\n product?: InputMaybe<ProductInput>;\n statusChangeId: Scalars['ID']['input'];\n workplaceId: Scalars['ID']['input'];\n}>;\n\n\nexport type StartOrderExecutionMutation = { __typename?: 'Mutation', startOrderExecution: { __typename?: 'StartOrderExecutionPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, orderExecution?: { __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null } };\n\nexport type StartTrialMutationVariables = Exact<{\n input: StartTrialInput;\n}>;\n\n\nexport type StartTrialMutation = { __typename?: 'Mutation', startTrial: { __typename?: 'StartTrialMutationPayload', success: boolean, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type StopOrderExecutionMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n statusChangeId: Scalars['ID']['input'];\n}>;\n\n\nexport type StopOrderExecutionMutation = { __typename?: 'Mutation', stopOrderExecution: { __typename?: 'StopOrderExecutionPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, orderExecution?: { __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null } };\n\nexport type UnassignOperatorFromWorkplaceMutationVariables = Exact<{\n input: UnassignOperatorInput;\n}>;\n\n\nexport type UnassignOperatorFromWorkplaceMutation = { __typename?: 'Mutation', unassignOperatorFromWorkplace: { __typename?: 'UnassignOperatorFromWorkplacePayload', assignment?: { __typename?: 'WorkplaceAssignment', createdAt: any, id: string, validFrom: any, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, user: { __typename?: 'User', id: string, login: string, name: string }, workplace?: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null } | null } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type UpdateDashboardMutationVariables = Exact<{\n filters?: InputMaybe<Scalars['String']['input']>;\n gridLayout: Scalars['String']['input'];\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n}>;\n\n\nexport type UpdateDashboardMutation = { __typename?: 'Mutation', updateDashboard: { __typename?: 'UpdateDashboardPayload', dashboard?: { __typename?: 'Dashboard', filters?: string | null, gridLayout?: string | null, id: string, name: string } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type UpdateNotificationMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n status: Scalars['String']['input'];\n}>;\n\n\nexport type UpdateNotificationMutation = { __typename?: 'Mutation', updateNotification: { __typename?: 'UpdateNotificationPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, notification?: { __typename?: 'Notification', channel?: string | null, details?: string | null, emitterId: string, emitterType: string, id: string, message: string, receiverId: string, receiverType: string, status?: string | null } | null } };\n\nexport type UpdateOrderMutationVariables = Exact<{\n input: UpdateOrderInput;\n}>;\n\n\nexport type UpdateOrderMutation = { __typename?: 'Mutation', updateOrder: { __typename?: 'UpdateOrderPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } };\n\nexport type UpdateOrderExecutionMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n standardRateId: Scalars['ID']['input'];\n}>;\n\n\nexport type UpdateOrderExecutionMutation = { __typename?: 'Mutation', updateOrderExecution: { __typename?: 'UpdateOrderExecutionPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, orderExecution?: { __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null } };\n\nexport type UpdateStaffingPlanMutationVariables = Exact<{\n input: StaffingPlanUpdateInput;\n}>;\n\n\nexport type UpdateStaffingPlanMutation = { __typename?: 'Mutation', updateStaffingPlan: { __typename?: 'UpdateStaffingPlanPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, staffingPlan?: { __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, createdAt: any, updatedAt: any, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, author: { __typename?: 'User', id: string, login: string, name: string } } | null } };\n\nexport type UpdateStatusChangeMutationVariables = Exact<{\n input: UpdateStatusChangeInput;\n}>;\n\n\nexport type UpdateStatusChangeMutation = { __typename?: 'Mutation', updateStatusChange: { __typename?: 'UpdateStatusChangePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, statusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null } };\n\nexport type UpdateWidgetMutationVariables = Exact<{\n config: Scalars['String']['input'];\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type UpdateWidgetMutation = { __typename?: 'Mutation', updateWidget: { __typename?: 'UpdateWidgetPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, widget?: { __typename?: 'Widget', config?: string | null, id: string } | null } };\n\nexport type UpdateWorkOrderMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n input: UpdateWorkOrderInput;\n}>;\n\n\nexport type UpdateWorkOrderMutation = { __typename?: 'Mutation', updateWorkOrder: { __typename?: 'UpdateWorkOrderPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, workOrder?: { __typename?: 'WorkOrder', closedAt?: string | null, createdAt: string, creationMethod: WorkOrderCreationMethodEnum, description?: string | null, dtrUrl?: string | null, dueAt?: string | null, id: string, name: string, note?: string | null, originalOccurrenceAt?: string | null, priority: WorkOrderPriorityEnum, procedureDescription?: string | null, procedureName?: string | null, procedureResponse: any, procedureTemplate: any, startAt?: string | null, status: WorkOrderStatusEnum, timeSpentHours?: number | null, timeSpentMinutes?: number | null, updatedAt: string, assignees: Array<{ __typename?: 'User', id: string, login: string, name: string }>, category?: { __typename?: 'WorkOrderCategory', description?: string | null, id: string, name: string } | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> } | null } };\n\nexport type ActualStaffingCountsQueryVariables = Exact<{\n filter?: InputMaybe<ActualStaffingCountFilter>;\n}>;\n\n\nexport type ActualStaffingCountsQuery = { __typename?: 'Query', actualStaffingCounts: Array<{ __typename?: 'ActualStaffingCount', date: any, actualOperators: number, plannedOperators?: number | null, hasDeviation: boolean, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string } }> };\n\nexport type ApplicationInfoQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type ApplicationInfoQuery = { __typename?: 'Query', applicationInfo: { __typename?: 'ApplicationInfo', apiVersion: string } };\n\nexport type AvailabilityInsightsQueryVariables = Exact<{\n input: AvailabilityInsightsInput;\n}>;\n\n\nexport type AvailabilityInsightsQuery = { __typename?: 'Query', availabilityInsights: { __typename?: 'AvailabilityInsightsResult', entries: Array<{ __typename?: 'AvailabilityInsightsEntry', availability: number, label: string, noData: boolean }> } };\n\nexport type CompanyConfigQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type CompanyConfigQuery = { __typename?: 'Query', companyConfig: { __typename?: 'CompanyConfig', displayedKpiItems: Array<string>, reasonsRecommendationsEnabled: boolean, statusChangeTransitionPermissionsUpdatedAt?: string | null, devicesConfigs: Array<{ __typename?: 'DeviceConfig', defaultWorkplaceId: string, deviceId: string, name: string }>, roleConfig: { __typename?: 'RoleConfig', historyVisibilityEnabled: boolean, orderCreationAllowed: boolean }, workplacesConfigs: Array<{ __typename?: 'WorkplaceConfig', defaultScreen: ScreenEnum, menuDisplayItems: Array<ScreenEnum>, productionMode: ProductionMode, statusScreenDisplayBlocks?: Array<StatusScreenDisplayBlocksEnum> | null, workplaceId: string, orderConfig: { __typename?: 'OrderConfig', alternativeName: boolean, numberPrefix?: string | null, numberRegexp?: string | null }, orderExecutionConfig: { __typename?: 'OrderExecutionConfig', afterPauseReasonId?: string | null, afterStartReasonId?: string | null, afterStopReasonId?: string | null, featureEnabled: boolean, formOrderFields: Array<string>, formProductFields: Array<string>, formQuantityFields: Array<string>, itemCountUnit: string, noPlanCanCreateOrderNote?: string | null, noPlanNeedVerificationNote?: string | null, orderInternalNoteText?: string | null, orderInternalNoteTitle?: string | null, productInternalNoteText?: string | null, productInternalNoteTitle?: string | null, quantityInternalNoteText?: string | null, quantityInternalNoteTitle?: string | null, stopEnabled: boolean }, productConfig: { __typename?: 'ProductConfig', alternativeName: boolean, numberPrefix?: string | null, numberRegexp?: string | null }, screenSaverConfig: { __typename?: 'ScreenSaverConfig', autoSignOut: boolean, displayAfterIdle: boolean, displayAfterOrderCreated: boolean, displayAfterStatusChangeCreated: boolean, enabled: boolean, idleTime: number } }> } };\n\nexport type CounterDirectoriesQueryVariables = Exact<{\n filter?: InputMaybe<CounterDirectoryFilter>;\n}>;\n\n\nexport type CounterDirectoriesQuery = { __typename?: 'Query', counterDirectories: Array<{ __typename?: 'CounterDirectory', directoryId?: string | null, id: string, name?: string | null, position: number, workplaceId: string }> };\n\nexport type CountersQueryVariables = Exact<{\n filter?: InputMaybe<CounterFilter>;\n}>;\n\n\nexport type CountersQuery = { __typename?: 'Query', counters: Array<{ __typename?: 'Counter', directoryId?: string | null, hasNote: boolean, id: string, isDisabled: boolean, kind: CounterKindEnum, name: string, position: number, value: number, workplaceId: string }> };\n\nexport type CurrentUserQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type CurrentUserQuery = { __typename?: 'Query', currentUser: { __typename?: 'User', id: string, login: string, name: string } };\n\nexport type DashboardsQueryVariables = Exact<{\n filter?: InputMaybe<DashboardFilter>;\n}>;\n\n\nexport type DashboardsQuery = { __typename?: 'Query', dashboards: Array<{ __typename?: 'Dashboard', filters?: string | null, gridLayout?: string | null, id: string, name: string }> };\n\nexport type DepartmentsQueryVariables = Exact<{\n filter?: InputMaybe<DepartmentFilter>;\n}>;\n\n\nexport type DepartmentsQuery = { __typename?: 'Query', departments: Array<{ __typename?: 'Department', id: string, name: string }> };\n\nexport type FloorPlansQueryVariables = Exact<{\n filter?: InputMaybe<FloorPlanFilter>;\n}>;\n\n\nexport type FloorPlansQuery = { __typename?: 'Query', floorPlans: Array<{ __typename?: 'FloorPlan', id: string, imageUrl: string, name: string }> };\n\nexport type MetricValuesQueryVariables = Exact<{\n metricIds?: InputMaybe<Array<Scalars['ID']['input']> | Scalars['ID']['input']>;\n workplaceIds?: InputMaybe<Array<Scalars['ID']['input']> | Scalars['ID']['input']>;\n}>;\n\n\nexport type MetricValuesQuery = { __typename?: 'Query', metricValues: Array<{ __typename?: 'MetricValue', active: boolean, id: string, metricId: string, statusColor: AndonLightColor, textValue?: string | null, timer?: number | null, type: MetricTypeEnum, unit?: MetricUnitEnum | null, workplaceId: string }> };\n\nexport type MetricsQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type MetricsQuery = { __typename?: 'Query', metrics: Array<{ __typename?: 'Metric', id: string, name: string }> };\n\nexport type NotificationsQueryVariables = Exact<{\n filter?: InputMaybe<NotificationFilter>;\n}>;\n\n\nexport type NotificationsQuery = { __typename?: 'Query', notifications: Array<{ __typename?: 'Notification', channel?: string | null, details?: string | null, emitterId: string, emitterType: string, id: string, message: string, receiverId: string, receiverType: string, status?: string | null }> };\n\nexport type OrdersQueryVariables = Exact<{\n filter?: InputMaybe<OrderFilter>;\n}>;\n\n\nexport type OrdersQuery = { __typename?: 'Query', orders: Array<{ __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }>, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> } }>, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }> };\n\nexport type OrdersExecutionsQueryVariables = Exact<{\n filter?: InputMaybe<OrderExecutionFilter>;\n}>;\n\n\nexport type OrdersExecutionsQuery = { __typename?: 'Query', ordersExecutions: Array<{ __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> };\n\nexport type ProductionInsightsQueryVariables = Exact<{\n input: ProductionInsightsInput;\n}>;\n\n\nexport type ProductionInsightsQuery = { __typename?: 'Query', productionInsights: { __typename?: 'ProductionInsightsResult', entries: Array<{ __typename?: 'ProductionInsightsEntry', count: number, label: string }> } };\n\nexport type ProductsQueryVariables = Exact<{\n filter?: InputMaybe<ProductFilter>;\n}>;\n\n\nexport type ProductsQuery = { __typename?: 'Query', products: Array<{ __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null }> };\n\nexport type ReasonsQueryVariables = Exact<{\n filter?: InputMaybe<ReasonFilter>;\n}>;\n\n\nexport type ReasonsQuery = { __typename?: 'Query', reasons: Array<{ __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean }> };\n\nexport type ReasonsRecommendationQueryVariables = Exact<{\n workplaceId: Scalars['String']['input'];\n}>;\n\n\nexport type ReasonsRecommendationQuery = { __typename?: 'Query', reasonsRecommendation?: { __typename?: 'ReasonsRecommendation', trainingStatus: TrainingStatus, reasons: Array<{ __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean }> } | null };\n\nexport type ShiftsQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type ShiftsQuery = { __typename?: 'Query', shifts: Array<{ __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }> };\n\nexport type StaffingPlansQueryVariables = Exact<{\n filter?: InputMaybe<StaffingPlanFilter>;\n}>;\n\n\nexport type StaffingPlansQuery = { __typename?: 'Query', staffingPlans: Array<{ __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, createdAt: any, updatedAt: any, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, author: { __typename?: 'User', id: string, login: string, name: string } }> };\n\nexport type StandardRatesQueryVariables = Exact<{\n orderExecutionId: Scalars['ID']['input'];\n}>;\n\n\nexport type StandardRatesQuery = { __typename?: 'Query', standardRates: Array<{ __typename?: 'StandardRate', id: string, label: string }> };\n\nexport type StatusChangeTransitionPermissionsQueryVariables = Exact<{\n filter?: InputMaybe<StatusChangeTransitionPermissionFilter>;\n}>;\n\n\nexport type StatusChangeTransitionPermissionsQuery = { __typename?: 'Query', statusChangeTransitionPermissions: Array<{ __typename?: 'StatusChangeTransitionPermission', fromReasonId: string, roleId: string, toReasonId: string, workplaceId: string }> };\n\nexport type StatusChangesQueryVariables = Exact<{\n filter?: InputMaybe<StatusChangeFilter>;\n}>;\n\n\nexport type StatusChangesQuery = { __typename?: 'Query', statusChanges: Array<{ __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } }> };\n\nexport type StatusInsightsQueryVariables = Exact<{\n input: StatusInsightsInput;\n}>;\n\n\nexport type StatusInsightsQuery = { __typename?: 'Query', statusInsights: { __typename?: 'StatusInsightsResult', entries: Array<{ __typename?: 'StatusInsightsEntry', averageDurationMinutes: number, label: string, occurrenceCount: number }> } };\n\nexport type UsersQueryVariables = Exact<{\n filter?: InputMaybe<UserFilter>;\n}>;\n\n\nexport type UsersQuery = { __typename?: 'Query', users: Array<{ __typename?: 'User', id: string, login: string, name: string }> };\n\nexport type UsersPresencesQueryVariables = Exact<{\n filter?: InputMaybe<UserPresenceFilter>;\n}>;\n\n\nexport type UsersPresencesQuery = { __typename?: 'Query', usersPresences: Array<{ __typename?: 'UserPresence', finishedAt?: string | null, id: string, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, user: { __typename?: 'User', id: string, login: string, name: string } }> };\n\nexport type WidgetQueryVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type WidgetQuery = { __typename?: 'Query', widget: { __typename?: 'Widget', config?: string | null, id: string } };\n\nexport type WidgetsQueryVariables = Exact<{\n filter?: InputMaybe<WidgetFilter>;\n}>;\n\n\nexport type WidgetsQuery = { __typename?: 'Query', widgets: Array<{ __typename?: 'Widget', config?: string | null, id: string }> };\n\nexport type WorkOrdersQueryVariables = Exact<{\n filter?: InputMaybe<WorkOrderFilter>;\n}>;\n\n\nexport type WorkOrdersQuery = { __typename?: 'Query', workOrders: Array<{ __typename?: 'WorkOrder', closedAt?: string | null, createdAt: string, creationMethod: WorkOrderCreationMethodEnum, description?: string | null, dtrUrl?: string | null, dueAt?: string | null, id: string, name: string, note?: string | null, originalOccurrenceAt?: string | null, priority: WorkOrderPriorityEnum, procedureDescription?: string | null, procedureName?: string | null, procedureResponse: any, procedureTemplate: any, startAt?: string | null, status: WorkOrderStatusEnum, timeSpentHours?: number | null, timeSpentMinutes?: number | null, updatedAt: string, assignees: Array<{ __typename?: 'User', id: string, login: string, name: string }>, category?: { __typename?: 'WorkOrderCategory', description?: string | null, id: string, name: string } | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }> };\n\nexport type WorkOrdersInsightsQueryVariables = Exact<{\n input: WorkOrdersInsightsInput;\n}>;\n\n\nexport type WorkOrdersInsightsQuery = { __typename?: 'Query', workOrdersInsights: { __typename?: 'WorkOrdersInsightsResult', categories: Array<{ __typename?: 'WorkOrdersInsightsCategoryEntry', categoryId: string, categoryName: string, totalCount: number, durations: Array<{ __typename?: 'WorkOrdersInsightsDurationEntry', count: number, lowerBoundMinutes?: number | null, upperBoundMinutes?: number | null }> }> } };\n\nexport type WorkplaceAssignmentsQueryVariables = Exact<{\n input: WorkplaceAssignmentsInput;\n}>;\n\n\nexport type WorkplaceAssignmentsQuery = { __typename?: 'Query', workplaceAssignments: { __typename?: 'WorkplaceAssignmentsView', summary: { __typename?: 'AssignmentSummary', totalAssigned: number, totalCheckedIn: number, totalMissing: number }, unassignedOperators: Array<{ __typename?: 'User', id: string, login: string, name: string }>, workplaces: Array<{ __typename?: 'WorkplaceWithAssignment', assignedCount: number, isOvercapacity: boolean, missingCount: number, recommendedOperators: number, assignedOperators: Array<{ __typename?: 'AssignedOperator', presenceStatus: PresenceStatusEnum, user: { __typename?: 'User', id: string, login: string, name: string } }>, unplannedOperators: Array<{ __typename?: 'UnplannedOperator', plannedWorkplace?: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null } | null, user: { __typename?: 'User', id: string, login: string, name: string } }>, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string } | null } }> } };\n\nexport type WorkplacePerformanceInsightsQueryVariables = Exact<{\n input: WorkplacePerformanceInsightsInput;\n}>;\n\n\nexport type WorkplacePerformanceInsightsQuery = { __typename?: 'Query', workplacePerformanceInsights: { __typename?: 'WorkplacePerformanceInsightsResult', endDate: any, mtbf: string, mtbfSeconds?: number | null, mttr: string, mttrSeconds?: number | null, startDate: any, offScheduleDuration: string, offScheduleSeconds: number, totalDowntime: string, totalDowntimePercentage: number, totalDowntimeSeconds: number, totalDuration: string, totalSeconds: number, totalUptime: string, totalUptimePercentage: number, totalUptimeSeconds: number, workplaceId: string, workplaceName: string, reasons: Array<{ __typename?: 'WorkplacePerformanceInsightsReason', availabilityStatus: AvailabilityStatus, averageDuration: string, averageDurationSeconds: number, maxDuration: string, maxDurationSeconds: number, occurrences: number, percentage: number, reasonColor: AndonLightColor, reasonId: string, reasonName: string, totalDuration: string, totalSeconds: number, statusChanges: Array<{ __typename?: 'WorkplacePerformanceInsightsStatusChange', firstSegmentStart: any, id: string, lastSegmentEnd: any, note?: string | null, originalEnd?: any | null, originalStart: any, segments?: any | null, totalSegmentDuration: string, totalSegmentSeconds: number, uuid: string }> }> } };\n\nexport type WorkplacesQueryVariables = Exact<{\n filter?: InputMaybe<WorkplaceFilter>;\n}>;\n\n\nexport type WorkplacesQuery = { __typename?: 'Query', workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> };\n\nexport type AssignOperatorMutationVariables = Exact<{\n input: AssignOperatorInput;\n}>;\n\n\nexport type AssignOperatorMutation = { __typename?: 'Mutation', assignOperatorToWorkplace: { __typename?: 'AssignOperatorToWorkplacePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, assignment?: { __typename?: 'WorkplaceAssignment', id: string, validFrom: any, user: { __typename?: 'User', id: string, name: string }, workplace?: { __typename?: 'Workplace', id: string, name: string } | null, shift: { __typename?: 'Shift', id: string, name: string } } | null } };\n\nexport type UnassignOperatorMutationVariables = Exact<{\n input: UnassignOperatorInput;\n}>;\n\n\nexport type UnassignOperatorMutation = { __typename?: 'Mutation', unassignOperatorFromWorkplace: { __typename?: 'UnassignOperatorFromWorkplacePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, assignment?: { __typename?: 'WorkplaceAssignment', id: string, validFrom: any, user: { __typename?: 'User', id: string, name: string } } | null } };\n\nexport type EditWorkOrderMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n input: UpdateWorkOrderInput;\n}>;\n\n\nexport type EditWorkOrderMutation = { __typename?: 'Mutation', updateWorkOrder: { __typename?: 'UpdateWorkOrderPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, workOrder?: { __typename?: 'WorkOrder', id: string, status: WorkOrderStatusEnum } | null } };\n\nexport type GetAvailabilityInsightsQueryVariables = Exact<{\n input: AvailabilityInsightsInput;\n}>;\n\n\nexport type GetAvailabilityInsightsQuery = { __typename?: 'Query', availabilityInsights: { __typename?: 'AvailabilityInsightsResult', entries: Array<{ __typename?: 'AvailabilityInsightsEntry', availability: number, label: string, noData: boolean }> } };\n\nexport type GetCompanyConfigQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type GetCompanyConfigQuery = { __typename?: 'Query', companyConfig: { __typename?: 'CompanyConfig', displayedKpiItems: Array<string>, reasonsRecommendationsEnabled: boolean, statusChangeTransitionPermissionsUpdatedAt?: string | null, devicesConfigs: Array<{ __typename?: 'DeviceConfig', defaultWorkplaceId: string, deviceId: string, name: string }>, roleConfig: { __typename?: 'RoleConfig', historyVisibilityEnabled: boolean, orderCreationAllowed: boolean }, workplacesConfigs: Array<{ __typename?: 'WorkplaceConfig', defaultScreen: ScreenEnum, menuDisplayItems: Array<ScreenEnum>, productionMode: ProductionMode, statusScreenDisplayBlocks?: Array<StatusScreenDisplayBlocksEnum> | null, workplaceId: string, orderConfig: { __typename?: 'OrderConfig', alternativeName: boolean, numberPrefix?: string | null, numberRegexp?: string | null }, orderExecutionConfig: { __typename?: 'OrderExecutionConfig', afterPauseReasonId?: string | null, afterStartReasonId?: string | null, afterStopReasonId?: string | null, featureEnabled: boolean, formOrderFields: Array<string>, formProductFields: Array<string>, formQuantityFields: Array<string>, itemCountUnit: string, noPlanCanCreateOrderNote?: string | null, noPlanNeedVerificationNote?: string | null, orderInternalNoteText?: string | null, orderInternalNoteTitle?: string | null, productInternalNoteText?: string | null, productInternalNoteTitle?: string | null, quantityInternalNoteText?: string | null, quantityInternalNoteTitle?: string | null, stopEnabled: boolean }, productConfig: { __typename?: 'ProductConfig', alternativeName: boolean, numberPrefix?: string | null, numberRegexp?: string | null }, screenSaverConfig: { __typename?: 'ScreenSaverConfig', autoSignOut: boolean, displayAfterIdle: boolean, displayAfterOrderCreated: boolean, displayAfterStatusChangeCreated: boolean, enabled: boolean, idleTime: number } }> } };\n\nexport type GetProductionInsightsQueryVariables = Exact<{\n input: ProductionInsightsInput;\n}>;\n\n\nexport type GetProductionInsightsQuery = { __typename?: 'Query', productionInsights: { __typename?: 'ProductionInsightsResult', entries: Array<{ __typename?: 'ProductionInsightsEntry', count: number, label: string }> } };\n\nexport type GetStatusInsightsQueryVariables = Exact<{\n input: StatusInsightsInput;\n}>;\n\n\nexport type GetStatusInsightsQuery = { __typename?: 'Query', statusInsights: { __typename?: 'StatusInsightsResult', entries: Array<{ __typename?: 'StatusInsightsEntry', averageDurationMinutes: number, label: string, occurrenceCount: number }> } };\n\nexport type GetWorkOrdersInsightsQueryVariables = Exact<{\n input: WorkOrdersInsightsInput;\n}>;\n\n\nexport type GetWorkOrdersInsightsQuery = { __typename?: 'Query', workOrdersInsights: { __typename?: 'WorkOrdersInsightsResult', categories: Array<{ __typename?: 'WorkOrdersInsightsCategoryEntry', categoryId: string, categoryName: string, totalCount: number, durations: Array<{ __typename?: 'WorkOrdersInsightsDurationEntry', count: number, lowerBoundMinutes?: number | null, upperBoundMinutes?: number | null }> }> } };\n\nexport type GetWorkplacePerformanceInsightsQueryVariables = Exact<{\n input: WorkplacePerformanceInsightsInput;\n}>;\n\n\nexport type GetWorkplacePerformanceInsightsQuery = { __typename?: 'Query', workplacePerformanceInsights: { __typename?: 'WorkplacePerformanceInsightsResult', workplaceId: string, workplaceName: string, startDate: any, endDate: any, totalDuration: string, totalSeconds: number, totalUptime: string, totalUptimePercentage: number, totalDowntime: string, totalDowntimePercentage: number, mtbf: string, mttr: string, reasons: Array<{ __typename?: 'WorkplacePerformanceInsightsReason', reasonId: string, reasonName: string, reasonColor: AndonLightColor, availabilityStatus: AvailabilityStatus, totalDuration: string, totalSeconds: number, percentage: number, occurrences: number, averageDuration: string, maxDuration: string }> } };\n\nexport type ListActualStaffingCountsQueryVariables = Exact<{\n filter?: InputMaybe<ActualStaffingCountFilter>;\n}>;\n\n\nexport type ListActualStaffingCountsQuery = { __typename?: 'Query', actualStaffingCounts: Array<{ __typename?: 'ActualStaffingCount', date: any, actualOperators: number, plannedOperators?: number | null, hasDeviation: boolean, workplace: { __typename?: 'Workplace', id: string, name: string }, shift: { __typename?: 'Shift', id: string, name: string } }> };\n\nexport type ListFloorPlansQueryVariables = Exact<{\n filter?: InputMaybe<FloorPlanFilter>;\n}>;\n\n\nexport type ListFloorPlansQuery = { __typename?: 'Query', floorPlans: Array<{ __typename?: 'FloorPlan', id: string, imageUrl: string, name: string }> };\n\nexport type ListMetricValuesQueryVariables = Exact<{\n metricIds?: InputMaybe<Array<Scalars['ID']['input']> | Scalars['ID']['input']>;\n workplaceIds?: InputMaybe<Array<Scalars['ID']['input']> | Scalars['ID']['input']>;\n}>;\n\n\nexport type ListMetricValuesQuery = { __typename?: 'Query', metricValues: Array<{ __typename?: 'MetricValue', active: boolean, id: string, metricId: string, statusColor: AndonLightColor, textValue?: string | null, timer?: number | null, type: MetricTypeEnum, unit?: MetricUnitEnum | null, workplaceId: string }> };\n\nexport type ListMetricsQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type ListMetricsQuery = { __typename?: 'Query', metrics: Array<{ __typename?: 'Metric', id: string, name: string }> };\n\nexport type ListReasonsQueryVariables = Exact<{\n filter?: InputMaybe<ReasonFilter>;\n}>;\n\n\nexport type ListReasonsQuery = { __typename?: 'Query', reasons: Array<{ __typename?: 'Reason', id: string, leaf: boolean, name: string, statusColor: AndonLightColor }> };\n\nexport type ListShiftsQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type ListShiftsQuery = { __typename?: 'Query', shifts: Array<{ __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }> };\n\nexport type ListStaffingPlansQueryVariables = Exact<{\n filter?: InputMaybe<StaffingPlanFilter>;\n}>;\n\n\nexport type ListStaffingPlansQuery = { __typename?: 'Query', staffingPlans: Array<{ __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, workplace: { __typename?: 'Workplace', id: string, name: string, colorHex?: string | null }, shift: { __typename?: 'Shift', id: string, name: string } }> };\n\nexport type ListStatusChangesQueryVariables = Exact<{\n filter?: InputMaybe<StatusChangeFilter>;\n}>;\n\n\nexport type ListStatusChangesQuery = { __typename?: 'Query', statusChanges: Array<{ __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, finishedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } }> };\n\nexport type ListWorkOrdersQueryVariables = Exact<{\n filter?: InputMaybe<WorkOrderFilter>;\n}>;\n\n\nexport type ListWorkOrdersQuery = { __typename?: 'Query', workOrders: Array<{ __typename?: 'WorkOrder', closedAt?: string | null, createdAt: string, creationMethod: WorkOrderCreationMethodEnum, description?: string | null, dtrUrl?: string | null, dueAt?: string | null, id: string, name: string, note?: string | null, originalOccurrenceAt?: string | null, priority: WorkOrderPriorityEnum, procedureDescription?: string | null, procedureName?: string | null, procedureResponse: any, procedureTemplate: any, startAt?: string | null, status: WorkOrderStatusEnum, timeSpentHours?: number | null, timeSpentMinutes?: number | null, updatedAt: string, assignees: Array<{ __typename?: 'User', id: string, login: string, name: string }>, category?: { __typename?: 'WorkOrderCategory', description?: string | null, id: string, name: string } | null, workplaces: Array<{ __typename?: 'Workplace', id: string, name: string }> }> };\n\nexport type ListWorkplaceAssignmentsQueryVariables = Exact<{\n input: WorkplaceAssignmentsInput;\n}>;\n\n\nexport type ListWorkplaceAssignmentsQuery = { __typename?: 'Query', workplaceAssignments: { __typename?: 'WorkplaceAssignmentsView', workplaces: Array<{ __typename?: 'WorkplaceWithAssignment', recommendedOperators: number, assignedCount: number, missingCount: number, isOvercapacity: boolean, workplace: { __typename?: 'Workplace', id: string, name: string }, assignedOperators: Array<{ __typename?: 'AssignedOperator', presenceStatus: PresenceStatusEnum, user: { __typename?: 'User', id: string, name: string } }>, unplannedOperators: Array<{ __typename?: 'UnplannedOperator', user: { __typename?: 'User', id: string, name: string }, plannedWorkplace?: { __typename?: 'Workplace', id: string, name: string } | null }> }>, unassignedOperators: Array<{ __typename?: 'User', id: string, name: string }>, summary: { __typename?: 'AssignmentSummary', totalAssigned: number, totalCheckedIn: number, totalMissing: number } } };\n\nexport type ListWorkplacesQueryVariables = Exact<{\n filter?: InputMaybe<WorkplaceFilter>;\n}>;\n\n\nexport type ListWorkplacesQuery = { __typename?: 'Query', workplaces: Array<{ __typename?: 'Workplace', deactivated: boolean, departmentId?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> };\n\nexport type WorkplaceEventSubscriptionVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type WorkplaceEventSubscription = { __typename?: 'Subscription', workplaceEvent: { __typename?: 'WorkplaceEventSubscriptionPayload', event: WorkplaceEvent, subject?:\n | { __typename: 'Counter', directoryId?: string | null, hasNote: boolean, id: string, isDisabled: boolean, kind: CounterKindEnum, name: string, value: number, workplaceId: string, counterPosition: number }\n | { __typename: 'Item', count: number, id: string }\n | { __typename: 'MetricValue', active: boolean, id: string, metricId: string, statusColor: AndonLightColor, textValue?: string | null, timer?: number | null, type: MetricTypeEnum, unit?: MetricUnitEnum | null, workplaceId: string }\n | { __typename: 'Notification', channel?: string | null, details?: string | null, emitterId: string, emitterType: string, id: string, message: string, receiverId: string, receiverType: string, status?: string | null }\n | { __typename: 'Order', executedCount: number, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, orderStartedAt?: string | null, orderFinishedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string }>, workplaces: Array<{ __typename?: 'Workplace', deactivated: boolean, departmentId?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }\n | { __typename: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, finishedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null }\n | { __typename: 'Shift', id: string, name: string, shiftFinishedAt: string, shiftStartedAt: string }\n | { __typename: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, finishedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } }\n | { __typename: 'UserPresence', finishedAt?: string | null, id: string, startedAt: string, workplaceId: string, user: { __typename?: 'User', id: string, login: string, name: string } }\n | null } };\n\n\nexport const AssignOperatorToWorkplaceDocument = gql`\n mutation assignOperatorToWorkplace($input: AssignOperatorInput!) {\n assignOperatorToWorkplace(input: $input) {\n assignment {\n createdAt\n id\n shift {\n finishedAt\n id\n name\n startedAt\n }\n user {\n id\n login\n name\n }\n validFrom\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const BulkUpsertStaffingPlansDocument = gql`\n mutation bulkUpsertStaffingPlans($input: BulkStaffingPlanInput!) {\n bulkUpsertStaffingPlans(input: $input) {\n errors {\n field\n messages\n }\n staffingPlans {\n id\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n recommendedOperators\n createdAt\n updatedAt\n author {\n id\n login\n name\n }\n }\n }\n}\n `;\nexport const CreateDashboardDocument = gql`\n mutation createDashboard($filters: String, $gridLayout: String, $id: ID!, $name: String!) {\n createDashboard(\n filters: $filters\n gridLayout: $gridLayout\n id: $id\n name: $name\n ) {\n dashboard {\n filters\n gridLayout\n id\n name\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const CreateOrderDocument = gql`\n mutation createOrder($id: ID!, $number: String!) {\n createOrder(id: $id, number: $number) {\n errors {\n field\n messages\n }\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n }\n}\n `;\nexport const CreateProductDocument = gql`\n mutation createProduct($id: ID!, $name: String, $number: String!) {\n createProduct(id: $id, name: $name, number: $number) {\n errors {\n field\n messages\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n}\n `;\nexport const CreateStaffingPlanDocument = gql`\n mutation createStaffingPlan($input: StaffingPlanInput!) {\n createStaffingPlan(input: $input) {\n errors {\n field\n messages\n }\n staffingPlan {\n id\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n recommendedOperators\n createdAt\n updatedAt\n author {\n id\n login\n name\n }\n }\n }\n}\n `;\nexport const CreateStatusChangeDocument = gql`\n mutation createStatusChange($id: ID!, $note: String, $reasonHasBeenRecommended: Boolean, $reasonId: ID!, $startedAt: String, $userId: ID, $workplaceId: ID!) {\n createStatusChange(\n id: $id\n note: $note\n reasonHasBeenRecommended: $reasonHasBeenRecommended\n reasonId: $reasonId\n startedAt: $startedAt\n userId: $userId\n workplaceId: $workplaceId\n ) {\n errors {\n field\n messages\n }\n statusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const CreateUserPresenceDocument = gql`\n mutation createUserPresence($id: ID!, $userToken: String!, $workplaceId: ID!) {\n createUserPresence(id: $id, userToken: $userToken, workplaceId: $workplaceId) {\n errors {\n field\n messages\n }\n userPresence {\n author {\n id\n login\n name\n }\n finishedAt\n id\n startedAt\n user {\n id\n login\n name\n }\n workplaceId\n }\n }\n}\n `;\nexport const CreateWidgetDocument = gql`\n mutation createWidget($config: String, $id: ID!) {\n createWidget(config: $config, id: $id) {\n errors {\n field\n messages\n }\n widget {\n config\n id\n }\n }\n}\n `;\nexport const PauseOrderExecutionDocument = gql`\n mutation pauseOrderExecution($id: ID!, $statusChangeId: ID!) {\n pauseOrderExecution(id: $id, statusChangeId: $statusChangeId) {\n errors {\n field\n messages\n }\n orderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const RemoveDashboardDocument = gql`\n mutation removeDashboard($id: ID!) {\n removeDashboard(id: $id) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RemoveStaffingPlanDocument = gql`\n mutation removeStaffingPlan($id: ID!) {\n removeStaffingPlan(id: $id) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RemoveUserPresenceDocument = gql`\n mutation removeUserPresence($id: ID!) {\n removeUserPresence(id: $id) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RemoveWidgetDocument = gql`\n mutation removeWidget($id: ID!) {\n removeWidget(id: $id) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RemoveWorkplaceUsersPresencesDocument = gql`\n mutation removeWorkplaceUsersPresences($workplaceId: ID!) {\n removeWorkplaceUsersPresences(workplaceId: $workplaceId) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RequestFeatureAccessDocument = gql`\n mutation requestFeatureAccess($input: RequestFeatureAccessInput!) {\n requestFeatureAccess(input: $input) {\n errors {\n field\n messages\n }\n success\n }\n}\n `;\nexport const SetCounterDocument = gql`\n mutation setCounter($id: ID!, $note: String, $orderExecutionId: ID, $value: Float!) {\n setCounter(\n id: $id\n note: $note\n orderExecutionId: $orderExecutionId\n value: $value\n ) {\n counter {\n directoryId\n hasNote\n id\n isDisabled\n kind\n name\n position\n value\n workplaceId\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const StartOrderExecutionDocument = gql`\n mutation startOrderExecution($id: ID!, $itemCount: Float, $order: OrderInput!, $product: ProductInput, $statusChangeId: ID!, $workplaceId: ID!) {\n startOrderExecution(\n id: $id\n itemCount: $itemCount\n order: $order\n product: $product\n statusChangeId: $statusChangeId\n workplaceId: $workplaceId\n ) {\n errors {\n field\n messages\n }\n orderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const StartTrialDocument = gql`\n mutation startTrial($input: StartTrialInput!) {\n startTrial(input: $input) {\n errors {\n field\n messages\n }\n success\n }\n}\n `;\nexport const StopOrderExecutionDocument = gql`\n mutation stopOrderExecution($id: ID!, $statusChangeId: ID!) {\n stopOrderExecution(id: $id, statusChangeId: $statusChangeId) {\n errors {\n field\n messages\n }\n orderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const UnassignOperatorFromWorkplaceDocument = gql`\n mutation unassignOperatorFromWorkplace($input: UnassignOperatorInput!) {\n unassignOperatorFromWorkplace(input: $input) {\n assignment {\n createdAt\n id\n shift {\n finishedAt\n id\n name\n startedAt\n }\n user {\n id\n login\n name\n }\n validFrom\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const UpdateDashboardDocument = gql`\n mutation updateDashboard($filters: String, $gridLayout: String!, $id: ID!, $name: String) {\n updateDashboard(\n filters: $filters\n gridLayout: $gridLayout\n id: $id\n name: $name\n ) {\n dashboard {\n filters\n gridLayout\n id\n name\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const UpdateNotificationDocument = gql`\n mutation updateNotification($id: ID!, $status: String!) {\n updateNotification(id: $id, status: $status) {\n errors {\n field\n messages\n }\n notification {\n channel\n details\n emitterId\n emitterType\n id\n message\n receiverId\n receiverType\n status\n }\n }\n}\n `;\nexport const UpdateOrderDocument = gql`\n mutation updateOrder($input: UpdateOrderInput!) {\n updateOrder(input: $input) {\n errors {\n field\n messages\n }\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n }\n}\n `;\nexport const UpdateOrderExecutionDocument = gql`\n mutation updateOrderExecution($id: ID!, $standardRateId: ID!) {\n updateOrderExecution(id: $id, standardRateId: $standardRateId) {\n errors {\n field\n messages\n }\n orderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const UpdateStaffingPlanDocument = gql`\n mutation updateStaffingPlan($input: StaffingPlanUpdateInput!) {\n updateStaffingPlan(input: $input) {\n errors {\n field\n messages\n }\n staffingPlan {\n id\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n recommendedOperators\n createdAt\n updatedAt\n author {\n id\n login\n name\n }\n }\n }\n}\n `;\nexport const UpdateStatusChangeDocument = gql`\n mutation updateStatusChange($input: UpdateStatusChangeInput!) {\n updateStatusChange(input: $input) {\n errors {\n field\n messages\n }\n statusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const UpdateWidgetDocument = gql`\n mutation updateWidget($config: String!, $id: ID!) {\n updateWidget(config: $config, id: $id) {\n errors {\n field\n messages\n }\n widget {\n config\n id\n }\n }\n}\n `;\nexport const UpdateWorkOrderDocument = gql`\n mutation updateWorkOrder($id: ID!, $input: UpdateWorkOrderInput!) {\n updateWorkOrder(id: $id, input: $input) {\n errors {\n field\n messages\n }\n workOrder {\n assignees {\n id\n login\n name\n }\n category {\n description\n id\n name\n }\n closedAt\n createdAt\n creationMethod\n description\n dtrUrl\n dueAt\n id\n name\n note\n originalOccurrenceAt\n priority\n procedureDescription\n procedureName\n procedureResponse\n procedureTemplate\n startAt\n status\n timeSpentHours\n timeSpentMinutes\n updatedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n }\n}\n `;\nexport const ActualStaffingCountsDocument = gql`\n query actualStaffingCounts($filter: ActualStaffingCountFilter) {\n actualStaffingCounts(filter: $filter) {\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n actualOperators\n plannedOperators\n hasDeviation\n }\n}\n `;\nexport const ApplicationInfoDocument = gql`\n query applicationInfo {\n applicationInfo {\n apiVersion\n }\n}\n `;\nexport const AvailabilityInsightsDocument = gql`\n query availabilityInsights($input: AvailabilityInsightsInput!) {\n availabilityInsights(input: $input) {\n entries {\n availability\n label\n noData\n }\n }\n}\n `;\nexport const CompanyConfigDocument = gql`\n query companyConfig {\n companyConfig {\n devicesConfigs {\n defaultWorkplaceId\n deviceId\n name\n }\n displayedKpiItems\n reasonsRecommendationsEnabled\n roleConfig {\n historyVisibilityEnabled\n orderCreationAllowed\n }\n statusChangeTransitionPermissionsUpdatedAt\n workplacesConfigs {\n defaultScreen\n menuDisplayItems\n orderConfig {\n alternativeName\n numberPrefix\n numberRegexp\n }\n orderExecutionConfig {\n afterPauseReasonId\n afterStartReasonId\n afterStopReasonId\n featureEnabled\n formOrderFields\n formProductFields\n formQuantityFields\n itemCountUnit\n noPlanCanCreateOrderNote\n noPlanNeedVerificationNote\n orderInternalNoteText\n orderInternalNoteTitle\n productInternalNoteText\n productInternalNoteTitle\n quantityInternalNoteText\n quantityInternalNoteTitle\n stopEnabled\n }\n productConfig {\n alternativeName\n numberPrefix\n numberRegexp\n }\n productionMode\n screenSaverConfig {\n autoSignOut\n displayAfterIdle\n displayAfterOrderCreated\n displayAfterStatusChangeCreated\n enabled\n idleTime\n }\n statusScreenDisplayBlocks\n workplaceId\n }\n }\n}\n `;\nexport const CounterDirectoriesDocument = gql`\n query counterDirectories($filter: CounterDirectoryFilter) {\n counterDirectories(filter: $filter) {\n directoryId\n id\n name\n position\n workplaceId\n }\n}\n `;\nexport const CountersDocument = gql`\n query counters($filter: CounterFilter) {\n counters(filter: $filter) {\n directoryId\n hasNote\n id\n isDisabled\n kind\n name\n position\n value\n workplaceId\n }\n}\n `;\nexport const CurrentUserDocument = gql`\n query currentUser {\n currentUser {\n id\n login\n name\n }\n}\n `;\nexport const DashboardsDocument = gql`\n query dashboards($filter: DashboardFilter) {\n dashboards(filter: $filter) {\n filters\n gridLayout\n id\n name\n }\n}\n `;\nexport const DepartmentsDocument = gql`\n query departments($filter: DepartmentFilter) {\n departments(filter: $filter) {\n id\n name\n }\n}\n `;\nexport const FloorPlansDocument = gql`\n query floorPlans($filter: FloorPlanFilter) {\n floorPlans(filter: $filter) {\n id\n imageUrl\n name\n }\n}\n `;\nexport const MetricValuesDocument = gql`\n query metricValues($metricIds: [ID!], $workplaceIds: [ID!]) {\n metricValues(metricIds: $metricIds, workplaceIds: $workplaceIds) {\n active\n id\n metricId\n statusColor\n textValue\n timer\n type\n unit\n workplaceId\n }\n}\n `;\nexport const MetricsDocument = gql`\n query metrics {\n metrics {\n id\n name\n }\n}\n `;\nexport const NotificationsDocument = gql`\n query notifications($filter: NotificationFilter) {\n notifications(filter: $filter) {\n channel\n details\n emitterId\n emitterType\n id\n message\n receiverId\n receiverType\n status\n }\n}\n `;\nexport const OrdersDocument = gql`\n query orders($filter: OrderFilter) {\n orders(filter: $filter) {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n}\n `;\nexport const OrdersExecutionsDocument = gql`\n query ordersExecutions($filter: OrderExecutionFilter) {\n ordersExecutions(filter: $filter) {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n}\n `;\nexport const ProductionInsightsDocument = gql`\n query productionInsights($input: ProductionInsightsInput!) {\n productionInsights(input: $input) {\n entries {\n count\n label\n }\n }\n}\n `;\nexport const ProductsDocument = gql`\n query products($filter: ProductFilter) {\n products(filter: $filter) {\n assemblyManual\n id\n name\n number\n }\n}\n `;\nexport const ReasonsDocument = gql`\n query reasons($filter: ReasonFilter) {\n reasons(filter: $filter) {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n}\n `;\nexport const ReasonsRecommendationDocument = gql`\n query reasonsRecommendation($workplaceId: String!) {\n reasonsRecommendation(workplaceId: $workplaceId) {\n reasons {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n trainingStatus\n }\n}\n `;\nexport const ShiftsDocument = gql`\n query shifts {\n shifts {\n finishedAt\n id\n name\n startedAt\n }\n}\n `;\nexport const StaffingPlansDocument = gql`\n query staffingPlans($filter: StaffingPlanFilter) {\n staffingPlans(filter: $filter) {\n id\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n recommendedOperators\n createdAt\n updatedAt\n author {\n id\n login\n name\n }\n }\n}\n `;\nexport const StandardRatesDocument = gql`\n query standardRates($orderExecutionId: ID!) {\n standardRates(orderExecutionId: $orderExecutionId) {\n id\n label\n }\n}\n `;\nexport const StatusChangeTransitionPermissionsDocument = gql`\n query statusChangeTransitionPermissions($filter: StatusChangeTransitionPermissionFilter) {\n statusChangeTransitionPermissions(filter: $filter) {\n fromReasonId\n roleId\n toReasonId\n workplaceId\n }\n}\n `;\nexport const StatusChangesDocument = gql`\n query statusChanges($filter: StatusChangeFilter) {\n statusChanges(filter: $filter) {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n}\n `;\nexport const StatusInsightsDocument = gql`\n query statusInsights($input: StatusInsightsInput!) {\n statusInsights(input: $input) {\n entries {\n averageDurationMinutes\n label\n occurrenceCount\n }\n }\n}\n `;\nexport const UsersDocument = gql`\n query users($filter: UserFilter) {\n users(filter: $filter) {\n id\n login\n name\n }\n}\n `;\nexport const UsersPresencesDocument = gql`\n query usersPresences($filter: UserPresenceFilter) {\n usersPresences(filter: $filter) {\n author {\n id\n login\n name\n }\n finishedAt\n id\n startedAt\n user {\n id\n login\n name\n }\n workplaceId\n }\n}\n `;\nexport const WidgetDocument = gql`\n query widget($id: ID!) {\n widget(id: $id) {\n config\n id\n }\n}\n `;\nexport const WidgetsDocument = gql`\n query widgets($filter: WidgetFilter) {\n widgets(filter: $filter) {\n config\n id\n }\n}\n `;\nexport const WorkOrdersDocument = gql`\n query workOrders($filter: WorkOrderFilter) {\n workOrders(filter: $filter) {\n assignees {\n id\n login\n name\n }\n category {\n description\n id\n name\n }\n closedAt\n createdAt\n creationMethod\n description\n dtrUrl\n dueAt\n id\n name\n note\n originalOccurrenceAt\n priority\n procedureDescription\n procedureName\n procedureResponse\n procedureTemplate\n startAt\n status\n timeSpentHours\n timeSpentMinutes\n updatedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n}\n `;\nexport const WorkOrdersInsightsDocument = gql`\n query workOrdersInsights($input: WorkOrdersInsightsInput!) {\n workOrdersInsights(input: $input) {\n categories {\n categoryId\n categoryName\n durations {\n count\n lowerBoundMinutes\n upperBoundMinutes\n }\n totalCount\n }\n }\n}\n `;\nexport const WorkplaceAssignmentsDocument = gql`\n query workplaceAssignments($input: WorkplaceAssignmentsInput!) {\n workplaceAssignments(input: $input) {\n summary {\n totalAssigned\n totalCheckedIn\n totalMissing\n }\n unassignedOperators {\n id\n login\n name\n }\n workplaces {\n assignedCount\n assignedOperators {\n presenceStatus\n user {\n id\n login\n name\n }\n }\n isOvercapacity\n missingCount\n recommendedOperators\n unplannedOperators {\n plannedWorkplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n user {\n id\n login\n name\n }\n }\n workplace {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n }\n}\n `;\nexport const WorkplacePerformanceInsightsDocument = gql`\n query workplacePerformanceInsights($input: WorkplacePerformanceInsightsInput!) {\n workplacePerformanceInsights(input: $input) {\n endDate\n mtbf\n mtbfSeconds\n mttr\n mttrSeconds\n reasons {\n availabilityStatus\n averageDuration\n averageDurationSeconds\n maxDuration\n maxDurationSeconds\n occurrences\n percentage\n reasonColor\n reasonId\n reasonName\n statusChanges {\n firstSegmentStart\n id\n lastSegmentEnd\n note\n originalEnd\n originalStart\n segments\n totalSegmentDuration\n totalSegmentSeconds\n uuid\n }\n totalDuration\n totalSeconds\n }\n startDate\n offScheduleDuration\n offScheduleSeconds\n totalDowntime\n totalDowntimePercentage\n totalDowntimeSeconds\n totalDuration\n totalSeconds\n totalUptime\n totalUptimePercentage\n totalUptimeSeconds\n workplaceId\n workplaceName\n }\n}\n `;\nexport const WorkplacesDocument = gql`\n query workplaces($filter: WorkplaceFilter) {\n workplaces(filter: $filter) {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n}\n `;\nexport const AssignOperatorDocument = gql`\n mutation assignOperator($input: AssignOperatorInput!) {\n assignOperatorToWorkplace(input: $input) {\n errors {\n field\n messages\n }\n assignment {\n id\n user {\n id\n name\n }\n workplace {\n id\n name\n }\n shift {\n id\n name\n }\n validFrom\n }\n }\n}\n `;\nexport const UnassignOperatorDocument = gql`\n mutation unassignOperator($input: UnassignOperatorInput!) {\n unassignOperatorFromWorkplace(input: $input) {\n errors {\n field\n messages\n }\n assignment {\n id\n user {\n id\n name\n }\n validFrom\n }\n }\n}\n `;\nexport const EditWorkOrderDocument = gql`\n mutation editWorkOrder($id: ID!, $input: UpdateWorkOrderInput!) {\n updateWorkOrder(id: $id, input: $input) {\n errors {\n field\n messages\n }\n workOrder {\n id\n status\n }\n }\n}\n `;\nexport const GetAvailabilityInsightsDocument = gql`\n query getAvailabilityInsights($input: AvailabilityInsightsInput!) {\n availabilityInsights(input: $input) {\n entries {\n availability\n label\n noData\n }\n }\n}\n `;\nexport const GetCompanyConfigDocument = gql`\n query getCompanyConfig {\n companyConfig {\n devicesConfigs {\n defaultWorkplaceId\n deviceId\n name\n }\n displayedKpiItems\n reasonsRecommendationsEnabled\n roleConfig {\n historyVisibilityEnabled\n orderCreationAllowed\n }\n statusChangeTransitionPermissionsUpdatedAt\n workplacesConfigs {\n defaultScreen\n menuDisplayItems\n orderConfig {\n alternativeName\n numberPrefix\n numberRegexp\n }\n orderExecutionConfig {\n afterPauseReasonId\n afterStartReasonId\n afterStopReasonId\n featureEnabled\n formOrderFields\n formProductFields\n formQuantityFields\n itemCountUnit\n noPlanCanCreateOrderNote\n noPlanNeedVerificationNote\n orderInternalNoteText\n orderInternalNoteTitle\n productInternalNoteText\n productInternalNoteTitle\n quantityInternalNoteText\n quantityInternalNoteTitle\n stopEnabled\n }\n productConfig {\n alternativeName\n numberPrefix\n numberRegexp\n }\n productionMode\n screenSaverConfig {\n autoSignOut\n displayAfterIdle\n displayAfterOrderCreated\n displayAfterStatusChangeCreated\n enabled\n idleTime\n }\n statusScreenDisplayBlocks\n workplaceId\n }\n }\n}\n `;\nexport const GetProductionInsightsDocument = gql`\n query getProductionInsights($input: ProductionInsightsInput!) {\n productionInsights(input: $input) {\n entries {\n count\n label\n }\n }\n}\n `;\nexport const GetStatusInsightsDocument = gql`\n query getStatusInsights($input: StatusInsightsInput!) {\n statusInsights(input: $input) {\n entries {\n averageDurationMinutes\n label\n occurrenceCount\n }\n }\n}\n `;\nexport const GetWorkOrdersInsightsDocument = gql`\n query getWorkOrdersInsights($input: WorkOrdersInsightsInput!) {\n workOrdersInsights(input: $input) {\n categories {\n categoryId\n categoryName\n durations {\n count\n lowerBoundMinutes\n upperBoundMinutes\n }\n totalCount\n }\n }\n}\n `;\nexport const GetWorkplacePerformanceInsightsDocument = gql`\n query getWorkplacePerformanceInsights($input: WorkplacePerformanceInsightsInput!) {\n workplacePerformanceInsights(input: $input) {\n workplaceId\n workplaceName\n startDate\n endDate\n totalDuration\n totalSeconds\n totalUptime\n totalUptimePercentage\n totalDowntime\n totalDowntimePercentage\n mtbf\n mttr\n reasons {\n reasonId\n reasonName\n reasonColor\n availabilityStatus\n totalDuration\n totalSeconds\n percentage\n occurrences\n averageDuration\n maxDuration\n }\n }\n}\n `;\nexport const ListActualStaffingCountsDocument = gql`\n query listActualStaffingCounts($filter: ActualStaffingCountFilter) {\n actualStaffingCounts(filter: $filter) {\n workplace {\n id\n name\n }\n date\n shift {\n id\n name\n }\n actualOperators\n plannedOperators\n hasDeviation\n }\n}\n `;\nexport const ListFloorPlansDocument = gql`\n query listFloorPlans($filter: FloorPlanFilter) {\n floorPlans(filter: $filter) {\n id\n imageUrl\n name\n }\n}\n `;\nexport const ListMetricValuesDocument = gql`\n query listMetricValues($metricIds: [ID!], $workplaceIds: [ID!]) {\n metricValues(metricIds: $metricIds, workplaceIds: $workplaceIds) {\n active\n id\n metricId\n statusColor\n textValue\n timer\n type\n unit\n workplaceId\n }\n}\n `;\nexport const ListMetricsDocument = gql`\n query listMetrics {\n metrics {\n id\n name\n }\n}\n `;\nexport const ListReasonsDocument = gql`\n query listReasons($filter: ReasonFilter) {\n reasons(filter: $filter) {\n id\n leaf\n name\n statusColor\n }\n}\n `;\nexport const ListShiftsDocument = gql`\n query listShifts {\n shifts {\n finishedAt\n id\n name\n startedAt\n }\n}\n `;\nexport const ListStaffingPlansDocument = gql`\n query listStaffingPlans($filter: StaffingPlanFilter) {\n staffingPlans(filter: $filter) {\n id\n workplace {\n id\n name\n colorHex\n }\n date\n shift {\n id\n name\n }\n recommendedOperators\n }\n}\n `;\nexport const ListStatusChangesDocument = gql`\n query listStatusChanges($filter: StatusChangeFilter) {\n statusChanges(filter: $filter) {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n id\n note\n number\n plannedCount\n position\n startedAt\n finishedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n}\n `;\nexport const ListWorkOrdersDocument = gql`\n query listWorkOrders($filter: WorkOrderFilter) {\n workOrders(filter: $filter) {\n assignees {\n id\n login\n name\n }\n category {\n description\n id\n name\n }\n closedAt\n createdAt\n creationMethod\n description\n dtrUrl\n dueAt\n id\n name\n note\n originalOccurrenceAt\n priority\n procedureDescription\n procedureName\n procedureResponse\n procedureTemplate\n startAt\n status\n timeSpentHours\n timeSpentMinutes\n updatedAt\n workplaces {\n id\n name\n }\n }\n}\n `;\nexport const ListWorkplaceAssignmentsDocument = gql`\n query listWorkplaceAssignments($input: WorkplaceAssignmentsInput!) {\n workplaceAssignments(input: $input) {\n workplaces {\n workplace {\n id\n name\n }\n assignedOperators {\n user {\n id\n name\n }\n presenceStatus\n }\n unplannedOperators {\n user {\n id\n name\n }\n plannedWorkplace {\n id\n name\n }\n }\n recommendedOperators\n assignedCount\n missingCount\n isOvercapacity\n }\n unassignedOperators {\n id\n name\n }\n summary {\n totalAssigned\n totalCheckedIn\n totalMissing\n }\n }\n}\n `;\nexport const ListWorkplacesDocument = gql`\n query listWorkplaces($filter: WorkplaceFilter) {\n workplaces(filter: $filter) {\n deactivated\n departmentId\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n}\n `;\nexport const WorkplaceEventDocument = gql`\n subscription workplaceEvent($id: ID!) {\n workplaceEvent(id: $id) {\n event\n subject {\n __typename\n ... on Counter {\n directoryId\n hasNote\n id\n isDisabled\n kind\n name\n counterPosition: position\n value\n workplaceId\n }\n ... on Item {\n count\n id\n }\n ... on MetricValue {\n active\n id\n metricId\n statusColor\n textValue\n timer\n type\n unit\n workplaceId\n }\n ... on Notification {\n channel\n details\n emitterId\n emitterType\n id\n message\n receiverId\n receiverType\n status\n }\n ... on Shift {\n shiftFinishedAt: finishedAt\n id\n name\n shiftStartedAt: startedAt\n }\n ... on Order {\n executedCount\n id\n items {\n count\n id\n }\n note\n number\n plannedCount\n position\n orderStartedAt: startedAt\n orderFinishedAt: finishedAt\n workplaces {\n deactivated\n departmentId\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n ... on OrderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n id\n note\n number\n plannedCount\n position\n startedAt\n finishedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n standardRateMismatched\n startedAt\n workplaceId\n }\n ... on StatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n id\n note\n number\n plannedCount\n position\n startedAt\n finishedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n ... on UserPresence {\n finishedAt\n id\n startedAt\n user {\n id\n login\n name\n }\n workplaceId\n }\n }\n }\n}\n `;\n\nexport type SdkFunctionWrapper = <T>(action: (requestHeaders?:Record<string, string>) => Promise<T>, operationName: string, operationType?: string, variables?: any) => Promise<T>;\n\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) => action();\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n assignOperatorToWorkplace(variables: AssignOperatorToWorkplaceMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<AssignOperatorToWorkplaceMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<AssignOperatorToWorkplaceMutation>({ document: AssignOperatorToWorkplaceDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'assignOperatorToWorkplace', 'mutation', variables);\n },\n bulkUpsertStaffingPlans(variables: BulkUpsertStaffingPlansMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<BulkUpsertStaffingPlansMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<BulkUpsertStaffingPlansMutation>({ document: BulkUpsertStaffingPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'bulkUpsertStaffingPlans', 'mutation', variables);\n },\n createDashboard(variables: CreateDashboardMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateDashboardMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateDashboardMutation>({ document: CreateDashboardDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createDashboard', 'mutation', variables);\n },\n createOrder(variables: CreateOrderMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateOrderMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateOrderMutation>({ document: CreateOrderDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createOrder', 'mutation', variables);\n },\n createProduct(variables: CreateProductMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateProductMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateProductMutation>({ document: CreateProductDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createProduct', 'mutation', variables);\n },\n createStaffingPlan(variables: CreateStaffingPlanMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateStaffingPlanMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateStaffingPlanMutation>({ document: CreateStaffingPlanDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createStaffingPlan', 'mutation', variables);\n },\n createStatusChange(variables: CreateStatusChangeMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateStatusChangeMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateStatusChangeMutation>({ document: CreateStatusChangeDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createStatusChange', 'mutation', variables);\n },\n createUserPresence(variables: CreateUserPresenceMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateUserPresenceMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateUserPresenceMutation>({ document: CreateUserPresenceDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createUserPresence', 'mutation', variables);\n },\n createWidget(variables: CreateWidgetMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateWidgetMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateWidgetMutation>({ document: CreateWidgetDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createWidget', 'mutation', variables);\n },\n pauseOrderExecution(variables: PauseOrderExecutionMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<PauseOrderExecutionMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<PauseOrderExecutionMutation>({ document: PauseOrderExecutionDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'pauseOrderExecution', 'mutation', variables);\n },\n removeDashboard(variables: RemoveDashboardMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveDashboardMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveDashboardMutation>({ document: RemoveDashboardDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeDashboard', 'mutation', variables);\n },\n removeStaffingPlan(variables: RemoveStaffingPlanMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveStaffingPlanMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveStaffingPlanMutation>({ document: RemoveStaffingPlanDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeStaffingPlan', 'mutation', variables);\n },\n removeUserPresence(variables: RemoveUserPresenceMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveUserPresenceMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveUserPresenceMutation>({ document: RemoveUserPresenceDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeUserPresence', 'mutation', variables);\n },\n removeWidget(variables: RemoveWidgetMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveWidgetMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveWidgetMutation>({ document: RemoveWidgetDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeWidget', 'mutation', variables);\n },\n removeWorkplaceUsersPresences(variables: RemoveWorkplaceUsersPresencesMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveWorkplaceUsersPresencesMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveWorkplaceUsersPresencesMutation>({ document: RemoveWorkplaceUsersPresencesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeWorkplaceUsersPresences', 'mutation', variables);\n },\n requestFeatureAccess(variables: RequestFeatureAccessMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RequestFeatureAccessMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RequestFeatureAccessMutation>({ document: RequestFeatureAccessDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'requestFeatureAccess', 'mutation', variables);\n },\n setCounter(variables: SetCounterMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<SetCounterMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<SetCounterMutation>({ document: SetCounterDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'setCounter', 'mutation', variables);\n },\n startOrderExecution(variables: StartOrderExecutionMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StartOrderExecutionMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<StartOrderExecutionMutation>({ document: StartOrderExecutionDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'startOrderExecution', 'mutation', variables);\n },\n startTrial(variables: StartTrialMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StartTrialMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<StartTrialMutation>({ document: StartTrialDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'startTrial', 'mutation', variables);\n },\n stopOrderExecution(variables: StopOrderExecutionMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StopOrderExecutionMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<StopOrderExecutionMutation>({ document: StopOrderExecutionDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'stopOrderExecution', 'mutation', variables);\n },\n unassignOperatorFromWorkplace(variables: UnassignOperatorFromWorkplaceMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UnassignOperatorFromWorkplaceMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UnassignOperatorFromWorkplaceMutation>({ document: UnassignOperatorFromWorkplaceDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'unassignOperatorFromWorkplace', 'mutation', variables);\n },\n updateDashboard(variables: UpdateDashboardMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateDashboardMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateDashboardMutation>({ document: UpdateDashboardDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateDashboard', 'mutation', variables);\n },\n updateNotification(variables: UpdateNotificationMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateNotificationMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateNotificationMutation>({ document: UpdateNotificationDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateNotification', 'mutation', variables);\n },\n updateOrder(variables: UpdateOrderMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateOrderMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateOrderMutation>({ document: UpdateOrderDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateOrder', 'mutation', variables);\n },\n updateOrderExecution(variables: UpdateOrderExecutionMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateOrderExecutionMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateOrderExecutionMutation>({ document: UpdateOrderExecutionDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateOrderExecution', 'mutation', variables);\n },\n updateStaffingPlan(variables: UpdateStaffingPlanMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateStaffingPlanMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateStaffingPlanMutation>({ document: UpdateStaffingPlanDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateStaffingPlan', 'mutation', variables);\n },\n updateStatusChange(variables: UpdateStatusChangeMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateStatusChangeMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateStatusChangeMutation>({ document: UpdateStatusChangeDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateStatusChange', 'mutation', variables);\n },\n updateWidget(variables: UpdateWidgetMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateWidgetMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateWidgetMutation>({ document: UpdateWidgetDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateWidget', 'mutation', variables);\n },\n updateWorkOrder(variables: UpdateWorkOrderMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateWorkOrderMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateWorkOrderMutation>({ document: UpdateWorkOrderDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateWorkOrder', 'mutation', variables);\n },\n actualStaffingCounts(variables?: ActualStaffingCountsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ActualStaffingCountsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ActualStaffingCountsQuery>({ document: ActualStaffingCountsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'actualStaffingCounts', 'query', variables);\n },\n applicationInfo(variables?: ApplicationInfoQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ApplicationInfoQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ApplicationInfoQuery>({ document: ApplicationInfoDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'applicationInfo', 'query', variables);\n },\n availabilityInsights(variables: AvailabilityInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<AvailabilityInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<AvailabilityInsightsQuery>({ document: AvailabilityInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'availabilityInsights', 'query', variables);\n },\n companyConfig(variables?: CompanyConfigQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CompanyConfigQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<CompanyConfigQuery>({ document: CompanyConfigDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'companyConfig', 'query', variables);\n },\n counterDirectories(variables?: CounterDirectoriesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CounterDirectoriesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<CounterDirectoriesQuery>({ document: CounterDirectoriesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'counterDirectories', 'query', variables);\n },\n counters(variables?: CountersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CountersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<CountersQuery>({ document: CountersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'counters', 'query', variables);\n },\n currentUser(variables?: CurrentUserQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CurrentUserQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<CurrentUserQuery>({ document: CurrentUserDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'currentUser', 'query', variables);\n },\n dashboards(variables?: DashboardsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<DashboardsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<DashboardsQuery>({ document: DashboardsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'dashboards', 'query', variables);\n },\n departments(variables?: DepartmentsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<DepartmentsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<DepartmentsQuery>({ document: DepartmentsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'departments', 'query', variables);\n },\n floorPlans(variables?: FloorPlansQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<FloorPlansQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<FloorPlansQuery>({ document: FloorPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'floorPlans', 'query', variables);\n },\n metricValues(variables?: MetricValuesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<MetricValuesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<MetricValuesQuery>({ document: MetricValuesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'metricValues', 'query', variables);\n },\n metrics(variables?: MetricsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<MetricsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<MetricsQuery>({ document: MetricsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'metrics', 'query', variables);\n },\n notifications(variables?: NotificationsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<NotificationsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<NotificationsQuery>({ document: NotificationsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'notifications', 'query', variables);\n },\n orders(variables?: OrdersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<OrdersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<OrdersQuery>({ document: OrdersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'orders', 'query', variables);\n },\n ordersExecutions(variables?: OrdersExecutionsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<OrdersExecutionsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<OrdersExecutionsQuery>({ document: OrdersExecutionsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'ordersExecutions', 'query', variables);\n },\n productionInsights(variables: ProductionInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ProductionInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ProductionInsightsQuery>({ document: ProductionInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'productionInsights', 'query', variables);\n },\n products(variables?: ProductsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ProductsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ProductsQuery>({ document: ProductsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'products', 'query', variables);\n },\n reasons(variables?: ReasonsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ReasonsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ReasonsQuery>({ document: ReasonsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'reasons', 'query', variables);\n },\n reasonsRecommendation(variables: ReasonsRecommendationQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ReasonsRecommendationQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ReasonsRecommendationQuery>({ document: ReasonsRecommendationDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'reasonsRecommendation', 'query', variables);\n },\n shifts(variables?: ShiftsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ShiftsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ShiftsQuery>({ document: ShiftsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'shifts', 'query', variables);\n },\n staffingPlans(variables?: StaffingPlansQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StaffingPlansQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StaffingPlansQuery>({ document: StaffingPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'staffingPlans', 'query', variables);\n },\n standardRates(variables: StandardRatesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StandardRatesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StandardRatesQuery>({ document: StandardRatesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'standardRates', 'query', variables);\n },\n statusChangeTransitionPermissions(variables?: StatusChangeTransitionPermissionsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StatusChangeTransitionPermissionsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StatusChangeTransitionPermissionsQuery>({ document: StatusChangeTransitionPermissionsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'statusChangeTransitionPermissions', 'query', variables);\n },\n statusChanges(variables?: StatusChangesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StatusChangesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StatusChangesQuery>({ document: StatusChangesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'statusChanges', 'query', variables);\n },\n statusInsights(variables: StatusInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StatusInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StatusInsightsQuery>({ document: StatusInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'statusInsights', 'query', variables);\n },\n users(variables?: UsersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UsersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<UsersQuery>({ document: UsersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'users', 'query', variables);\n },\n usersPresences(variables?: UsersPresencesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UsersPresencesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<UsersPresencesQuery>({ document: UsersPresencesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'usersPresences', 'query', variables);\n },\n widget(variables: WidgetQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WidgetQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WidgetQuery>({ document: WidgetDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'widget', 'query', variables);\n },\n widgets(variables?: WidgetsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WidgetsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WidgetsQuery>({ document: WidgetsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'widgets', 'query', variables);\n },\n workOrders(variables?: WorkOrdersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkOrdersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkOrdersQuery>({ document: WorkOrdersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workOrders', 'query', variables);\n },\n workOrdersInsights(variables: WorkOrdersInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkOrdersInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkOrdersInsightsQuery>({ document: WorkOrdersInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workOrdersInsights', 'query', variables);\n },\n workplaceAssignments(variables: WorkplaceAssignmentsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkplaceAssignmentsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkplaceAssignmentsQuery>({ document: WorkplaceAssignmentsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workplaceAssignments', 'query', variables);\n },\n workplacePerformanceInsights(variables: WorkplacePerformanceInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkplacePerformanceInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkplacePerformanceInsightsQuery>({ document: WorkplacePerformanceInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workplacePerformanceInsights', 'query', variables);\n },\n workplaces(variables?: WorkplacesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkplacesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkplacesQuery>({ document: WorkplacesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workplaces', 'query', variables);\n },\n assignOperator(variables: AssignOperatorMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<AssignOperatorMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<AssignOperatorMutation>({ document: AssignOperatorDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'assignOperator', 'mutation', variables);\n },\n unassignOperator(variables: UnassignOperatorMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UnassignOperatorMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UnassignOperatorMutation>({ document: UnassignOperatorDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'unassignOperator', 'mutation', variables);\n },\n editWorkOrder(variables: EditWorkOrderMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<EditWorkOrderMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<EditWorkOrderMutation>({ document: EditWorkOrderDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'editWorkOrder', 'mutation', variables);\n },\n getAvailabilityInsights(variables: GetAvailabilityInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetAvailabilityInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetAvailabilityInsightsQuery>({ document: GetAvailabilityInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getAvailabilityInsights', 'query', variables);\n },\n getCompanyConfig(variables?: GetCompanyConfigQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetCompanyConfigQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetCompanyConfigQuery>({ document: GetCompanyConfigDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getCompanyConfig', 'query', variables);\n },\n getProductionInsights(variables: GetProductionInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetProductionInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetProductionInsightsQuery>({ document: GetProductionInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getProductionInsights', 'query', variables);\n },\n getStatusInsights(variables: GetStatusInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetStatusInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetStatusInsightsQuery>({ document: GetStatusInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getStatusInsights', 'query', variables);\n },\n getWorkOrdersInsights(variables: GetWorkOrdersInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetWorkOrdersInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetWorkOrdersInsightsQuery>({ document: GetWorkOrdersInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getWorkOrdersInsights', 'query', variables);\n },\n getWorkplacePerformanceInsights(variables: GetWorkplacePerformanceInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetWorkplacePerformanceInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetWorkplacePerformanceInsightsQuery>({ document: GetWorkplacePerformanceInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getWorkplacePerformanceInsights', 'query', variables);\n },\n listActualStaffingCounts(variables?: ListActualStaffingCountsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListActualStaffingCountsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListActualStaffingCountsQuery>({ document: ListActualStaffingCountsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listActualStaffingCounts', 'query', variables);\n },\n listFloorPlans(variables?: ListFloorPlansQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListFloorPlansQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListFloorPlansQuery>({ document: ListFloorPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listFloorPlans', 'query', variables);\n },\n listMetricValues(variables?: ListMetricValuesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListMetricValuesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListMetricValuesQuery>({ document: ListMetricValuesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listMetricValues', 'query', variables);\n },\n listMetrics(variables?: ListMetricsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListMetricsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListMetricsQuery>({ document: ListMetricsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listMetrics', 'query', variables);\n },\n listReasons(variables?: ListReasonsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListReasonsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListReasonsQuery>({ document: ListReasonsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listReasons', 'query', variables);\n },\n listShifts(variables?: ListShiftsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListShiftsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListShiftsQuery>({ document: ListShiftsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listShifts', 'query', variables);\n },\n listStaffingPlans(variables?: ListStaffingPlansQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListStaffingPlansQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListStaffingPlansQuery>({ document: ListStaffingPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listStaffingPlans', 'query', variables);\n },\n listStatusChanges(variables?: ListStatusChangesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListStatusChangesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListStatusChangesQuery>({ document: ListStatusChangesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listStatusChanges', 'query', variables);\n },\n listWorkOrders(variables?: ListWorkOrdersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListWorkOrdersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListWorkOrdersQuery>({ document: ListWorkOrdersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listWorkOrders', 'query', variables);\n },\n listWorkplaceAssignments(variables: ListWorkplaceAssignmentsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListWorkplaceAssignmentsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListWorkplaceAssignmentsQuery>({ document: ListWorkplaceAssignmentsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listWorkplaceAssignments', 'query', variables);\n },\n listWorkplaces(variables?: ListWorkplacesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListWorkplacesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListWorkplacesQuery>({ document: ListWorkplacesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listWorkplaces', 'query', variables);\n },\n workplaceEvent(variables: WorkplaceEventSubscriptionVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkplaceEventSubscription> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkplaceEventSubscription>({ document: WorkplaceEventDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workplaceEvent', 'subscription', variables);\n }\n };\n}\nexport type Sdk = ReturnType<typeof getSdk>;","import dayjs from 'dayjs';\n\nimport type { FilterValues } from '../components/DashboardFilters/types';\nimport { DayType } from '../graphql-sdk';\n\nexport const resolveInitialValues = (values?: Partial<FilterValues>): FilterValues | undefined => {\n if (!values) return undefined;\n\n const today = dayjs().format('YYYY-MM-DD');\n\n return {\n dayType: values.dayType ?? DayType.Production,\n dateRange: values.dateRange ?? { from: `${today}T00:00:00`, to: `${today}T23:59:59` },\n shiftIds: values.shiftIds ?? [],\n selectedPeriodId: values.selectedPeriodId,\n };\n};\n","","","import en from './en/translation.json';\nimport pl from './pl/translation.json';\n\nconst resources = {\n en: {\n translation: en,\n },\n pl: {\n translation: pl,\n },\n};\n\nexport default resources;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n dialog: {\n '& .MuiDialog-paper': {\n borderRadius: '6px',\n },\n '& .MuiDialogContent-root': {\n padding: 0,\n },\n },\n};\n\nexport default styles;\n","import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Button, Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material';\nimport { AccessBlocker, AccessButton, AccessState, CooldownInfo, FeatureRequestPayload } from 'andoncloud-sdk';\n\nimport styles from './styles';\n\nconst FEATURE_KEY = 'feature.dashboard_extended_date_ranges';\n\nexport type AccessDeniedModalProps = {\n open: boolean;\n onClose: () => void;\n accessState: AccessState;\n buttons: AccessButton[];\n daysSinceExpiry: number | null;\n cooldownInfo: CooldownInfo;\n workplaceId?: string;\n onFeatureRequest?: (payload: FeatureRequestPayload) => Promise<boolean>;\n};\n\nconst AccessDeniedModal: React.FC<AccessDeniedModalProps> = ({\n open,\n onClose,\n accessState,\n buttons,\n daysSinceExpiry,\n cooldownInfo,\n workplaceId,\n onFeatureRequest,\n}) => {\n const handleTrialRequest = useCallback(() => Promise.resolve(false), []);\n\n const handleFeatureRequest = useCallback(\n async (payload: FeatureRequestPayload) => {\n const success = onFeatureRequest ? await onFeatureRequest(payload) : false;\n if (success) {\n onClose();\n }\n return success;\n },\n [onFeatureRequest, onClose],\n );\n\n const { t } = useTranslation();\n\n return (\n <Dialog open={open} onClose={onClose} sx={styles.dialog} data-testid=\"dashboard-filters.access-denied-dialog\">\n <DialogTitle>{t('dashboardFilters.accessDenied.title')}</DialogTitle>\n <DialogContent>\n <AccessBlocker\n accessState={accessState}\n buttons={buttons}\n daysSinceExpiry={daysSinceExpiry ?? undefined}\n featureKey={FEATURE_KEY}\n workplaceId={workplaceId}\n cooldownInfo={cooldownInfo}\n onTrialRequest={handleTrialRequest}\n onFeatureRequest={handleFeatureRequest}\n />\n <DialogActions>\n <Button onClick={onClose}>{t('dashboardFilters.accessDenied.close')}</Button>\n </DialogActions>\n </DialogContent>\n </Dialog>\n );\n};\n\nexport default AccessDeniedModal;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n alignItems: 'center',\n gap: (theme) => theme.spacing(1),\n },\n label: {\n fontSize: '0.875rem',\n whiteSpace: 'nowrap',\n color: (theme) => theme.palette.common.white,\n },\n toggleGroup: {\n '& .MuiToggleButton-root': {\n padding: (theme) => theme.spacing(0.5, 1.5),\n fontSize: '0.875rem',\n opacity: 0.7,\n color: (theme) => theme.palette.text.primary,\n textTransform: 'none',\n borderRadius: '6px',\n '&.Mui-selected': {\n opacity: 1,\n color: (theme) => theme.palette.common.white,\n backgroundColor: (theme) => theme.palette.primary.main,\n '&:hover': {\n backgroundColor: (theme) => theme.palette.primary.dark,\n },\n },\n },\n },\n};\n\nexport default styles;\n","import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Box, ToggleButton, ToggleButtonGroup, Typography } from '@mui/material';\n\nimport { DayType } from '../../../graphql-sdk';\n\nimport styles from './styles';\n\nexport type DayTypeSelectorProps = {\n value: DayType;\n onChange: (value: DayType) => void;\n};\n\nconst DayTypeSelector: React.FC<DayTypeSelectorProps> = ({ value, onChange }) => {\n const { t } = useTranslation();\n\n const handleChange = useCallback(\n (_event: React.MouseEvent<HTMLElement>, newValue: DayType | null) => {\n if (newValue !== null) {\n onChange(newValue);\n }\n },\n [onChange],\n );\n\n return (\n <Box sx={styles.container}>\n <Typography sx={styles.label}>{t('dashboardFilters.dayType.label')}</Typography>\n <ToggleButtonGroup\n value={value}\n exclusive\n onChange={handleChange}\n size=\"small\"\n sx={styles.toggleGroup}\n data-testid=\"dashboard-filters.day-type-selector\"\n >\n <ToggleButton value={DayType.Calendar} data-testid=\"dashboard-filters.day-type-calendar\">\n {t('dashboardFilters.dayType.calendar')}\n </ToggleButton>\n <ToggleButton value={DayType.Production} data-testid=\"dashboard-filters.day-type-production\">\n {t('dashboardFilters.dayType.production')}\n </ToggleButton>\n </ToggleButtonGroup>\n </Box>\n );\n};\n\nexport default DayTypeSelector;\n","import dayjs, { Dayjs } from 'dayjs';\n\nimport { Shift } from '../graphql-sdk';\n\nexport interface NormalizedShift {\n id: string;\n name: string;\n startedAt: Dayjs;\n finishedAt: Dayjs;\n}\n\nconst setDate = (date: Dayjs, shiftDate: Dayjs): Dayjs => {\n return shiftDate.year(date.year()).month(date.month()).date(date.date());\n};\n\nexport const normalizeShifts = (shifts: Shift[], date: Dayjs) => {\n const normalizedShifts: NormalizedShift[] = [];\n\n shifts.forEach((shift) => {\n let startedAt = dayjs(shift.startedAt);\n let finishedAt = dayjs(shift.finishedAt);\n\n startedAt = setDate(date, startedAt);\n finishedAt = setDate(date, finishedAt);\n\n if (startedAt.isAfter(finishedAt)) {\n const prevDayStartedAt = startedAt.subtract(1, 'day');\n const nextDayFinishedAt = finishedAt.add(1, 'day');\n\n normalizedShifts.push({ id: shift.id, name: shift.name, startedAt: prevDayStartedAt, finishedAt });\n normalizedShifts.push({ id: shift.id, name: shift.name, startedAt, finishedAt: nextDayFinishedAt });\n } else {\n normalizedShifts.push({ id: shift.id, name: shift.name, startedAt, finishedAt });\n }\n });\n return normalizedShifts;\n};\n\nexport const getCurrentShift = (date: Dayjs, shifts: NormalizedShift[]) => {\n return (\n shifts.find((shift) => {\n return !date.isBefore(shift.startedAt) && date.isBefore(shift.finishedAt);\n }) || null\n );\n};\n\nexport const getRecentShift = (date: Dayjs, shifts: NormalizedShift[]) => {\n if (shifts.length) {\n return shifts.reduce((previous, current) => {\n return Math.abs(date.diff(current.finishedAt)) < Math.abs(date.diff(previous.finishedAt)) ? current : previous;\n });\n }\n return null;\n};\n","import dayjs, { Dayjs } from 'dayjs';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport quarterOfYear from 'dayjs/plugin/quarterOfYear';\n\nimport type { CalculateContext, DateRange, PeriodDefinition, PeriodId } from '../components/DashboardFilters/types';\nimport { DayType, Shift } from '../graphql-sdk';\n\nimport { getCurrentShift, getRecentShift, NormalizedShift, normalizeShifts } from './shifts';\n\ndayjs.extend(isoWeek);\ndayjs.extend(quarterOfYear);\n\ntype TimeBoundaries = {\n startTime: string; // HH:mm:ss\n endTime: string; // HH:mm:ss\n crossesMidnight: boolean;\n};\n\nconst parseShiftTime = (timeStr: string): string => {\n // Shift time format: \"2000-01-01 06:00:00 +0100\" or similar\n // Extract just the time part HH:mm:ss\n const match = timeStr.match(/(\\d{2}:\\d{2}:\\d{2})/);\n return match ? match[1] : '00:00:00';\n};\n\nconst timeToMinutes = (time: string): number => {\n const [hours, minutes] = time.split(':').map(Number);\n return hours * 60 + minutes;\n};\n\nconst getTimeBoundaries = (shifts: Shift[], selectedShiftIds: string[]): TimeBoundaries => {\n const relevantShifts = selectedShiftIds.length === 0 ? shifts : shifts.filter((s) => selectedShiftIds.includes(s.id));\n\n if (relevantShifts.length === 0) {\n return { startTime: '00:00:00', endTime: '23:59:59', crossesMidnight: false };\n }\n\n const shiftTimes = relevantShifts.map((s) => ({\n start: parseShiftTime(s.startedAt),\n end: parseShiftTime(s.finishedAt),\n }));\n\n // Sort by start time\n shiftTimes.sort((a, b) => timeToMinutes(a.start) - timeToMinutes(b.start));\n\n const startTime = shiftTimes[0].start;\n const endTime = shiftTimes[shiftTimes.length - 1].end;\n\n // Check if crosses midnight:\n // - end time < start time (e.g., 06:00 < 22:00 for night shift only)\n // - end time <= start time when any shift crosses midnight (e.g., 06:00 <= 06:00 for 24h operation)\n const anyShiftCrossesMidnight = shiftTimes.some((s) => timeToMinutes(s.end) < timeToMinutes(s.start));\n const crossesMidnight = timeToMinutes(endTime) <= timeToMinutes(startTime) && anyShiftCrossesMidnight;\n\n return { startTime, endTime, crossesMidnight };\n};\n\nconst formatDateTime = (date: Dayjs, time: string): string => {\n const [hours, minutes, seconds] = time.split(':').map(Number);\n return date\n .hour(hours)\n .minute(minutes)\n .second(seconds || 0)\n .format('YYYY-MM-DDTHH:mm:ss');\n};\n\nconst createDateRange = (startDate: Dayjs, endDate: Dayjs, dayType: DayType, boundaries: TimeBoundaries): DateRange => {\n if (dayType === DayType.Calendar) {\n return {\n from: formatDateTime(startDate, '00:00:00'),\n to: formatDateTime(endDate, '23:59:59'),\n };\n }\n\n // PRODUCTION mode\n const from = formatDateTime(startDate, boundaries.startTime);\n let to: string;\n\n if (boundaries.crossesMidnight) {\n // End time is on the next day\n to = formatDateTime(endDate.add(1, 'day'), boundaries.endTime);\n } else {\n to = formatDateTime(endDate, boundaries.endTime);\n }\n\n return { from, to };\n};\n\nconst createPeriodCalculator =\n (getDateRange: (now: Dayjs) => { start: Dayjs; end: Dayjs }) =>\n (ctx: CalculateContext): DateRange => {\n const now = dayjs();\n const { start, end } = getDateRange(now);\n const boundaries = getTimeBoundaries(ctx.shifts, ctx.selectedShiftIds);\n return createDateRange(start, end, ctx.dayType, boundaries);\n };\n\nconst findTargetShift = (shifts: Shift[], mode: 'current' | 'last'): NormalizedShift | null => {\n const now = dayjs();\n if (!shifts?.length) return null;\n\n const normalized = normalizeShifts(shifts, now);\n const current = getCurrentShift(now, normalized) ?? getRecentShift(now, normalized);\n if (!current) return null;\n\n if (mode === 'current') return current;\n\n // mode === 'last': find the shift ending just before current.startedAt\n const previous = normalized\n .filter((s) => s.finishedAt.isBefore(current.startedAt) || s.finishedAt.isSame(current.startedAt))\n .sort((a, b) => b.finishedAt.diff(a.finishedAt))[0];\n\n return previous ?? current; // fallback if only one shift\n};\n\nconst calculateShiftPeriod = (ctx: CalculateContext, mode: 'current' | 'last'): DateRange => {\n const target = findTargetShift(ctx.shifts, mode);\n\n if (!target) {\n const today = dayjs().format('YYYY-MM-DD');\n return { from: `${today}T00:00:00`, to: `${today}T23:59:59` };\n }\n\n return {\n from: target.startedAt.format('YYYY-MM-DDTHH:mm:ss'),\n to: target.finishedAt.format('YYYY-MM-DDTHH:mm:ss'),\n };\n};\n\nexport const resolveShiftIdForPeriod = (periodId: PeriodId, shifts: Shift[]): string | null => {\n if (periodId !== 'current_shift' && periodId !== 'last_shift') return null;\n const mode = periodId === 'current_shift' ? 'current' : 'last';\n const target = findTargetShift(shifts, mode);\n return target?.id ?? null;\n};\n\nexport const periods: PeriodDefinition[] = [\n // Shift-based periods\n {\n id: 'current_shift',\n labelKey: 'dashboardFilters.periods.currentShift',\n needAccess: false,\n category: 'shift_based',\n calculate: (ctx) => calculateShiftPeriod(ctx, 'current'),\n },\n {\n id: 'last_shift',\n labelKey: 'dashboardFilters.periods.lastShift',\n needAccess: false,\n category: 'shift_based',\n calculate: (ctx) => calculateShiftPeriod(ctx, 'last'),\n },\n\n // Relative days\n {\n id: 'today',\n labelKey: 'dashboardFilters.periods.today',\n needAccess: false,\n category: 'relative_days',\n calculate: createPeriodCalculator((now) => ({ start: now, end: now })),\n },\n {\n id: 'yesterday',\n labelKey: 'dashboardFilters.periods.yesterday',\n needAccess: false,\n category: 'relative_days',\n calculate: createPeriodCalculator((now) => {\n const yesterday = now.subtract(1, 'day');\n return { start: yesterday, end: yesterday };\n }),\n },\n\n // Rolling periods (free)\n {\n id: 'last_7_days',\n labelKey: 'dashboardFilters.periods.last7Days',\n needAccess: false,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(6, 'day'), end: now })),\n },\n {\n id: 'last_14_days',\n labelKey: 'dashboardFilters.periods.last14Days',\n needAccess: false,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(13, 'day'), end: now })),\n },\n {\n id: 'last_30_days',\n labelKey: 'dashboardFilters.periods.last30Days',\n needAccess: false,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(29, 'day'), end: now })),\n },\n\n // Rolling periods (premium)\n {\n id: 'last_90_days',\n labelKey: 'dashboardFilters.periods.last90Days',\n needAccess: true,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(89, 'day'), end: now })),\n },\n {\n id: 'last_180_days',\n labelKey: 'dashboardFilters.periods.last180Days',\n needAccess: true,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(179, 'day'), end: now })),\n },\n {\n id: 'last_365_days',\n labelKey: 'dashboardFilters.periods.last365Days',\n needAccess: true,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(364, 'day'), end: now })),\n },\n\n // Current periods\n {\n id: 'current_week',\n labelKey: 'dashboardFilters.periods.currentWeek',\n needAccess: false,\n category: 'current',\n calculate: createPeriodCalculator((now) => ({ start: now.startOf('isoWeek'), end: now })),\n },\n {\n id: 'current_month',\n labelKey: 'dashboardFilters.periods.currentMonth',\n needAccess: false,\n category: 'current',\n calculate: createPeriodCalculator((now) => ({ start: now.startOf('month'), end: now })),\n },\n {\n id: 'current_quarter',\n labelKey: 'dashboardFilters.periods.currentQuarter',\n needAccess: true,\n category: 'current',\n calculate: createPeriodCalculator((now) => ({ start: now.startOf('quarter'), end: now })),\n },\n {\n id: 'current_year',\n labelKey: 'dashboardFilters.periods.currentYear',\n needAccess: true,\n category: 'current',\n calculate: createPeriodCalculator((now) => ({ start: now.startOf('year'), end: now })),\n },\n\n // Previous periods\n {\n id: 'previous_week',\n labelKey: 'dashboardFilters.periods.previousWeek',\n needAccess: false,\n category: 'previous',\n calculate: createPeriodCalculator((now) => {\n const prevWeek = now.subtract(1, 'week');\n return { start: prevWeek.startOf('isoWeek'), end: prevWeek.endOf('isoWeek') };\n }),\n },\n {\n id: 'previous_month',\n labelKey: 'dashboardFilters.periods.previousMonth',\n needAccess: true,\n category: 'previous',\n calculate: createPeriodCalculator((now) => {\n const prevMonth = now.subtract(1, 'month');\n return { start: prevMonth.startOf('month'), end: prevMonth.endOf('month') };\n }),\n },\n {\n id: 'previous_quarter',\n labelKey: 'dashboardFilters.periods.previousQuarter',\n needAccess: true,\n category: 'previous',\n calculate: createPeriodCalculator((now) => {\n const prevQuarter = now.subtract(1, 'quarter');\n return { start: prevQuarter.startOf('quarter'), end: prevQuarter.endOf('quarter') };\n }),\n },\n {\n id: 'previous_year',\n labelKey: 'dashboardFilters.periods.previousYear',\n needAccess: true,\n category: 'previous',\n calculate: createPeriodCalculator((now) => {\n const prevYear = now.subtract(1, 'year');\n return { start: prevYear.startOf('year'), end: prevYear.endOf('year') };\n }),\n },\n\n // Calendar weeks\n {\n id: 'last_2_weeks',\n labelKey: 'dashboardFilters.periods.last2Weeks',\n needAccess: false,\n category: 'calendar_weeks',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(2, 'week').startOf('isoWeek'),\n end: now.endOf('isoWeek'),\n })),\n },\n {\n id: 'last_4_weeks',\n labelKey: 'dashboardFilters.periods.last4Weeks',\n needAccess: false,\n category: 'calendar_weeks',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(4, 'week').startOf('isoWeek'),\n end: now.endOf('isoWeek'),\n })),\n },\n {\n id: 'last_8_weeks',\n labelKey: 'dashboardFilters.periods.last8Weeks',\n needAccess: true,\n category: 'calendar_weeks',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(8, 'week').startOf('isoWeek'),\n end: now.endOf('isoWeek'),\n })),\n },\n {\n id: 'last_12_weeks',\n labelKey: 'dashboardFilters.periods.last12Weeks',\n needAccess: true,\n category: 'calendar_weeks',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(12, 'week').startOf('isoWeek'),\n end: now.endOf('isoWeek'),\n })),\n },\n\n // Fiscal periods\n {\n id: 'last_3_months',\n labelKey: 'dashboardFilters.periods.last3Months',\n needAccess: true,\n category: 'fiscal',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(3, 'month').startOf('month'),\n end: now.endOf('month'),\n })),\n },\n {\n id: 'last_6_months',\n labelKey: 'dashboardFilters.periods.last6Months',\n needAccess: true,\n category: 'fiscal',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(6, 'month').startOf('month'),\n end: now.endOf('month'),\n })),\n },\n {\n id: 'last_12_months',\n labelKey: 'dashboardFilters.periods.last12Months',\n needAccess: true,\n category: 'fiscal',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(12, 'month').startOf('month'),\n end: now.endOf('month'),\n })),\n },\n\n // Individual weeks (1-52) for current year\n ...Array.from({ length: 52 }, (_, i) => {\n const weekNumber = i + 1;\n return {\n id: `week_${weekNumber}`,\n labelKey: `dashboardFilters.periods.week`,\n labelParams: { week: weekNumber },\n needAccess: false,\n category: 'weeks',\n calculate: createPeriodCalculator((now) => {\n const year = now.year();\n const weekStart = dayjs().year(year).isoWeek(weekNumber).startOf('isoWeek');\n const weekEnd = weekStart.endOf('isoWeek');\n return { start: weekStart, end: weekEnd };\n }),\n } as PeriodDefinition;\n }),\n];\n\nexport const findPeriodById = (id: string): PeriodDefinition | undefined => {\n return periods.find((p) => p.id === id);\n};\n\nexport const getTimeRangeLabel = (shifts: Shift[], selectedShiftIds: string[]): string | null => {\n if (shifts.length === 0) return null;\n\n const boundaries = getTimeBoundaries(shifts, selectedShiftIds);\n const startFormatted = boundaries.startTime.slice(0, 5);\n const endFormatted = boundaries.endTime.slice(0, 5);\n\n return `${startFormatted} - ${endFormatted}`;\n};\n\nexport const getShiftTimeRange = (shift: Shift): string => {\n const startFormatted = parseShiftTime(shift.startedAt).slice(0, 5);\n const endFormatted = parseShiftTime(shift.finishedAt).slice(0, 5);\n return `${startFormatted} - ${endFormatted}`;\n};\n\nconst getNextMidnight = (ctx: CalculateContext): Date => {\n if (ctx.dayType === DayType.Production && ctx.shifts.length > 0) {\n const boundaries = getTimeBoundaries(ctx.shifts, ctx.selectedShiftIds);\n const [h, m, s] = boundaries.startTime.split(':').map(Number);\n const next = dayjs()\n .add(1, 'day')\n .hour(h)\n .minute(m)\n .second(s || 0)\n .millisecond(0);\n return next.toDate();\n }\n return dayjs().add(1, 'day').startOf('day').toDate();\n};\n\nconst getNextShiftBoundary = (ctx: CalculateContext): Date | null => {\n if (ctx.shifts.length === 0) return null;\n\n const now = dayjs();\n const normalized = normalizeShifts(ctx.shifts, now);\n const current = getCurrentShift(now, normalized);\n\n if (current) {\n return current.finishedAt.toDate();\n }\n\n const upcoming = normalized.filter((s) => s.startedAt.isAfter(now)).sort((a, b) => a.startedAt.diff(b.startedAt));\n\n return upcoming.length > 0 ? upcoming[0].startedAt.toDate() : null;\n};\n\nexport const getNextBoundary = (periodId: PeriodId, ctx: CalculateContext): Date | null => {\n switch (periodId) {\n case 'today':\n case 'yesterday':\n return getNextMidnight(ctx);\n\n case 'current_shift':\n case 'last_shift':\n return getNextShiftBoundary(ctx);\n\n case 'current_week':\n case 'previous_week':\n return dayjs().add(1, 'week').startOf('isoWeek').toDate();\n\n case 'current_month':\n case 'previous_month':\n return dayjs().add(1, 'month').startOf('month').toDate();\n\n case 'current_quarter':\n case 'previous_quarter':\n return dayjs().add(1, 'quarter').startOf('quarter').toDate();\n\n case 'current_year':\n case 'previous_year':\n return dayjs().add(1, 'year').startOf('year').toDate();\n\n default: {\n if (periodId.startsWith('last_') && periodId.endsWith('_days')) {\n return getNextMidnight(ctx);\n }\n if (periodId.startsWith('last_') && periodId.endsWith('_weeks')) {\n return dayjs().add(1, 'week').startOf('isoWeek').toDate();\n }\n if (periodId.startsWith('last_') && periodId.endsWith('_months')) {\n return dayjs().add(1, 'month').startOf('month').toDate();\n }\n // week_N — specific calendar week, no auto-refresh\n return null;\n }\n }\n};\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n },\n searchField: {\n marginTop: (theme) => theme.spacing(2),\n marginBottom: (theme) => theme.spacing(1),\n '& .MuiInputAdornment-root': {\n color: (theme) => theme.palette.text.primary,\n },\n },\n list: {\n flexGrow: 1,\n overflow: 'auto',\n padding: 0,\n },\n listItem: {\n cursor: 'pointer',\n padding: (theme) => theme.spacing(1, 1.5),\n borderRadius: '6px',\n '&:hover': {\n background: 'rgba(255, 255, 255, 0.1)',\n },\n '&.Mui-selected': {\n background: 'rgba(255, 255, 255, 0.15)',\n },\n '& .MuiListItemText-primary': {\n fontSize: '0.875rem',\n },\n '& .MuiListItemText-secondary': {\n opacity: 0.7,\n fontSize: '0.75rem',\n color: (theme) => theme.palette.text.primary,\n },\n },\n premiumChip: {\n marginLeft: (theme) => theme.spacing(1),\n '& .MuiChip-icon': {\n marginLeft: (theme) => theme.spacing(0.5),\n },\n },\n noResults: {\n padding: (theme) => theme.spacing(2),\n opacity: 0.6,\n textAlign: 'center',\n },\n};\n\nexport default styles;\n","import { useCallback, useMemo, useRef, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport LockIcon from '@mui/icons-material/Lock';\nimport SearchIcon from '@mui/icons-material/Search';\nimport { Box, Chip, InputAdornment, List, ListItemButton, ListItemText, TextField } from '@mui/material';\nimport dayjs from 'dayjs';\n\nimport { DayType, Shift } from '../../../graphql-sdk';\nimport { getTimeRangeLabel, periods } from '../../../helpers/periods';\nimport { getCurrentShift, getRecentShift, normalizeShifts } from '../../../helpers/shifts';\nimport type { DateRange, PeriodDefinition, PeriodId } from '../types';\n\nimport styles from './styles';\n\nexport type PeriodListProps = {\n dayType: DayType;\n shifts: Shift[];\n selectedShiftIds: string[];\n selectedPeriodId?: PeriodId;\n hasAccess: boolean;\n onPeriodSelect: (period: PeriodDefinition, dateRange: DateRange) => void;\n};\n\nconst PeriodList: React.FC<PeriodListProps> = ({\n dayType,\n shifts,\n selectedShiftIds,\n selectedPeriodId,\n hasAccess,\n onPeriodSelect,\n}) => {\n const { t } = useTranslation();\n const [searchQuery, setSearchQuery] = useState('');\n const [debouncedQuery, setDebouncedQuery] = useState('');\n const debounceRef = useRef<NodeJS.Timeout | null>(null);\n\n const handleSearchChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n setSearchQuery(value);\n\n if (debounceRef.current) {\n clearTimeout(debounceRef.current);\n }\n\n debounceRef.current = setTimeout(() => {\n setDebouncedQuery(value);\n }, 300);\n }, []);\n\n const timeRangeLabel = useMemo(() => {\n if (dayType !== DayType.Production || shifts.length === 0) {\n return null;\n }\n return getTimeRangeLabel(shifts, selectedShiftIds);\n }, [dayType, shifts, selectedShiftIds]);\n\n const getPeriodLabel = useCallback(\n (period: PeriodDefinition) => {\n return t(period.labelKey, period.labelParams);\n },\n [t],\n );\n\n const shiftLabels = useMemo(() => {\n if (shifts.length === 0) return {};\n\n const now = dayjs();\n const normalized = normalizeShifts(shifts, now);\n const current = getCurrentShift(now, normalized) ?? getRecentShift(now, normalized);\n if (!current) return {};\n\n const currentLabel = `${current.startedAt.format('HH:mm')} - ${current.finishedAt.format('HH:mm')}`;\n\n const previous = normalized\n .filter((s) => s.finishedAt.isBefore(current.startedAt) || s.finishedAt.isSame(current.startedAt))\n .sort((a, b) => b.finishedAt.diff(a.finishedAt))[0];\n\n const target = previous ?? current;\n const lastLabel = `${target.startedAt.format('HH:mm')} - ${target.finishedAt.format('HH:mm')}`;\n\n return { current_shift: currentLabel, last_shift: lastLabel } as Record<string, string>;\n }, [shifts]);\n\n const filteredPeriods = useMemo(() => {\n let available = periods.filter((period) => {\n if (period.category === 'shift_based' && dayType === DayType.Calendar) return false;\n return true;\n });\n\n if (debouncedQuery.trim()) {\n const query = debouncedQuery.toLowerCase().trim();\n available = available.filter((period) => {\n const label = getPeriodLabel(period).toLowerCase();\n return label.includes(query);\n });\n }\n\n return available;\n }, [debouncedQuery, getPeriodLabel, dayType]);\n\n const handlePeriodClick = useCallback(\n (period: PeriodDefinition) => {\n const dateRange = period.calculate({\n dayType,\n shifts,\n selectedShiftIds,\n });\n onPeriodSelect(period, dateRange);\n },\n [dayType, shifts, selectedShiftIds, onPeriodSelect],\n );\n\n const showLockIcon = (period: PeriodDefinition) => !hasAccess && period.needAccess;\n\n return (\n <Box sx={styles.container} data-testid=\"dashboard-filters.period-list\">\n <TextField\n size=\"small\"\n label={t('dashboardFilters.search.placeholder')}\n value={searchQuery}\n onChange={handleSearchChange}\n sx={styles.searchField}\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <SearchIcon fontSize=\"small\" />\n </InputAdornment>\n ),\n }}\n data-testid=\"dashboard-filters.period-search\"\n />\n\n <List sx={styles.list}>\n {filteredPeriods.length === 0 ? (\n <ListItemText sx={styles.noResults} primary={t('dashboardFilters.search.noResults')} />\n ) : (\n filteredPeriods.map((period) => (\n <ListItemButton\n key={period.id}\n selected={period.id === selectedPeriodId}\n onClick={() => handlePeriodClick(period)}\n sx={styles.listItem}\n data-testid={`dashboard-filters.period-item-${period.id}`}\n >\n <ListItemText\n primary={getPeriodLabel(period)}\n secondary={\n period.category === 'shift_based'\n ? shiftLabels[period.id]\n ? `(${shiftLabels[period.id]})`\n : undefined\n : timeRangeLabel\n ? `(${timeRangeLabel})`\n : undefined\n }\n />\n\n {showLockIcon(period) && (\n <Chip\n icon={<LockIcon />}\n label={t('dashboardFilters.premium.indicator')}\n size=\"small\"\n color=\"warning\"\n variant=\"outlined\"\n sx={styles.premiumChip}\n data-testid=\"dashboard-filters.premium-chip\"\n />\n )}\n </ListItemButton>\n ))\n )}\n </List>\n </Box>\n );\n};\n\nexport default PeriodList;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n gap: (theme) => theme.spacing(2),\n },\n leftPanel: {\n flexBasis: 280,\n flexShrink: 0,\n height: 360,\n },\n rightPanel: {\n display: 'flex',\n flexDirection: 'column',\n flexBasis: 320,\n flexShrink: 0,\n gap: (theme) => theme.spacing(2),\n },\n dateInputs: {\n display: 'flex',\n gap: (theme) => theme.spacing(2),\n },\n dateField: {\n flexGrow: 1,\n },\n calendarContainer: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'flex-start',\n },\n calendar: {\n '& .MuiPickersCalendarHeader-label': {\n color: (theme) => theme.palette.text.primary,\n },\n '& .MuiPickersCalendarHeader-switchViewButton': {\n color: (theme) => theme.palette.text.primary,\n },\n '& .MuiPickersArrowSwitcher-button': {\n opacity: 0.7,\n color: (theme) => theme.palette.text.primary,\n '&.Mui-disabled': {\n color: (theme) => theme.palette.gray.light,\n },\n },\n '& .MuiDayCalendar-weekDayLabel': {\n color: (theme) => theme.palette.text.primary,\n },\n '& .MuiPickersDay-root': {\n color: (theme) => theme.palette.text.primary,\n '&:not(.Mui-selected)': {\n border: 'none',\n },\n '&.Mui-disabled:not(.Mui-selected)': {\n opacity: 0.3,\n color: (theme) => theme.palette.text.primary,\n },\n },\n },\n rangeDay: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n rangeDayInRange: {\n backgroundColor: (theme) => theme.palette.primary.main,\n },\n rangeDayStart: {\n backgroundColor: (theme) => theme.palette.primary.main,\n borderTopLeftRadius: 17,\n borderBottomLeftRadius: 17,\n },\n rangeDayEnd: {\n backgroundColor: (theme) => theme.palette.primary.main,\n borderTopRightRadius: 17,\n borderBottomRightRadius: 17,\n },\n};\n\nexport default styles;\n","import 'dayjs/locale/pl';\n\nimport { useCallback, useMemo, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Box, TextField } from '@mui/material';\nimport { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';\nimport { DateCalendar } from '@mui/x-date-pickers/DateCalendar';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport { PickersDay, PickersDayProps } from '@mui/x-date-pickers/PickersDay';\nimport dayjs, { Dayjs } from 'dayjs';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport { mergeSx } from 'merge-sx';\n\nimport { DayType, Shift } from '../../../graphql-sdk';\nimport { ACCESS_LIMIT_DAYS, MAX_RANGE_DAYS } from '../constants';\nimport DayTypeSelector from '../DayTypeSelector';\nimport PeriodList from '../PeriodList';\nimport type { DateRange, PeriodDefinition, PeriodId } from '../types';\n\nimport styles from './styles';\n\ndayjs.extend(isBetween);\n\ntype RangeDayProps = PickersDayProps & {\n fromDate: Dayjs;\n toDate: Dayjs;\n};\n\nconst RangeDay: React.FC<RangeDayProps> = ({ fromDate, toDate, day, ...other }) => {\n const dayDate = day as Dayjs;\n const isInRange = dayDate.isBetween(fromDate, toDate, 'day', '[]');\n const isStart = dayDate.isSame(fromDate, 'day');\n const isEnd = dayDate.isSame(toDate, 'day');\n const isSingleDay = isStart && isEnd;\n\n return (\n <Box\n sx={mergeSx(\n styles.rangeDay,\n isInRange && !isSingleDay && styles.rangeDayInRange,\n isStart && !isSingleDay && styles.rangeDayStart,\n isEnd && !isSingleDay && styles.rangeDayEnd,\n )}\n >\n <PickersDay day={day} {...other} />\n </Box>\n );\n};\n\nexport type DateRangePickerProps = {\n dateRange: DateRange;\n dayType: DayType;\n shifts: Shift[];\n selectedShiftIds: string[];\n hasAccess: boolean;\n selectedPeriodId?: PeriodId;\n onDayTypeChange: (dayType: DayType) => void;\n onDateRangeChange: (dateRange: DateRange) => void;\n onPeriodSelect: (period: PeriodDefinition, dateRange: DateRange) => void;\n onAccessDenied: () => void;\n};\n\ntype ActiveField = 'from' | 'to' | null;\n\nconst DateRangePicker: React.FC<DateRangePickerProps> = ({\n dateRange,\n dayType,\n shifts,\n selectedShiftIds,\n hasAccess,\n selectedPeriodId,\n onDayTypeChange,\n onDateRangeChange,\n onPeriodSelect,\n}) => {\n const { t, i18n } = useTranslation();\n const [activeField, setActiveField] = useState<ActiveField>('from');\n\n const fromDate = dayjs(dateRange.from);\n const toDate = dayjs(dateRange.to);\n const today = dayjs();\n const accessLimitDate = today.subtract(ACCESS_LIMIT_DAYS, 'day');\n const maxRangeDate = today.subtract(MAX_RANGE_DAYS, 'day');\n const minDate = hasAccess ? maxRangeDate : accessLimitDate;\n\n const handleCalendarChange = useCallback(\n (date: Dayjs | null) => {\n if (!date) return;\n\n const dateStr = date.format('YYYY-MM-DD');\n const newRange = { ...dateRange };\n\n if (activeField === 'from') {\n newRange.from = dateStr + 'T00:00:00';\n if (date.isAfter(dayjs(dateRange.to))) {\n newRange.to = dateStr + 'T23:59:59';\n }\n setActiveField('to');\n } else {\n newRange.to = dateStr + 'T23:59:59';\n if (date.isBefore(dayjs(dateRange.from))) {\n newRange.from = dateStr + 'T00:00:00';\n }\n }\n\n onDateRangeChange(newRange);\n },\n [activeField, dateRange, onDateRangeChange],\n );\n\n const handleFromClick = useCallback(() => {\n setActiveField('from');\n }, []);\n\n const handleToClick = useCallback(() => {\n setActiveField('to');\n }, []);\n\n const calendarValue = activeField === 'from' ? fromDate : toDate;\n\n const slotProps = useMemo(\n () => ({\n day: {\n fromDate,\n toDate,\n } as Partial<RangeDayProps>,\n }),\n [fromDate, toDate],\n );\n\n return (\n <LocalizationProvider dateAdapter={AdapterDayjs} adapterLocale={i18n.language}>\n <Box sx={styles.container}>\n <Box sx={styles.leftPanel}>\n <DayTypeSelector value={dayType} onChange={onDayTypeChange} />\n <PeriodList\n dayType={dayType}\n shifts={shifts}\n selectedShiftIds={selectedShiftIds}\n selectedPeriodId={selectedPeriodId}\n hasAccess={hasAccess}\n onPeriodSelect={onPeriodSelect}\n />\n </Box>\n\n <Box sx={styles.rightPanel}>\n <Box sx={styles.dateInputs}>\n <TextField\n label={t('dashboardFilters.dateRange.from')}\n value={fromDate.format('YYYY-MM-DD')}\n onClick={handleFromClick}\n focused={activeField === 'from'}\n InputProps={{ readOnly: true }}\n size=\"small\"\n sx={styles.dateField}\n data-testid=\"dashboard-filters.date-from\"\n />\n <TextField\n label={t('dashboardFilters.dateRange.to')}\n value={toDate.format('YYYY-MM-DD')}\n onClick={handleToClick}\n focused={activeField === 'to'}\n InputProps={{ readOnly: true }}\n size=\"small\"\n sx={styles.dateField}\n data-testid=\"dashboard-filters.date-to\"\n />\n </Box>\n\n <Box sx={styles.calendarContainer} data-testid=\"dashboard-filters.date-calendar\">\n <DateCalendar\n key={`${dateRange.from}-${dateRange.to}`}\n value={calendarValue}\n onChange={handleCalendarChange}\n minDate={minDate}\n maxDate={today}\n sx={styles.calendar}\n slots={{ day: RangeDay }}\n slotProps={slotProps}\n />\n </Box>\n </Box>\n </Box>\n </LocalizationProvider>\n );\n};\n\nexport default DateRangePicker;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n alignItems: 'center',\n gap: (theme) => theme.spacing(1),\n },\n label: {\n fontSize: '0.875rem',\n opacity: 0.8,\n },\n select: {\n minWidth: 200,\n },\n menuItem: {\n padding: (theme) => theme.spacing(0.5, 1),\n },\n listItemText: {\n '& .MuiListItemText-primary': {\n fontSize: '0.875rem',\n },\n '& .MuiListItemText-secondary': {\n opacity: 0.7,\n fontSize: '0.75rem',\n color: (theme) => theme.palette.text.primary,\n },\n },\n};\n\nexport default styles;\n","import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Box, FormControl, InputLabel, ListItemText, MenuItem, Select, SelectChangeEvent } from '@mui/material';\nimport { Checkbox } from 'andoncloud-sdk';\n\nimport { Shift } from '../../../graphql-sdk';\nimport { getShiftTimeRange } from '../../../helpers/periods';\n\nimport styles from './styles';\n\nexport type ShiftSelectorProps = {\n shifts: Shift[];\n selectedShiftIds: string[];\n onChange: (shiftIds: string[]) => void;\n};\n\nconst ShiftSelector: React.FC<ShiftSelectorProps> = ({ shifts, selectedShiftIds, onChange }) => {\n const { t } = useTranslation();\n\n const handleChange = useCallback(\n (event: SelectChangeEvent<string[]>) => {\n const value = event.target.value;\n onChange(typeof value === 'string' ? value.split(',') : value);\n },\n [onChange],\n );\n\n const renderValue = useCallback(\n (selected: string[]) => {\n if (selected.length === 0) {\n return t('dashboardFilters.shifts.allShifts');\n }\n const selectedNames = shifts.filter((s) => selected.includes(s.id)).map((s) => s.name);\n return selectedNames.join(', ');\n },\n [shifts, t],\n );\n\n return (\n <Box sx={styles.container}>\n <FormControl size=\"small\" sx={styles.select} data-testid=\"dashboard-filters.shift-selector\">\n <InputLabel shrink>{t('dashboardFilters.shifts.label')}</InputLabel>\n <Select<string[]>\n multiple\n displayEmpty\n value={selectedShiftIds}\n onChange={handleChange}\n renderValue={renderValue}\n label={t('dashboardFilters.shifts.label')}\n >\n {shifts.map((shift) => (\n <MenuItem key={shift.id} value={shift.id} sx={styles.menuItem}>\n <Checkbox checked={selectedShiftIds.includes(shift.id)} />\n <ListItemText primary={shift.name} secondary={`(${getShiftTimeRange(shift)})`} sx={styles.listItemText} />\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Box>\n );\n};\n\nexport default ShiftSelector;\n","import { useEffect, useMemo, useRef, useState } from 'react';\n\nimport { type Shift, DayType } from '../../graphql-sdk';\nimport { getNextBoundary, periods, resolveShiftIdForPeriod } from '../../helpers/periods';\n\nimport type { CalculateContext, DateRange, FilterValues, PeriodDefinition, PeriodId } from './types';\n\ntype CoreState = {\n dayType: DayType;\n selectedPeriodId?: PeriodId;\n customDateRange: DateRange | null;\n shiftIds: string[];\n};\n\nconst getDefaultDateRange = (): DateRange => {\n const today = new Date().toISOString().slice(0, 10);\n\n return { from: `${today}T00:00:00`, to: `${today}T23:59:59` };\n};\n\nconst buildCoreState = (values: FilterValues | undefined, shifts: Shift[]): CoreState => {\n if (!values) {\n const shiftId = shifts?.length ? resolveShiftIdForPeriod('current_shift', shifts) : null;\n\n return {\n dayType: DayType.Production,\n selectedPeriodId: 'current_shift',\n customDateRange: null,\n shiftIds: shiftId ? [shiftId] : [],\n };\n }\n\n const shiftId =\n values.selectedPeriodId && shifts?.length ? resolveShiftIdForPeriod(values.selectedPeriodId, shifts) : null;\n\n return {\n dayType: values.dayType,\n selectedPeriodId: values.selectedPeriodId,\n customDateRange: values.selectedPeriodId ? null : values.dateRange,\n shiftIds: shiftId ? [shiftId] : values.shiftIds,\n };\n};\n\nconst computeDateRange = (state: CoreState, shifts: Shift[]): DateRange => {\n if (!state.selectedPeriodId) return state.customDateRange ?? getDefaultDateRange();\n\n const period = periods.find((p) => p.id === state.selectedPeriodId);\n if (!period) return state.customDateRange ?? getDefaultDateRange();\n\n return period.calculate({\n dayType: state.dayType,\n shifts,\n selectedShiftIds: state.shiftIds,\n });\n};\n\nexport type DashboardFiltersHandlers = {\n handleDayTypeChange: (dayType: DayType) => void;\n handleShiftChange: (shiftIds: string[]) => void;\n handleDateRangeChange: (dateRange: DateRange) => void;\n handlePeriodSelect: (period: PeriodDefinition, dateRange: DateRange) => void;\n};\n\nexport const useDashboardFilters = (\n savedFilters: FilterValues | undefined,\n shifts: Shift[],\n onChange: (values: FilterValues) => void,\n): { filterValues: FilterValues; selectedPeriodId: PeriodId | undefined; handlers: DashboardFiltersHandlers } => {\n // -- Local state --\n const [state, setState] = useState<CoreState>(() => buildCoreState(savedFilters, shifts));\n const [boundaryTick, setBoundaryTick] = useState(0);\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n // -- Sync from saved filters --\n useEffect(() => {\n if (!savedFilters) return;\n\n setState((prev) => {\n const next = buildCoreState(savedFilters, shifts);\n\n return JSON.stringify(next) === JSON.stringify(prev) ? prev : next;\n });\n }, [savedFilters, shifts]);\n\n // -- Derived dateRange --\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const dateRange = useMemo(() => computeDateRange(state, shifts), [state, shifts, boundaryTick]);\n\n // -- Composed filter values --\n const filterValues: FilterValues = useMemo(\n () => ({\n dayType: state.dayType,\n selectedPeriodId: state.selectedPeriodId,\n dateRange,\n shiftIds: state.shiftIds,\n }),\n [state.dayType, state.selectedPeriodId, dateRange, state.shiftIds],\n );\n\n // -- Emit onChange on every filterValues change (includes initial) --\n const lastEmittedRef = useRef<string>('');\n\n useEffect(() => {\n const serialized = JSON.stringify(filterValues);\n if (serialized === lastEmittedRef.current) return;\n\n lastEmittedRef.current = serialized;\n onChangeRef.current(filterValues);\n }, [filterValues]);\n\n // -- Boundary detection --\n useEffect(() => {\n if (!state.selectedPeriodId) return;\n\n const ctx: CalculateContext = {\n dayType: state.dayType,\n shifts,\n selectedShiftIds: state.shiftIds,\n };\n\n const boundary = getNextBoundary(state.selectedPeriodId, ctx);\n if (!boundary) return;\n\n const delay = boundary.getTime() - Date.now();\n\n const recalculate = () => {\n const shiftId = resolveShiftIdForPeriod(state.selectedPeriodId!, shifts);\n const newShiftIds = shiftId ? [shiftId] : state.shiftIds;\n\n setState((prev) => ({ ...prev, shiftIds: newShiftIds }));\n setBoundaryTick((n) => n + 1);\n };\n\n if (delay <= 0) {\n recalculate();\n\n return;\n }\n\n const timer = setTimeout(recalculate, delay);\n\n return () => clearTimeout(timer);\n }, [state.selectedPeriodId, state.dayType, state.shiftIds, shifts]);\n\n // -- Handlers --\n const handlers: DashboardFiltersHandlers = useMemo(() => {\n return {\n handleDayTypeChange: (dayType: DayType) => {\n setState((prev) => ({ ...prev, dayType }));\n },\n\n handleShiftChange: (shiftIds: string[]) => {\n setState((prev) => ({ ...prev, shiftIds }));\n },\n\n handleDateRangeChange: (newDateRange: DateRange) => {\n setState((prev) => ({ ...prev, selectedPeriodId: undefined, shiftIds: [], customDateRange: newDateRange }));\n },\n\n handlePeriodSelect: (period: PeriodDefinition, periodDateRange: DateRange) => {\n setState((prev) => {\n const shiftId = resolveShiftIdForPeriod(period.id, shifts);\n const shiftIds = shiftId ? [shiftId] : [];\n\n return { ...prev, selectedPeriodId: period.id, shiftIds, customDateRange: periodDateRange };\n });\n },\n };\n }, [shifts]);\n\n return { filterValues, selectedPeriodId: state.selectedPeriodId, handlers };\n};\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n flexDirection: 'column',\n gap: (theme) => theme.spacing(2),\n },\n dateField: {\n cursor: 'pointer',\n minWidth: 240,\n '& .MuiInputBase-input': {\n cursor: 'pointer',\n },\n '& .MuiInputAdornment-root': {\n color: (theme) => theme.palette.text.primary,\n },\n },\n popover: {\n '& .MuiPopover-paper': {\n borderRadius: '6px',\n marginTop: (theme) => theme.spacing(1),\n backgroundColor: (theme) => theme.palette.gray.main,\n },\n },\n popoverContent: {\n display: 'flex',\n flexDirection: 'column',\n gap: (theme) => theme.spacing(2),\n padding: (theme) => theme.spacing(2),\n },\n};\n\nexport default styles;\n","import { useCallback, useMemo, useRef, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport CalendarTodayIcon from '@mui/icons-material/CalendarToday';\nimport { Box, InputAdornment, Popover, Stack, TextField } from '@mui/material';\nimport { registerTranslations, useAccess } from 'andoncloud-sdk';\nimport dayjs from 'dayjs';\n\nimport { resolveInitialValues } from '@/helpers/filters';\nimport locales from '@/locales';\n\nimport AccessDeniedModal from './AccessDeniedModal';\nimport DateRangePicker from './DateRangePicker';\nimport ShiftSelector from './ShiftSelector';\nimport type { DashboardFiltersProps, DateRange, PeriodDefinition } from './types';\nimport { useDashboardFilters } from './useDashboardFilters';\n\nimport styles from './styles';\n\nregisterTranslations(locales);\n\nconst FEATURE_KEY = 'feature.dashboard_extended_date_ranges';\n\nconst DashboardFilters: React.FC<DashboardFiltersProps> = ({\n initialValues,\n onChange,\n shifts = [],\n onFeatureRequest,\n}) => {\n // -- SDK / framework hooks --\n const { hasAccess, accessState, buttons, cooldownInfo, features } = useAccess([FEATURE_KEY]);\n\n // -- Local state --\n const [accessModalOpen, setAccessModalOpen] = useState(false);\n const [popoverOpen, setPopoverOpen] = useState(false);\n const dateFieldRef = useRef<HTMLDivElement>(null);\n\n // -- Data layer --\n const resolvedInitialValues = useMemo(() => resolveInitialValues(initialValues), [initialValues]);\n const { filterValues, selectedPeriodId, handlers } = useDashboardFilters(resolvedInitialValues, shifts, onChange);\n\n // -- Translation --\n const { t } = useTranslation();\n\n // derived\n const daysSinceExpiry = useMemo(() => {\n const feature = features.find((f) => f.featureKey === FEATURE_KEY);\n\n return feature?.daysSinceExpiry ?? null;\n }, [features]);\n\n const filteredButtons = useMemo(() => buttons.filter((b) => b.action !== 'start_trial'), [buttons]);\n\n // handlers\n const handlePeriodSelect = useCallback(\n (period: PeriodDefinition, dateRange: DateRange) => {\n if (period.needAccess && !hasAccess) {\n setAccessModalOpen(true);\n\n return;\n }\n\n handlers.handlePeriodSelect(period, dateRange);\n },\n [hasAccess, handlers],\n );\n\n const handlePopoverOpen = useCallback(() => setPopoverOpen(true), []);\n const handlePopoverClose = useCallback(() => setPopoverOpen(false), []);\n const handleAccessModalClose = useCallback(() => setAccessModalOpen(false), []);\n const handleAccessDenied = useCallback(() => setAccessModalOpen(true), []);\n\n const formatDateRange = (range: DateRange) => {\n const from = dayjs(range.from).format('YYYY-MM-DD');\n const to = dayjs(range.to).format('YYYY-MM-DD');\n\n return from === to ? from : `${from} - ${to}`;\n };\n\n return (\n <Box sx={styles.container}>\n <Stack direction=\"row\" spacing={2} alignItems=\"center\">\n <TextField\n ref={dateFieldRef}\n label={t('dashboardFilters.dateRange.label')}\n value={formatDateRange(filterValues.dateRange)}\n onClick={handlePopoverOpen}\n size=\"small\"\n InputProps={{\n readOnly: true,\n startAdornment: (\n <InputAdornment position=\"start\">\n <CalendarTodayIcon sx={{ fontSize: 16 }} />\n </InputAdornment>\n ),\n }}\n sx={styles.dateField}\n data-testid=\"dashboard-filters.date-range-input\"\n />\n <ShiftSelector shifts={shifts} selectedShiftIds={filterValues.shiftIds} onChange={handlers.handleShiftChange} />\n </Stack>\n\n <Popover\n open={popoverOpen}\n anchorEl={dateFieldRef.current}\n onClose={handlePopoverClose}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'left' }}\n transformOrigin={{ vertical: 'top', horizontal: 'left' }}\n sx={styles.popover}\n data-testid=\"dashboard-filters.date-popover\"\n >\n <Box sx={styles.popoverContent}>\n <DateRangePicker\n dateRange={filterValues.dateRange}\n dayType={filterValues.dayType}\n shifts={shifts}\n selectedShiftIds={filterValues.shiftIds}\n hasAccess={hasAccess}\n selectedPeriodId={selectedPeriodId}\n onDayTypeChange={handlers.handleDayTypeChange}\n onDateRangeChange={handlers.handleDateRangeChange}\n onPeriodSelect={handlePeriodSelect}\n onAccessDenied={handleAccessDenied}\n />\n </Box>\n </Popover>\n\n <AccessDeniedModal\n open={accessModalOpen}\n onClose={handleAccessModalClose}\n accessState={accessState}\n buttons={filteredButtons}\n daysSinceExpiry={daysSinceExpiry}\n cooldownInfo={cooldownInfo}\n onFeatureRequest={onFeatureRequest}\n />\n </Box>\n );\n};\n\nexport default DashboardFilters;\n","const bgPattern = `data:image/svg+xml,${encodeURIComponent(`<svg width=\"297\" height=\"403\" viewBox=\"0 0 297 403\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M938.46 -10H921.49L-10 921.49V938.46L938.46 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M904.52 -10H887.54L-10 887.54V904.52L904.52 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M870.58 -10H853.6L-10 853.6V870.58L870.58 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1006.34 -10H989.37L-10 989.37V1006.34L1006.34 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M972.4 -10H955.43L-10 955.43V972.4L972.4 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M836.63 -10H819.66L-10 819.66V836.63L836.63 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M768.75 -10H751.78L-10 751.78V768.75L768.75 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1040.28 -10H1023.31L-10 1023.31V1040.28L1040.28 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M802.69 -10H785.72L-10 785.72V802.69L802.69 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M734.81 -10H717.84L-10 717.84V734.81L734.81 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1447.57 -10H1430.6L350.6 1070H367.57L1447.57 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1379.69 -10H1362.72L282.72 1070H299.69L1379.69 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1311.81 -10H1294.84L214.84 1070H231.81L1311.81 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1345.75 -10H1328.78L248.78 1070H265.75L1345.75 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M700.87 -10H683.9L-10 683.9V700.87L700.87 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1413.63 -10H1396.66L316.66 1070H333.63L1413.63 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1142.1 -10H1125.13L45.13 1070H62.1L1142.1 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1108.16 -10H1091.19L11.19 1070H28.16L1108.16 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1176.04 -10H1159.07L79.07 1070H96.04L1176.04 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1243.93 -10H1226.96L146.96 1070H163.93L1243.93 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1209.99 -10H1193.02L113.02 1070H129.99L1209.99 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1277.87 -10H1260.9L180.9 1070H197.87L1277.87 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M429.34 -10H412.37L-10 412.37V429.34L429.34 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M157.81 -10H140.84L-10 140.84V157.81L157.81 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M191.75 -10H174.78L-10 174.78V191.75L191.75 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M123.87 -10H106.9L-10 106.9V123.87L123.87 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M225.69 -10H208.72L-10 208.72V225.69L225.69 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M259.63 -10H242.66L-10 242.66V259.63L259.63 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1057.25 -10L-10 1057.25V1070H-5.78L1074.22 -10H1057.25Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M293.57 -10H276.61L-10 276.61V293.57L293.57 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M22.05 -10H5.08L-10 5.08V22.05L22.05 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M55.99 -10H39.02L-10 39.02V55.99L55.99 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M89.93 -10H72.96L-10 72.96V89.93L89.93 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1481.52 -10H1464.54L384.54 1070H401.51L1481.52 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M565.1 -10H548.13L-10 548.13V565.1L565.1 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M497.22 -10H480.25L-10 480.25V497.22L497.22 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M327.52 -10H310.55L-10 310.55V327.52L327.52 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M632.99 -10H616.02L-10 616.02V632.99L632.99 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M599.04 -10H582.08L-10 582.08V599.04L599.04 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M531.16 -10H514.19L-10 514.19V531.16L531.16 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M463.28 -10H446.31L-10 446.31V463.28L463.28 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M361.46 -10H344.49L-10 344.49V361.46L361.46 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M395.4 -10H378.43L-10 378.43V395.4L395.4 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M666.93 -10H649.96L-10 649.96V666.93L666.93 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 410.04V393.07L1233.07 1070H1250.04L1910 410.04Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 342.16V325.19L1165.19 1070H1182.16L1910 342.16Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 579.75V562.78L1402.78 1070H1419.75L1910 579.75Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 613.69V596.72L1436.72 1070H1453.69L1910 613.69Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 681.57V664.6L1504.6 1070H1521.57L1910 681.57Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 647.63V630.66L1470.66 1070H1487.63L1910 647.63Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 376.1V359.13L1199.13 1070H1216.1L1910 376.1Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 443.98V427.01L1267.01 1070H1283.98L1910 443.98Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 511.87V494.9L1334.9 1070H1351.87L1910 511.87Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 715.51V698.54L1538.54 1070H1555.51L1910 715.51Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 477.93V460.95L1300.95 1070H1317.92L1910 477.93Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 545.81V528.84L1368.84 1070H1385.81L1910 545.81Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 953.1V936.13L1776.13 1070H1793.1L1910 953.1Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 919.16V902.19L1742.19 1070H1759.16L1910 919.16Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 987.04V970.07L1810.07 1070H1827.04L1910 987.04Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 749.45V732.48L1572.48 1070H1589.45L1910 749.45Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 1054.92V1037.95L1877.95 1070H1894.92L1910 1054.92Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 1020.98V1004.01L1844.01 1070H1860.98L1910 1020.98Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 783.39V766.42L1606.42 1070H1623.39L1910 783.39Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 817.34V800.37L1640.37 1070H1657.34L1910 817.34Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 851.28V834.31L1674.31 1070H1691.28L1910 851.28Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 885.22V868.25L1708.25 1070H1725.22L1910 885.22Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 308.22V291.25L1131.25 1070H1148.22L1910 308.22Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1719.1 -10H1702.13L622.13 1070H639.1L1719.1 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1753.04 -10H1736.07L656.07 1070H673.04L1753.04 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1820.93 -10H1803.96L723.96 1070H740.93L1820.93 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1786.98 -10H1770.01L690.01 1070H706.99L1786.98 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1854.87 -10H1837.9L757.9 1070H774.87L1854.87 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1685.16 -10H1668.19L588.19 1070H605.16L1685.16 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1583.34 -10H1566.37L486.37 1070H503.34L1583.34 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1549.4 -10H1532.43L452.43 1070H469.4L1549.4 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1651.22 -10H1634.25L554.25 1070H571.22L1651.22 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1617.28 -10H1600.31L520.31 1070H537.28L1617.28 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 36.69V19.72L859.72 1070H876.69L1910 36.69Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 206.4V189.43L1029.42 1070H1046.4L1910 206.4Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 172.46V155.48L995.48 1070H1012.46L1910 172.46Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 240.34V223.37L1063.37 1070H1080.34L1910 240.34Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 138.51V121.54L961.54 1070H978.51L1910 138.51Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1888.81 -10H1871.84L791.84 1070H808.81L1888.81 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 274.28V257.31L1097.31 1070H1114.28L1910 274.28Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1515.46 -10H1498.48L418.49 1070H435.46L1515.46 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 2.75V-10H1905.78L825.78 1070H842.75L1910 2.75Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 70.63V53.66L893.66 1070H910.63L1910 70.63Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 104.57V87.6L927.6 1070H944.57L1910 104.57Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n</svg>`)}`;\n\nexport default bgPattern;\n","import { lighten } from '@mui/material';\nimport { keyframes, SxProps, Theme } from '@mui/system';\n\nimport bgPattern from '../../assets/bg-pattern';\n\nconst CARD_TEXT_COLOR = '#090B0E';\n\ninterface StylesProps {\n card: {\n rounded?: boolean;\n };\n cardOverlay: {\n background: string;\n };\n showBgPattern: boolean;\n backgroundColor: string;\n animateBackgroundColor?: boolean;\n}\n\nexport const hexToRgba = (hex: string, alpha: number = 1): string => {\n const hexWithoutHash = hex.replace('#', '');\n const bigint = parseInt(hexWithoutHash, 16);\n\n const r = (bigint >> 16) & 255;\n const g = (bigint >> 8) & 255;\n const b = bigint & 255;\n\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n};\n\nconst getPulseAnimation = (bgColor: string) => keyframes`\n 0% {\n background: ${hexToRgba(bgColor, 0.5)};\n }\n\n 50% {\n background: ${hexToRgba(bgColor, 1)};\n }\n\n 100% {\n background: ${hexToRgba(bgColor, 0.5)};\n }\n`;\n\nconst makeStyles = (props: StylesProps): Record<string, SxProps<Theme>> => ({\n card: {\n position: 'relative',\n width: '100%',\n height: '100%',\n ...(props.showBgPattern && {\n mixBlendMode: 'hard-light',\n background: `url(${bgPattern}), linear-gradient(329.66deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%)`,\n backgroundSize: 'cover',\n }),\n ...(props.card.rounded\n ? {\n borderRadius: '4px',\n }\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n }),\n },\n cardOverlay: {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n zIndex: -1,\n ...(props.showBgPattern && {\n mixBlendMode: 'hard-light',\n }),\n ...(props.card.rounded\n ? {\n borderRadius: '4px',\n }\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n }),\n ...props.cardOverlay,\n animation: props.animateBackgroundColor ? `${getPulseAnimation(props.backgroundColor)} 3s infinite` : 'none',\n },\n cardHeader: {\n height: '3em',\n color: CARD_TEXT_COLOR,\n borderBottom: '1px solid rgba(0, 0, 0, 0.1)',\n background: 'rgba(0, 0, 0, 0.05)',\n '& span': {\n lineHeight: '3em',\n fontSize: '1em',\n fontWeight: 500,\n },\n },\n cardContent: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n height: '80%',\n minWidth: 'auto',\n minHeight: 'auto',\n maxWidth: 'none',\n background: 'transparent',\n '& > img': {\n flexBasis: '25%',\n minWidth: '125px',\n maxWidth: '25%',\n },\n },\n cardLabel: {\n width: '100%',\n lineHeight: '2.5em',\n fontSize: '1.8em',\n fontWeight: 700,\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textAlign: 'center',\n textOverflow: 'ellipsis',\n color: CARD_TEXT_COLOR,\n },\n cardValue: {\n lineHeight: '1.2em',\n textAlign: 'center',\n fontSize: '1.6em',\n fontWeight: 700,\n color: lighten(CARD_TEXT_COLOR, 0.15),\n },\n cardExtra: {\n lineHeight: '4em',\n textAlign: 'center',\n fontSize: '1em',\n fontWeight: 600,\n color: CARD_TEXT_COLOR,\n },\n});\n\nexport default makeStyles;\n","import { Trans, useTranslation } from 'react-i18next';\nimport TextTruncate from 'react-text-truncate';\n\nimport { Box, Card, CardContent, CardHeader, CardProps, Typography } from '@mui/material';\nimport dayjs from 'dayjs';\nimport durationPlugin from 'dayjs/plugin/duration';\n\nimport { AndonLightColor, MetricUnitEnum, MetricValue } from '@/graphql-sdk';\n\nimport makeStyles from './styles';\n\ndayjs.extend(durationPlugin);\n\ninterface MetricCardProps extends CardProps {\n title: string;\n metricLabel: React.ReactNode;\n metricValue?: MetricValue;\n progressValue?: MetricValue;\n extraValue?: React.ReactNode;\n animateBackgroundColor?: boolean;\n rounded?: boolean;\n}\n\nconst formatFloat = (value: number) => {\n if (Number.isInteger(value)) return value.toString();\n\n return value.toFixed(1);\n};\n\nconst MetricCard: React.FC<MetricCardProps> = ({\n title,\n metricLabel,\n metricValue,\n progressValue,\n extraValue,\n animateBackgroundColor,\n rounded,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const formatValue = (metricValue: MetricValue) => {\n const value = metricValue.textValue;\n\n if (!value) return '';\n\n switch (metricValue.unit) {\n case MetricUnitEnum.Duration: {\n const duration = dayjs.duration(Number(value), 'seconds');\n return `${Math.floor(duration.asMinutes())}m ${duration.seconds()}s`;\n }\n case MetricUnitEnum.Percent:\n return `${formatFloat(parseFloat(value) * 100)}%`;\n case MetricUnitEnum.Round:\n return formatFloat(parseFloat(value));\n default:\n return value;\n }\n };\n\n const getStatusColor = () => progressValue?.statusColor ?? metricValue?.statusColor;\n\n const getBackgroundColor = () => {\n const statusColor = getStatusColor();\n\n if (statusColor) {\n switch (statusColor) {\n case AndonLightColor.Green:\n return '#32D74B';\n case AndonLightColor.Yellow:\n return '#FFC12F';\n case AndonLightColor.Red:\n return '#FF3B2F';\n default:\n return '#BBBBBBBF';\n }\n }\n return '#FFFFFFBF';\n };\n\n const getBackground = () => {\n const statusColor = getStatusColor();\n\n if (statusColor) {\n switch (statusColor) {\n case AndonLightColor.Green:\n return 'linear-gradient(180deg, #31BF59 0%, #32D74B 100%)';\n case AndonLightColor.Yellow:\n return 'linear-gradient(360deg, #FFD60A 0%, #FFC12F 100%)';\n case AndonLightColor.Red:\n return 'linear-gradient(0deg, #F05C53 0%, #FF3B2F 100%)';\n default:\n return 'rgba(187, 187, 187, 0.75)';\n }\n }\n return 'rgba(255, 255, 255, 0.75)';\n };\n const styles = makeStyles({\n card: { rounded },\n cardOverlay: { background: getBackground() },\n showBgPattern: true,\n backgroundColor: getBackgroundColor(),\n animateBackgroundColor,\n });\n\n return (\n <Card sx={styles.card} {...props}>\n <Box sx={styles.cardOverlay} />\n <CardHeader title={<TextTruncate line={1} text={title} />} sx={styles.cardHeader} />\n <CardContent sx={styles.cardContent}>\n <Typography sx={styles.cardLabel}>{metricLabel}</Typography>\n <Typography sx={styles.cardValue}>\n {metricValue ? formatValue(metricValue) : <Trans t={t}>No value for the selected metric</Trans>}\n </Typography>\n {extraValue && <Typography sx={styles.cardExtra}>{extraValue}</Typography>}\n </CardContent>\n </Card>\n );\n};\n\nexport default MetricCard;\n","import { MouseEventHandler } from 'react';\nimport Select, {\n components,\n MultiValue,\n MultiValueGenericProps,\n MultiValueProps,\n OnChangeValue,\n Options,\n} from 'react-select';\n\nimport { DndContext, DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { arrayMoveImmutable } from 'array-move';\n\nexport interface Option {\n label: string;\n value: string;\n}\n\ninterface SortableSelectProps {\n placeholder: string;\n options: Options<Option>;\n selected: Array<Option['value']>;\n onChange: (selected: OnChangeValue<Option['value'], true>) => void;\n}\n\nconst SortableMultiValueContainer = (props: MultiValueProps<Option>) => {\n const { attributes, listeners, setNodeRef, transform, transition } = useSortable({ id: props.data.value });\n\n const style = {\n display: 'flex',\n transform: CSS.Transform.toString(transform),\n transition,\n };\n\n return (\n <div\n ref={setNodeRef}\n style={style}\n {...attributes}\n {...listeners}\n onPointerDown={(e) => {\n if (!(e.target instanceof HTMLElement)) return;\n\n // Stop drag event when clicking on remove button\n if (['svg', 'path'].includes(e.target.nodeName)) {\n e.preventDefault();\n e.stopPropagation();\n }\n listeners?.onPointerDown(e);\n }}\n >\n <components.MultiValueContainer {...props} />\n </div>\n );\n};\n\nconst SortableMultiValueLabel = (props: MultiValueGenericProps) => {\n const onMouseDown: MouseEventHandler<HTMLDivElement> = (e) => {\n e.preventDefault();\n e.stopPropagation();\n };\n const style = {\n cursor: 'grab',\n };\n const innerProps = { ...props.innerProps, style, onMouseDown };\n\n return <components.MultiValueLabel {...props} innerProps={innerProps} />;\n};\n\nconst SortableSelect: React.FC<SortableSelectProps> = ({ placeholder, options, selected, onChange }) => {\n const onSortEnd = (event: DragEndEvent) => {\n const { active, over } = event;\n\n if (active.id !== over?.id) {\n const oldIndex = selected.findIndex((opt) => opt === active.id);\n const newIndex = selected.findIndex((opt) => opt === over?.id);\n\n onChange(arrayMoveImmutable(selected, oldIndex, newIndex));\n }\n };\n\n return (\n <Select\n placeholder={placeholder}\n isMulti\n options={options}\n value={selected.map((value) => options.find((option) => option.value === value))}\n onChange={(selected) => onChange([...((selected as MultiValue<Option>) || [])].map((item: Option) => item.value))}\n closeMenuOnSelect={false}\n components={{\n MultiValueContainer: SortableMultiValueContainer,\n MultiValueLabel: SortableMultiValueLabel,\n ValueContainer: (props) => (\n <DndContext onDragEnd={onSortEnd}>\n <SortableContext items={selected}>{props.children}</SortableContext>\n </DndContext>\n ),\n }}\n styles={{\n control: (baseStyles, state) => ({\n ...baseStyles,\n padding: '6px 0 6px 8px',\n borderColor: 'rgba(255, 255, 255, 0.15)',\n background: '#1C1F25',\n ...(state.isFocused && {\n borderColor: '#4E5A67',\n boxShadow: 'none',\n }),\n '&:hover': {\n borderColor: '#4E5A67',\n boxShadow: 'none',\n },\n }),\n menu: (baseStyles) => ({\n ...baseStyles,\n background: '#1C1F25',\n }),\n option: (baseStyles, state) => ({\n ...baseStyles,\n background: state.isFocused ? '#2A2E34' : '#1C1F25',\n }),\n }}\n />\n );\n};\n\nexport default SortableSelect;\n","const DragIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path\n d=\"M2.46147 10.5737C2.99531 11.0586 3.63181 10.6829 3.63181 10.0478V8.74325H7.26604V12.3699H5.94512C5.30862 12.3699 4.93904 13.0119 5.41813 13.5378L7.42345 15.7234C7.75197 16.0922 8.25159 16.0922 8.58011 15.7234L10.5786 13.5447C11.0645 13.0119 10.6949 12.3699 10.0516 12.3699H8.74437V8.74325H12.3649V10.0478C12.3649 10.6829 13.0083 11.0586 13.5421 10.5737L15.7254 8.57933C16.095 8.24467 16.0881 7.74609 15.7254 7.42508L13.5353 5.42393C13.0083 4.94584 12.3649 5.31465 12.3649 5.94983V7.26117H8.74437V3.62767H10.0516C10.6949 3.62767 11.0645 2.98566 10.5786 2.45293L8.57327 0.267369C8.23791 -0.101445 7.73828 -0.0809553 7.41661 0.281028L5.41813 2.46659C4.93904 2.98566 5.30862 3.62767 5.94512 3.62767H7.26604V7.26117H3.63181V5.94983C3.63181 5.31465 2.98846 4.94584 2.46831 5.42393L0.278192 7.41825C-0.0777021 7.73926 -0.105079 8.23784 0.271348 8.5725L2.46147 10.5737Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nexport default DragIcon;\n","import ActionCable from 'actioncable';\nimport { ExecutionResult } from 'graphql/execution/execute';\nimport isEmpty from 'lodash.isempty';\nimport { Observable } from 'rxjs';\nimport { OperationOptions } from 'subscriptions-transport-ws';\n\ntype DisconnectCallback = () => void;\n\nconst CHANNEL_ID_RANGE = 100_000;\n\nclass ActionCableClient {\n private wsURL: string;\n\n private cable: ActionCable.Cable | null = null;\n\n private subscriptions: Map<string, ActionCable.Channel> = new Map<string, ActionCable.Channel>();\n\n private onDisconnect?: DisconnectCallback;\n\n constructor(url: string, onDisconnect?: DisconnectCallback) {\n this.wsURL = url;\n this.onDisconnect = onDisconnect;\n }\n\n private addSubscription = (id: string, subscription: ActionCable.Channel) => {\n this.subscriptions.set(id, subscription);\n };\n\n public connect(token: string, lang: string): void {\n this.cable = ActionCable.createConsumer(`${this.wsURL}?token=${token}&lang=${lang}`);\n }\n\n public disconnect(): void {\n if (!this.cable) return;\n\n this.subscriptions.forEach((channel) => {\n channel.unsubscribe();\n });\n this.subscriptions.clear();\n\n this.cable.disconnect();\n this.cable = null;\n }\n\n public request(request: OperationOptions): Observable<ExecutionResult> {\n const { cable, subscriptions, addSubscription, onDisconnect } = this;\n\n return new Observable((observer) => {\n if (cable) {\n const subscriptionId = (request.variables as Record<string, string>)?.id || 'company';\n\n if (!subscriptions.has(subscriptionId)) {\n const channel = cable.subscriptions.create(\n {\n channel: 'GraphqlChannel',\n channelId: Math.round(Date.now() + Math.random() * CHANNEL_ID_RANGE).toString(16),\n },\n {\n connected() {\n this.perform('execute', request);\n },\n disconnected() {\n if (onDisconnect) onDisconnect();\n },\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n received(payload: any) {\n if (!payload.more) {\n if (observer.complete) {\n observer.complete();\n }\n } else if (payload.result.errors) {\n if (observer.error) {\n observer.error(payload.result.errors[0]);\n }\n } else if (payload.result.data) {\n if (observer.next) {\n if (!isEmpty(payload.result.data)) {\n observer.next(payload.result);\n }\n }\n }\n },\n },\n );\n addSubscription(subscriptionId, channel);\n }\n }\n });\n }\n\n public hasSubscription(id: string): boolean {\n return this.subscriptions.has(id);\n }\n}\n\nexport default ActionCableClient;\n","import { OperationOptions } from 'subscriptions-transport-ws';\n\nimport ActionCableClient from './actioncable-client';\n\ninterface ObjMap<T> {\n [key: string]: T;\n}\n\ninterface SubscriptionEntry<T = unknown> {\n query: OperationOptions['query'];\n variables?: OperationOptions['variables'];\n onData?: (item: T) => void;\n onError: (error: Error) => void;\n}\n\nlet nextSubscriptionId = 0;\n\nclass GraphqlWsClient {\n private actionCableClient: ActionCableClient | null = null;\n\n private registry: Map<string, SubscriptionEntry> = new Map();\n\n private activeRxSubscriptions: Map<string, { unsubscribe: () => void }> = new Map();\n\n constructor(url: string, token: string, lang: string, onDisconnect?: () => void) {\n this.actionCableClient = new ActionCableClient(url, onDisconnect);\n this.actionCableClient.connect(token, lang);\n }\n\n public subscribe<T = unknown>(\n query: OperationOptions['query'],\n variables?: OperationOptions['variables'],\n onData?: (item: T) => void,\n onError: (error: Error) => void = (error) => {\n throw error;\n },\n ) {\n const key = String(++nextSubscriptionId);\n\n this.registry.set(key, {\n query,\n variables,\n onData: onData as ((item: unknown) => void) | undefined,\n onError,\n });\n\n const rxSub = this.subscribeToActionCable<T>(query, variables, onData, onError);\n this.activeRxSubscriptions.set(key, rxSub);\n\n return () => {\n rxSub.unsubscribe();\n this.activeRxSubscriptions.delete(key);\n this.registry.delete(key);\n };\n }\n\n public disconnect(): void {\n this.activeRxSubscriptions.forEach((sub) => sub.unsubscribe());\n this.activeRxSubscriptions.clear();\n this.registry.clear();\n\n this.actionCableClient?.disconnect();\n this.actionCableClient = null;\n }\n\n public getActiveSubscriptions(): Map<string, SubscriptionEntry> {\n return new Map(this.registry);\n }\n\n public resubscribe(): void {\n this.activeRxSubscriptions.forEach((sub) => sub.unsubscribe());\n this.activeRxSubscriptions.clear();\n\n this.registry.forEach((entry, key) => {\n const rxSub = this.subscribeToActionCable(entry.query, entry.variables, entry.onData, entry.onError);\n this.activeRxSubscriptions.set(key, rxSub);\n });\n }\n\n private subscribeToActionCable<T = unknown>(\n query: OperationOptions['query'],\n variables: OperationOptions['variables'],\n onData?: (item: T) => void,\n onError: (error: Error) => void = (error) => {\n throw error;\n },\n ) {\n const getFirstValue = (data: ObjMap<unknown>): T => {\n const keys = Object.keys(data);\n\n if (keys.length !== 1) throw new Error(`Expected exactly one response key, got: ${keys.join(', ')}`);\n\n return data[keys[0]] as T;\n };\n\n if (!this.actionCableClient) throw new Error('No WS client available');\n\n const subscription = this.actionCableClient.request({ query, variables }).subscribe({\n next({ data, errors }) {\n if (errors) {\n return onError(new Error(JSON.stringify(errors)));\n }\n if (data && onData) onData(getFirstValue(data));\n },\n });\n\n return subscription;\n }\n}\n\nexport default GraphqlWsClient;\nexport type { SubscriptionEntry };\n","import GraphqlWsClient from './utils/graphql-ws-client';\n\nexport const getGqlWsClient = (url: string, token: string, lang: string, onDisconnect?: () => void) => {\n return new GraphqlWsClient(url, token, lang, onDisconnect);\n};\n","import { GraphQLClient } from 'graphql-request';\n\nimport { getSdk } from '../graphql-sdk';\n\nexport const getGraphqlSdk = (url: string, fetch: typeof global.fetch) => {\n const graphqlClient = new GraphQLClient(url, { fetch });\n\n return getSdk(graphqlClient);\n};\n","import { useEffect, useRef, useState } from 'react';\n\nimport { fetch, useStore } from 'andoncloud-sdk';\n\nimport { Sdk } from '../graphql-sdk';\nimport { getGqlWsClient } from '../graphql-ws';\nimport { getGraphqlSdk } from '../helpers/sdk';\nimport { GqlClients } from '../types';\nimport GraphqlWsClient from '../utils/graphql-ws-client';\n\ninterface ClientsProps {\n url: string;\n wsUrl?: string;\n lang: 'pl' | 'en';\n}\n\nconst useGqlClients = ({ url, wsUrl: gqlWsUrl, lang }: ClientsProps): GqlClients => {\n // -- SDK / framework hooks --\n const { sessionStore } = useStore();\n\n // -- Local state --\n const [graphqlSdk, setGraphqlSdk] = useState<Sdk>();\n const [gqlWsClient, setGqlWsClient] = useState<GraphqlWsClient>();\n const wsClientRef = useRef<GraphqlWsClient | undefined>(undefined);\n const previousTokenRef = useRef<string>('');\n\n // -- Data layer --\n const wsUrl = gqlWsUrl || url.replace('graphql', 'cable');\n const token = sessionStore.loginStatus.authResponse?.accessToken || '';\n\n useEffect(() => {\n if (url) {\n setGraphqlSdk(getGraphqlSdk(url, fetch));\n }\n }, [url]);\n\n useEffect(() => {\n if (!url || !token) return;\n\n if (token === previousTokenRef.current) return;\n previousTokenRef.current = token;\n\n const previousClient = wsClientRef.current;\n const activeSubscriptions = previousClient?.getActiveSubscriptions();\n\n const onDisconnect = () => {\n const status = sessionStore.loginStatus.status;\n\n if (status === 'connected') {\n console.warn('[dashboard-toolkit] WebSocket disconnected unexpectedly — waiting for token refresh');\n }\n };\n\n const newClient = getGqlWsClient(wsUrl, token, lang, onDisconnect);\n wsClientRef.current = newClient;\n\n if (activeSubscriptions && activeSubscriptions.size > 0) {\n activeSubscriptions.forEach((entry) => {\n newClient.subscribe(entry.query, entry.variables, entry.onData, entry.onError);\n });\n }\n\n setGqlWsClient(newClient);\n\n if (previousClient) {\n previousClient.disconnect();\n }\n\n return () => {\n newClient.disconnect();\n wsClientRef.current = undefined;\n };\n }, [url, wsUrl, token, lang]);\n\n return { graphqlSdk, gqlWsClient };\n};\n\nexport default useGqlClients;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nexport const container: SxProps<Theme> = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n height: '100%',\n gap: (theme) => theme.spacing(2),\n padding: (theme) => theme.spacing(2),\n};\n","import { ErrorBoundary, FallbackProps } from 'react-error-boundary';\nimport { useTranslation } from 'react-i18next';\n\nimport { Box, Button, Typography } from '@mui/material';\n\nimport * as styles from './errorBoundaryStyles';\n\nconst ErrorFallback: React.FC<FallbackProps> = ({ resetErrorBoundary }) => {\n // -- Translation --\n const { t } = useTranslation();\n\n return (\n <Box sx={styles.container}>\n <Typography variant=\"body2\" color=\"text.primary\">\n {t('widgetCard.error')}\n </Typography>\n\n <Button variant=\"outlined\" size=\"small\" onClick={resetErrorBoundary} data-testid=\"widget-card.error-retry\">\n {t('widgetCard.retry')}\n </Button>\n </Box>\n );\n};\n\nconst handleError = (error: Error, info: React.ErrorInfo) => {\n console.error('[dashboard-toolkit] Widget error:', error, info);\n};\n\ninterface WidgetErrorBoundaryProps {\n children: React.ReactNode;\n}\n\nconst WidgetErrorBoundary: React.FC<WidgetErrorBoundaryProps> = ({ children }) => {\n return (\n <ErrorBoundary FallbackComponent={ErrorFallback} onError={handleError}>\n {children}\n </ErrorBoundary>\n );\n};\n\nexport { WidgetErrorBoundary };\n","const resizeIcon = `data:image/svg+xml,${encodeURIComponent(`<svg width=\"8\" height=\"8\" viewBox=\"0 0 8 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M0.602543 3.50035C0.853628 3.50035 1.04095 3.3172 1.04095 3.0624V2.77972L0.95725 1.54551L1.87789 2.51297L3.01774 3.6596C3.10143 3.74719 3.20904 3.787 3.32462 3.787C3.59563 3.787 3.79092 3.60386 3.79092 3.33313C3.79092 3.20971 3.74309 3.10221 3.6594 3.01462L2.51557 1.87198L1.54311 0.956271L2.78658 1.03988H3.09745C3.34853 1.03988 3.53983 0.856738 3.53983 0.601932C3.53983 0.347127 3.35252 0.160004 3.09745 0.160004H0.885512C0.427183 0.160004 0.160156 0.426753 0.160156 0.884607V3.0624C0.160156 3.31322 0.347473 3.50035 0.602543 3.50035ZM4.90287 7.84H7.1148C7.57313 7.84 7.84016 7.57325 7.84016 7.1154V4.93761C7.84016 4.68678 7.64885 4.49966 7.39777 4.49966C7.14668 4.49966 6.95937 4.6828 6.95937 4.93761V5.22028L7.04306 6.4545L6.12242 5.48703L4.98257 4.34041C4.89888 4.25282 4.79127 4.21301 4.67171 4.21301C4.4007 4.21301 4.20541 4.39615 4.20541 4.66688C4.20541 4.7903 4.25323 4.90178 4.34091 4.98538L5.48474 6.12803L6.4572 7.04374L5.21373 6.96013H4.90287C4.6478 6.96013 4.46048 7.14327 4.46048 7.39808C4.46048 7.65288 4.6478 7.84 4.90287 7.84Z\" fill=\"white\"/>\n</svg>`)}`;\n\nexport default resizeIcon;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nimport resizeIcon from '../../assets/resize-icon';\n\nconst reducedMotion = '@media (prefers-reduced-motion: reduce)';\n\nconst styles: Record<string, SxProps<Theme>> = {\n root: {\n boxShadow: 'none',\n '& .react-resizable-handle': {\n width: '24px',\n height: '24px',\n borderRadius: '4px',\n background: (theme) => `${theme.palette.primary.main} url(${resizeIcon})`,\n backgroundRepeat: 'no-repeat',\n backgroundSize: '50%',\n backgroundPosition: '50%',\n '&:hover': {\n backgroundColor: (theme) => theme.palette.primary.dark,\n },\n },\n '& .react-resizable-handle:after': {\n display: 'none',\n },\n },\n header: {\n position: 'relative',\n overflow: 'hidden',\n height: '40px',\n '& .MuiCardHeader-avatar': {\n marginLeft: (theme) => `-${theme.spacing(1)}`,\n },\n '& .MuiCardHeader-content': {\n transition: 'margin 450ms ease',\n overflow: 'hidden',\n minWidth: 0,\n },\n },\n headerPreview: {\n background: 'transparent',\n '& .MuiCardHeader-content': {\n zIndex: 1,\n marginLeft: (theme) => theme.spacing(-5),\n marginRight: (theme) => theme.spacing(-28),\n },\n },\n title: {\n display: 'block',\n overflow: 'hidden',\n color: (theme) => theme.palette.common.white,\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n },\n titlePreview: {\n color: (theme) => theme.palette.text.primary,\n },\n controls: {\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n opacity: 1,\n visibility: 'visible' as const,\n transform: 'translateX(0)',\n transition: 'opacity 450ms ease, visibility 450ms, transform 450ms ease',\n zIndex: 1,\n [reducedMotion]: {\n transitionDuration: '0s',\n },\n },\n controlsHiddenLeft: {\n opacity: 0,\n visibility: 'hidden' as const,\n transform: 'translateX(-100%)',\n },\n controlsHiddenRight: {\n opacity: 0,\n visibility: 'hidden' as const,\n transform: 'translateX(100%)',\n },\n dragIcon: {\n width: '30px',\n height: '30px',\n padding: '8px',\n borderRadius: '4px',\n background: (theme) => theme.palette.primary.main,\n '&:hover': {\n cursor: 'move',\n background: (theme) => theme.palette.primary.dark,\n },\n },\n actionButtons: {\n height: '30px',\n marginTop: '-7px',\n },\n settingsButton: {\n color: 'rgba(255, 255, 255, 0.45)',\n borderRadius: '4px',\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderColor: 'rgba(255,255,255,0.1)',\n background: 'rgba(255,255,255,0.1)',\n '&:focus': {\n boxShadow: '0 0 0 1px rgba(255, 255, 255, 0.1)',\n },\n '&:hover': {\n opacity: 0.8,\n },\n },\n infoButton: {\n marginLeft: '1px',\n color: 'rgba(255, 255, 255, 0.45)',\n borderRadius: 0,\n borderColor: 'rgba(255,255,255,0.1)',\n background: 'rgba(255,255,255,0.1)',\n '&:focus': {\n boxShadow: '0 0 0 1px rgba(255, 255, 255, 0.1)',\n },\n '&:hover': {\n opacity: 0.8,\n },\n },\n deleteButton: {\n marginLeft: '1px',\n color: 'rgba(255, 255, 255, 0.45)',\n borderRadius: '4px',\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderColor: 'rgba(255,255,255,0.1)',\n background: 'rgba(255,255,255,0.1)',\n '&:focus': {\n boxShadow: '0 0 0 1px rgba(255, 255, 255, 0.1)',\n },\n '&:hover': {\n opacity: 0.8,\n },\n },\n content: {\n position: 'relative',\n height: 'calc(100% - 40px)',\n padding: 0,\n background: 'transparent',\n border: '1px solid rgba(255, 255, 255, 0.2)',\n borderTop: 'none',\n borderRadius: '4px',\n boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.25)',\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n left: 0,\n display: 'block',\n width: '100%',\n height: '1px',\n transform: 'scaleX(0)',\n transformOrigin: 'left',\n transition: 'transform 150ms ease',\n backgroundColor: 'rgba(255, 255, 255, 0.2)',\n [reducedMotion]: {\n transitionDuration: '0s',\n },\n },\n '&:last-child': {\n paddingBottom: 0,\n },\n },\n contentPreview: {\n '&::before': {\n transform: 'scaleX(1)',\n },\n },\n};\n\nexport { styles };\n","import { forwardRef, Fragment, useCallback, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Delete, Info, Settings } from '@mui/icons-material';\nimport { LoadingButton } from '@mui/lab';\nimport { Box, Button, Card, CardContent, CardHeader, Stack, SvgIcon, Tooltip, Typography } from '@mui/material';\nimport { AccessGuard, refreshUserData, registerTranslations, useAccess } from 'andoncloud-sdk';\nimport { mergeSx } from 'merge-sx';\n\nimport { AccessRequestTypeEnum } from '@/graphql-sdk';\nimport locales from '@/locales';\nimport { BaseWidgetData, BaseWidgetSettings, WidgetCardProps as BaseWidgetCardProps } from '@/types';\n\nimport DragIcon from '../../assets/DragIcon';\nimport useGqlClients from '../../hooks/useGqlClients';\nimport ConfirmTooltip from '../ConfirmTooltip';\n\nimport { WidgetErrorBoundary } from './ErrorBoundary';\n\nimport { styles } from './styles';\n\nregisterTranslations(locales);\n\ntype WidgetCardProps = Omit<BaseWidgetCardProps, 'ref'> & { ref?: React.LegacyRef<HTMLDivElement> };\n\nconst WidgetCard: React.FC<WidgetCardProps> = forwardRef(\n (\n {\n children,\n title,\n Widget,\n id,\n getDisplayName,\n getTitle,\n thumbnail,\n url,\n wsUrl,\n lang,\n filters,\n openSettingsModal,\n onSettingsModalOpened,\n onSettingsModalClosed,\n sidePanelOpened,\n updateSidePanelProps,\n onDelete,\n editMode,\n version,\n requiredFeatures,\n extraPermissions,\n ...cardProps\n },\n ref,\n ) => {\n // -- SDK / framework hooks --\n const { graphqlSdk } = useGqlClients({ url, wsUrl, lang });\n const { hasAccess } = useAccess(requiredFeatures, { extraPermissions });\n\n // -- Local state --\n const [widgetData, setWidgetData] = useState<BaseWidgetData | undefined>();\n const [widgetSettings, setWidgetSettings] = useState<BaseWidgetSettings | undefined>();\n const [deleteInProgress, setDeleteInProgress] = useState<boolean>(false);\n const [removeTooltipOpened, setRemoveTooltipOpened] = useState<boolean>(false);\n\n // -- Data layer --\n const handleDataChange = useCallback((newData: BaseWidgetData) => {\n setWidgetData(newData);\n }, []);\n\n const handleSettingsChange = useCallback((newSettings: BaseWidgetSettings) => {\n setWidgetSettings(newSettings);\n }, []);\n\n // -- Translation --\n const { t } = useTranslation();\n\n // --- Title resolution ---\n\n const resolvedTitle = useCallback((): string => {\n const trimmed = widgetSettings?.customTitle?.trim();\n if (trimmed) return trimmed;\n\n if (editMode) {\n return (getDisplayName ? getDisplayName(lang) : title) as string;\n }\n\n if (getTitle) {\n try {\n const result = getTitle(widgetData, widgetSettings, filters, lang);\n if (result) return result;\n } catch {\n // silent fallback\n }\n }\n\n return title as string;\n }, [widgetData, widgetSettings, filters, lang, getDisplayName, getTitle, title, editMode]);\n\n const displayTitle = resolvedTitle();\n\n // --- Handlers ---\n\n const handleOpenSettingsModal = () => {\n if (onSettingsModalOpened) onSettingsModalOpened();\n };\n\n const handleDelete = async () => {\n setDeleteInProgress(true);\n setRemoveTooltipOpened(false);\n\n if (onDelete) await onDelete();\n\n setDeleteInProgress(false);\n };\n\n const handleTrialRequest = async (featureKey: string): Promise<boolean> => {\n try {\n await graphqlSdk?.startTrial({ input: { featureKey } });\n await refreshUserData();\n return true;\n } catch (error) {\n console.error('Failed to start trial:', error);\n return false;\n }\n };\n\n const handleFeatureRequest = async ({\n featureKey,\n requestType,\n workplaceId,\n }: {\n featureKey: string;\n requestType: string;\n workplaceId?: string;\n }): Promise<boolean> => {\n try {\n await graphqlSdk?.requestFeatureAccess({\n input: { featureKey, requestType: requestType.toUpperCase() as AccessRequestTypeEnum, workplaceId },\n });\n await refreshUserData();\n return true;\n } catch (error) {\n console.error('Failed to request feature access:', error);\n return false;\n }\n };\n\n // --- Render helpers ---\n\n const renderDragHandle = () => {\n return <SvgIcon component={DragIcon} className=\"draggable-handle\" sx={styles.dragIcon} inheritViewBox />;\n };\n\n const renderActionButtons = () => {\n return (\n <Stack direction=\"row\" sx={styles.actionButtons}>\n <Button\n color=\"secondary\"\n sx={styles.settingsButton}\n onClick={handleOpenSettingsModal}\n disabled={!hasAccess}\n data-testid=\"widget-card.settings-button\"\n >\n <Settings />\n </Button>\n {version && (\n <Fragment>\n <Tooltip title={version}>\n <Button color=\"secondary\" sx={styles.infoButton} data-testid=\"widget-card.info-button\">\n <Info />\n </Button>\n </Tooltip>\n </Fragment>\n )}\n <ConfirmTooltip\n open={removeTooltipOpened}\n confirmMessage={t('Are you sure you want to delete this widget?')}\n confirmButtonText={t('Delete')}\n cancelButtonText={t('Cancel')}\n onCancel={() => setRemoveTooltipOpened(false)}\n onConfirm={handleDelete}\n confirmButtonTestId=\"widget-card.delete-confirm\"\n cancelButtonTestId=\"widget-card.delete-cancel\"\n >\n <LoadingButton\n color=\"secondary\"\n sx={styles.deleteButton}\n onClick={(e) => {\n e.stopPropagation();\n\n setRemoveTooltipOpened(true);\n }}\n loading={deleteInProgress}\n data-testid=\"widget-card.delete-button\"\n >\n <Delete />\n </LoadingButton>\n </ConfirmTooltip>\n </Stack>\n );\n };\n\n return (\n <Card ref={ref} sx={styles.root} {...cardProps}>\n <CardHeader\n avatar={<Box sx={mergeSx(styles.controls, !editMode && styles.controlsHiddenLeft)}>{renderDragHandle()}</Box>}\n title={\n <Typography\n variant=\"subtitle1\"\n sx={mergeSx(styles.title, !editMode && styles.titlePreview)}\n data-testid=\"widget-card.title\"\n >\n {displayTitle}\n </Typography>\n }\n action={\n <Box sx={mergeSx(styles.controls, !editMode && styles.controlsHiddenRight)}>{renderActionButtons()}</Box>\n }\n sx={mergeSx(styles.header, !editMode && styles.headerPreview)}\n data-testid=\"widget-card.header\"\n />\n <CardContent sx={mergeSx(styles.content, !editMode && styles.contentPreview)} data-testid=\"widget-card.content\">\n <AccessGuard\n features={requiredFeatures}\n extraPermissions={extraPermissions}\n onTrialRequest={handleTrialRequest}\n onFeatureRequest={handleFeatureRequest}\n backgroundImage={thumbnail}\n >\n <WidgetErrorBoundary>\n <Widget\n id={id}\n url={url}\n wsUrl={wsUrl}\n lang={lang}\n filters={filters}\n onDataChange={handleDataChange}\n onSettingsChange={handleSettingsChange}\n openSettingsModal={openSettingsModal}\n onSettingsModalOpened={onSettingsModalOpened}\n onSettingsModalClosed={onSettingsModalClosed}\n sidePanelOpened={sidePanelOpened}\n updateSidePanelProps={updateSidePanelProps}\n editMode={editMode}\n />\n </WidgetErrorBoundary>\n </AccessGuard>\n </CardContent>\n {/* resizable handle */}\n {editMode && children}\n </Card>\n );\n },\n);\n\nexport { WidgetCard };\n","import dayjs from 'dayjs';\n\nimport { InsightsAggregation } from '../graphql-sdk';\n\ntype DateRange = {\n dateFrom: string;\n dateTo: string;\n};\n\nconst MAX_DAYS_HOURLY = 1;\nconst MIN_DAYS_DAILY = 2;\nconst MAX_DAYS_DAILY = 31;\nconst MIN_DAYS_WEEKLY = 14;\nconst MAX_MONTHS_WEEKLY = 6;\nconst MIN_MONTHS_MONTHLY = 3;\nconst MAX_MONTHS_MONTHLY = 12;\n\nconst getValidAggregations = (dateRange: DateRange): InsightsAggregation[] => {\n const from = dayjs(dateRange.dateFrom);\n const to = dayjs(dateRange.dateTo);\n const days = to.diff(from, 'day');\n const months = to.diff(from, 'month');\n\n const valid: InsightsAggregation[] = [];\n\n if (days <= MAX_DAYS_HOURLY) {\n valid.push(InsightsAggregation.Hourly);\n }\n\n if (days >= MIN_DAYS_DAILY && days <= MAX_DAYS_DAILY) {\n valid.push(InsightsAggregation.Daily);\n }\n\n if (days >= MIN_DAYS_WEEKLY && months <= MAX_MONTHS_WEEKLY) {\n valid.push(InsightsAggregation.Weekly);\n }\n\n if (months >= MIN_MONTHS_MONTHLY && months <= MAX_MONTHS_MONTHLY) {\n valid.push(InsightsAggregation.Monthly);\n }\n\n return valid;\n};\n\nconst resolveAutoAggregation = (dateRange: DateRange): InsightsAggregation => {\n const from = dayjs(dateRange.dateFrom);\n const to = dayjs(dateRange.dateTo);\n const days = to.diff(from, 'day');\n const months = to.diff(from, 'month');\n\n if (days <= 1) {\n return InsightsAggregation.Hourly;\n }\n\n if (days <= 13) {\n return InsightsAggregation.Daily;\n }\n\n if (months < 3) {\n return InsightsAggregation.Weekly;\n }\n\n return InsightsAggregation.Monthly;\n};\n\nconst resolveAggregation = (dateRange: DateRange, savedAggregation?: InsightsAggregation): InsightsAggregation => {\n if (savedAggregation) {\n const valid = getValidAggregations(dateRange);\n\n if (valid.includes(savedAggregation)) {\n return savedAggregation;\n }\n }\n\n return resolveAutoAggregation(dateRange);\n};\n\nexport { getValidAggregations, resolveAggregation };\n","import { Dayjs } from 'dayjs';\n\nexport const generateTimeRange = (\n start: Dayjs,\n end: Dayjs,\n unit: 'minutes' | 'hours' | 'days',\n step: number,\n): Dayjs[] => {\n const result: Dayjs[] = [];\n let current = start;\n const isReverse = start.isAfter(end);\n\n while (isReverse ? current.isAfter(end) || current.isSame(end) : current.isBefore(end) || current.isSame(end)) {\n result.push(current);\n current = isReverse ? current.subtract(step, unit) : current.add(step, unit);\n }\n return result;\n};\n","export const LIBRARY_VERSION = '1.5.64';\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["styles","styles","en","pl","styles","FEATURE_KEY","styles","styles","styles","styles","styles","styles","styles","styles","styles","styles","locales","styles","Select","styles.container","locales"],"sources":["../src/components/ConfirmTooltip/styles.ts","../src/components/ConfirmTooltip/index.tsx","../src/graphql-sdk.ts","../src/helpers/filters.ts","../src/locales/en/translation.json","../src/locales/pl/translation.json","../src/locales/index.ts","../src/components/DashboardFilters/AccessDeniedModal/styles.ts","../src/components/DashboardFilters/AccessDeniedModal/index.tsx","../src/components/DashboardFilters/DayTypeSelector/styles.ts","../src/components/DashboardFilters/DayTypeSelector/index.tsx","../src/helpers/shifts.ts","../src/helpers/periods.ts","../src/components/DashboardFilters/PeriodList/styles.ts","../src/components/DashboardFilters/PeriodList/index.tsx","../src/components/DashboardFilters/DateRangePicker/styles.ts","../src/components/DashboardFilters/DateRangePicker/index.tsx","../src/components/DashboardFilters/ShiftSelector/styles.ts","../src/components/DashboardFilters/ShiftSelector/index.tsx","../src/components/DashboardFilters/useDashboardFilters.ts","../src/components/DashboardFilters/styles.ts","../src/components/DashboardFilters/index.tsx","../src/assets/bg-pattern.ts","../src/components/MetricCard/styles.ts","../src/components/MetricCard/index.tsx","../src/components/SortableSelect/index.tsx","../src/assets/DragIcon.tsx","../src/utils/actioncable-client.ts","../src/utils/graphql-ws-client.ts","../src/graphql-ws.ts","../src/helpers/sdk.ts","../src/hooks/useGqlClients.ts","../src/components/WidgetCard/errorBoundaryStyles.ts","../src/components/WidgetCard/ErrorBoundary.tsx","../src/assets/resize-icon.ts","../src/components/WidgetCard/styles.ts","../src/components/WidgetCard/index.tsx","../src/helpers/aggregation.ts","../src/helpers/time.ts","../src/version.ts"],"sourcesContent":["import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n buttons: {\n paddingTop: (theme) => theme.spacing(2),\n },\n cancelButton: {\n marginRight: '10px',\n },\n popper: {\n '.MuiTooltip-tooltip': {\n padding: '20px',\n fontSize: '14px',\n borderRadius: '8px',\n border: `1px solid #4E5A67`,\n background: '#1C1F25',\n boxShadow: '0px 4px 10.4px 0px rgba(255, 255, 255, 0.05)',\n },\n '.MuiTooltip-arrow': {\n color: '#4E5A67',\n },\n },\n};\n\nexport default styles;\n","import { Box, Button, Stack, Tooltip, TooltipProps, Typography } from '@mui/material';\n\nimport styles from './styles';\n\ninterface ConfirmTooltipProps extends Omit<TooltipProps, 'title'> {\n confirmMessage: string;\n confirmButtonText: string;\n cancelButtonText: string;\n onCancel: () => void;\n onConfirm: () => void;\n confirmButtonTestId?: string;\n cancelButtonTestId?: string;\n}\n\nconst ConfirmTooltip: React.FC<ConfirmTooltipProps> = ({\n children,\n confirmMessage,\n confirmButtonText,\n cancelButtonText,\n onCancel,\n onConfirm,\n confirmButtonTestId,\n cancelButtonTestId,\n ...props\n}) => {\n return (\n <Tooltip\n {...props}\n placement=\"bottom-end\"\n title={\n <Box>\n <Typography>{confirmMessage}</Typography>\n <Stack direction=\"row\" justifyContent=\"flex-end\" sx={styles.buttons}>\n <Button\n variant=\"outlined\"\n color=\"secondary\"\n onClick={(e) => {\n e.stopPropagation();\n\n onCancel();\n }}\n sx={styles.cancelButton}\n data-testid={cancelButtonTestId}\n >\n {cancelButtonText}\n </Button>\n <Button\n variant=\"contained\"\n color=\"error\"\n onClick={(e) => {\n e.stopPropagation();\n\n onConfirm();\n }}\n data-testid={confirmButtonTestId}\n >\n {confirmButtonText}\n </Button>\n </Stack>\n </Box>\n }\n PopperProps={{ sx: styles.popper }}\n arrow\n >\n {children}\n </Tooltip>\n );\n};\n\nexport default ConfirmTooltip;\n","import { GraphQLClient, RequestOptions } from 'graphql-request';\nimport gql from 'graphql-tag';\nexport type Maybe<T> = T | null;\nexport type InputMaybe<T> = Maybe<T>;\nexport type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };\nexport type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };\nexport type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };\nexport type MakeEmpty<T extends { [key: string]: unknown }, K extends keyof T> = { [_ in K]?: never };\nexport type Incremental<T> = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never };\ntype GraphQLClientRequestHeaders = RequestOptions['requestHeaders'];\n/** All built-in and custom scalars, mapped to their actual values */\nexport type Scalars = {\n ID: { input: string; output: string; }\n String: { input: string; output: string; }\n Boolean: { input: boolean; output: boolean; }\n Int: { input: number; output: number; }\n Float: { input: number; output: number; }\n /** An ISO 8601-encoded date */\n ISO8601Date: { input: any; output: any; }\n /** An ISO 8601-encoded datetime */\n ISO8601DateTime: { input: any; output: any; }\n /** Represents untyped JSON */\n JSON: { input: any; output: any; }\n};\n\nexport enum AccessRequestTypeEnum {\n FeatureAccess = 'FEATURE_ACCESS',\n Purchase = 'PURCHASE',\n TrialExpired = 'TRIAL_EXPIRED',\n Wishlist = 'WISHLIST'\n}\n\nexport type ActualStaffingCount = {\n __typename?: 'ActualStaffingCount';\n actualOperators: Scalars['Int']['output'];\n date: Scalars['ISO8601Date']['output'];\n hasDeviation: Scalars['Boolean']['output'];\n plannedOperators?: Maybe<Scalars['Int']['output']>;\n shift: Shift;\n workplace: Workplace;\n};\n\nexport type ActualStaffingCountFilter = {\n date?: InputMaybe<Scalars['ISO8601Date']['input']>;\n shift_id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplace_id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n};\n\nexport enum AndonLightColor {\n Gray = 'gray',\n Green = 'green',\n Red = 'red',\n Yellow = 'yellow'\n}\n\nexport type ApplicationInfo = {\n __typename?: 'ApplicationInfo';\n apiVersion: Scalars['String']['output'];\n};\n\nexport type AssignOperatorInput = {\n shiftId: Scalars['ID']['input'];\n userId: Scalars['ID']['input'];\n validFrom: Scalars['ISO8601Date']['input'];\n workplaceId: Scalars['ID']['input'];\n};\n\n/** Autogenerated return type of AssignOperatorToWorkplace */\nexport type AssignOperatorToWorkplacePayload = {\n __typename?: 'AssignOperatorToWorkplacePayload';\n assignment?: Maybe<WorkplaceAssignment>;\n errors?: Maybe<Array<MutationError>>;\n};\n\nexport type AssignedOperator = {\n __typename?: 'AssignedOperator';\n presenceStatus: PresenceStatusEnum;\n user: User;\n};\n\nexport type AssignmentSummary = {\n __typename?: 'AssignmentSummary';\n totalAssigned: Scalars['Int']['output'];\n totalCheckedIn: Scalars['Int']['output'];\n totalMissing: Scalars['Int']['output'];\n};\n\nexport type AvailabilityInsightsEntry = {\n __typename?: 'AvailabilityInsightsEntry';\n availability: Scalars['Float']['output'];\n label: Scalars['String']['output'];\n noData: Scalars['Boolean']['output'];\n};\n\nexport type AvailabilityInsightsInput = {\n comparedPeriods: Scalars['Int']['input'];\n dateFrom: Scalars['ISO8601DateTime']['input'];\n dateTo: Scalars['ISO8601DateTime']['input'];\n dayType: DayType;\n};\n\nexport type AvailabilityInsightsResult = {\n __typename?: 'AvailabilityInsightsResult';\n entries: Array<AvailabilityInsightsEntry>;\n};\n\nexport enum AvailabilityStatus {\n OffSchedule = 'OFF_SCHEDULE',\n PlannedStop = 'PLANNED_STOP',\n Stopped = 'STOPPED',\n Working = 'WORKING'\n}\n\nexport type BulkStaffingPlanInput = {\n plans: Array<StaffingPlanInput>;\n};\n\n/** Autogenerated return type of BulkUpsertStaffingPlans */\nexport type BulkUpsertStaffingPlansPayload = {\n __typename?: 'BulkUpsertStaffingPlansPayload';\n errors?: Maybe<Array<MutationError>>;\n staffingPlans?: Maybe<Array<StaffingPlan>>;\n};\n\nexport type CompanyConfig = {\n __typename?: 'CompanyConfig';\n devicesConfigs: Array<DeviceConfig>;\n displayedKpiItems: Array<Scalars['String']['output']>;\n reasonsRecommendationsEnabled: Scalars['Boolean']['output'];\n roleConfig: RoleConfig;\n statusChangeTransitionPermissionsUpdatedAt?: Maybe<Scalars['String']['output']>;\n workplacesConfigs: Array<WorkplaceConfig>;\n};\n\nexport type Counter = {\n __typename?: 'Counter';\n directoryId?: Maybe<Scalars['String']['output']>;\n hasNote: Scalars['Boolean']['output'];\n id: Scalars['ID']['output'];\n isDisabled: Scalars['Boolean']['output'];\n kind: CounterKindEnum;\n name: Scalars['String']['output'];\n position: Scalars['Int']['output'];\n value: Scalars['Float']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type CounterDirectory = {\n __typename?: 'CounterDirectory';\n directoryId?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name?: Maybe<Scalars['String']['output']>;\n position: Scalars['Int']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type CounterDirectoryFilter = {\n ancestry_cont?: InputMaybe<Scalars['String']['input']>;\n ancestry_contains?: InputMaybe<Scalars['String']['input']>;\n ancestry_end?: InputMaybe<Scalars['String']['input']>;\n ancestry_eq?: InputMaybe<Scalars['String']['input']>;\n ancestry_equals?: InputMaybe<Scalars['String']['input']>;\n ancestry_in?: InputMaybe<Array<Scalars['String']['input']>>;\n ancestry_not_eq?: InputMaybe<Scalars['String']['input']>;\n ancestry_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n ancestry_not_null?: InputMaybe<Scalars['String']['input']>;\n ancestry_null?: InputMaybe<Scalars['String']['input']>;\n ancestry_start?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n position_eq?: InputMaybe<Scalars['String']['input']>;\n position_equals?: InputMaybe<Scalars['String']['input']>;\n position_gt?: InputMaybe<Scalars['String']['input']>;\n position_gteq?: InputMaybe<Scalars['String']['input']>;\n position_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_lt?: InputMaybe<Scalars['String']['input']>;\n position_lteq?: InputMaybe<Scalars['String']['input']>;\n position_not_eq?: InputMaybe<Scalars['String']['input']>;\n position_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_not_null?: InputMaybe<Scalars['String']['input']>;\n position_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type CounterFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_eq?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_equals?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_gt?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_gteq?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n counter_directory_id_lt?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_lteq?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n counter_directory_id_not_null?: InputMaybe<Scalars['String']['input']>;\n counter_directory_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n handler_eq?: InputMaybe<Scalars['String']['input']>;\n handler_equals?: InputMaybe<Scalars['String']['input']>;\n handler_gt?: InputMaybe<Scalars['String']['input']>;\n handler_gteq?: InputMaybe<Scalars['String']['input']>;\n handler_in?: InputMaybe<Array<Scalars['String']['input']>>;\n handler_lt?: InputMaybe<Scalars['String']['input']>;\n handler_lteq?: InputMaybe<Scalars['String']['input']>;\n handler_not_eq?: InputMaybe<Scalars['String']['input']>;\n handler_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n handler_not_null?: InputMaybe<Scalars['String']['input']>;\n handler_null?: InputMaybe<Scalars['String']['input']>;\n has_note_eq?: InputMaybe<Scalars['String']['input']>;\n has_note_equals?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n incrementer_eq?: InputMaybe<Scalars['String']['input']>;\n incrementer_equals?: InputMaybe<Scalars['String']['input']>;\n incrementer_gt?: InputMaybe<Scalars['String']['input']>;\n incrementer_gteq?: InputMaybe<Scalars['String']['input']>;\n incrementer_in?: InputMaybe<Array<Scalars['String']['input']>>;\n incrementer_lt?: InputMaybe<Scalars['String']['input']>;\n incrementer_lteq?: InputMaybe<Scalars['String']['input']>;\n incrementer_not_eq?: InputMaybe<Scalars['String']['input']>;\n incrementer_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n incrementer_not_null?: InputMaybe<Scalars['String']['input']>;\n incrementer_null?: InputMaybe<Scalars['String']['input']>;\n is_disabled_eq?: InputMaybe<Scalars['String']['input']>;\n is_disabled_equals?: InputMaybe<Scalars['String']['input']>;\n kind_eq?: InputMaybe<Scalars['String']['input']>;\n kind_equals?: InputMaybe<Scalars['String']['input']>;\n kind_gt?: InputMaybe<Scalars['String']['input']>;\n kind_gteq?: InputMaybe<Scalars['String']['input']>;\n kind_in?: InputMaybe<Array<Scalars['String']['input']>>;\n kind_lt?: InputMaybe<Scalars['String']['input']>;\n kind_lteq?: InputMaybe<Scalars['String']['input']>;\n kind_not_eq?: InputMaybe<Scalars['String']['input']>;\n kind_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n kind_not_null?: InputMaybe<Scalars['String']['input']>;\n kind_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n order_resettable_eq?: InputMaybe<Scalars['String']['input']>;\n order_resettable_equals?: InputMaybe<Scalars['String']['input']>;\n platform_visible_eq?: InputMaybe<Scalars['String']['input']>;\n platform_visible_equals?: InputMaybe<Scalars['String']['input']>;\n position_eq?: InputMaybe<Scalars['String']['input']>;\n position_equals?: InputMaybe<Scalars['String']['input']>;\n position_gt?: InputMaybe<Scalars['String']['input']>;\n position_gteq?: InputMaybe<Scalars['String']['input']>;\n position_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_lt?: InputMaybe<Scalars['String']['input']>;\n position_lteq?: InputMaybe<Scalars['String']['input']>;\n position_not_eq?: InputMaybe<Scalars['String']['input']>;\n position_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_not_null?: InputMaybe<Scalars['String']['input']>;\n position_null?: InputMaybe<Scalars['String']['input']>;\n reason_id_eq?: InputMaybe<Scalars['String']['input']>;\n reason_id_equals?: InputMaybe<Scalars['String']['input']>;\n reason_id_gt?: InputMaybe<Scalars['String']['input']>;\n reason_id_gteq?: InputMaybe<Scalars['String']['input']>;\n reason_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_id_lt?: InputMaybe<Scalars['String']['input']>;\n reason_id_lteq?: InputMaybe<Scalars['String']['input']>;\n reason_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n reason_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_id_not_null?: InputMaybe<Scalars['String']['input']>;\n reason_id_null?: InputMaybe<Scalars['String']['input']>;\n reset_point_eq?: InputMaybe<Scalars['String']['input']>;\n reset_point_equals?: InputMaybe<Scalars['String']['input']>;\n reset_point_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n reset_point_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n reset_point_not_null?: InputMaybe<Scalars['String']['input']>;\n reset_point_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport enum CounterKindEnum {\n Bad = 'bad',\n Good = 'good'\n}\n\n/** Autogenerated return type of CreateDashboard */\nexport type CreateDashboardPayload = {\n __typename?: 'CreateDashboardPayload';\n dashboard?: Maybe<Dashboard>;\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of CreateOrder */\nexport type CreateOrderPayload = {\n __typename?: 'CreateOrderPayload';\n errors?: Maybe<Array<MutationError>>;\n order?: Maybe<Order>;\n};\n\n/** Autogenerated return type of CreateProduct */\nexport type CreateProductPayload = {\n __typename?: 'CreateProductPayload';\n errors?: Maybe<Array<MutationError>>;\n product?: Maybe<Product>;\n};\n\n/** Autogenerated return type of CreateStaffingPlan */\nexport type CreateStaffingPlanPayload = {\n __typename?: 'CreateStaffingPlanPayload';\n errors?: Maybe<Array<MutationError>>;\n staffingPlan?: Maybe<StaffingPlan>;\n};\n\n/** Autogenerated return type of CreateStatusChange */\nexport type CreateStatusChangePayload = {\n __typename?: 'CreateStatusChangePayload';\n errors?: Maybe<Array<MutationError>>;\n statusChange?: Maybe<StatusChange>;\n};\n\n/** Autogenerated return type of CreateUserPresence */\nexport type CreateUserPresencePayload = {\n __typename?: 'CreateUserPresencePayload';\n errors?: Maybe<Array<MutationError>>;\n userPresence?: Maybe<UserPresence>;\n};\n\n/** Autogenerated return type of CreateWidget */\nexport type CreateWidgetPayload = {\n __typename?: 'CreateWidgetPayload';\n errors?: Maybe<Array<MutationError>>;\n widget?: Maybe<Widget>;\n};\n\nexport type Dashboard = {\n __typename?: 'Dashboard';\n filters?: Maybe<Scalars['String']['output']>;\n gridLayout?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type DashboardFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n filters_cont?: InputMaybe<Scalars['String']['input']>;\n filters_contains?: InputMaybe<Scalars['String']['input']>;\n filters_end?: InputMaybe<Scalars['String']['input']>;\n filters_eq?: InputMaybe<Scalars['String']['input']>;\n filters_equals?: InputMaybe<Scalars['String']['input']>;\n filters_in?: InputMaybe<Array<Scalars['String']['input']>>;\n filters_not_eq?: InputMaybe<Scalars['String']['input']>;\n filters_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n filters_not_null?: InputMaybe<Scalars['String']['input']>;\n filters_null?: InputMaybe<Scalars['String']['input']>;\n filters_start?: InputMaybe<Scalars['String']['input']>;\n grid_layout_contains?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n settings_contains?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport enum DayType {\n Calendar = 'CALENDAR',\n Production = 'PRODUCTION'\n}\n\nexport type Department = {\n __typename?: 'Department';\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type DepartmentFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type DeviceConfig = {\n __typename?: 'DeviceConfig';\n defaultWorkplaceId: Scalars['String']['output'];\n deviceId: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type FloorPlan = {\n __typename?: 'FloorPlan';\n id: Scalars['ID']['output'];\n imageUrl: Scalars['String']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type FloorPlanFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport enum InsightsAggregation {\n Daily = 'DAILY',\n Hourly = 'HOURLY',\n Monthly = 'MONTHLY',\n Weekly = 'WEEKLY'\n}\n\nexport type Item = {\n __typename?: 'Item';\n count: Scalars['Float']['output'];\n id: Scalars['ID']['output'];\n order: Order;\n product?: Maybe<Product>;\n};\n\nexport type Metric = {\n __typename?: 'Metric';\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport enum MetricTypeEnum {\n Counter = 'COUNTER',\n Empty = 'EMPTY',\n Indicator = 'INDICATOR',\n Kpi = 'KPI',\n Timer = 'TIMER'\n}\n\nexport enum MetricUnitEnum {\n Duration = 'DURATION',\n Percent = 'PERCENT',\n Round = 'ROUND'\n}\n\nexport type MetricValue = {\n __typename?: 'MetricValue';\n active: Scalars['Boolean']['output'];\n id: Scalars['ID']['output'];\n metricId: Scalars['String']['output'];\n statusColor: AndonLightColor;\n textValue?: Maybe<Scalars['String']['output']>;\n timer?: Maybe<Scalars['Int']['output']>;\n type: MetricTypeEnum;\n unit?: Maybe<MetricUnitEnum>;\n workplaceId: Scalars['String']['output'];\n};\n\nexport type Mutation = {\n __typename?: 'Mutation';\n assignOperatorToWorkplace: AssignOperatorToWorkplacePayload;\n bulkUpsertStaffingPlans: BulkUpsertStaffingPlansPayload;\n createDashboard: CreateDashboardPayload;\n createOrder: CreateOrderPayload;\n createProduct: CreateProductPayload;\n createStaffingPlan: CreateStaffingPlanPayload;\n createStatusChange: CreateStatusChangePayload;\n createUserPresence: CreateUserPresencePayload;\n createWidget: CreateWidgetPayload;\n pauseOrderExecution: PauseOrderExecutionPayload;\n removeDashboard: RemoveDashboardPayload;\n removeStaffingPlan: RemoveStaffingPlanPayload;\n removeUserPresence: RemoveUserPresencePayload;\n removeWidget: RemoveWidgetPayload;\n removeWorkplaceUsersPresences: RemoveWorkplaceUsersPresencesPayload;\n requestFeatureAccess: RequestFeatureAccessMutationPayload;\n setCounter: SetCounterPayload;\n startOrderExecution: StartOrderExecutionPayload;\n startTrial: StartTrialMutationPayload;\n stopOrderExecution: StopOrderExecutionPayload;\n unassignOperatorFromWorkplace: UnassignOperatorFromWorkplacePayload;\n updateDashboard: UpdateDashboardPayload;\n updateNotification: UpdateNotificationPayload;\n updateOrder: UpdateOrderPayload;\n updateOrderExecution: UpdateOrderExecutionPayload;\n updateStaffingPlan: UpdateStaffingPlanPayload;\n updateStatusChange: UpdateStatusChangePayload;\n updateWidget: UpdateWidgetPayload;\n updateWorkOrder: UpdateWorkOrderPayload;\n};\n\n\nexport type MutationAssignOperatorToWorkplaceArgs = {\n input: AssignOperatorInput;\n};\n\n\nexport type MutationBulkUpsertStaffingPlansArgs = {\n input: BulkStaffingPlanInput;\n};\n\n\nexport type MutationCreateDashboardArgs = {\n filters?: InputMaybe<Scalars['String']['input']>;\n gridLayout?: InputMaybe<Scalars['String']['input']>;\n id: Scalars['ID']['input'];\n name: Scalars['String']['input'];\n};\n\n\nexport type MutationCreateOrderArgs = {\n id: Scalars['ID']['input'];\n number: Scalars['String']['input'];\n};\n\n\nexport type MutationCreateProductArgs = {\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n number: Scalars['String']['input'];\n};\n\n\nexport type MutationCreateStaffingPlanArgs = {\n input: StaffingPlanInput;\n};\n\n\nexport type MutationCreateStatusChangeArgs = {\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n reasonHasBeenRecommended?: InputMaybe<Scalars['Boolean']['input']>;\n reasonId: Scalars['ID']['input'];\n startedAt?: InputMaybe<Scalars['String']['input']>;\n userId?: InputMaybe<Scalars['ID']['input']>;\n workplaceId: Scalars['ID']['input'];\n};\n\n\nexport type MutationCreateUserPresenceArgs = {\n id: Scalars['ID']['input'];\n userToken: Scalars['String']['input'];\n workplaceId: Scalars['ID']['input'];\n};\n\n\nexport type MutationCreateWidgetArgs = {\n config?: InputMaybe<Scalars['String']['input']>;\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationPauseOrderExecutionArgs = {\n id: Scalars['ID']['input'];\n statusChangeId: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveDashboardArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveStaffingPlanArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveUserPresenceArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveWidgetArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationRemoveWorkplaceUsersPresencesArgs = {\n workplaceId: Scalars['ID']['input'];\n};\n\n\nexport type MutationRequestFeatureAccessArgs = {\n input: RequestFeatureAccessInput;\n};\n\n\nexport type MutationSetCounterArgs = {\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n orderExecutionId?: InputMaybe<Scalars['ID']['input']>;\n value: Scalars['Float']['input'];\n};\n\n\nexport type MutationStartOrderExecutionArgs = {\n id: Scalars['ID']['input'];\n itemCount?: InputMaybe<Scalars['Float']['input']>;\n order: OrderInput;\n product?: InputMaybe<ProductInput>;\n statusChangeId: Scalars['ID']['input'];\n workplaceId: Scalars['ID']['input'];\n};\n\n\nexport type MutationStartTrialArgs = {\n input: StartTrialInput;\n};\n\n\nexport type MutationStopOrderExecutionArgs = {\n id: Scalars['ID']['input'];\n statusChangeId: Scalars['ID']['input'];\n};\n\n\nexport type MutationUnassignOperatorFromWorkplaceArgs = {\n input: UnassignOperatorInput;\n};\n\n\nexport type MutationUpdateDashboardArgs = {\n filters?: InputMaybe<Scalars['String']['input']>;\n gridLayout: Scalars['String']['input'];\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n};\n\n\nexport type MutationUpdateNotificationArgs = {\n id: Scalars['ID']['input'];\n status: Scalars['String']['input'];\n};\n\n\nexport type MutationUpdateOrderArgs = {\n input: UpdateOrderInput;\n};\n\n\nexport type MutationUpdateOrderExecutionArgs = {\n id: Scalars['ID']['input'];\n standardRateId: Scalars['ID']['input'];\n};\n\n\nexport type MutationUpdateStaffingPlanArgs = {\n input: StaffingPlanUpdateInput;\n};\n\n\nexport type MutationUpdateStatusChangeArgs = {\n input: UpdateStatusChangeInput;\n};\n\n\nexport type MutationUpdateWidgetArgs = {\n config: Scalars['String']['input'];\n id: Scalars['ID']['input'];\n};\n\n\nexport type MutationUpdateWorkOrderArgs = {\n id: Scalars['ID']['input'];\n input: UpdateWorkOrderInput;\n};\n\nexport type MutationError = {\n __typename?: 'MutationError';\n field?: Maybe<Scalars['String']['output']>;\n messages: Array<Scalars['String']['output']>;\n};\n\nexport type Notification = {\n __typename?: 'Notification';\n channel?: Maybe<Scalars['String']['output']>;\n details?: Maybe<Scalars['String']['output']>;\n emitterId: Scalars['String']['output'];\n emitterType: Scalars['String']['output'];\n id: Scalars['ID']['output'];\n message: Scalars['String']['output'];\n receiverId: Scalars['String']['output'];\n receiverType: Scalars['String']['output'];\n status?: Maybe<Scalars['String']['output']>;\n};\n\nexport type NotificationFilter = {\n channel_eq?: InputMaybe<Scalars['String']['input']>;\n channel_equals?: InputMaybe<Scalars['String']['input']>;\n channel_gt?: InputMaybe<Scalars['String']['input']>;\n channel_gteq?: InputMaybe<Scalars['String']['input']>;\n channel_in?: InputMaybe<Array<Scalars['String']['input']>>;\n channel_lt?: InputMaybe<Scalars['String']['input']>;\n channel_lteq?: InputMaybe<Scalars['String']['input']>;\n channel_not_eq?: InputMaybe<Scalars['String']['input']>;\n channel_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n channel_not_null?: InputMaybe<Scalars['String']['input']>;\n channel_null?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n details_cont?: InputMaybe<Scalars['String']['input']>;\n details_contains?: InputMaybe<Scalars['String']['input']>;\n details_end?: InputMaybe<Scalars['String']['input']>;\n details_eq?: InputMaybe<Scalars['String']['input']>;\n details_equals?: InputMaybe<Scalars['String']['input']>;\n details_in?: InputMaybe<Array<Scalars['String']['input']>>;\n details_not_eq?: InputMaybe<Scalars['String']['input']>;\n details_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n details_not_null?: InputMaybe<Scalars['String']['input']>;\n details_null?: InputMaybe<Scalars['String']['input']>;\n details_start?: InputMaybe<Scalars['String']['input']>;\n emitter_id_eq?: InputMaybe<Scalars['String']['input']>;\n emitter_id_equals?: InputMaybe<Scalars['String']['input']>;\n emitter_id_gt?: InputMaybe<Scalars['String']['input']>;\n emitter_id_gteq?: InputMaybe<Scalars['String']['input']>;\n emitter_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n emitter_id_lt?: InputMaybe<Scalars['String']['input']>;\n emitter_id_lteq?: InputMaybe<Scalars['String']['input']>;\n emitter_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n emitter_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n emitter_id_not_null?: InputMaybe<Scalars['String']['input']>;\n emitter_id_null?: InputMaybe<Scalars['String']['input']>;\n emitter_type_cont?: InputMaybe<Scalars['String']['input']>;\n emitter_type_contains?: InputMaybe<Scalars['String']['input']>;\n emitter_type_end?: InputMaybe<Scalars['String']['input']>;\n emitter_type_eq?: InputMaybe<Scalars['String']['input']>;\n emitter_type_equals?: InputMaybe<Scalars['String']['input']>;\n emitter_type_in?: InputMaybe<Array<Scalars['String']['input']>>;\n emitter_type_not_eq?: InputMaybe<Scalars['String']['input']>;\n emitter_type_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n emitter_type_not_null?: InputMaybe<Scalars['String']['input']>;\n emitter_type_null?: InputMaybe<Scalars['String']['input']>;\n emitter_type_start?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n message_cont?: InputMaybe<Scalars['String']['input']>;\n message_contains?: InputMaybe<Scalars['String']['input']>;\n message_end?: InputMaybe<Scalars['String']['input']>;\n message_eq?: InputMaybe<Scalars['String']['input']>;\n message_equals?: InputMaybe<Scalars['String']['input']>;\n message_in?: InputMaybe<Array<Scalars['String']['input']>>;\n message_not_eq?: InputMaybe<Scalars['String']['input']>;\n message_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n message_not_null?: InputMaybe<Scalars['String']['input']>;\n message_null?: InputMaybe<Scalars['String']['input']>;\n message_start?: InputMaybe<Scalars['String']['input']>;\n message_symbol_cont?: InputMaybe<Scalars['String']['input']>;\n message_symbol_contains?: InputMaybe<Scalars['String']['input']>;\n message_symbol_end?: InputMaybe<Scalars['String']['input']>;\n message_symbol_eq?: InputMaybe<Scalars['String']['input']>;\n message_symbol_equals?: InputMaybe<Scalars['String']['input']>;\n message_symbol_in?: InputMaybe<Array<Scalars['String']['input']>>;\n message_symbol_not_eq?: InputMaybe<Scalars['String']['input']>;\n message_symbol_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n message_symbol_not_null?: InputMaybe<Scalars['String']['input']>;\n message_symbol_null?: InputMaybe<Scalars['String']['input']>;\n message_symbol_start?: InputMaybe<Scalars['String']['input']>;\n message_variables_contains?: InputMaybe<Scalars['String']['input']>;\n receiver_id_eq?: InputMaybe<Scalars['String']['input']>;\n receiver_id_equals?: InputMaybe<Scalars['String']['input']>;\n receiver_id_gt?: InputMaybe<Scalars['String']['input']>;\n receiver_id_gteq?: InputMaybe<Scalars['String']['input']>;\n receiver_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n receiver_id_lt?: InputMaybe<Scalars['String']['input']>;\n receiver_id_lteq?: InputMaybe<Scalars['String']['input']>;\n receiver_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n receiver_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n receiver_id_not_null?: InputMaybe<Scalars['String']['input']>;\n receiver_id_null?: InputMaybe<Scalars['String']['input']>;\n receiver_type_cont?: InputMaybe<Scalars['String']['input']>;\n receiver_type_contains?: InputMaybe<Scalars['String']['input']>;\n receiver_type_end?: InputMaybe<Scalars['String']['input']>;\n receiver_type_eq?: InputMaybe<Scalars['String']['input']>;\n receiver_type_equals?: InputMaybe<Scalars['String']['input']>;\n receiver_type_in?: InputMaybe<Array<Scalars['String']['input']>>;\n receiver_type_not_eq?: InputMaybe<Scalars['String']['input']>;\n receiver_type_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n receiver_type_not_null?: InputMaybe<Scalars['String']['input']>;\n receiver_type_null?: InputMaybe<Scalars['String']['input']>;\n receiver_type_start?: InputMaybe<Scalars['String']['input']>;\n status_eq?: InputMaybe<Scalars['String']['input']>;\n status_equals?: InputMaybe<Scalars['String']['input']>;\n status_gt?: InputMaybe<Scalars['String']['input']>;\n status_gteq?: InputMaybe<Scalars['String']['input']>;\n status_in?: InputMaybe<Array<Scalars['String']['input']>>;\n status_lt?: InputMaybe<Scalars['String']['input']>;\n status_lteq?: InputMaybe<Scalars['String']['input']>;\n status_not_eq?: InputMaybe<Scalars['String']['input']>;\n status_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n status_not_null?: InputMaybe<Scalars['String']['input']>;\n status_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type Order = {\n __typename?: 'Order';\n executedCount: Scalars['Int']['output'];\n finishedAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n items: Array<Item>;\n note?: Maybe<Scalars['String']['output']>;\n number: Scalars['String']['output'];\n plannedCount: Scalars['Int']['output'];\n position?: Maybe<Scalars['Int']['output']>;\n startedAt?: Maybe<Scalars['String']['output']>;\n workplaces: Array<Workplace>;\n};\n\nexport type OrderConfig = {\n __typename?: 'OrderConfig';\n alternativeName: Scalars['Boolean']['output'];\n numberPrefix?: Maybe<Scalars['String']['output']>;\n numberRegexp?: Maybe<Scalars['String']['output']>;\n};\n\nexport type OrderExecution = {\n __typename?: 'OrderExecution';\n finishedAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n item?: Maybe<Item>;\n itemCount?: Maybe<Scalars['Float']['output']>;\n note?: Maybe<Scalars['String']['output']>;\n order: Order;\n product?: Maybe<Product>;\n standardRateMismatched: Scalars['Boolean']['output'];\n startedAt: Scalars['String']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type OrderExecutionConfig = {\n __typename?: 'OrderExecutionConfig';\n afterPauseReasonId?: Maybe<Scalars['String']['output']>;\n afterStartReasonId?: Maybe<Scalars['String']['output']>;\n afterStopReasonId?: Maybe<Scalars['String']['output']>;\n featureEnabled: Scalars['Boolean']['output'];\n formOrderFields: Array<Scalars['String']['output']>;\n formProductFields: Array<Scalars['String']['output']>;\n formQuantityFields: Array<Scalars['String']['output']>;\n itemCountUnit: Scalars['String']['output'];\n noPlanCanCreateOrderNote?: Maybe<Scalars['String']['output']>;\n noPlanNeedVerificationNote?: Maybe<Scalars['String']['output']>;\n orderInternalNoteText?: Maybe<Scalars['String']['output']>;\n orderInternalNoteTitle?: Maybe<Scalars['String']['output']>;\n productInternalNoteText?: Maybe<Scalars['String']['output']>;\n productInternalNoteTitle?: Maybe<Scalars['String']['output']>;\n quantityInternalNoteText?: Maybe<Scalars['String']['output']>;\n quantityInternalNoteTitle?: Maybe<Scalars['String']['output']>;\n stopEnabled: Scalars['Boolean']['output'];\n};\n\nexport type OrderExecutionFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_eq?: InputMaybe<Scalars['String']['input']>;\n finished_at_equals?: InputMaybe<Scalars['String']['input']>;\n finished_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_not_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n note_cont?: InputMaybe<Scalars['String']['input']>;\n note_contains?: InputMaybe<Scalars['String']['input']>;\n note_end?: InputMaybe<Scalars['String']['input']>;\n note_eq?: InputMaybe<Scalars['String']['input']>;\n note_equals?: InputMaybe<Scalars['String']['input']>;\n note_in?: InputMaybe<Array<Scalars['String']['input']>>;\n note_not_eq?: InputMaybe<Scalars['String']['input']>;\n note_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n note_not_null?: InputMaybe<Scalars['String']['input']>;\n note_null?: InputMaybe<Scalars['String']['input']>;\n note_start?: InputMaybe<Scalars['String']['input']>;\n order_id_eq?: InputMaybe<Scalars['String']['input']>;\n order_id_equals?: InputMaybe<Scalars['String']['input']>;\n order_id_gt?: InputMaybe<Scalars['String']['input']>;\n order_id_gteq?: InputMaybe<Scalars['String']['input']>;\n order_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n order_id_lt?: InputMaybe<Scalars['String']['input']>;\n order_id_lteq?: InputMaybe<Scalars['String']['input']>;\n order_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n order_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n order_id_not_null?: InputMaybe<Scalars['String']['input']>;\n order_id_null?: InputMaybe<Scalars['String']['input']>;\n period?: InputMaybe<Period>;\n product_id_eq?: InputMaybe<Scalars['String']['input']>;\n product_id_equals?: InputMaybe<Scalars['String']['input']>;\n product_id_gt?: InputMaybe<Scalars['String']['input']>;\n product_id_gteq?: InputMaybe<Scalars['String']['input']>;\n product_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_id_lt?: InputMaybe<Scalars['String']['input']>;\n product_id_lteq?: InputMaybe<Scalars['String']['input']>;\n product_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n product_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_id_not_null?: InputMaybe<Scalars['String']['input']>;\n product_id_null?: InputMaybe<Scalars['String']['input']>;\n quantity_eq?: InputMaybe<Scalars['String']['input']>;\n quantity_equals?: InputMaybe<Scalars['String']['input']>;\n quantity_gt?: InputMaybe<Scalars['String']['input']>;\n quantity_gteq?: InputMaybe<Scalars['String']['input']>;\n quantity_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quantity_lt?: InputMaybe<Scalars['String']['input']>;\n quantity_lteq?: InputMaybe<Scalars['String']['input']>;\n quantity_not_eq?: InputMaybe<Scalars['String']['input']>;\n quantity_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quantity_not_null?: InputMaybe<Scalars['String']['input']>;\n quantity_null?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_eq?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_equals?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_gt?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_gteq?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n standard_rate_id_lt?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_lteq?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n standard_rate_id_not_null?: InputMaybe<Scalars['String']['input']>;\n standard_rate_id_null?: InputMaybe<Scalars['String']['input']>;\n started_at_eq?: InputMaybe<Scalars['String']['input']>;\n started_at_equals?: InputMaybe<Scalars['String']['input']>;\n started_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_not_null?: InputMaybe<Scalars['String']['input']>;\n started_at_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type OrderFilter = {\n closure_reason_eq?: InputMaybe<Scalars['String']['input']>;\n closure_reason_equals?: InputMaybe<Scalars['String']['input']>;\n closure_reason_gt?: InputMaybe<Scalars['String']['input']>;\n closure_reason_gteq?: InputMaybe<Scalars['String']['input']>;\n closure_reason_in?: InputMaybe<Array<Scalars['String']['input']>>;\n closure_reason_lt?: InputMaybe<Scalars['String']['input']>;\n closure_reason_lteq?: InputMaybe<Scalars['String']['input']>;\n closure_reason_not_eq?: InputMaybe<Scalars['String']['input']>;\n closure_reason_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n closure_reason_not_null?: InputMaybe<Scalars['String']['input']>;\n closure_reason_null?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_eq?: InputMaybe<Scalars['String']['input']>;\n finished_at_equals?: InputMaybe<Scalars['String']['input']>;\n finished_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_not_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n item_count_eq?: InputMaybe<Scalars['String']['input']>;\n item_count_equals?: InputMaybe<Scalars['String']['input']>;\n item_count_gt?: InputMaybe<Scalars['String']['input']>;\n item_count_gteq?: InputMaybe<Scalars['String']['input']>;\n item_count_in?: InputMaybe<Array<Scalars['String']['input']>>;\n item_count_lt?: InputMaybe<Scalars['String']['input']>;\n item_count_lteq?: InputMaybe<Scalars['String']['input']>;\n item_count_not_eq?: InputMaybe<Scalars['String']['input']>;\n item_count_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n item_count_not_null?: InputMaybe<Scalars['String']['input']>;\n item_count_null?: InputMaybe<Scalars['String']['input']>;\n item_number_cont?: InputMaybe<Scalars['String']['input']>;\n item_number_contains?: InputMaybe<Scalars['String']['input']>;\n item_number_end?: InputMaybe<Scalars['String']['input']>;\n item_number_eq?: InputMaybe<Scalars['String']['input']>;\n item_number_equals?: InputMaybe<Scalars['String']['input']>;\n item_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n item_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n item_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n item_number_not_null?: InputMaybe<Scalars['String']['input']>;\n item_number_null?: InputMaybe<Scalars['String']['input']>;\n item_number_start?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_eq?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_equals?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_not_null?: InputMaybe<Scalars['String']['input']>;\n last_production_activity_at_null?: InputMaybe<Scalars['String']['input']>;\n note_cont?: InputMaybe<Scalars['String']['input']>;\n note_contains?: InputMaybe<Scalars['String']['input']>;\n note_end?: InputMaybe<Scalars['String']['input']>;\n note_eq?: InputMaybe<Scalars['String']['input']>;\n note_equals?: InputMaybe<Scalars['String']['input']>;\n note_in?: InputMaybe<Array<Scalars['String']['input']>>;\n note_not_eq?: InputMaybe<Scalars['String']['input']>;\n note_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n note_not_null?: InputMaybe<Scalars['String']['input']>;\n note_null?: InputMaybe<Scalars['String']['input']>;\n note_start?: InputMaybe<Scalars['String']['input']>;\n order_number_cont?: InputMaybe<Scalars['String']['input']>;\n order_number_contains?: InputMaybe<Scalars['String']['input']>;\n order_number_end?: InputMaybe<Scalars['String']['input']>;\n order_number_eq?: InputMaybe<Scalars['String']['input']>;\n order_number_equals?: InputMaybe<Scalars['String']['input']>;\n order_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n order_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n order_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n order_number_not_null?: InputMaybe<Scalars['String']['input']>;\n order_number_null?: InputMaybe<Scalars['String']['input']>;\n order_number_start?: InputMaybe<Scalars['String']['input']>;\n position_eq?: InputMaybe<Scalars['String']['input']>;\n position_equals?: InputMaybe<Scalars['String']['input']>;\n position_gt?: InputMaybe<Scalars['String']['input']>;\n position_gteq?: InputMaybe<Scalars['String']['input']>;\n position_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_lt?: InputMaybe<Scalars['String']['input']>;\n position_lteq?: InputMaybe<Scalars['String']['input']>;\n position_not_eq?: InputMaybe<Scalars['String']['input']>;\n position_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_not_null?: InputMaybe<Scalars['String']['input']>;\n position_null?: InputMaybe<Scalars['String']['input']>;\n product_number_cont?: InputMaybe<Scalars['String']['input']>;\n product_number_contains?: InputMaybe<Scalars['String']['input']>;\n product_number_end?: InputMaybe<Scalars['String']['input']>;\n product_number_eq?: InputMaybe<Scalars['String']['input']>;\n product_number_equals?: InputMaybe<Scalars['String']['input']>;\n product_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n product_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_number_not_null?: InputMaybe<Scalars['String']['input']>;\n product_number_null?: InputMaybe<Scalars['String']['input']>;\n product_number_start?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_cont?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_contains?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_end?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_eq?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_equals?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_sap_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n product_sap_number_not_null?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_null?: InputMaybe<Scalars['String']['input']>;\n product_sap_number_start?: InputMaybe<Scalars['String']['input']>;\n sap_number_cont?: InputMaybe<Scalars['String']['input']>;\n sap_number_contains?: InputMaybe<Scalars['String']['input']>;\n sap_number_end?: InputMaybe<Scalars['String']['input']>;\n sap_number_eq?: InputMaybe<Scalars['String']['input']>;\n sap_number_equals?: InputMaybe<Scalars['String']['input']>;\n sap_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sap_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n sap_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sap_number_not_null?: InputMaybe<Scalars['String']['input']>;\n sap_number_null?: InputMaybe<Scalars['String']['input']>;\n sap_number_start?: InputMaybe<Scalars['String']['input']>;\n started_at_eq?: InputMaybe<Scalars['String']['input']>;\n started_at_equals?: InputMaybe<Scalars['String']['input']>;\n started_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_not_null?: InputMaybe<Scalars['String']['input']>;\n started_at_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n user_id_eq?: InputMaybe<Scalars['String']['input']>;\n user_id_equals?: InputMaybe<Scalars['String']['input']>;\n user_id_gt?: InputMaybe<Scalars['String']['input']>;\n user_id_gteq?: InputMaybe<Scalars['String']['input']>;\n user_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n user_id_lt?: InputMaybe<Scalars['String']['input']>;\n user_id_lteq?: InputMaybe<Scalars['String']['input']>;\n user_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n user_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n user_id_not_null?: InputMaybe<Scalars['String']['input']>;\n user_id_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n workplaces_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplaces_id_equals?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type OrderInput = {\n id: Scalars['ID']['input'];\n number: Scalars['String']['input'];\n};\n\n/** Autogenerated return type of PauseOrderExecution */\nexport type PauseOrderExecutionPayload = {\n __typename?: 'PauseOrderExecutionPayload';\n errors?: Maybe<Array<MutationError>>;\n orderExecution?: Maybe<OrderExecution>;\n};\n\nexport enum Period {\n CurrentShift = 'CURRENT_SHIFT',\n LastShift = 'LAST_SHIFT'\n}\n\nexport enum PresenceStatusEnum {\n NotPresent = 'NOT_PRESENT',\n Present = 'PRESENT',\n PresentElsewhere = 'PRESENT_ELSEWHERE'\n}\n\nexport type Product = {\n __typename?: 'Product';\n assemblyManual?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name?: Maybe<Scalars['String']['output']>;\n number?: Maybe<Scalars['String']['output']>;\n};\n\nexport type ProductConfig = {\n __typename?: 'ProductConfig';\n alternativeName: Scalars['Boolean']['output'];\n numberPrefix?: Maybe<Scalars['String']['output']>;\n numberRegexp?: Maybe<Scalars['String']['output']>;\n};\n\nexport type ProductFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_or_number_cont?: InputMaybe<Scalars['String']['input']>;\n name_or_number_contains?: InputMaybe<Scalars['String']['input']>;\n name_or_number_end?: InputMaybe<Scalars['String']['input']>;\n name_or_number_eq?: InputMaybe<Scalars['String']['input']>;\n name_or_number_equals?: InputMaybe<Scalars['String']['input']>;\n name_or_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_or_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_or_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_or_number_not_null?: InputMaybe<Scalars['String']['input']>;\n name_or_number_null?: InputMaybe<Scalars['String']['input']>;\n name_or_number_start?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n number_cont?: InputMaybe<Scalars['String']['input']>;\n number_contains?: InputMaybe<Scalars['String']['input']>;\n number_end?: InputMaybe<Scalars['String']['input']>;\n number_eq?: InputMaybe<Scalars['String']['input']>;\n number_equals?: InputMaybe<Scalars['String']['input']>;\n number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n number_not_eq?: InputMaybe<Scalars['String']['input']>;\n number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n number_not_null?: InputMaybe<Scalars['String']['input']>;\n number_null?: InputMaybe<Scalars['String']['input']>;\n number_start?: InputMaybe<Scalars['String']['input']>;\n orders_order_number_eq?: InputMaybe<Scalars['String']['input']>;\n orders_order_number_equals?: InputMaybe<Scalars['String']['input']>;\n sap_number_cont?: InputMaybe<Scalars['String']['input']>;\n sap_number_contains?: InputMaybe<Scalars['String']['input']>;\n sap_number_end?: InputMaybe<Scalars['String']['input']>;\n sap_number_eq?: InputMaybe<Scalars['String']['input']>;\n sap_number_equals?: InputMaybe<Scalars['String']['input']>;\n sap_number_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sap_number_not_eq?: InputMaybe<Scalars['String']['input']>;\n sap_number_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sap_number_not_null?: InputMaybe<Scalars['String']['input']>;\n sap_number_null?: InputMaybe<Scalars['String']['input']>;\n sap_number_start?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type ProductInput = {\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n number?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type ProductionInsightsEntry = {\n __typename?: 'ProductionInsightsEntry';\n count: Scalars['Int']['output'];\n label: Scalars['String']['output'];\n};\n\nexport type ProductionInsightsInput = {\n aggregation: InsightsAggregation;\n dateFrom: Scalars['ISO8601DateTime']['input'];\n dateTo: Scalars['ISO8601DateTime']['input'];\n dayType: DayType;\n};\n\nexport type ProductionInsightsResult = {\n __typename?: 'ProductionInsightsResult';\n entries: Array<ProductionInsightsEntry>;\n};\n\nexport enum ProductionMode {\n Manual = 'MANUAL',\n Planned = 'PLANNED'\n}\n\nexport type Query = {\n __typename?: 'Query';\n /**\n * Returns actual staffing counts based on user presences, compared against staffing plans.\n * Shows how many operators are checked in vs. the planned number.\n */\n actualStaffingCounts: Array<ActualStaffingCount>;\n /** Returns application information, including the current API version. */\n applicationInfo: ApplicationInfo;\n availabilityInsights: AvailabilityInsightsResult;\n /**\n * Returns the company configuration for the currently logged-in user,\n * including managed devices, displayed KPIs, role permissions,\n * status transition settings, and workplace configurations.\n */\n companyConfig: CompanyConfig;\n /**\n * Returns a list of counter directories, used to group counters at a workplace\n * into a logical hierarchical structure.\n */\n counterDirectories: Array<CounterDirectory>;\n /**\n * Returns production counters recorded per workplace.\n * - Each counter tracks either GOOD (produced pieces / good parts) or BAD (scrap / bad parts / defects).\n * - A workplace may have multiple counters.\n * - Counters may be grouped into counter directories for better organization.\n * - Counter values can be entered manually by operators or collected automatically from machines.\n * - A counter may also be locked, in which case no new pieces can be added.\n */\n counters: Array<Counter>;\n /** Returns the currently authenticated user. */\n currentUser: User;\n /**\n * Returns the list of dashboards available to the current user.\n *\n * A dashboard is a user-configured workspace containing widgets\n * (charts, KPIs, tables, status blocks, etc.) arranged in a chosen layout.\n * Dashboards are typically used for real-time production monitoring:\n * - displayed on large TV screens in factory halls,\n * - by supervisors, team leaders, or maintenance departments,\n * - to observe multiple workplaces at once.\n */\n dashboards: Array<Dashboard>;\n /**\n * Returns a list of departments available to the current user.\n *\n * A department is an organizational unit used to group workplaces,\n * employees, machines, and orders.\n */\n departments: Array<Department>;\n /**\n * Returns floor plans available to the current user.\n *\n * A floor plan is a dashboard widget showing a factory hall map with workplaces\n * placed on it. Workplaces change color and display information based on their\n * current production status.\n */\n floorPlans: Array<FloorPlan>;\n /**\n * Returns live KPI metric values for the current shift at workplaces\n * (e.g. performance, quality, availability, OEE, good and bad pieces).\n */\n metricValues: Array<MetricValue>;\n /**\n * Returns the list of all metrics available in the system (e.g. performance, quality, availability, OEE).\n * Use this query to discover metric names and definitions, not their live values.\n */\n metrics: Array<Metric>;\n /**\n * Returns system notifications (e.g. shift ended, too few operators at a workplace),\n * which are received and displayed on workplaces.\n */\n notifications: Array<Notification>;\n /**\n * Returns up to 100 most recent production orders available in the system.\n * Orders can have different planning states and execution statuses.\n */\n orders: Array<Order>;\n /**\n * Returns executions of production orders, representing individual runs of an order\n * (with produced quantities, operator, and status), from start until completion.\n * An order may have multiple executions, as it can be paused and resumed at different stages.\n */\n ordersExecutions: Array<OrderExecution>;\n productionInsights: ProductionInsightsResult;\n /**\n * Returns products from the system, which are used in production orders.\n * Supports search by product number and returns up to 10 matching results,\n * typically used when adding an existing product to an order form.\n */\n products: Array<Product>;\n /**\n * Returns the list of available statuses (reasons) that can be selected on a workplace.\n *\n * - Each status has a visual color (red, green, yellow, gray) shown in the UI.\n * - Each status also carries an availability state (working, stopped, planned_stop).\n * - Statuses are organized hierarchically and belong to a status dictionary (ReasonGroup),\n * which can be reused across multiple workplaces.\n * - When operators select statuses at a workplace, this creates a history of status changes,\n * representing how the workplace has been operating over time.\n */\n reasons: Array<Reason>;\n /**\n * Returns AI-based recommendations of the most likely next status (reason)\n * for a given workplace, based on analysis of previous operator activity.\n * Part of the SmartStatusAI module.\n */\n reasonsRecommendation?: Maybe<ReasonsRecommendation>;\n /**\n * Returns the list of work shifts configured for the organization.\n * A shift defines the working period of operators (start and end times),\n * used for scheduling, reporting, and tracking production activities.\n */\n shifts: Array<Shift>;\n /**\n * Returns staffing plans for workplaces.\n * Defines the recommended number of operators for a specific workplace, shift, and date.\n */\n staffingPlans: Array<StaffingPlan>;\n /**\n * Returns standard production rates defined for an order execution.\n * Standard rates specify expected output (e.g. good or bad pieces per hour,\n * per number of operators, and within a given time), allowing comparison of\n * actual performance with targets and supporting KPI calculations like quality or OEE.\n */\n standardRates: Array<StandardRate>;\n /**\n * Returns status change transition permissions, which define the allowed moves\n * between statuses (reasons) in the status dictionary.\n * These permissions form a transition matrix that can restrict changing\n * from one status to another depending on role and workplace.\n */\n statusChangeTransitionPermissions: Array<StatusChangeTransitionPermission>;\n /**\n * Returns status change records for workplaces, limited to the current shift.\n * A status change represents a continuous period in which a workplace has a given status (reason).\n * - Each change has a start and an optional end; if `finished_at` is null, the status is currently active.\n * - Only one status change can be active at a workplace at a time, ensuring linear continuity.\n * - Status changes may be created manually by operators or automatically by the system\n * (e.g. at order start/stop, shift change, operator log in/out).\n */\n statusChanges: Array<StatusChange>;\n statusInsights: StatusInsightsResult;\n /** Returns all users belonging to the company of the currently logged-in user. */\n users: Array<User>;\n /**\n * Returns user presence records at workplaces limited to the current shift.\n * A presence is created when an operator checks in at a workplace\n * and ends when they check out.\n *\n * These records indicate how many operators are working on a workplace during the shift,\n * provide history of who worked where and when, and are used in production metrics.\n */\n usersPresences: Array<UserPresence>;\n /**\n * DEPRECATED - use the widgets query instead.\n * Returns a single widget already placed on a dashboard.\n */\n widget: Widget;\n /**\n * Returns all widgets available on dashboards.\n * A widget is an autonomous element of a dashboard (e.g. floor plan, KPI metrics,\n * workplace monitor, list of orders, or PromQL-based charts).\n */\n widgets: Array<Widget>;\n /**\n * Returns all work orders from the CMMS module.\n * Work orders are used by the maintenance department to plan and track actions\n * such as inspections, repairs, and other maintenance tasks.\n */\n workOrders: Array<WorkOrder>;\n workOrdersInsights: WorkOrdersInsightsResult;\n /**\n * Returns workplace staffing overview for a specific shift and date.\n * Shows workplaces with assigned operators, their check-in status,\n * unassigned operators pool, and global summary.\n */\n workplaceAssignments: WorkplaceAssignmentsView;\n /** Returns performance analysis for workplaces within a specified time period. */\n workplacePerformanceInsights: WorkplacePerformanceInsightsResult;\n /**\n * Returns all workplaces available in the current organization.\n * A workplace represents a production station in the factory,\n * where operators perform tasks, orders are executed, and KPIs are tracked.\n */\n workplaces: Array<Workplace>;\n};\n\n\nexport type QueryActualStaffingCountsArgs = {\n filter?: InputMaybe<ActualStaffingCountFilter>;\n};\n\n\nexport type QueryAvailabilityInsightsArgs = {\n input: AvailabilityInsightsInput;\n};\n\n\nexport type QueryCounterDirectoriesArgs = {\n filter?: InputMaybe<CounterDirectoryFilter>;\n};\n\n\nexport type QueryCountersArgs = {\n filter?: InputMaybe<CounterFilter>;\n};\n\n\nexport type QueryDashboardsArgs = {\n filter?: InputMaybe<DashboardFilter>;\n};\n\n\nexport type QueryDepartmentsArgs = {\n filter?: InputMaybe<DepartmentFilter>;\n};\n\n\nexport type QueryFloorPlansArgs = {\n filter?: InputMaybe<FloorPlanFilter>;\n};\n\n\nexport type QueryMetricValuesArgs = {\n metricIds?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplaceIds?: InputMaybe<Array<Scalars['ID']['input']>>;\n};\n\n\nexport type QueryNotificationsArgs = {\n filter?: InputMaybe<NotificationFilter>;\n};\n\n\nexport type QueryOrdersArgs = {\n filter?: InputMaybe<OrderFilter>;\n};\n\n\nexport type QueryOrdersExecutionsArgs = {\n filter?: InputMaybe<OrderExecutionFilter>;\n};\n\n\nexport type QueryProductionInsightsArgs = {\n input: ProductionInsightsInput;\n};\n\n\nexport type QueryProductsArgs = {\n filter?: InputMaybe<ProductFilter>;\n};\n\n\nexport type QueryReasonsArgs = {\n filter?: InputMaybe<ReasonFilter>;\n};\n\n\nexport type QueryReasonsRecommendationArgs = {\n workplaceId: Scalars['String']['input'];\n};\n\n\nexport type QueryStaffingPlansArgs = {\n filter?: InputMaybe<StaffingPlanFilter>;\n};\n\n\nexport type QueryStandardRatesArgs = {\n orderExecutionId: Scalars['ID']['input'];\n};\n\n\nexport type QueryStatusChangeTransitionPermissionsArgs = {\n filter?: InputMaybe<StatusChangeTransitionPermissionFilter>;\n};\n\n\nexport type QueryStatusChangesArgs = {\n filter?: InputMaybe<StatusChangeFilter>;\n};\n\n\nexport type QueryStatusInsightsArgs = {\n input: StatusInsightsInput;\n};\n\n\nexport type QueryUsersArgs = {\n filter?: InputMaybe<UserFilter>;\n};\n\n\nexport type QueryUsersPresencesArgs = {\n filter?: InputMaybe<UserPresenceFilter>;\n};\n\n\nexport type QueryWidgetArgs = {\n id: Scalars['ID']['input'];\n};\n\n\nexport type QueryWidgetsArgs = {\n filter?: InputMaybe<WidgetFilter>;\n};\n\n\nexport type QueryWorkOrdersArgs = {\n filter?: InputMaybe<WorkOrderFilter>;\n};\n\n\nexport type QueryWorkOrdersInsightsArgs = {\n input: WorkOrdersInsightsInput;\n};\n\n\nexport type QueryWorkplaceAssignmentsArgs = {\n input: WorkplaceAssignmentsInput;\n};\n\n\nexport type QueryWorkplacePerformanceInsightsArgs = {\n input: WorkplacePerformanceInsightsInput;\n};\n\n\nexport type QueryWorkplacesArgs = {\n filter?: InputMaybe<WorkplaceFilter>;\n};\n\nexport type Reason = {\n __typename?: 'Reason';\n acceptanceMonit: Scalars['Boolean']['output'];\n canBeRecommended: Scalars['Boolean']['output'];\n hasNote: Scalars['Boolean']['output'];\n id: Scalars['ID']['output'];\n isNoteRequired: Scalars['Boolean']['output'];\n leaf: Scalars['Boolean']['output'];\n name: Scalars['String']['output'];\n parentId?: Maybe<Scalars['String']['output']>;\n position: Scalars['Int']['output'];\n reasonGroupId: Scalars['String']['output'];\n statusColor: AndonLightColor;\n temporary: Scalars['Boolean']['output'];\n};\n\nexport type ReasonFilter = {\n acceptance_monit_eq?: InputMaybe<Scalars['String']['input']>;\n acceptance_monit_equals?: InputMaybe<Scalars['String']['input']>;\n ancestry_cont?: InputMaybe<Scalars['String']['input']>;\n ancestry_contains?: InputMaybe<Scalars['String']['input']>;\n ancestry_end?: InputMaybe<Scalars['String']['input']>;\n ancestry_eq?: InputMaybe<Scalars['String']['input']>;\n ancestry_equals?: InputMaybe<Scalars['String']['input']>;\n ancestry_in?: InputMaybe<Array<Scalars['String']['input']>>;\n ancestry_not_eq?: InputMaybe<Scalars['String']['input']>;\n ancestry_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n ancestry_not_null?: InputMaybe<Scalars['String']['input']>;\n ancestry_null?: InputMaybe<Scalars['String']['input']>;\n ancestry_start?: InputMaybe<Scalars['String']['input']>;\n availability_status_eq?: InputMaybe<Scalars['String']['input']>;\n availability_status_equals?: InputMaybe<Scalars['String']['input']>;\n availability_status_gt?: InputMaybe<Scalars['String']['input']>;\n availability_status_gteq?: InputMaybe<Scalars['String']['input']>;\n availability_status_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_status_lt?: InputMaybe<Scalars['String']['input']>;\n availability_status_lteq?: InputMaybe<Scalars['String']['input']>;\n availability_status_not_eq?: InputMaybe<Scalars['String']['input']>;\n availability_status_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_status_not_null?: InputMaybe<Scalars['String']['input']>;\n availability_status_null?: InputMaybe<Scalars['String']['input']>;\n can_be_recommended_eq?: InputMaybe<Scalars['String']['input']>;\n can_be_recommended_equals?: InputMaybe<Scalars['String']['input']>;\n changeable_eq?: InputMaybe<Scalars['String']['input']>;\n changeable_equals?: InputMaybe<Scalars['String']['input']>;\n children_count_eq?: InputMaybe<Scalars['String']['input']>;\n children_count_equals?: InputMaybe<Scalars['String']['input']>;\n children_count_gt?: InputMaybe<Scalars['String']['input']>;\n children_count_gteq?: InputMaybe<Scalars['String']['input']>;\n children_count_in?: InputMaybe<Array<Scalars['String']['input']>>;\n children_count_lt?: InputMaybe<Scalars['String']['input']>;\n children_count_lteq?: InputMaybe<Scalars['String']['input']>;\n children_count_not_eq?: InputMaybe<Scalars['String']['input']>;\n children_count_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n children_count_not_null?: InputMaybe<Scalars['String']['input']>;\n children_count_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n creates_order_eq?: InputMaybe<Scalars['String']['input']>;\n creates_order_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n note_required_eq?: InputMaybe<Scalars['String']['input']>;\n note_required_equals?: InputMaybe<Scalars['String']['input']>;\n note_status_eq?: InputMaybe<Scalars['String']['input']>;\n note_status_equals?: InputMaybe<Scalars['String']['input']>;\n position_eq?: InputMaybe<Scalars['String']['input']>;\n position_equals?: InputMaybe<Scalars['String']['input']>;\n position_gt?: InputMaybe<Scalars['String']['input']>;\n position_gteq?: InputMaybe<Scalars['String']['input']>;\n position_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_lt?: InputMaybe<Scalars['String']['input']>;\n position_lteq?: InputMaybe<Scalars['String']['input']>;\n position_not_eq?: InputMaybe<Scalars['String']['input']>;\n position_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n position_not_null?: InputMaybe<Scalars['String']['input']>;\n position_null?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_eq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_equals?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_gt?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_gteq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_group_id_lt?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_lteq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_group_id_not_null?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_null?: InputMaybe<Scalars['String']['input']>;\n skip_shift_end_reason_automation_eq?: InputMaybe<Scalars['String']['input']>;\n skip_shift_end_reason_automation_equals?: InputMaybe<Scalars['String']['input']>;\n status_eq?: InputMaybe<Scalars['String']['input']>;\n status_equals?: InputMaybe<Scalars['String']['input']>;\n status_gt?: InputMaybe<Scalars['String']['input']>;\n status_gteq?: InputMaybe<Scalars['String']['input']>;\n status_in?: InputMaybe<Array<Scalars['String']['input']>>;\n status_lt?: InputMaybe<Scalars['String']['input']>;\n status_lteq?: InputMaybe<Scalars['String']['input']>;\n status_not_eq?: InputMaybe<Scalars['String']['input']>;\n status_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n status_not_null?: InputMaybe<Scalars['String']['input']>;\n status_null?: InputMaybe<Scalars['String']['input']>;\n tags_contains_all?: InputMaybe<Array<Scalars['String']['input']>>;\n tags_contains_any?: InputMaybe<Array<Scalars['String']['input']>>;\n temporary_eq?: InputMaybe<Scalars['String']['input']>;\n temporary_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_eq?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_equals?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_gt?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_gteq?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n work_order_template_id_lt?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_lteq?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n work_order_template_id_not_null?: InputMaybe<Scalars['String']['input']>;\n work_order_template_id_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type ReasonsRecommendation = {\n __typename?: 'ReasonsRecommendation';\n reasons: Array<Reason>;\n trainingStatus: TrainingStatus;\n};\n\n/** Autogenerated return type of RemoveDashboard */\nexport type RemoveDashboardPayload = {\n __typename?: 'RemoveDashboardPayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of RemoveStaffingPlan */\nexport type RemoveStaffingPlanPayload = {\n __typename?: 'RemoveStaffingPlanPayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of RemoveUserPresence */\nexport type RemoveUserPresencePayload = {\n __typename?: 'RemoveUserPresencePayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of RemoveWidget */\nexport type RemoveWidgetPayload = {\n __typename?: 'RemoveWidgetPayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of RemoveWorkplaceUsersPresences */\nexport type RemoveWorkplaceUsersPresencesPayload = {\n __typename?: 'RemoveWorkplaceUsersPresencesPayload';\n errors?: Maybe<Array<MutationError>>;\n};\n\nexport type RequestFeatureAccessInput = {\n featureKey: Scalars['String']['input'];\n requestType: AccessRequestTypeEnum;\n workplaceId?: InputMaybe<Scalars['ID']['input']>;\n};\n\n/** Autogenerated return type of RequestFeatureAccessMutation */\nexport type RequestFeatureAccessMutationPayload = {\n __typename?: 'RequestFeatureAccessMutationPayload';\n errors?: Maybe<Array<MutationError>>;\n success: Scalars['Boolean']['output'];\n};\n\nexport type RoleConfig = {\n __typename?: 'RoleConfig';\n historyVisibilityEnabled: Scalars['Boolean']['output'];\n orderCreationAllowed: Scalars['Boolean']['output'];\n};\n\nexport enum ScreenEnum {\n Cmms = 'CMMS',\n Counters = 'COUNTERS',\n Statuses = 'STATUSES',\n StatusScreen = 'STATUS_SCREEN',\n Workplaces = 'WORKPLACES'\n}\n\nexport type ScreenSaverConfig = {\n __typename?: 'ScreenSaverConfig';\n autoSignOut: Scalars['Boolean']['output'];\n displayAfterIdle: Scalars['Boolean']['output'];\n displayAfterOrderCreated: Scalars['Boolean']['output'];\n displayAfterStatusChangeCreated: Scalars['Boolean']['output'];\n enabled: Scalars['Boolean']['output'];\n idleTime: Scalars['Int']['output'];\n};\n\n/** Autogenerated return type of SetCounter */\nexport type SetCounterPayload = {\n __typename?: 'SetCounterPayload';\n counter?: Maybe<Counter>;\n errors?: Maybe<Array<MutationError>>;\n};\n\nexport type Shift = {\n __typename?: 'Shift';\n finishedAt: Scalars['String']['output'];\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n startedAt: Scalars['String']['output'];\n};\n\nexport type StaffingPlan = {\n __typename?: 'StaffingPlan';\n author: User;\n createdAt: Scalars['ISO8601DateTime']['output'];\n date: Scalars['ISO8601Date']['output'];\n id: Scalars['ID']['output'];\n recommendedOperators: Scalars['Int']['output'];\n shift: Shift;\n updatedAt: Scalars['ISO8601DateTime']['output'];\n workplace: Workplace;\n};\n\nexport type StaffingPlanFilter = {\n date_from?: InputMaybe<Scalars['ISO8601Date']['input']>;\n date_to?: InputMaybe<Scalars['ISO8601Date']['input']>;\n period?: InputMaybe<Period>;\n shift_id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplace_id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n};\n\nexport type StaffingPlanInput = {\n date: Scalars['ISO8601Date']['input'];\n recommendedOperators: Scalars['Int']['input'];\n shiftId: Scalars['ID']['input'];\n workplaceId: Scalars['ID']['input'];\n};\n\nexport type StaffingPlanUpdateInput = {\n id: Scalars['ID']['input'];\n recommendedOperators: Scalars['Int']['input'];\n};\n\nexport type StandardRate = {\n __typename?: 'StandardRate';\n id: Scalars['ID']['output'];\n label: Scalars['String']['output'];\n};\n\n/** Autogenerated return type of StartOrderExecution */\nexport type StartOrderExecutionPayload = {\n __typename?: 'StartOrderExecutionPayload';\n errors?: Maybe<Array<MutationError>>;\n orderExecution?: Maybe<OrderExecution>;\n};\n\nexport type StartTrialInput = {\n featureKey: Scalars['String']['input'];\n};\n\n/** Autogenerated return type of StartTrialMutation */\nexport type StartTrialMutationPayload = {\n __typename?: 'StartTrialMutationPayload';\n errors?: Maybe<Array<MutationError>>;\n success: Scalars['Boolean']['output'];\n};\n\nexport type StatusChange = {\n __typename?: 'StatusChange';\n author: User;\n finishedAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n note?: Maybe<Scalars['String']['output']>;\n order?: Maybe<Order>;\n product?: Maybe<Product>;\n reason: Reason;\n reasonHasBeenRecommended: Scalars['Boolean']['output'];\n startedAt: Scalars['String']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type StatusChangeFilter = {\n period?: InputMaybe<Period>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type StatusChangeTransitionPermission = {\n __typename?: 'StatusChangeTransitionPermission';\n fromReasonId: Scalars['String']['output'];\n roleId: Scalars['String']['output'];\n toReasonId: Scalars['String']['output'];\n workplaceId: Scalars['String']['output'];\n};\n\nexport type StatusChangeTransitionPermissionFilter = {\n allowed_eq?: InputMaybe<Scalars['String']['input']>;\n allowed_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_eq?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_equals?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_gt?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_gteq?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n from_reason_id_lt?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_lteq?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n from_reason_id_not_null?: InputMaybe<Scalars['String']['input']>;\n from_reason_id_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n role_id_eq?: InputMaybe<Scalars['String']['input']>;\n role_id_equals?: InputMaybe<Scalars['String']['input']>;\n role_id_gt?: InputMaybe<Scalars['String']['input']>;\n role_id_gteq?: InputMaybe<Scalars['String']['input']>;\n role_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n role_id_lt?: InputMaybe<Scalars['String']['input']>;\n role_id_lteq?: InputMaybe<Scalars['String']['input']>;\n role_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n role_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n role_id_not_null?: InputMaybe<Scalars['String']['input']>;\n role_id_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_eq?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_equals?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_gt?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_gteq?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n to_reason_id_lt?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_lteq?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n to_reason_id_not_null?: InputMaybe<Scalars['String']['input']>;\n to_reason_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type StatusInsightsEntry = {\n __typename?: 'StatusInsightsEntry';\n averageDurationMinutes: Scalars['Float']['output'];\n label: Scalars['String']['output'];\n occurrenceCount: Scalars['Int']['output'];\n};\n\nexport type StatusInsightsInput = {\n aggregation: InsightsAggregation;\n dateFrom: Scalars['ISO8601DateTime']['input'];\n dateTo: Scalars['ISO8601DateTime']['input'];\n dayType: DayType;\n reasonId: Scalars['ID']['input'];\n shiftIds: Array<Scalars['ID']['input']>;\n};\n\nexport type StatusInsightsResult = {\n __typename?: 'StatusInsightsResult';\n entries: Array<StatusInsightsEntry>;\n};\n\nexport enum StatusScreenDisplayBlocksEnum {\n Kpi = 'KPI',\n Livetime = 'LIVETIME',\n Orders = 'ORDERS',\n Presences = 'PRESENCES'\n}\n\n/** Autogenerated return type of StopOrderExecution */\nexport type StopOrderExecutionPayload = {\n __typename?: 'StopOrderExecutionPayload';\n errors?: Maybe<Array<MutationError>>;\n orderExecution?: Maybe<OrderExecution>;\n};\n\nexport type Subscription = {\n __typename?: 'Subscription';\n workplaceEvent: WorkplaceEventSubscriptionPayload;\n};\n\n\nexport type SubscriptionWorkplaceEventArgs = {\n id: Scalars['ID']['input'];\n};\n\nexport enum TrainingStatus {\n Disabled = 'DISABLED',\n InsufficientData = 'INSUFFICIENT_DATA',\n ServerError = 'SERVER_ERROR',\n Trained = 'TRAINED',\n Training = 'TRAINING'\n}\n\n/** Autogenerated return type of UnassignOperatorFromWorkplace */\nexport type UnassignOperatorFromWorkplacePayload = {\n __typename?: 'UnassignOperatorFromWorkplacePayload';\n assignment?: Maybe<WorkplaceAssignment>;\n errors?: Maybe<Array<MutationError>>;\n};\n\nexport type UnassignOperatorInput = {\n shiftId: Scalars['ID']['input'];\n userId: Scalars['ID']['input'];\n validFrom: Scalars['ISO8601Date']['input'];\n};\n\nexport type UnplannedOperator = {\n __typename?: 'UnplannedOperator';\n plannedWorkplace?: Maybe<Workplace>;\n user: User;\n};\n\n/** Autogenerated return type of UpdateDashboard */\nexport type UpdateDashboardPayload = {\n __typename?: 'UpdateDashboardPayload';\n dashboard?: Maybe<Dashboard>;\n errors?: Maybe<Array<MutationError>>;\n};\n\n/** Autogenerated return type of UpdateNotification */\nexport type UpdateNotificationPayload = {\n __typename?: 'UpdateNotificationPayload';\n errors?: Maybe<Array<MutationError>>;\n notification?: Maybe<Notification>;\n};\n\n/** Autogenerated return type of UpdateOrderExecution */\nexport type UpdateOrderExecutionPayload = {\n __typename?: 'UpdateOrderExecutionPayload';\n errors?: Maybe<Array<MutationError>>;\n orderExecution?: Maybe<OrderExecution>;\n};\n\nexport type UpdateOrderInput = {\n id: Scalars['ID']['input'];\n workplaceIds: Array<Scalars['ID']['input']>;\n};\n\n/** Autogenerated return type of UpdateOrder */\nexport type UpdateOrderPayload = {\n __typename?: 'UpdateOrderPayload';\n errors?: Maybe<Array<MutationError>>;\n order?: Maybe<Order>;\n};\n\n/** Autogenerated return type of UpdateStaffingPlan */\nexport type UpdateStaffingPlanPayload = {\n __typename?: 'UpdateStaffingPlanPayload';\n errors?: Maybe<Array<MutationError>>;\n staffingPlan?: Maybe<StaffingPlan>;\n};\n\nexport type UpdateStatusChangeInput = {\n authorId?: InputMaybe<Scalars['ID']['input']>;\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n reasonHasBeenRecommended?: InputMaybe<Scalars['Boolean']['input']>;\n reasonId?: InputMaybe<Scalars['ID']['input']>;\n};\n\n/** Autogenerated return type of UpdateStatusChange */\nexport type UpdateStatusChangePayload = {\n __typename?: 'UpdateStatusChangePayload';\n errors?: Maybe<Array<MutationError>>;\n statusChange?: Maybe<StatusChange>;\n};\n\n/** Autogenerated return type of UpdateWidget */\nexport type UpdateWidgetPayload = {\n __typename?: 'UpdateWidgetPayload';\n errors?: Maybe<Array<MutationError>>;\n widget?: Maybe<Widget>;\n};\n\nexport type UpdateWorkOrderInput = {\n note?: InputMaybe<Scalars['String']['input']>;\n procedureResponse?: InputMaybe<Scalars['JSON']['input']>;\n status?: InputMaybe<WorkOrderStatusEnum>;\n timeSpentHours?: InputMaybe<Scalars['Int']['input']>;\n timeSpentMinutes?: InputMaybe<Scalars['Int']['input']>;\n};\n\n/** Autogenerated return type of UpdateWorkOrder */\nexport type UpdateWorkOrderPayload = {\n __typename?: 'UpdateWorkOrderPayload';\n errors?: Maybe<Array<MutationError>>;\n workOrder?: Maybe<WorkOrder>;\n};\n\nexport type User = {\n __typename?: 'User';\n id: Scalars['ID']['output'];\n login: Scalars['String']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type UserFilter = {\n bot_name_cont?: InputMaybe<Scalars['String']['input']>;\n bot_name_contains?: InputMaybe<Scalars['String']['input']>;\n bot_name_end?: InputMaybe<Scalars['String']['input']>;\n bot_name_eq?: InputMaybe<Scalars['String']['input']>;\n bot_name_equals?: InputMaybe<Scalars['String']['input']>;\n bot_name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n bot_name_not_eq?: InputMaybe<Scalars['String']['input']>;\n bot_name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n bot_name_not_null?: InputMaybe<Scalars['String']['input']>;\n bot_name_null?: InputMaybe<Scalars['String']['input']>;\n bot_name_start?: InputMaybe<Scalars['String']['input']>;\n communications_locale_cont?: InputMaybe<Scalars['String']['input']>;\n communications_locale_contains?: InputMaybe<Scalars['String']['input']>;\n communications_locale_end?: InputMaybe<Scalars['String']['input']>;\n communications_locale_eq?: InputMaybe<Scalars['String']['input']>;\n communications_locale_equals?: InputMaybe<Scalars['String']['input']>;\n communications_locale_in?: InputMaybe<Array<Scalars['String']['input']>>;\n communications_locale_not_eq?: InputMaybe<Scalars['String']['input']>;\n communications_locale_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n communications_locale_not_null?: InputMaybe<Scalars['String']['input']>;\n communications_locale_null?: InputMaybe<Scalars['String']['input']>;\n communications_locale_start?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_eq?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_equals?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_not_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_sent_at_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_cont?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_contains?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_end?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_eq?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_equals?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_in?: InputMaybe<Array<Scalars['String']['input']>>;\n confirmation_token_not_eq?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n confirmation_token_not_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_null?: InputMaybe<Scalars['String']['input']>;\n confirmation_token_start?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_eq?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_equals?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_not_null?: InputMaybe<Scalars['String']['input']>;\n confirmed_at_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_eq?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_equals?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_not_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_at_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_cont?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_contains?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_end?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_eq?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_equals?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_in?: InputMaybe<Array<Scalars['String']['input']>>;\n current_sign_in_ip_not_eq?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n current_sign_in_ip_not_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_null?: InputMaybe<Scalars['String']['input']>;\n current_sign_in_ip_start?: InputMaybe<Scalars['String']['input']>;\n deactivated_eq?: InputMaybe<Scalars['String']['input']>;\n deactivated_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n email_cont?: InputMaybe<Scalars['String']['input']>;\n email_contains?: InputMaybe<Scalars['String']['input']>;\n email_end?: InputMaybe<Scalars['String']['input']>;\n email_eq?: InputMaybe<Scalars['String']['input']>;\n email_equals?: InputMaybe<Scalars['String']['input']>;\n email_in?: InputMaybe<Array<Scalars['String']['input']>>;\n email_not_eq?: InputMaybe<Scalars['String']['input']>;\n email_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n email_not_null?: InputMaybe<Scalars['String']['input']>;\n email_null?: InputMaybe<Scalars['String']['input']>;\n email_start?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_cont?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_contains?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_end?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_eq?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_equals?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_in?: InputMaybe<Array<Scalars['String']['input']>>;\n encrypted_password_not_eq?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n encrypted_password_not_null?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_null?: InputMaybe<Scalars['String']['input']>;\n encrypted_password_start?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n image_cont?: InputMaybe<Scalars['String']['input']>;\n image_contains?: InputMaybe<Scalars['String']['input']>;\n image_end?: InputMaybe<Scalars['String']['input']>;\n image_eq?: InputMaybe<Scalars['String']['input']>;\n image_equals?: InputMaybe<Scalars['String']['input']>;\n image_in?: InputMaybe<Array<Scalars['String']['input']>>;\n image_not_eq?: InputMaybe<Scalars['String']['input']>;\n image_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n image_not_null?: InputMaybe<Scalars['String']['input']>;\n image_null?: InputMaybe<Scalars['String']['input']>;\n image_start?: InputMaybe<Scalars['String']['input']>;\n is_support_eq?: InputMaybe<Scalars['String']['input']>;\n is_support_equals?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_eq?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_equals?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_not_null?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_at_null?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_cont?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_contains?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_end?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_eq?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_equals?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_in?: InputMaybe<Array<Scalars['String']['input']>>;\n last_sign_in_ip_not_eq?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n last_sign_in_ip_not_null?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_null?: InputMaybe<Scalars['String']['input']>;\n last_sign_in_ip_start?: InputMaybe<Scalars['String']['input']>;\n locale_cont?: InputMaybe<Scalars['String']['input']>;\n locale_contains?: InputMaybe<Scalars['String']['input']>;\n locale_end?: InputMaybe<Scalars['String']['input']>;\n locale_eq?: InputMaybe<Scalars['String']['input']>;\n locale_equals?: InputMaybe<Scalars['String']['input']>;\n locale_in?: InputMaybe<Array<Scalars['String']['input']>>;\n locale_not_eq?: InputMaybe<Scalars['String']['input']>;\n locale_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n locale_not_null?: InputMaybe<Scalars['String']['input']>;\n locale_null?: InputMaybe<Scalars['String']['input']>;\n locale_start?: InputMaybe<Scalars['String']['input']>;\n login_code_cont?: InputMaybe<Scalars['String']['input']>;\n login_code_contains?: InputMaybe<Scalars['String']['input']>;\n login_code_end?: InputMaybe<Scalars['String']['input']>;\n login_code_eq?: InputMaybe<Scalars['String']['input']>;\n login_code_equals?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_eq?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_equals?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n login_code_generated_at_null?: InputMaybe<Scalars['String']['input']>;\n login_code_in?: InputMaybe<Array<Scalars['String']['input']>>;\n login_code_not_eq?: InputMaybe<Scalars['String']['input']>;\n login_code_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n login_code_not_null?: InputMaybe<Scalars['String']['input']>;\n login_code_null?: InputMaybe<Scalars['String']['input']>;\n login_code_start?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n nickname_cont?: InputMaybe<Scalars['String']['input']>;\n nickname_contains?: InputMaybe<Scalars['String']['input']>;\n nickname_end?: InputMaybe<Scalars['String']['input']>;\n nickname_eq?: InputMaybe<Scalars['String']['input']>;\n nickname_equals?: InputMaybe<Scalars['String']['input']>;\n nickname_in?: InputMaybe<Array<Scalars['String']['input']>>;\n nickname_not_eq?: InputMaybe<Scalars['String']['input']>;\n nickname_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n nickname_not_null?: InputMaybe<Scalars['String']['input']>;\n nickname_null?: InputMaybe<Scalars['String']['input']>;\n nickname_start?: InputMaybe<Scalars['String']['input']>;\n notification_browser_eq?: InputMaybe<Scalars['String']['input']>;\n notification_browser_equals?: InputMaybe<Scalars['String']['input']>;\n notification_email_eq?: InputMaybe<Scalars['String']['input']>;\n notification_email_equals?: InputMaybe<Scalars['String']['input']>;\n notification_rtc_eq?: InputMaybe<Scalars['String']['input']>;\n notification_rtc_equals?: InputMaybe<Scalars['String']['input']>;\n notification_sms_eq?: InputMaybe<Scalars['String']['input']>;\n notification_sms_equals?: InputMaybe<Scalars['String']['input']>;\n notification_vms_eq?: InputMaybe<Scalars['String']['input']>;\n notification_vms_equals?: InputMaybe<Scalars['String']['input']>;\n phone_cont?: InputMaybe<Scalars['String']['input']>;\n phone_contains?: InputMaybe<Scalars['String']['input']>;\n phone_end?: InputMaybe<Scalars['String']['input']>;\n phone_eq?: InputMaybe<Scalars['String']['input']>;\n phone_equals?: InputMaybe<Scalars['String']['input']>;\n phone_in?: InputMaybe<Array<Scalars['String']['input']>>;\n phone_not_eq?: InputMaybe<Scalars['String']['input']>;\n phone_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n phone_not_null?: InputMaybe<Scalars['String']['input']>;\n phone_null?: InputMaybe<Scalars['String']['input']>;\n phone_start?: InputMaybe<Scalars['String']['input']>;\n provider_cont?: InputMaybe<Scalars['String']['input']>;\n provider_contains?: InputMaybe<Scalars['String']['input']>;\n provider_end?: InputMaybe<Scalars['String']['input']>;\n provider_eq?: InputMaybe<Scalars['String']['input']>;\n provider_equals?: InputMaybe<Scalars['String']['input']>;\n provider_in?: InputMaybe<Array<Scalars['String']['input']>>;\n provider_not_eq?: InputMaybe<Scalars['String']['input']>;\n provider_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n provider_not_null?: InputMaybe<Scalars['String']['input']>;\n provider_null?: InputMaybe<Scalars['String']['input']>;\n provider_start?: InputMaybe<Scalars['String']['input']>;\n registration_token_cont?: InputMaybe<Scalars['String']['input']>;\n registration_token_contains?: InputMaybe<Scalars['String']['input']>;\n registration_token_end?: InputMaybe<Scalars['String']['input']>;\n registration_token_eq?: InputMaybe<Scalars['String']['input']>;\n registration_token_equals?: InputMaybe<Scalars['String']['input']>;\n registration_token_in?: InputMaybe<Array<Scalars['String']['input']>>;\n registration_token_not_eq?: InputMaybe<Scalars['String']['input']>;\n registration_token_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n registration_token_not_null?: InputMaybe<Scalars['String']['input']>;\n registration_token_null?: InputMaybe<Scalars['String']['input']>;\n registration_token_start?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_eq?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_equals?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n remember_created_at_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_eq?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_equals?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_not_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_sent_at_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_cont?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_contains?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_end?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_eq?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_equals?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reset_password_token_not_eq?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reset_password_token_not_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_null?: InputMaybe<Scalars['String']['input']>;\n reset_password_token_start?: InputMaybe<Scalars['String']['input']>;\n role_id_eq?: InputMaybe<Scalars['String']['input']>;\n role_id_equals?: InputMaybe<Scalars['String']['input']>;\n role_id_gt?: InputMaybe<Scalars['String']['input']>;\n role_id_gteq?: InputMaybe<Scalars['String']['input']>;\n role_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n role_id_lt?: InputMaybe<Scalars['String']['input']>;\n role_id_lteq?: InputMaybe<Scalars['String']['input']>;\n role_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n role_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n role_id_not_null?: InputMaybe<Scalars['String']['input']>;\n role_id_null?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_eq?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_equals?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_gt?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_gteq?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sign_in_count_lt?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_lteq?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_not_eq?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n sign_in_count_not_null?: InputMaybe<Scalars['String']['input']>;\n sign_in_count_null?: InputMaybe<Scalars['String']['input']>;\n team_id_eq?: InputMaybe<Scalars['String']['input']>;\n team_id_equals?: InputMaybe<Scalars['String']['input']>;\n team_id_gt?: InputMaybe<Scalars['String']['input']>;\n team_id_gteq?: InputMaybe<Scalars['String']['input']>;\n team_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n team_id_lt?: InputMaybe<Scalars['String']['input']>;\n team_id_lteq?: InputMaybe<Scalars['String']['input']>;\n team_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n team_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n team_id_not_null?: InputMaybe<Scalars['String']['input']>;\n team_id_null?: InputMaybe<Scalars['String']['input']>;\n tokens_cont?: InputMaybe<Scalars['String']['input']>;\n tokens_contains?: InputMaybe<Scalars['String']['input']>;\n tokens_end?: InputMaybe<Scalars['String']['input']>;\n tokens_eq?: InputMaybe<Scalars['String']['input']>;\n tokens_equals?: InputMaybe<Scalars['String']['input']>;\n tokens_in?: InputMaybe<Array<Scalars['String']['input']>>;\n tokens_not_eq?: InputMaybe<Scalars['String']['input']>;\n tokens_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n tokens_not_null?: InputMaybe<Scalars['String']['input']>;\n tokens_null?: InputMaybe<Scalars['String']['input']>;\n tokens_start?: InputMaybe<Scalars['String']['input']>;\n uid_cont?: InputMaybe<Scalars['String']['input']>;\n uid_contains?: InputMaybe<Scalars['String']['input']>;\n uid_end?: InputMaybe<Scalars['String']['input']>;\n uid_eq?: InputMaybe<Scalars['String']['input']>;\n uid_equals?: InputMaybe<Scalars['String']['input']>;\n uid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uid_not_null?: InputMaybe<Scalars['String']['input']>;\n uid_null?: InputMaybe<Scalars['String']['input']>;\n uid_start?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_cont?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_contains?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_end?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_eq?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_equals?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_in?: InputMaybe<Array<Scalars['String']['input']>>;\n unconfirmed_email_not_eq?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n unconfirmed_email_not_null?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_null?: InputMaybe<Scalars['String']['input']>;\n unconfirmed_email_start?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n username_cont?: InputMaybe<Scalars['String']['input']>;\n username_contains?: InputMaybe<Scalars['String']['input']>;\n username_end?: InputMaybe<Scalars['String']['input']>;\n username_eq?: InputMaybe<Scalars['String']['input']>;\n username_equals?: InputMaybe<Scalars['String']['input']>;\n username_in?: InputMaybe<Array<Scalars['String']['input']>>;\n username_not_eq?: InputMaybe<Scalars['String']['input']>;\n username_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n username_not_null?: InputMaybe<Scalars['String']['input']>;\n username_null?: InputMaybe<Scalars['String']['input']>;\n username_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type UserPresence = {\n __typename?: 'UserPresence';\n author: User;\n finishedAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n startedAt: Scalars['String']['output'];\n user: User;\n workplaceId: Scalars['String']['output'];\n};\n\nexport type UserPresenceFilter = {\n author_id_eq?: InputMaybe<Scalars['String']['input']>;\n author_id_equals?: InputMaybe<Scalars['String']['input']>;\n author_id_gt?: InputMaybe<Scalars['String']['input']>;\n author_id_gteq?: InputMaybe<Scalars['String']['input']>;\n author_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n author_id_lt?: InputMaybe<Scalars['String']['input']>;\n author_id_lteq?: InputMaybe<Scalars['String']['input']>;\n author_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n author_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n author_id_not_null?: InputMaybe<Scalars['String']['input']>;\n author_id_null?: InputMaybe<Scalars['String']['input']>;\n auto_closed_eq?: InputMaybe<Scalars['String']['input']>;\n auto_closed_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_eq?: InputMaybe<Scalars['String']['input']>;\n finished_at_equals?: InputMaybe<Scalars['String']['input']>;\n finished_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n finished_at_not_null?: InputMaybe<Scalars['String']['input']>;\n finished_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n period?: InputMaybe<Period>;\n shift_id_eq?: InputMaybe<Scalars['String']['input']>;\n shift_id_equals?: InputMaybe<Scalars['String']['input']>;\n shift_id_gt?: InputMaybe<Scalars['String']['input']>;\n shift_id_gteq?: InputMaybe<Scalars['String']['input']>;\n shift_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n shift_id_lt?: InputMaybe<Scalars['String']['input']>;\n shift_id_lteq?: InputMaybe<Scalars['String']['input']>;\n shift_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n shift_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n shift_id_not_null?: InputMaybe<Scalars['String']['input']>;\n shift_id_null?: InputMaybe<Scalars['String']['input']>;\n started_at_eq?: InputMaybe<Scalars['String']['input']>;\n started_at_equals?: InputMaybe<Scalars['String']['input']>;\n started_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n started_at_not_null?: InputMaybe<Scalars['String']['input']>;\n started_at_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_equals?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_gteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_lt?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_lteq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n subgroup_id_not_null?: InputMaybe<Scalars['String']['input']>;\n subgroup_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n user_id_eq?: InputMaybe<Scalars['String']['input']>;\n user_id_equals?: InputMaybe<Scalars['String']['input']>;\n user_id_gt?: InputMaybe<Scalars['String']['input']>;\n user_id_gteq?: InputMaybe<Scalars['String']['input']>;\n user_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n user_id_lt?: InputMaybe<Scalars['String']['input']>;\n user_id_lteq?: InputMaybe<Scalars['String']['input']>;\n user_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n user_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n user_id_not_null?: InputMaybe<Scalars['String']['input']>;\n user_id_null?: InputMaybe<Scalars['String']['input']>;\n uuid_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_equals?: InputMaybe<Scalars['String']['input']>;\n uuid_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_eq?: InputMaybe<Scalars['String']['input']>;\n uuid_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n uuid_not_null?: InputMaybe<Scalars['String']['input']>;\n uuid_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_cont?: InputMaybe<Scalars['String']['input']>;\n workplace_id_contains?: InputMaybe<Scalars['String']['input']>;\n workplace_id_end?: InputMaybe<Scalars['String']['input']>;\n workplace_id_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_equals?: InputMaybe<Scalars['String']['input']>;\n workplace_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n workplace_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n workplace_id_not_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_null?: InputMaybe<Scalars['String']['input']>;\n workplace_id_start?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type Widget = {\n __typename?: 'Widget';\n config?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n};\n\nexport type WidgetFilter = {\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n config_contains?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type WorkOrder = {\n __typename?: 'WorkOrder';\n assignees: Array<User>;\n category?: Maybe<WorkOrderCategory>;\n closedAt?: Maybe<Scalars['String']['output']>;\n createdAt: Scalars['String']['output'];\n creationMethod: WorkOrderCreationMethodEnum;\n description?: Maybe<Scalars['String']['output']>;\n dtrUrl?: Maybe<Scalars['String']['output']>;\n dueAt?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n note?: Maybe<Scalars['String']['output']>;\n originalOccurrenceAt?: Maybe<Scalars['String']['output']>;\n priority: WorkOrderPriorityEnum;\n procedureDescription?: Maybe<Scalars['String']['output']>;\n procedureName?: Maybe<Scalars['String']['output']>;\n procedureResponse: Scalars['JSON']['output'];\n procedureTemplate: Scalars['JSON']['output'];\n startAt?: Maybe<Scalars['String']['output']>;\n status: WorkOrderStatusEnum;\n timeSpentHours?: Maybe<Scalars['Int']['output']>;\n timeSpentMinutes?: Maybe<Scalars['Int']['output']>;\n updatedAt: Scalars['String']['output'];\n workplaces: Array<Workplace>;\n};\n\nexport type WorkOrderCategory = {\n __typename?: 'WorkOrderCategory';\n description?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n name: Scalars['String']['output'];\n};\n\nexport enum WorkOrderCreationMethodEnum {\n ConditionBased = 'CONDITION_BASED',\n EventBased = 'EVENT_BASED',\n Manual = 'MANUAL',\n Scheduled = 'SCHEDULED'\n}\n\nexport type WorkOrderFilter = {\n creation_method_eq?: InputMaybe<WorkOrderCreationMethodEnum>;\n creation_method_equals?: InputMaybe<WorkOrderCreationMethodEnum>;\n creation_method_in?: InputMaybe<Array<WorkOrderCreationMethodEnum>>;\n creation_method_not_in?: InputMaybe<Array<WorkOrderCreationMethodEnum>>;\n id_eq?: InputMaybe<Scalars['ID']['input']>;\n id_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n id_not_eq?: InputMaybe<Scalars['ID']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n priority_eq?: InputMaybe<WorkOrderPriorityEnum>;\n priority_equals?: InputMaybe<WorkOrderPriorityEnum>;\n priority_in?: InputMaybe<Array<WorkOrderPriorityEnum>>;\n priority_not_in?: InputMaybe<Array<WorkOrderPriorityEnum>>;\n s?: InputMaybe<Scalars['String']['input']>;\n status_eq?: InputMaybe<WorkOrderStatusEnum>;\n status_equals?: InputMaybe<WorkOrderStatusEnum>;\n status_in?: InputMaybe<Array<WorkOrderStatusEnum>>;\n status_not_in?: InputMaybe<Array<WorkOrderStatusEnum>>;\n workplace_ids_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplace_ids_not_in?: InputMaybe<Array<Scalars['ID']['input']>>;\n};\n\nexport enum WorkOrderPriorityEnum {\n Critical = 'CRITICAL',\n High = 'HIGH',\n Low = 'LOW',\n Normal = 'NORMAL'\n}\n\nexport enum WorkOrderStatusEnum {\n Canceled = 'CANCELED',\n Done = 'DONE',\n InProgress = 'IN_PROGRESS',\n OnHold = 'ON_HOLD',\n Open = 'OPEN'\n}\n\nexport type WorkOrdersInsightsCategoryEntry = {\n __typename?: 'WorkOrdersInsightsCategoryEntry';\n categoryId: Scalars['ID']['output'];\n categoryName: Scalars['String']['output'];\n durations: Array<WorkOrdersInsightsDurationEntry>;\n totalCount: Scalars['Int']['output'];\n};\n\nexport type WorkOrdersInsightsDurationEntry = {\n __typename?: 'WorkOrdersInsightsDurationEntry';\n count: Scalars['Int']['output'];\n lowerBoundMinutes?: Maybe<Scalars['Int']['output']>;\n upperBoundMinutes?: Maybe<Scalars['Int']['output']>;\n};\n\nexport type WorkOrdersInsightsInput = {\n categoryIds?: InputMaybe<Array<Scalars['ID']['input']>>;\n dateFrom: Scalars['ISO8601DateTime']['input'];\n dateTo: Scalars['ISO8601DateTime']['input'];\n dayType: DayType;\n durationBoundaries: Array<Scalars['Int']['input']>;\n};\n\nexport type WorkOrdersInsightsResult = {\n __typename?: 'WorkOrdersInsightsResult';\n categories: Array<WorkOrdersInsightsCategoryEntry>;\n};\n\nexport type Workplace = {\n __typename?: 'Workplace';\n colorHex?: Maybe<Scalars['String']['output']>;\n currentStatusChange?: Maybe<StatusChange>;\n deactivated: Scalars['Boolean']['output'];\n departmentId?: Maybe<Scalars['String']['output']>;\n dtrUrl?: Maybe<Scalars['String']['output']>;\n id: Scalars['ID']['output'];\n minOperators: Scalars['Int']['output'];\n name: Scalars['String']['output'];\n reasonGroupId: Scalars['String']['output'];\n reasonsRecommendationsEnabled: Scalars['Boolean']['output'];\n};\n\nexport type WorkplaceAssignment = {\n __typename?: 'WorkplaceAssignment';\n createdAt: Scalars['ISO8601DateTime']['output'];\n id: Scalars['ID']['output'];\n shift: Shift;\n user: User;\n validFrom: Scalars['ISO8601Date']['output'];\n workplace?: Maybe<Workplace>;\n};\n\nexport type WorkplaceAssignmentsInput = {\n date: Scalars['ISO8601DateTime']['input'];\n departmentId?: InputMaybe<Scalars['ID']['input']>;\n shiftId: Scalars['ID']['input'];\n};\n\nexport type WorkplaceAssignmentsView = {\n __typename?: 'WorkplaceAssignmentsView';\n summary: AssignmentSummary;\n unassignedOperators: Array<User>;\n workplaces: Array<WorkplaceWithAssignment>;\n};\n\nexport type WorkplaceConfig = {\n __typename?: 'WorkplaceConfig';\n defaultScreen: ScreenEnum;\n menuDisplayItems: Array<ScreenEnum>;\n orderConfig: OrderConfig;\n orderExecutionConfig: OrderExecutionConfig;\n productConfig: ProductConfig;\n productionMode: ProductionMode;\n screenSaverConfig: ScreenSaverConfig;\n statusScreenDisplayBlocks?: Maybe<Array<StatusScreenDisplayBlocksEnum>>;\n workplaceId: Scalars['ID']['output'];\n};\n\nexport enum WorkplaceEvent {\n AllStatusChangeTransitionPermissionsUpdated = 'ALL_STATUS_CHANGE_TRANSITION_PERMISSIONS_UPDATED',\n CounterUpdated = 'COUNTER_UPDATED',\n CurrentShiftChanged = 'CURRENT_SHIFT_CHANGED',\n MetricValueUpdated = 'METRIC_VALUE_UPDATED',\n NotificationCreated = 'NOTIFICATION_CREATED',\n OrderExecutionUpdated = 'ORDER_EXECUTION_UPDATED',\n OrderUpdated = 'ORDER_UPDATED',\n StatusChangeCreated = 'STATUS_CHANGE_CREATED',\n StatusChangeUpdated = 'STATUS_CHANGE_UPDATED',\n UserPresenceCreated = 'USER_PRESENCE_CREATED',\n UserPresenceUpdated = 'USER_PRESENCE_UPDATED'\n}\n\nexport type WorkplaceEventSubjectUnion = Counter | Item | MetricValue | Notification | Order | OrderExecution | Shift | StatusChange | UserPresence;\n\n/** Autogenerated return type of WorkplaceEventSubscription */\nexport type WorkplaceEventSubscriptionPayload = {\n __typename?: 'WorkplaceEventSubscriptionPayload';\n event: WorkplaceEvent;\n subject?: Maybe<WorkplaceEventSubjectUnion>;\n};\n\nexport type WorkplaceFilter = {\n availability_boost_eq?: InputMaybe<Scalars['String']['input']>;\n availability_boost_equals?: InputMaybe<Scalars['String']['input']>;\n availability_boost_gt?: InputMaybe<Scalars['String']['input']>;\n availability_boost_gteq?: InputMaybe<Scalars['String']['input']>;\n availability_boost_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_boost_lt?: InputMaybe<Scalars['String']['input']>;\n availability_boost_lteq?: InputMaybe<Scalars['String']['input']>;\n availability_boost_not_eq?: InputMaybe<Scalars['String']['input']>;\n availability_boost_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_boost_not_null?: InputMaybe<Scalars['String']['input']>;\n availability_boost_null?: InputMaybe<Scalars['String']['input']>;\n availability_target_eq?: InputMaybe<Scalars['String']['input']>;\n availability_target_equals?: InputMaybe<Scalars['String']['input']>;\n availability_target_gt?: InputMaybe<Scalars['String']['input']>;\n availability_target_gteq?: InputMaybe<Scalars['String']['input']>;\n availability_target_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_target_lt?: InputMaybe<Scalars['String']['input']>;\n availability_target_lteq?: InputMaybe<Scalars['String']['input']>;\n availability_target_not_eq?: InputMaybe<Scalars['String']['input']>;\n availability_target_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n availability_target_not_null?: InputMaybe<Scalars['String']['input']>;\n availability_target_null?: InputMaybe<Scalars['String']['input']>;\n color_hex_cont?: InputMaybe<Scalars['String']['input']>;\n color_hex_contains?: InputMaybe<Scalars['String']['input']>;\n color_hex_end?: InputMaybe<Scalars['String']['input']>;\n color_hex_eq?: InputMaybe<Scalars['String']['input']>;\n color_hex_equals?: InputMaybe<Scalars['String']['input']>;\n color_hex_in?: InputMaybe<Array<Scalars['String']['input']>>;\n color_hex_not_eq?: InputMaybe<Scalars['String']['input']>;\n color_hex_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n color_hex_not_null?: InputMaybe<Scalars['String']['input']>;\n color_hex_null?: InputMaybe<Scalars['String']['input']>;\n color_hex_start?: InputMaybe<Scalars['String']['input']>;\n company_id_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_equals?: InputMaybe<Scalars['String']['input']>;\n company_id_gt?: InputMaybe<Scalars['String']['input']>;\n company_id_gteq?: InputMaybe<Scalars['String']['input']>;\n company_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_lt?: InputMaybe<Scalars['String']['input']>;\n company_id_lteq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n company_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n company_id_not_null?: InputMaybe<Scalars['String']['input']>;\n company_id_null?: InputMaybe<Scalars['String']['input']>;\n created_at_eq?: InputMaybe<Scalars['String']['input']>;\n created_at_equals?: InputMaybe<Scalars['String']['input']>;\n created_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n created_at_not_null?: InputMaybe<Scalars['String']['input']>;\n created_at_null?: InputMaybe<Scalars['String']['input']>;\n current_order_id_eq?: InputMaybe<Scalars['String']['input']>;\n current_order_id_equals?: InputMaybe<Scalars['String']['input']>;\n current_order_id_gt?: InputMaybe<Scalars['String']['input']>;\n current_order_id_gteq?: InputMaybe<Scalars['String']['input']>;\n current_order_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n current_order_id_lt?: InputMaybe<Scalars['String']['input']>;\n current_order_id_lteq?: InputMaybe<Scalars['String']['input']>;\n current_order_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n current_order_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n current_order_id_not_null?: InputMaybe<Scalars['String']['input']>;\n current_order_id_null?: InputMaybe<Scalars['String']['input']>;\n deactivated_eq?: InputMaybe<Scalars['String']['input']>;\n deactivated_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_eq?: InputMaybe<Scalars['String']['input']>;\n deleted_at_equals?: InputMaybe<Scalars['String']['input']>;\n deleted_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n deleted_at_not_null?: InputMaybe<Scalars['String']['input']>;\n deleted_at_null?: InputMaybe<Scalars['String']['input']>;\n department_id_eq?: InputMaybe<Scalars['String']['input']>;\n department_id_equals?: InputMaybe<Scalars['String']['input']>;\n department_id_gt?: InputMaybe<Scalars['String']['input']>;\n department_id_gteq?: InputMaybe<Scalars['String']['input']>;\n department_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n department_id_lt?: InputMaybe<Scalars['String']['input']>;\n department_id_lteq?: InputMaybe<Scalars['String']['input']>;\n department_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n department_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n department_id_not_null?: InputMaybe<Scalars['String']['input']>;\n department_id_null?: InputMaybe<Scalars['String']['input']>;\n id_eq?: InputMaybe<Scalars['String']['input']>;\n id_equals?: InputMaybe<Scalars['String']['input']>;\n id_gt?: InputMaybe<Scalars['String']['input']>;\n id_gteq?: InputMaybe<Scalars['String']['input']>;\n id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_lt?: InputMaybe<Scalars['String']['input']>;\n id_lteq?: InputMaybe<Scalars['String']['input']>;\n id_not_eq?: InputMaybe<Scalars['String']['input']>;\n id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n id_not_null?: InputMaybe<Scalars['String']['input']>;\n id_null?: InputMaybe<Scalars['String']['input']>;\n meta_contains?: InputMaybe<Scalars['String']['input']>;\n min_operators_eq?: InputMaybe<Scalars['String']['input']>;\n min_operators_equals?: InputMaybe<Scalars['String']['input']>;\n min_operators_gt?: InputMaybe<Scalars['String']['input']>;\n min_operators_gteq?: InputMaybe<Scalars['String']['input']>;\n min_operators_in?: InputMaybe<Array<Scalars['String']['input']>>;\n min_operators_lt?: InputMaybe<Scalars['String']['input']>;\n min_operators_lteq?: InputMaybe<Scalars['String']['input']>;\n min_operators_not_eq?: InputMaybe<Scalars['String']['input']>;\n min_operators_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n min_operators_not_null?: InputMaybe<Scalars['String']['input']>;\n min_operators_null?: InputMaybe<Scalars['String']['input']>;\n name_cont?: InputMaybe<Scalars['String']['input']>;\n name_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_cont?: InputMaybe<Scalars['String']['input']>;\n name_en_contains?: InputMaybe<Scalars['String']['input']>;\n name_en_end?: InputMaybe<Scalars['String']['input']>;\n name_en_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_equals?: InputMaybe<Scalars['String']['input']>;\n name_en_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_en_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_en_not_null?: InputMaybe<Scalars['String']['input']>;\n name_en_null?: InputMaybe<Scalars['String']['input']>;\n name_en_start?: InputMaybe<Scalars['String']['input']>;\n name_end?: InputMaybe<Scalars['String']['input']>;\n name_eq?: InputMaybe<Scalars['String']['input']>;\n name_equals?: InputMaybe<Scalars['String']['input']>;\n name_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_not_null?: InputMaybe<Scalars['String']['input']>;\n name_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_cont?: InputMaybe<Scalars['String']['input']>;\n name_pl_contains?: InputMaybe<Scalars['String']['input']>;\n name_pl_end?: InputMaybe<Scalars['String']['input']>;\n name_pl_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_equals?: InputMaybe<Scalars['String']['input']>;\n name_pl_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_eq?: InputMaybe<Scalars['String']['input']>;\n name_pl_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n name_pl_not_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_null?: InputMaybe<Scalars['String']['input']>;\n name_pl_start?: InputMaybe<Scalars['String']['input']>;\n name_start?: InputMaybe<Scalars['String']['input']>;\n oee_boost_eq?: InputMaybe<Scalars['String']['input']>;\n oee_boost_equals?: InputMaybe<Scalars['String']['input']>;\n oee_boost_gt?: InputMaybe<Scalars['String']['input']>;\n oee_boost_gteq?: InputMaybe<Scalars['String']['input']>;\n oee_boost_in?: InputMaybe<Array<Scalars['String']['input']>>;\n oee_boost_lt?: InputMaybe<Scalars['String']['input']>;\n oee_boost_lteq?: InputMaybe<Scalars['String']['input']>;\n oee_boost_not_eq?: InputMaybe<Scalars['String']['input']>;\n oee_boost_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n oee_boost_not_null?: InputMaybe<Scalars['String']['input']>;\n oee_boost_null?: InputMaybe<Scalars['String']['input']>;\n oee_target_eq?: InputMaybe<Scalars['String']['input']>;\n oee_target_equals?: InputMaybe<Scalars['String']['input']>;\n oee_target_gt?: InputMaybe<Scalars['String']['input']>;\n oee_target_gteq?: InputMaybe<Scalars['String']['input']>;\n oee_target_in?: InputMaybe<Array<Scalars['String']['input']>>;\n oee_target_lt?: InputMaybe<Scalars['String']['input']>;\n oee_target_lteq?: InputMaybe<Scalars['String']['input']>;\n oee_target_not_eq?: InputMaybe<Scalars['String']['input']>;\n oee_target_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n oee_target_not_null?: InputMaybe<Scalars['String']['input']>;\n oee_target_null?: InputMaybe<Scalars['String']['input']>;\n performance_boost_eq?: InputMaybe<Scalars['String']['input']>;\n performance_boost_equals?: InputMaybe<Scalars['String']['input']>;\n performance_boost_gt?: InputMaybe<Scalars['String']['input']>;\n performance_boost_gteq?: InputMaybe<Scalars['String']['input']>;\n performance_boost_in?: InputMaybe<Array<Scalars['String']['input']>>;\n performance_boost_lt?: InputMaybe<Scalars['String']['input']>;\n performance_boost_lteq?: InputMaybe<Scalars['String']['input']>;\n performance_boost_not_eq?: InputMaybe<Scalars['String']['input']>;\n performance_boost_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n performance_boost_not_null?: InputMaybe<Scalars['String']['input']>;\n performance_boost_null?: InputMaybe<Scalars['String']['input']>;\n performance_target_eq?: InputMaybe<Scalars['String']['input']>;\n performance_target_equals?: InputMaybe<Scalars['String']['input']>;\n performance_target_gt?: InputMaybe<Scalars['String']['input']>;\n performance_target_gteq?: InputMaybe<Scalars['String']['input']>;\n performance_target_in?: InputMaybe<Array<Scalars['String']['input']>>;\n performance_target_lt?: InputMaybe<Scalars['String']['input']>;\n performance_target_lteq?: InputMaybe<Scalars['String']['input']>;\n performance_target_not_eq?: InputMaybe<Scalars['String']['input']>;\n performance_target_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n performance_target_not_null?: InputMaybe<Scalars['String']['input']>;\n performance_target_null?: InputMaybe<Scalars['String']['input']>;\n production_mode_eq?: InputMaybe<Scalars['String']['input']>;\n production_mode_equals?: InputMaybe<Scalars['String']['input']>;\n production_mode_gt?: InputMaybe<Scalars['String']['input']>;\n production_mode_gteq?: InputMaybe<Scalars['String']['input']>;\n production_mode_in?: InputMaybe<Array<Scalars['String']['input']>>;\n production_mode_lt?: InputMaybe<Scalars['String']['input']>;\n production_mode_lteq?: InputMaybe<Scalars['String']['input']>;\n production_mode_not_eq?: InputMaybe<Scalars['String']['input']>;\n production_mode_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n production_mode_not_null?: InputMaybe<Scalars['String']['input']>;\n production_mode_null?: InputMaybe<Scalars['String']['input']>;\n quality_boost_eq?: InputMaybe<Scalars['String']['input']>;\n quality_boost_equals?: InputMaybe<Scalars['String']['input']>;\n quality_boost_gt?: InputMaybe<Scalars['String']['input']>;\n quality_boost_gteq?: InputMaybe<Scalars['String']['input']>;\n quality_boost_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quality_boost_lt?: InputMaybe<Scalars['String']['input']>;\n quality_boost_lteq?: InputMaybe<Scalars['String']['input']>;\n quality_boost_not_eq?: InputMaybe<Scalars['String']['input']>;\n quality_boost_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quality_boost_not_null?: InputMaybe<Scalars['String']['input']>;\n quality_boost_null?: InputMaybe<Scalars['String']['input']>;\n quality_target_eq?: InputMaybe<Scalars['String']['input']>;\n quality_target_equals?: InputMaybe<Scalars['String']['input']>;\n quality_target_gt?: InputMaybe<Scalars['String']['input']>;\n quality_target_gteq?: InputMaybe<Scalars['String']['input']>;\n quality_target_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quality_target_lt?: InputMaybe<Scalars['String']['input']>;\n quality_target_lteq?: InputMaybe<Scalars['String']['input']>;\n quality_target_not_eq?: InputMaybe<Scalars['String']['input']>;\n quality_target_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n quality_target_not_null?: InputMaybe<Scalars['String']['input']>;\n quality_target_null?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_eq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_equals?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_gt?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_gteq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_group_id_lt?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_lteq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n reason_group_id_not_null?: InputMaybe<Scalars['String']['input']>;\n reason_group_id_null?: InputMaybe<Scalars['String']['input']>;\n reasons_recommendations_enabled_eq?: InputMaybe<Scalars['String']['input']>;\n reasons_recommendations_enabled_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_auto_sign_out_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_auto_sign_out_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_idle_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_idle_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_order_created_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_order_created_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_status_change_created_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_display_after_status_change_created_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_enabled_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_enabled_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_equals?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_gt?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_gteq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_in?: InputMaybe<Array<Scalars['String']['input']>>;\n screen_saver_idle_time_lt?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_lteq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_not_eq?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n screen_saver_idle_time_not_null?: InputMaybe<Scalars['String']['input']>;\n screen_saver_idle_time_null?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_eq?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_equals?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_gt?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_gteq?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_in?: InputMaybe<Array<Scalars['String']['input']>>;\n shift_end_reason_id_lt?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_lteq?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_not_eq?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_not_in?: InputMaybe<Array<Scalars['String']['input']>>;\n shift_end_reason_id_not_null?: InputMaybe<Scalars['String']['input']>;\n shift_end_reason_id_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_eq?: InputMaybe<Scalars['String']['input']>;\n updated_at_equals?: InputMaybe<Scalars['String']['input']>;\n updated_at_gteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_lteq_datetime?: InputMaybe<Scalars['String']['input']>;\n updated_at_not_null?: InputMaybe<Scalars['String']['input']>;\n updated_at_null?: InputMaybe<Scalars['String']['input']>;\n verify_existence_of_standard_rate_for_order_eq?: InputMaybe<Scalars['String']['input']>;\n verify_existence_of_standard_rate_for_order_equals?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type WorkplacePerformanceInsightsInput = {\n availabilityStatuses?: InputMaybe<Array<AvailabilityStatus>>;\n dayType?: InputMaybe<DayType>;\n endDate: Scalars['ISO8601DateTime']['input'];\n shiftIds: Array<Scalars['ID']['input']>;\n sortOrder?: InputMaybe<Scalars['String']['input']>;\n startDate: Scalars['ISO8601DateTime']['input'];\n userIds?: InputMaybe<Array<Scalars['ID']['input']>>;\n workplaceId: Scalars['ID']['input'];\n};\n\nexport type WorkplacePerformanceInsightsReason = {\n __typename?: 'WorkplacePerformanceInsightsReason';\n availabilityStatus: AvailabilityStatus;\n averageDuration: Scalars['String']['output'];\n averageDurationSeconds: Scalars['Float']['output'];\n maxDuration: Scalars['String']['output'];\n maxDurationSeconds: Scalars['Float']['output'];\n occurrences: Scalars['Int']['output'];\n percentage: Scalars['Float']['output'];\n reasonColor: AndonLightColor;\n reasonId: Scalars['ID']['output'];\n reasonName: Scalars['String']['output'];\n statusChanges: Array<WorkplacePerformanceInsightsStatusChange>;\n totalDuration: Scalars['String']['output'];\n totalSeconds: Scalars['Float']['output'];\n};\n\nexport type WorkplacePerformanceInsightsResult = {\n __typename?: 'WorkplacePerformanceInsightsResult';\n endDate: Scalars['ISO8601DateTime']['output'];\n mtbf: Scalars['String']['output'];\n mtbfSeconds?: Maybe<Scalars['Float']['output']>;\n mttr: Scalars['String']['output'];\n mttrSeconds?: Maybe<Scalars['Float']['output']>;\n offScheduleDuration: Scalars['String']['output'];\n offScheduleSeconds: Scalars['Float']['output'];\n reasons: Array<WorkplacePerformanceInsightsReason>;\n startDate: Scalars['ISO8601DateTime']['output'];\n totalDowntime: Scalars['String']['output'];\n totalDowntimePercentage: Scalars['Float']['output'];\n totalDowntimeSeconds: Scalars['Float']['output'];\n totalDuration: Scalars['String']['output'];\n totalSeconds: Scalars['Float']['output'];\n totalUptime: Scalars['String']['output'];\n totalUptimePercentage: Scalars['Float']['output'];\n totalUptimeSeconds: Scalars['Float']['output'];\n workplaceId: Scalars['ID']['output'];\n workplaceName: Scalars['String']['output'];\n};\n\nexport type WorkplacePerformanceInsightsStatusChange = {\n __typename?: 'WorkplacePerformanceInsightsStatusChange';\n firstSegmentStart: Scalars['ISO8601DateTime']['output'];\n id: Scalars['ID']['output'];\n lastSegmentEnd: Scalars['ISO8601DateTime']['output'];\n note?: Maybe<Scalars['String']['output']>;\n originalEnd?: Maybe<Scalars['ISO8601DateTime']['output']>;\n originalStart: Scalars['ISO8601DateTime']['output'];\n segments?: Maybe<Scalars['JSON']['output']>;\n totalSegmentDuration: Scalars['String']['output'];\n totalSegmentSeconds: Scalars['Float']['output'];\n uuid: Scalars['String']['output'];\n};\n\nexport type WorkplaceWithAssignment = {\n __typename?: 'WorkplaceWithAssignment';\n assignedCount: Scalars['Int']['output'];\n assignedOperators: Array<AssignedOperator>;\n isOvercapacity: Scalars['Boolean']['output'];\n missingCount: Scalars['Int']['output'];\n recommendedOperators: Scalars['Int']['output'];\n unplannedOperators: Array<UnplannedOperator>;\n workplace: Workplace;\n};\n\nexport type AssignOperatorToWorkplaceMutationVariables = Exact<{\n input: AssignOperatorInput;\n}>;\n\n\nexport type AssignOperatorToWorkplaceMutation = { __typename?: 'Mutation', assignOperatorToWorkplace: { __typename?: 'AssignOperatorToWorkplacePayload', assignment?: { __typename?: 'WorkplaceAssignment', createdAt: any, id: string, validFrom: any, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, user: { __typename?: 'User', id: string, login: string, name: string }, workplace?: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null } | null } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type BulkUpsertStaffingPlansMutationVariables = Exact<{\n input: BulkStaffingPlanInput;\n}>;\n\n\nexport type BulkUpsertStaffingPlansMutation = { __typename?: 'Mutation', bulkUpsertStaffingPlans: { __typename?: 'BulkUpsertStaffingPlansPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, staffingPlans?: Array<{ __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, createdAt: any, updatedAt: any, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, author: { __typename?: 'User', id: string, login: string, name: string } }> | null } };\n\nexport type CreateDashboardMutationVariables = Exact<{\n filters?: InputMaybe<Scalars['String']['input']>;\n gridLayout?: InputMaybe<Scalars['String']['input']>;\n id: Scalars['ID']['input'];\n name: Scalars['String']['input'];\n}>;\n\n\nexport type CreateDashboardMutation = { __typename?: 'Mutation', createDashboard: { __typename?: 'CreateDashboardPayload', dashboard?: { __typename?: 'Dashboard', filters?: string | null, gridLayout?: string | null, id: string, name: string } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type CreateOrderMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n number: Scalars['String']['input'];\n}>;\n\n\nexport type CreateOrderMutation = { __typename?: 'Mutation', createOrder: { __typename?: 'CreateOrderPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } };\n\nexport type CreateProductMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n number: Scalars['String']['input'];\n}>;\n\n\nexport type CreateProductMutation = { __typename?: 'Mutation', createProduct: { __typename?: 'CreateProductPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } };\n\nexport type CreateStaffingPlanMutationVariables = Exact<{\n input: StaffingPlanInput;\n}>;\n\n\nexport type CreateStaffingPlanMutation = { __typename?: 'Mutation', createStaffingPlan: { __typename?: 'CreateStaffingPlanPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, staffingPlan?: { __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, createdAt: any, updatedAt: any, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, author: { __typename?: 'User', id: string, login: string, name: string } } | null } };\n\nexport type CreateStatusChangeMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n reasonHasBeenRecommended?: InputMaybe<Scalars['Boolean']['input']>;\n reasonId: Scalars['ID']['input'];\n startedAt?: InputMaybe<Scalars['String']['input']>;\n userId?: InputMaybe<Scalars['ID']['input']>;\n workplaceId: Scalars['ID']['input'];\n}>;\n\n\nexport type CreateStatusChangeMutation = { __typename?: 'Mutation', createStatusChange: { __typename?: 'CreateStatusChangePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, statusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null } };\n\nexport type CreateUserPresenceMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n userToken: Scalars['String']['input'];\n workplaceId: Scalars['ID']['input'];\n}>;\n\n\nexport type CreateUserPresenceMutation = { __typename?: 'Mutation', createUserPresence: { __typename?: 'CreateUserPresencePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, userPresence?: { __typename?: 'UserPresence', finishedAt?: string | null, id: string, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, user: { __typename?: 'User', id: string, login: string, name: string } } | null } };\n\nexport type CreateWidgetMutationVariables = Exact<{\n config?: InputMaybe<Scalars['String']['input']>;\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type CreateWidgetMutation = { __typename?: 'Mutation', createWidget: { __typename?: 'CreateWidgetPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, widget?: { __typename?: 'Widget', config?: string | null, id: string } | null } };\n\nexport type PauseOrderExecutionMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n statusChangeId: Scalars['ID']['input'];\n}>;\n\n\nexport type PauseOrderExecutionMutation = { __typename?: 'Mutation', pauseOrderExecution: { __typename?: 'PauseOrderExecutionPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, orderExecution?: { __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null } };\n\nexport type RemoveDashboardMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveDashboardMutation = { __typename?: 'Mutation', removeDashboard: { __typename?: 'RemoveDashboardPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RemoveStaffingPlanMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveStaffingPlanMutation = { __typename?: 'Mutation', removeStaffingPlan: { __typename?: 'RemoveStaffingPlanPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RemoveUserPresenceMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveUserPresenceMutation = { __typename?: 'Mutation', removeUserPresence: { __typename?: 'RemoveUserPresencePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RemoveWidgetMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveWidgetMutation = { __typename?: 'Mutation', removeWidget: { __typename?: 'RemoveWidgetPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RemoveWorkplaceUsersPresencesMutationVariables = Exact<{\n workplaceId: Scalars['ID']['input'];\n}>;\n\n\nexport type RemoveWorkplaceUsersPresencesMutation = { __typename?: 'Mutation', removeWorkplaceUsersPresences: { __typename?: 'RemoveWorkplaceUsersPresencesPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type RequestFeatureAccessMutationVariables = Exact<{\n input: RequestFeatureAccessInput;\n}>;\n\n\nexport type RequestFeatureAccessMutation = { __typename?: 'Mutation', requestFeatureAccess: { __typename?: 'RequestFeatureAccessMutationPayload', success: boolean, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type SetCounterMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n note?: InputMaybe<Scalars['String']['input']>;\n orderExecutionId?: InputMaybe<Scalars['ID']['input']>;\n value: Scalars['Float']['input'];\n}>;\n\n\nexport type SetCounterMutation = { __typename?: 'Mutation', setCounter: { __typename?: 'SetCounterPayload', counter?: { __typename?: 'Counter', directoryId?: string | null, hasNote: boolean, id: string, isDisabled: boolean, kind: CounterKindEnum, name: string, position: number, value: number, workplaceId: string } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type StartOrderExecutionMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n itemCount?: InputMaybe<Scalars['Float']['input']>;\n order: OrderInput;\n product?: InputMaybe<ProductInput>;\n statusChangeId: Scalars['ID']['input'];\n workplaceId: Scalars['ID']['input'];\n}>;\n\n\nexport type StartOrderExecutionMutation = { __typename?: 'Mutation', startOrderExecution: { __typename?: 'StartOrderExecutionPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, orderExecution?: { __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null } };\n\nexport type StartTrialMutationVariables = Exact<{\n input: StartTrialInput;\n}>;\n\n\nexport type StartTrialMutation = { __typename?: 'Mutation', startTrial: { __typename?: 'StartTrialMutationPayload', success: boolean, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type StopOrderExecutionMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n statusChangeId: Scalars['ID']['input'];\n}>;\n\n\nexport type StopOrderExecutionMutation = { __typename?: 'Mutation', stopOrderExecution: { __typename?: 'StopOrderExecutionPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, orderExecution?: { __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null } };\n\nexport type UnassignOperatorFromWorkplaceMutationVariables = Exact<{\n input: UnassignOperatorInput;\n}>;\n\n\nexport type UnassignOperatorFromWorkplaceMutation = { __typename?: 'Mutation', unassignOperatorFromWorkplace: { __typename?: 'UnassignOperatorFromWorkplacePayload', assignment?: { __typename?: 'WorkplaceAssignment', createdAt: any, id: string, validFrom: any, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, user: { __typename?: 'User', id: string, login: string, name: string }, workplace?: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null } | null } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type UpdateDashboardMutationVariables = Exact<{\n filters?: InputMaybe<Scalars['String']['input']>;\n gridLayout: Scalars['String']['input'];\n id: Scalars['ID']['input'];\n name?: InputMaybe<Scalars['String']['input']>;\n}>;\n\n\nexport type UpdateDashboardMutation = { __typename?: 'Mutation', updateDashboard: { __typename?: 'UpdateDashboardPayload', dashboard?: { __typename?: 'Dashboard', filters?: string | null, gridLayout?: string | null, id: string, name: string } | null, errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null } };\n\nexport type UpdateNotificationMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n status: Scalars['String']['input'];\n}>;\n\n\nexport type UpdateNotificationMutation = { __typename?: 'Mutation', updateNotification: { __typename?: 'UpdateNotificationPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, notification?: { __typename?: 'Notification', channel?: string | null, details?: string | null, emitterId: string, emitterType: string, id: string, message: string, receiverId: string, receiverType: string, status?: string | null } | null } };\n\nexport type UpdateOrderMutationVariables = Exact<{\n input: UpdateOrderInput;\n}>;\n\n\nexport type UpdateOrderMutation = { __typename?: 'Mutation', updateOrder: { __typename?: 'UpdateOrderPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } };\n\nexport type UpdateOrderExecutionMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n standardRateId: Scalars['ID']['input'];\n}>;\n\n\nexport type UpdateOrderExecutionMutation = { __typename?: 'Mutation', updateOrderExecution: { __typename?: 'UpdateOrderExecutionPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, orderExecution?: { __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null } };\n\nexport type UpdateStaffingPlanMutationVariables = Exact<{\n input: StaffingPlanUpdateInput;\n}>;\n\n\nexport type UpdateStaffingPlanMutation = { __typename?: 'Mutation', updateStaffingPlan: { __typename?: 'UpdateStaffingPlanPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, staffingPlan?: { __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, createdAt: any, updatedAt: any, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, author: { __typename?: 'User', id: string, login: string, name: string } } | null } };\n\nexport type UpdateStatusChangeMutationVariables = Exact<{\n input: UpdateStatusChangeInput;\n}>;\n\n\nexport type UpdateStatusChangeMutation = { __typename?: 'Mutation', updateStatusChange: { __typename?: 'UpdateStatusChangePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, statusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null } };\n\nexport type UpdateWidgetMutationVariables = Exact<{\n config: Scalars['String']['input'];\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type UpdateWidgetMutation = { __typename?: 'Mutation', updateWidget: { __typename?: 'UpdateWidgetPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, widget?: { __typename?: 'Widget', config?: string | null, id: string } | null } };\n\nexport type UpdateWorkOrderMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n input: UpdateWorkOrderInput;\n}>;\n\n\nexport type UpdateWorkOrderMutation = { __typename?: 'Mutation', updateWorkOrder: { __typename?: 'UpdateWorkOrderPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, workOrder?: { __typename?: 'WorkOrder', closedAt?: string | null, createdAt: string, creationMethod: WorkOrderCreationMethodEnum, description?: string | null, dtrUrl?: string | null, dueAt?: string | null, id: string, name: string, note?: string | null, originalOccurrenceAt?: string | null, priority: WorkOrderPriorityEnum, procedureDescription?: string | null, procedureName?: string | null, procedureResponse: any, procedureTemplate: any, startAt?: string | null, status: WorkOrderStatusEnum, timeSpentHours?: number | null, timeSpentMinutes?: number | null, updatedAt: string, assignees: Array<{ __typename?: 'User', id: string, login: string, name: string }>, category?: { __typename?: 'WorkOrderCategory', description?: string | null, id: string, name: string } | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> } | null } };\n\nexport type ActualStaffingCountsQueryVariables = Exact<{\n filter?: InputMaybe<ActualStaffingCountFilter>;\n}>;\n\n\nexport type ActualStaffingCountsQuery = { __typename?: 'Query', actualStaffingCounts: Array<{ __typename?: 'ActualStaffingCount', date: any, actualOperators: number, plannedOperators?: number | null, hasDeviation: boolean, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string } }> };\n\nexport type ApplicationInfoQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type ApplicationInfoQuery = { __typename?: 'Query', applicationInfo: { __typename?: 'ApplicationInfo', apiVersion: string } };\n\nexport type AvailabilityInsightsQueryVariables = Exact<{\n input: AvailabilityInsightsInput;\n}>;\n\n\nexport type AvailabilityInsightsQuery = { __typename?: 'Query', availabilityInsights: { __typename?: 'AvailabilityInsightsResult', entries: Array<{ __typename?: 'AvailabilityInsightsEntry', availability: number, label: string, noData: boolean }> } };\n\nexport type CompanyConfigQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type CompanyConfigQuery = { __typename?: 'Query', companyConfig: { __typename?: 'CompanyConfig', displayedKpiItems: Array<string>, reasonsRecommendationsEnabled: boolean, statusChangeTransitionPermissionsUpdatedAt?: string | null, devicesConfigs: Array<{ __typename?: 'DeviceConfig', defaultWorkplaceId: string, deviceId: string, name: string }>, roleConfig: { __typename?: 'RoleConfig', historyVisibilityEnabled: boolean, orderCreationAllowed: boolean }, workplacesConfigs: Array<{ __typename?: 'WorkplaceConfig', defaultScreen: ScreenEnum, menuDisplayItems: Array<ScreenEnum>, productionMode: ProductionMode, statusScreenDisplayBlocks?: Array<StatusScreenDisplayBlocksEnum> | null, workplaceId: string, orderConfig: { __typename?: 'OrderConfig', alternativeName: boolean, numberPrefix?: string | null, numberRegexp?: string | null }, orderExecutionConfig: { __typename?: 'OrderExecutionConfig', afterPauseReasonId?: string | null, afterStartReasonId?: string | null, afterStopReasonId?: string | null, featureEnabled: boolean, formOrderFields: Array<string>, formProductFields: Array<string>, formQuantityFields: Array<string>, itemCountUnit: string, noPlanCanCreateOrderNote?: string | null, noPlanNeedVerificationNote?: string | null, orderInternalNoteText?: string | null, orderInternalNoteTitle?: string | null, productInternalNoteText?: string | null, productInternalNoteTitle?: string | null, quantityInternalNoteText?: string | null, quantityInternalNoteTitle?: string | null, stopEnabled: boolean }, productConfig: { __typename?: 'ProductConfig', alternativeName: boolean, numberPrefix?: string | null, numberRegexp?: string | null }, screenSaverConfig: { __typename?: 'ScreenSaverConfig', autoSignOut: boolean, displayAfterIdle: boolean, displayAfterOrderCreated: boolean, displayAfterStatusChangeCreated: boolean, enabled: boolean, idleTime: number } }> } };\n\nexport type CounterDirectoriesQueryVariables = Exact<{\n filter?: InputMaybe<CounterDirectoryFilter>;\n}>;\n\n\nexport type CounterDirectoriesQuery = { __typename?: 'Query', counterDirectories: Array<{ __typename?: 'CounterDirectory', directoryId?: string | null, id: string, name?: string | null, position: number, workplaceId: string }> };\n\nexport type CountersQueryVariables = Exact<{\n filter?: InputMaybe<CounterFilter>;\n}>;\n\n\nexport type CountersQuery = { __typename?: 'Query', counters: Array<{ __typename?: 'Counter', directoryId?: string | null, hasNote: boolean, id: string, isDisabled: boolean, kind: CounterKindEnum, name: string, position: number, value: number, workplaceId: string }> };\n\nexport type CurrentUserQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type CurrentUserQuery = { __typename?: 'Query', currentUser: { __typename?: 'User', id: string, login: string, name: string } };\n\nexport type DashboardsQueryVariables = Exact<{\n filter?: InputMaybe<DashboardFilter>;\n}>;\n\n\nexport type DashboardsQuery = { __typename?: 'Query', dashboards: Array<{ __typename?: 'Dashboard', filters?: string | null, gridLayout?: string | null, id: string, name: string }> };\n\nexport type DepartmentsQueryVariables = Exact<{\n filter?: InputMaybe<DepartmentFilter>;\n}>;\n\n\nexport type DepartmentsQuery = { __typename?: 'Query', departments: Array<{ __typename?: 'Department', id: string, name: string }> };\n\nexport type FloorPlansQueryVariables = Exact<{\n filter?: InputMaybe<FloorPlanFilter>;\n}>;\n\n\nexport type FloorPlansQuery = { __typename?: 'Query', floorPlans: Array<{ __typename?: 'FloorPlan', id: string, imageUrl: string, name: string }> };\n\nexport type MetricValuesQueryVariables = Exact<{\n metricIds?: InputMaybe<Array<Scalars['ID']['input']> | Scalars['ID']['input']>;\n workplaceIds?: InputMaybe<Array<Scalars['ID']['input']> | Scalars['ID']['input']>;\n}>;\n\n\nexport type MetricValuesQuery = { __typename?: 'Query', metricValues: Array<{ __typename?: 'MetricValue', active: boolean, id: string, metricId: string, statusColor: AndonLightColor, textValue?: string | null, timer?: number | null, type: MetricTypeEnum, unit?: MetricUnitEnum | null, workplaceId: string }> };\n\nexport type MetricsQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type MetricsQuery = { __typename?: 'Query', metrics: Array<{ __typename?: 'Metric', id: string, name: string }> };\n\nexport type NotificationsQueryVariables = Exact<{\n filter?: InputMaybe<NotificationFilter>;\n}>;\n\n\nexport type NotificationsQuery = { __typename?: 'Query', notifications: Array<{ __typename?: 'Notification', channel?: string | null, details?: string | null, emitterId: string, emitterType: string, id: string, message: string, receiverId: string, receiverType: string, status?: string | null }> };\n\nexport type OrdersQueryVariables = Exact<{\n filter?: InputMaybe<OrderFilter>;\n}>;\n\n\nexport type OrdersQuery = { __typename?: 'Query', orders: Array<{ __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }>, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> } }>, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }> };\n\nexport type OrdersExecutionsQueryVariables = Exact<{\n filter?: InputMaybe<OrderExecutionFilter>;\n}>;\n\n\nexport type OrdersExecutionsQuery = { __typename?: 'Query', ordersExecutions: Array<{ __typename?: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> };\n\nexport type ProductionInsightsQueryVariables = Exact<{\n input: ProductionInsightsInput;\n}>;\n\n\nexport type ProductionInsightsQuery = { __typename?: 'Query', productionInsights: { __typename?: 'ProductionInsightsResult', entries: Array<{ __typename?: 'ProductionInsightsEntry', count: number, label: string }> } };\n\nexport type ProductsQueryVariables = Exact<{\n filter?: InputMaybe<ProductFilter>;\n}>;\n\n\nexport type ProductsQuery = { __typename?: 'Query', products: Array<{ __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null }> };\n\nexport type ReasonsQueryVariables = Exact<{\n filter?: InputMaybe<ReasonFilter>;\n}>;\n\n\nexport type ReasonsQuery = { __typename?: 'Query', reasons: Array<{ __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean }> };\n\nexport type ReasonsRecommendationQueryVariables = Exact<{\n workplaceId: Scalars['String']['input'];\n}>;\n\n\nexport type ReasonsRecommendationQuery = { __typename?: 'Query', reasonsRecommendation?: { __typename?: 'ReasonsRecommendation', trainingStatus: TrainingStatus, reasons: Array<{ __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean }> } | null };\n\nexport type ShiftsQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type ShiftsQuery = { __typename?: 'Query', shifts: Array<{ __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }> };\n\nexport type StaffingPlansQueryVariables = Exact<{\n filter?: InputMaybe<StaffingPlanFilter>;\n}>;\n\n\nexport type StaffingPlansQuery = { __typename?: 'Query', staffingPlans: Array<{ __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, createdAt: any, updatedAt: any, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null }, shift: { __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }, author: { __typename?: 'User', id: string, login: string, name: string } }> };\n\nexport type StandardRatesQueryVariables = Exact<{\n orderExecutionId: Scalars['ID']['input'];\n}>;\n\n\nexport type StandardRatesQuery = { __typename?: 'Query', standardRates: Array<{ __typename?: 'StandardRate', id: string, label: string }> };\n\nexport type StatusChangeTransitionPermissionsQueryVariables = Exact<{\n filter?: InputMaybe<StatusChangeTransitionPermissionFilter>;\n}>;\n\n\nexport type StatusChangeTransitionPermissionsQuery = { __typename?: 'Query', statusChangeTransitionPermissions: Array<{ __typename?: 'StatusChangeTransitionPermission', fromReasonId: string, roleId: string, toReasonId: string, workplaceId: string }> };\n\nexport type StatusChangesQueryVariables = Exact<{\n filter?: InputMaybe<StatusChangeFilter>;\n}>;\n\n\nexport type StatusChangesQuery = { __typename?: 'Query', statusChanges: Array<{ __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } }> };\n\nexport type StatusInsightsQueryVariables = Exact<{\n input: StatusInsightsInput;\n}>;\n\n\nexport type StatusInsightsQuery = { __typename?: 'Query', statusInsights: { __typename?: 'StatusInsightsResult', entries: Array<{ __typename?: 'StatusInsightsEntry', averageDurationMinutes: number, label: string, occurrenceCount: number }> } };\n\nexport type UsersQueryVariables = Exact<{\n filter?: InputMaybe<UserFilter>;\n}>;\n\n\nexport type UsersQuery = { __typename?: 'Query', users: Array<{ __typename?: 'User', id: string, login: string, name: string }> };\n\nexport type UsersPresencesQueryVariables = Exact<{\n filter?: InputMaybe<UserPresenceFilter>;\n}>;\n\n\nexport type UsersPresencesQuery = { __typename?: 'Query', usersPresences: Array<{ __typename?: 'UserPresence', finishedAt?: string | null, id: string, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, user: { __typename?: 'User', id: string, login: string, name: string } }> };\n\nexport type WidgetQueryVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type WidgetQuery = { __typename?: 'Query', widget: { __typename?: 'Widget', config?: string | null, id: string } };\n\nexport type WidgetsQueryVariables = Exact<{\n filter?: InputMaybe<WidgetFilter>;\n}>;\n\n\nexport type WidgetsQuery = { __typename?: 'Query', widgets: Array<{ __typename?: 'Widget', config?: string | null, id: string }> };\n\nexport type WorkOrdersQueryVariables = Exact<{\n filter?: InputMaybe<WorkOrderFilter>;\n}>;\n\n\nexport type WorkOrdersQuery = { __typename?: 'Query', workOrders: Array<{ __typename?: 'WorkOrder', closedAt?: string | null, createdAt: string, creationMethod: WorkOrderCreationMethodEnum, description?: string | null, dtrUrl?: string | null, dueAt?: string | null, id: string, name: string, note?: string | null, originalOccurrenceAt?: string | null, priority: WorkOrderPriorityEnum, procedureDescription?: string | null, procedureName?: string | null, procedureResponse: any, procedureTemplate: any, startAt?: string | null, status: WorkOrderStatusEnum, timeSpentHours?: number | null, timeSpentMinutes?: number | null, updatedAt: string, assignees: Array<{ __typename?: 'User', id: string, login: string, name: string }>, category?: { __typename?: 'WorkOrderCategory', description?: string | null, id: string, name: string } | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }> };\n\nexport type WorkOrdersInsightsQueryVariables = Exact<{\n input: WorkOrdersInsightsInput;\n}>;\n\n\nexport type WorkOrdersInsightsQuery = { __typename?: 'Query', workOrdersInsights: { __typename?: 'WorkOrdersInsightsResult', categories: Array<{ __typename?: 'WorkOrdersInsightsCategoryEntry', categoryId: string, categoryName: string, totalCount: number, durations: Array<{ __typename?: 'WorkOrdersInsightsDurationEntry', count: number, lowerBoundMinutes?: number | null, upperBoundMinutes?: number | null }> }> } };\n\nexport type WorkplaceAssignmentsQueryVariables = Exact<{\n input: WorkplaceAssignmentsInput;\n}>;\n\n\nexport type WorkplaceAssignmentsQuery = { __typename?: 'Query', workplaceAssignments: { __typename?: 'WorkplaceAssignmentsView', summary: { __typename?: 'AssignmentSummary', totalAssigned: number, totalCheckedIn: number, totalMissing: number }, unassignedOperators: Array<{ __typename?: 'User', id: string, login: string, name: string }>, workplaces: Array<{ __typename?: 'WorkplaceWithAssignment', assignedCount: number, isOvercapacity: boolean, missingCount: number, recommendedOperators: number, assignedOperators: Array<{ __typename?: 'AssignedOperator', presenceStatus: PresenceStatusEnum, user: { __typename?: 'User', id: string, login: string, name: string } }>, unplannedOperators: Array<{ __typename?: 'UnplannedOperator', plannedWorkplace?: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null } | null } | null, user: { __typename?: 'User', id: string, login: string, name: string } }>, workplace: { __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string } | null } }> } };\n\nexport type WorkplacePerformanceInsightsQueryVariables = Exact<{\n input: WorkplacePerformanceInsightsInput;\n}>;\n\n\nexport type WorkplacePerformanceInsightsQuery = { __typename?: 'Query', workplacePerformanceInsights: { __typename?: 'WorkplacePerformanceInsightsResult', endDate: any, mtbf: string, mtbfSeconds?: number | null, mttr: string, mttrSeconds?: number | null, startDate: any, offScheduleDuration: string, offScheduleSeconds: number, totalDowntime: string, totalDowntimePercentage: number, totalDowntimeSeconds: number, totalDuration: string, totalSeconds: number, totalUptime: string, totalUptimePercentage: number, totalUptimeSeconds: number, workplaceId: string, workplaceName: string, reasons: Array<{ __typename?: 'WorkplacePerformanceInsightsReason', availabilityStatus: AvailabilityStatus, averageDuration: string, averageDurationSeconds: number, maxDuration: string, maxDurationSeconds: number, occurrences: number, percentage: number, reasonColor: AndonLightColor, reasonId: string, reasonName: string, totalDuration: string, totalSeconds: number, statusChanges: Array<{ __typename?: 'WorkplacePerformanceInsightsStatusChange', firstSegmentStart: any, id: string, lastSegmentEnd: any, note?: string | null, originalEnd?: any | null, originalStart: any, segments?: any | null, totalSegmentDuration: string, totalSegmentSeconds: number, uuid: string }> }> } };\n\nexport type WorkplacesQueryVariables = Exact<{\n filter?: InputMaybe<WorkplaceFilter>;\n}>;\n\n\nexport type WorkplacesQuery = { __typename?: 'Query', workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean, currentStatusChange?: { __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, finishedAt?: string | null, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, workplaces: Array<{ __typename?: 'Workplace', colorHex?: string | null, deactivated: boolean, departmentId?: string | null, dtrUrl?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null }> } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } } | null }> };\n\nexport type AssignOperatorMutationVariables = Exact<{\n input: AssignOperatorInput;\n}>;\n\n\nexport type AssignOperatorMutation = { __typename?: 'Mutation', assignOperatorToWorkplace: { __typename?: 'AssignOperatorToWorkplacePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, assignment?: { __typename?: 'WorkplaceAssignment', id: string, validFrom: any, user: { __typename?: 'User', id: string, name: string }, workplace?: { __typename?: 'Workplace', id: string, name: string } | null, shift: { __typename?: 'Shift', id: string, name: string } } | null } };\n\nexport type UnassignOperatorMutationVariables = Exact<{\n input: UnassignOperatorInput;\n}>;\n\n\nexport type UnassignOperatorMutation = { __typename?: 'Mutation', unassignOperatorFromWorkplace: { __typename?: 'UnassignOperatorFromWorkplacePayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, assignment?: { __typename?: 'WorkplaceAssignment', id: string, validFrom: any, user: { __typename?: 'User', id: string, name: string } } | null } };\n\nexport type EditWorkOrderMutationVariables = Exact<{\n id: Scalars['ID']['input'];\n input: UpdateWorkOrderInput;\n}>;\n\n\nexport type EditWorkOrderMutation = { __typename?: 'Mutation', updateWorkOrder: { __typename?: 'UpdateWorkOrderPayload', errors?: Array<{ __typename?: 'MutationError', field?: string | null, messages: Array<string> }> | null, workOrder?: { __typename?: 'WorkOrder', id: string, status: WorkOrderStatusEnum } | null } };\n\nexport type GetAvailabilityInsightsQueryVariables = Exact<{\n input: AvailabilityInsightsInput;\n}>;\n\n\nexport type GetAvailabilityInsightsQuery = { __typename?: 'Query', availabilityInsights: { __typename?: 'AvailabilityInsightsResult', entries: Array<{ __typename?: 'AvailabilityInsightsEntry', availability: number, label: string, noData: boolean }> } };\n\nexport type GetCompanyConfigQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type GetCompanyConfigQuery = { __typename?: 'Query', companyConfig: { __typename?: 'CompanyConfig', displayedKpiItems: Array<string>, reasonsRecommendationsEnabled: boolean, statusChangeTransitionPermissionsUpdatedAt?: string | null, devicesConfigs: Array<{ __typename?: 'DeviceConfig', defaultWorkplaceId: string, deviceId: string, name: string }>, roleConfig: { __typename?: 'RoleConfig', historyVisibilityEnabled: boolean, orderCreationAllowed: boolean }, workplacesConfigs: Array<{ __typename?: 'WorkplaceConfig', defaultScreen: ScreenEnum, menuDisplayItems: Array<ScreenEnum>, productionMode: ProductionMode, statusScreenDisplayBlocks?: Array<StatusScreenDisplayBlocksEnum> | null, workplaceId: string, orderConfig: { __typename?: 'OrderConfig', alternativeName: boolean, numberPrefix?: string | null, numberRegexp?: string | null }, orderExecutionConfig: { __typename?: 'OrderExecutionConfig', afterPauseReasonId?: string | null, afterStartReasonId?: string | null, afterStopReasonId?: string | null, featureEnabled: boolean, formOrderFields: Array<string>, formProductFields: Array<string>, formQuantityFields: Array<string>, itemCountUnit: string, noPlanCanCreateOrderNote?: string | null, noPlanNeedVerificationNote?: string | null, orderInternalNoteText?: string | null, orderInternalNoteTitle?: string | null, productInternalNoteText?: string | null, productInternalNoteTitle?: string | null, quantityInternalNoteText?: string | null, quantityInternalNoteTitle?: string | null, stopEnabled: boolean }, productConfig: { __typename?: 'ProductConfig', alternativeName: boolean, numberPrefix?: string | null, numberRegexp?: string | null }, screenSaverConfig: { __typename?: 'ScreenSaverConfig', autoSignOut: boolean, displayAfterIdle: boolean, displayAfterOrderCreated: boolean, displayAfterStatusChangeCreated: boolean, enabled: boolean, idleTime: number } }> } };\n\nexport type GetProductionInsightsQueryVariables = Exact<{\n input: ProductionInsightsInput;\n}>;\n\n\nexport type GetProductionInsightsQuery = { __typename?: 'Query', productionInsights: { __typename?: 'ProductionInsightsResult', entries: Array<{ __typename?: 'ProductionInsightsEntry', count: number, label: string }> } };\n\nexport type GetStatusInsightsQueryVariables = Exact<{\n input: StatusInsightsInput;\n}>;\n\n\nexport type GetStatusInsightsQuery = { __typename?: 'Query', statusInsights: { __typename?: 'StatusInsightsResult', entries: Array<{ __typename?: 'StatusInsightsEntry', averageDurationMinutes: number, label: string, occurrenceCount: number }> } };\n\nexport type GetWorkOrdersInsightsQueryVariables = Exact<{\n input: WorkOrdersInsightsInput;\n}>;\n\n\nexport type GetWorkOrdersInsightsQuery = { __typename?: 'Query', workOrdersInsights: { __typename?: 'WorkOrdersInsightsResult', categories: Array<{ __typename?: 'WorkOrdersInsightsCategoryEntry', categoryId: string, categoryName: string, totalCount: number, durations: Array<{ __typename?: 'WorkOrdersInsightsDurationEntry', count: number, lowerBoundMinutes?: number | null, upperBoundMinutes?: number | null }> }> } };\n\nexport type GetWorkplacePerformanceInsightsQueryVariables = Exact<{\n input: WorkplacePerformanceInsightsInput;\n}>;\n\n\nexport type GetWorkplacePerformanceInsightsQuery = { __typename?: 'Query', workplacePerformanceInsights: { __typename?: 'WorkplacePerformanceInsightsResult', workplaceId: string, workplaceName: string, startDate: any, endDate: any, totalDuration: string, totalSeconds: number, totalUptime: string, totalUptimePercentage: number, totalDowntime: string, totalDowntimePercentage: number, mtbf: string, mttr: string, reasons: Array<{ __typename?: 'WorkplacePerformanceInsightsReason', reasonId: string, reasonName: string, reasonColor: AndonLightColor, availabilityStatus: AvailabilityStatus, totalDuration: string, totalSeconds: number, percentage: number, occurrences: number, averageDuration: string, maxDuration: string }> } };\n\nexport type ListActualStaffingCountsQueryVariables = Exact<{\n filter?: InputMaybe<ActualStaffingCountFilter>;\n}>;\n\n\nexport type ListActualStaffingCountsQuery = { __typename?: 'Query', actualStaffingCounts: Array<{ __typename?: 'ActualStaffingCount', date: any, actualOperators: number, plannedOperators?: number | null, hasDeviation: boolean, workplace: { __typename?: 'Workplace', id: string, name: string }, shift: { __typename?: 'Shift', id: string, name: string } }> };\n\nexport type ListFloorPlansQueryVariables = Exact<{\n filter?: InputMaybe<FloorPlanFilter>;\n}>;\n\n\nexport type ListFloorPlansQuery = { __typename?: 'Query', floorPlans: Array<{ __typename?: 'FloorPlan', id: string, imageUrl: string, name: string }> };\n\nexport type ListMetricValuesQueryVariables = Exact<{\n metricIds?: InputMaybe<Array<Scalars['ID']['input']> | Scalars['ID']['input']>;\n workplaceIds?: InputMaybe<Array<Scalars['ID']['input']> | Scalars['ID']['input']>;\n}>;\n\n\nexport type ListMetricValuesQuery = { __typename?: 'Query', metricValues: Array<{ __typename?: 'MetricValue', active: boolean, id: string, metricId: string, statusColor: AndonLightColor, textValue?: string | null, timer?: number | null, type: MetricTypeEnum, unit?: MetricUnitEnum | null, workplaceId: string }> };\n\nexport type ListMetricsQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type ListMetricsQuery = { __typename?: 'Query', metrics: Array<{ __typename?: 'Metric', id: string, name: string }> };\n\nexport type ListReasonsQueryVariables = Exact<{\n filter?: InputMaybe<ReasonFilter>;\n}>;\n\n\nexport type ListReasonsQuery = { __typename?: 'Query', reasons: Array<{ __typename?: 'Reason', id: string, leaf: boolean, name: string, statusColor: AndonLightColor }> };\n\nexport type ListShiftsQueryVariables = Exact<{ [key: string]: never; }>;\n\n\nexport type ListShiftsQuery = { __typename?: 'Query', shifts: Array<{ __typename?: 'Shift', finishedAt: string, id: string, name: string, startedAt: string }> };\n\nexport type ListStaffingPlansQueryVariables = Exact<{\n filter?: InputMaybe<StaffingPlanFilter>;\n}>;\n\n\nexport type ListStaffingPlansQuery = { __typename?: 'Query', staffingPlans: Array<{ __typename?: 'StaffingPlan', id: string, date: any, recommendedOperators: number, workplace: { __typename?: 'Workplace', id: string, name: string, colorHex?: string | null }, shift: { __typename?: 'Shift', id: string, name: string } }> };\n\nexport type ListStatusChangesQueryVariables = Exact<{\n filter?: InputMaybe<StatusChangeFilter>;\n}>;\n\n\nexport type ListStatusChangesQuery = { __typename?: 'Query', statusChanges: Array<{ __typename?: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, finishedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } }> };\n\nexport type ListWorkOrdersQueryVariables = Exact<{\n filter?: InputMaybe<WorkOrderFilter>;\n}>;\n\n\nexport type ListWorkOrdersQuery = { __typename?: 'Query', workOrders: Array<{ __typename?: 'WorkOrder', closedAt?: string | null, createdAt: string, creationMethod: WorkOrderCreationMethodEnum, description?: string | null, dtrUrl?: string | null, dueAt?: string | null, id: string, name: string, note?: string | null, originalOccurrenceAt?: string | null, priority: WorkOrderPriorityEnum, procedureDescription?: string | null, procedureName?: string | null, procedureResponse: any, procedureTemplate: any, startAt?: string | null, status: WorkOrderStatusEnum, timeSpentHours?: number | null, timeSpentMinutes?: number | null, updatedAt: string, assignees: Array<{ __typename?: 'User', id: string, login: string, name: string }>, category?: { __typename?: 'WorkOrderCategory', description?: string | null, id: string, name: string } | null, workplaces: Array<{ __typename?: 'Workplace', id: string, name: string }> }> };\n\nexport type ListWorkplaceAssignmentsQueryVariables = Exact<{\n input: WorkplaceAssignmentsInput;\n}>;\n\n\nexport type ListWorkplaceAssignmentsQuery = { __typename?: 'Query', workplaceAssignments: { __typename?: 'WorkplaceAssignmentsView', workplaces: Array<{ __typename?: 'WorkplaceWithAssignment', recommendedOperators: number, assignedCount: number, missingCount: number, isOvercapacity: boolean, workplace: { __typename?: 'Workplace', id: string, name: string }, assignedOperators: Array<{ __typename?: 'AssignedOperator', presenceStatus: PresenceStatusEnum, user: { __typename?: 'User', id: string, name: string } }>, unplannedOperators: Array<{ __typename?: 'UnplannedOperator', user: { __typename?: 'User', id: string, name: string }, plannedWorkplace?: { __typename?: 'Workplace', id: string, name: string } | null }> }>, unassignedOperators: Array<{ __typename?: 'User', id: string, name: string }>, summary: { __typename?: 'AssignmentSummary', totalAssigned: number, totalCheckedIn: number, totalMissing: number } } };\n\nexport type ListWorkplacesQueryVariables = Exact<{\n filter?: InputMaybe<WorkplaceFilter>;\n}>;\n\n\nexport type ListWorkplacesQuery = { __typename?: 'Query', workplaces: Array<{ __typename?: 'Workplace', deactivated: boolean, departmentId?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> };\n\nexport type WorkplaceEventSubscriptionVariables = Exact<{\n id: Scalars['ID']['input'];\n}>;\n\n\nexport type WorkplaceEventSubscription = { __typename?: 'Subscription', workplaceEvent: { __typename?: 'WorkplaceEventSubscriptionPayload', event: WorkplaceEvent, subject?:\n | { __typename: 'Counter', directoryId?: string | null, hasNote: boolean, id: string, isDisabled: boolean, kind: CounterKindEnum, name: string, value: number, workplaceId: string, counterPosition: number }\n | { __typename: 'Item', count: number, id: string }\n | { __typename: 'MetricValue', active: boolean, id: string, metricId: string, statusColor: AndonLightColor, textValue?: string | null, timer?: number | null, type: MetricTypeEnum, unit?: MetricUnitEnum | null, workplaceId: string }\n | { __typename: 'Notification', channel?: string | null, details?: string | null, emitterId: string, emitterType: string, id: string, message: string, receiverId: string, receiverType: string, status?: string | null }\n | { __typename: 'Order', executedCount: number, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, orderStartedAt?: string | null, orderFinishedAt?: string | null, items: Array<{ __typename?: 'Item', count: number, id: string }>, workplaces: Array<{ __typename?: 'Workplace', deactivated: boolean, departmentId?: string | null, id: string, minOperators: number, name: string, reasonGroupId: string, reasonsRecommendationsEnabled: boolean }> }\n | { __typename: 'OrderExecution', finishedAt?: string | null, id: string, itemCount?: number | null, note?: string | null, standardRateMismatched: boolean, startedAt: string, workplaceId: string, item?: { __typename?: 'Item', count: number, id: string, order: { __typename?: 'Order', executedCount: number, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, finishedAt?: string | null }, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null } | null }\n | { __typename: 'Shift', id: string, name: string, shiftFinishedAt: string, shiftStartedAt: string }\n | { __typename: 'StatusChange', finishedAt?: string | null, id: string, note?: string | null, reasonHasBeenRecommended: boolean, startedAt: string, workplaceId: string, author: { __typename?: 'User', id: string, login: string, name: string }, order?: { __typename?: 'Order', executedCount: number, id: string, note?: string | null, number: string, plannedCount: number, position?: number | null, startedAt?: string | null, finishedAt?: string | null } | null, product?: { __typename?: 'Product', assemblyManual?: string | null, id: string, name?: string | null, number?: string | null } | null, reason: { __typename?: 'Reason', acceptanceMonit: boolean, canBeRecommended: boolean, hasNote: boolean, id: string, isNoteRequired: boolean, leaf: boolean, name: string, parentId?: string | null, position: number, reasonGroupId: string, statusColor: AndonLightColor, temporary: boolean } }\n | { __typename: 'UserPresence', finishedAt?: string | null, id: string, startedAt: string, workplaceId: string, user: { __typename?: 'User', id: string, login: string, name: string } }\n | null } };\n\n\nexport const AssignOperatorToWorkplaceDocument = gql`\n mutation assignOperatorToWorkplace($input: AssignOperatorInput!) {\n assignOperatorToWorkplace(input: $input) {\n assignment {\n createdAt\n id\n shift {\n finishedAt\n id\n name\n startedAt\n }\n user {\n id\n login\n name\n }\n validFrom\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const BulkUpsertStaffingPlansDocument = gql`\n mutation bulkUpsertStaffingPlans($input: BulkStaffingPlanInput!) {\n bulkUpsertStaffingPlans(input: $input) {\n errors {\n field\n messages\n }\n staffingPlans {\n id\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n recommendedOperators\n createdAt\n updatedAt\n author {\n id\n login\n name\n }\n }\n }\n}\n `;\nexport const CreateDashboardDocument = gql`\n mutation createDashboard($filters: String, $gridLayout: String, $id: ID!, $name: String!) {\n createDashboard(\n filters: $filters\n gridLayout: $gridLayout\n id: $id\n name: $name\n ) {\n dashboard {\n filters\n gridLayout\n id\n name\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const CreateOrderDocument = gql`\n mutation createOrder($id: ID!, $number: String!) {\n createOrder(id: $id, number: $number) {\n errors {\n field\n messages\n }\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n }\n}\n `;\nexport const CreateProductDocument = gql`\n mutation createProduct($id: ID!, $name: String, $number: String!) {\n createProduct(id: $id, name: $name, number: $number) {\n errors {\n field\n messages\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n}\n `;\nexport const CreateStaffingPlanDocument = gql`\n mutation createStaffingPlan($input: StaffingPlanInput!) {\n createStaffingPlan(input: $input) {\n errors {\n field\n messages\n }\n staffingPlan {\n id\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n recommendedOperators\n createdAt\n updatedAt\n author {\n id\n login\n name\n }\n }\n }\n}\n `;\nexport const CreateStatusChangeDocument = gql`\n mutation createStatusChange($id: ID!, $note: String, $reasonHasBeenRecommended: Boolean, $reasonId: ID!, $startedAt: String, $userId: ID, $workplaceId: ID!) {\n createStatusChange(\n id: $id\n note: $note\n reasonHasBeenRecommended: $reasonHasBeenRecommended\n reasonId: $reasonId\n startedAt: $startedAt\n userId: $userId\n workplaceId: $workplaceId\n ) {\n errors {\n field\n messages\n }\n statusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const CreateUserPresenceDocument = gql`\n mutation createUserPresence($id: ID!, $userToken: String!, $workplaceId: ID!) {\n createUserPresence(id: $id, userToken: $userToken, workplaceId: $workplaceId) {\n errors {\n field\n messages\n }\n userPresence {\n author {\n id\n login\n name\n }\n finishedAt\n id\n startedAt\n user {\n id\n login\n name\n }\n workplaceId\n }\n }\n}\n `;\nexport const CreateWidgetDocument = gql`\n mutation createWidget($config: String, $id: ID!) {\n createWidget(config: $config, id: $id) {\n errors {\n field\n messages\n }\n widget {\n config\n id\n }\n }\n}\n `;\nexport const PauseOrderExecutionDocument = gql`\n mutation pauseOrderExecution($id: ID!, $statusChangeId: ID!) {\n pauseOrderExecution(id: $id, statusChangeId: $statusChangeId) {\n errors {\n field\n messages\n }\n orderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const RemoveDashboardDocument = gql`\n mutation removeDashboard($id: ID!) {\n removeDashboard(id: $id) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RemoveStaffingPlanDocument = gql`\n mutation removeStaffingPlan($id: ID!) {\n removeStaffingPlan(id: $id) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RemoveUserPresenceDocument = gql`\n mutation removeUserPresence($id: ID!) {\n removeUserPresence(id: $id) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RemoveWidgetDocument = gql`\n mutation removeWidget($id: ID!) {\n removeWidget(id: $id) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RemoveWorkplaceUsersPresencesDocument = gql`\n mutation removeWorkplaceUsersPresences($workplaceId: ID!) {\n removeWorkplaceUsersPresences(workplaceId: $workplaceId) {\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const RequestFeatureAccessDocument = gql`\n mutation requestFeatureAccess($input: RequestFeatureAccessInput!) {\n requestFeatureAccess(input: $input) {\n errors {\n field\n messages\n }\n success\n }\n}\n `;\nexport const SetCounterDocument = gql`\n mutation setCounter($id: ID!, $note: String, $orderExecutionId: ID, $value: Float!) {\n setCounter(\n id: $id\n note: $note\n orderExecutionId: $orderExecutionId\n value: $value\n ) {\n counter {\n directoryId\n hasNote\n id\n isDisabled\n kind\n name\n position\n value\n workplaceId\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const StartOrderExecutionDocument = gql`\n mutation startOrderExecution($id: ID!, $itemCount: Float, $order: OrderInput!, $product: ProductInput, $statusChangeId: ID!, $workplaceId: ID!) {\n startOrderExecution(\n id: $id\n itemCount: $itemCount\n order: $order\n product: $product\n statusChangeId: $statusChangeId\n workplaceId: $workplaceId\n ) {\n errors {\n field\n messages\n }\n orderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const StartTrialDocument = gql`\n mutation startTrial($input: StartTrialInput!) {\n startTrial(input: $input) {\n errors {\n field\n messages\n }\n success\n }\n}\n `;\nexport const StopOrderExecutionDocument = gql`\n mutation stopOrderExecution($id: ID!, $statusChangeId: ID!) {\n stopOrderExecution(id: $id, statusChangeId: $statusChangeId) {\n errors {\n field\n messages\n }\n orderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const UnassignOperatorFromWorkplaceDocument = gql`\n mutation unassignOperatorFromWorkplace($input: UnassignOperatorInput!) {\n unassignOperatorFromWorkplace(input: $input) {\n assignment {\n createdAt\n id\n shift {\n finishedAt\n id\n name\n startedAt\n }\n user {\n id\n login\n name\n }\n validFrom\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const UpdateDashboardDocument = gql`\n mutation updateDashboard($filters: String, $gridLayout: String!, $id: ID!, $name: String) {\n updateDashboard(\n filters: $filters\n gridLayout: $gridLayout\n id: $id\n name: $name\n ) {\n dashboard {\n filters\n gridLayout\n id\n name\n }\n errors {\n field\n messages\n }\n }\n}\n `;\nexport const UpdateNotificationDocument = gql`\n mutation updateNotification($id: ID!, $status: String!) {\n updateNotification(id: $id, status: $status) {\n errors {\n field\n messages\n }\n notification {\n channel\n details\n emitterId\n emitterType\n id\n message\n receiverId\n receiverType\n status\n }\n }\n}\n `;\nexport const UpdateOrderDocument = gql`\n mutation updateOrder($input: UpdateOrderInput!) {\n updateOrder(input: $input) {\n errors {\n field\n messages\n }\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n }\n}\n `;\nexport const UpdateOrderExecutionDocument = gql`\n mutation updateOrderExecution($id: ID!, $standardRateId: ID!) {\n updateOrderExecution(id: $id, standardRateId: $standardRateId) {\n errors {\n field\n messages\n }\n orderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const UpdateStaffingPlanDocument = gql`\n mutation updateStaffingPlan($input: StaffingPlanUpdateInput!) {\n updateStaffingPlan(input: $input) {\n errors {\n field\n messages\n }\n staffingPlan {\n id\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n recommendedOperators\n createdAt\n updatedAt\n author {\n id\n login\n name\n }\n }\n }\n}\n `;\nexport const UpdateStatusChangeDocument = gql`\n mutation updateStatusChange($input: UpdateStatusChangeInput!) {\n updateStatusChange(input: $input) {\n errors {\n field\n messages\n }\n statusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n }\n}\n `;\nexport const UpdateWidgetDocument = gql`\n mutation updateWidget($config: String!, $id: ID!) {\n updateWidget(config: $config, id: $id) {\n errors {\n field\n messages\n }\n widget {\n config\n id\n }\n }\n}\n `;\nexport const UpdateWorkOrderDocument = gql`\n mutation updateWorkOrder($id: ID!, $input: UpdateWorkOrderInput!) {\n updateWorkOrder(id: $id, input: $input) {\n errors {\n field\n messages\n }\n workOrder {\n assignees {\n id\n login\n name\n }\n category {\n description\n id\n name\n }\n closedAt\n createdAt\n creationMethod\n description\n dtrUrl\n dueAt\n id\n name\n note\n originalOccurrenceAt\n priority\n procedureDescription\n procedureName\n procedureResponse\n procedureTemplate\n startAt\n status\n timeSpentHours\n timeSpentMinutes\n updatedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n }\n}\n `;\nexport const ActualStaffingCountsDocument = gql`\n query actualStaffingCounts($filter: ActualStaffingCountFilter) {\n actualStaffingCounts(filter: $filter) {\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n actualOperators\n plannedOperators\n hasDeviation\n }\n}\n `;\nexport const ApplicationInfoDocument = gql`\n query applicationInfo {\n applicationInfo {\n apiVersion\n }\n}\n `;\nexport const AvailabilityInsightsDocument = gql`\n query availabilityInsights($input: AvailabilityInsightsInput!) {\n availabilityInsights(input: $input) {\n entries {\n availability\n label\n noData\n }\n }\n}\n `;\nexport const CompanyConfigDocument = gql`\n query companyConfig {\n companyConfig {\n devicesConfigs {\n defaultWorkplaceId\n deviceId\n name\n }\n displayedKpiItems\n reasonsRecommendationsEnabled\n roleConfig {\n historyVisibilityEnabled\n orderCreationAllowed\n }\n statusChangeTransitionPermissionsUpdatedAt\n workplacesConfigs {\n defaultScreen\n menuDisplayItems\n orderConfig {\n alternativeName\n numberPrefix\n numberRegexp\n }\n orderExecutionConfig {\n afterPauseReasonId\n afterStartReasonId\n afterStopReasonId\n featureEnabled\n formOrderFields\n formProductFields\n formQuantityFields\n itemCountUnit\n noPlanCanCreateOrderNote\n noPlanNeedVerificationNote\n orderInternalNoteText\n orderInternalNoteTitle\n productInternalNoteText\n productInternalNoteTitle\n quantityInternalNoteText\n quantityInternalNoteTitle\n stopEnabled\n }\n productConfig {\n alternativeName\n numberPrefix\n numberRegexp\n }\n productionMode\n screenSaverConfig {\n autoSignOut\n displayAfterIdle\n displayAfterOrderCreated\n displayAfterStatusChangeCreated\n enabled\n idleTime\n }\n statusScreenDisplayBlocks\n workplaceId\n }\n }\n}\n `;\nexport const CounterDirectoriesDocument = gql`\n query counterDirectories($filter: CounterDirectoryFilter) {\n counterDirectories(filter: $filter) {\n directoryId\n id\n name\n position\n workplaceId\n }\n}\n `;\nexport const CountersDocument = gql`\n query counters($filter: CounterFilter) {\n counters(filter: $filter) {\n directoryId\n hasNote\n id\n isDisabled\n kind\n name\n position\n value\n workplaceId\n }\n}\n `;\nexport const CurrentUserDocument = gql`\n query currentUser {\n currentUser {\n id\n login\n name\n }\n}\n `;\nexport const DashboardsDocument = gql`\n query dashboards($filter: DashboardFilter) {\n dashboards(filter: $filter) {\n filters\n gridLayout\n id\n name\n }\n}\n `;\nexport const DepartmentsDocument = gql`\n query departments($filter: DepartmentFilter) {\n departments(filter: $filter) {\n id\n name\n }\n}\n `;\nexport const FloorPlansDocument = gql`\n query floorPlans($filter: FloorPlanFilter) {\n floorPlans(filter: $filter) {\n id\n imageUrl\n name\n }\n}\n `;\nexport const MetricValuesDocument = gql`\n query metricValues($metricIds: [ID!], $workplaceIds: [ID!]) {\n metricValues(metricIds: $metricIds, workplaceIds: $workplaceIds) {\n active\n id\n metricId\n statusColor\n textValue\n timer\n type\n unit\n workplaceId\n }\n}\n `;\nexport const MetricsDocument = gql`\n query metrics {\n metrics {\n id\n name\n }\n}\n `;\nexport const NotificationsDocument = gql`\n query notifications($filter: NotificationFilter) {\n notifications(filter: $filter) {\n channel\n details\n emitterId\n emitterType\n id\n message\n receiverId\n receiverType\n status\n }\n}\n `;\nexport const OrdersDocument = gql`\n query orders($filter: OrderFilter) {\n orders(filter: $filter) {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n}\n `;\nexport const OrdersExecutionsDocument = gql`\n query ordersExecutions($filter: OrderExecutionFilter) {\n ordersExecutions(filter: $filter) {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n standardRateMismatched\n startedAt\n workplaceId\n }\n}\n `;\nexport const ProductionInsightsDocument = gql`\n query productionInsights($input: ProductionInsightsInput!) {\n productionInsights(input: $input) {\n entries {\n count\n label\n }\n }\n}\n `;\nexport const ProductsDocument = gql`\n query products($filter: ProductFilter) {\n products(filter: $filter) {\n assemblyManual\n id\n name\n number\n }\n}\n `;\nexport const ReasonsDocument = gql`\n query reasons($filter: ReasonFilter) {\n reasons(filter: $filter) {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n}\n `;\nexport const ReasonsRecommendationDocument = gql`\n query reasonsRecommendation($workplaceId: String!) {\n reasonsRecommendation(workplaceId: $workplaceId) {\n reasons {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n trainingStatus\n }\n}\n `;\nexport const ShiftsDocument = gql`\n query shifts {\n shifts {\n finishedAt\n id\n name\n startedAt\n }\n}\n `;\nexport const StaffingPlansDocument = gql`\n query staffingPlans($filter: StaffingPlanFilter) {\n staffingPlans(filter: $filter) {\n id\n workplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n date\n shift {\n finishedAt\n id\n name\n startedAt\n }\n recommendedOperators\n createdAt\n updatedAt\n author {\n id\n login\n name\n }\n }\n}\n `;\nexport const StandardRatesDocument = gql`\n query standardRates($orderExecutionId: ID!) {\n standardRates(orderExecutionId: $orderExecutionId) {\n id\n label\n }\n}\n `;\nexport const StatusChangeTransitionPermissionsDocument = gql`\n query statusChangeTransitionPermissions($filter: StatusChangeTransitionPermissionFilter) {\n statusChangeTransitionPermissions(filter: $filter) {\n fromReasonId\n roleId\n toReasonId\n workplaceId\n }\n}\n `;\nexport const StatusChangesDocument = gql`\n query statusChanges($filter: StatusChangeFilter) {\n statusChanges(filter: $filter) {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n}\n `;\nexport const StatusInsightsDocument = gql`\n query statusInsights($input: StatusInsightsInput!) {\n statusInsights(input: $input) {\n entries {\n averageDurationMinutes\n label\n occurrenceCount\n }\n }\n}\n `;\nexport const UsersDocument = gql`\n query users($filter: UserFilter) {\n users(filter: $filter) {\n id\n login\n name\n }\n}\n `;\nexport const UsersPresencesDocument = gql`\n query usersPresences($filter: UserPresenceFilter) {\n usersPresences(filter: $filter) {\n author {\n id\n login\n name\n }\n finishedAt\n id\n startedAt\n user {\n id\n login\n name\n }\n workplaceId\n }\n}\n `;\nexport const WidgetDocument = gql`\n query widget($id: ID!) {\n widget(id: $id) {\n config\n id\n }\n}\n `;\nexport const WidgetsDocument = gql`\n query widgets($filter: WidgetFilter) {\n widgets(filter: $filter) {\n config\n id\n }\n}\n `;\nexport const WorkOrdersDocument = gql`\n query workOrders($filter: WorkOrderFilter) {\n workOrders(filter: $filter) {\n assignees {\n id\n login\n name\n }\n category {\n description\n id\n name\n }\n closedAt\n createdAt\n creationMethod\n description\n dtrUrl\n dueAt\n id\n name\n note\n originalOccurrenceAt\n priority\n procedureDescription\n procedureName\n procedureResponse\n procedureTemplate\n startAt\n status\n timeSpentHours\n timeSpentMinutes\n updatedAt\n workplaces {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n}\n `;\nexport const WorkOrdersInsightsDocument = gql`\n query workOrdersInsights($input: WorkOrdersInsightsInput!) {\n workOrdersInsights(input: $input) {\n categories {\n categoryId\n categoryName\n durations {\n count\n lowerBoundMinutes\n upperBoundMinutes\n }\n totalCount\n }\n }\n}\n `;\nexport const WorkplaceAssignmentsDocument = gql`\n query workplaceAssignments($input: WorkplaceAssignmentsInput!) {\n workplaceAssignments(input: $input) {\n summary {\n totalAssigned\n totalCheckedIn\n totalMissing\n }\n unassignedOperators {\n id\n login\n name\n }\n workplaces {\n assignedCount\n assignedOperators {\n presenceStatus\n user {\n id\n login\n name\n }\n }\n isOvercapacity\n missingCount\n recommendedOperators\n unplannedOperators {\n plannedWorkplace {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n user {\n id\n login\n name\n }\n }\n workplace {\n colorHex\n currentStatusChange {\n finishedAt\n id\n note\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n }\n}\n `;\nexport const WorkplacePerformanceInsightsDocument = gql`\n query workplacePerformanceInsights($input: WorkplacePerformanceInsightsInput!) {\n workplacePerformanceInsights(input: $input) {\n endDate\n mtbf\n mtbfSeconds\n mttr\n mttrSeconds\n reasons {\n availabilityStatus\n averageDuration\n averageDurationSeconds\n maxDuration\n maxDurationSeconds\n occurrences\n percentage\n reasonColor\n reasonId\n reasonName\n statusChanges {\n firstSegmentStart\n id\n lastSegmentEnd\n note\n originalEnd\n originalStart\n segments\n totalSegmentDuration\n totalSegmentSeconds\n uuid\n }\n totalDuration\n totalSeconds\n }\n startDate\n offScheduleDuration\n offScheduleSeconds\n totalDowntime\n totalDowntimePercentage\n totalDowntimeSeconds\n totalDuration\n totalSeconds\n totalUptime\n totalUptimePercentage\n totalUptimeSeconds\n workplaceId\n workplaceName\n }\n}\n `;\nexport const WorkplacesDocument = gql`\n query workplaces($filter: WorkplaceFilter) {\n workplaces(filter: $filter) {\n colorHex\n currentStatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n finishedAt\n id\n items {\n count\n id\n order {\n executedCount\n finishedAt\n id\n note\n number\n plannedCount\n position\n startedAt\n workplaces {\n colorHex\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n note\n number\n plannedCount\n position\n startedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n deactivated\n departmentId\n dtrUrl\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n}\n `;\nexport const AssignOperatorDocument = gql`\n mutation assignOperator($input: AssignOperatorInput!) {\n assignOperatorToWorkplace(input: $input) {\n errors {\n field\n messages\n }\n assignment {\n id\n user {\n id\n name\n }\n workplace {\n id\n name\n }\n shift {\n id\n name\n }\n validFrom\n }\n }\n}\n `;\nexport const UnassignOperatorDocument = gql`\n mutation unassignOperator($input: UnassignOperatorInput!) {\n unassignOperatorFromWorkplace(input: $input) {\n errors {\n field\n messages\n }\n assignment {\n id\n user {\n id\n name\n }\n validFrom\n }\n }\n}\n `;\nexport const EditWorkOrderDocument = gql`\n mutation editWorkOrder($id: ID!, $input: UpdateWorkOrderInput!) {\n updateWorkOrder(id: $id, input: $input) {\n errors {\n field\n messages\n }\n workOrder {\n id\n status\n }\n }\n}\n `;\nexport const GetAvailabilityInsightsDocument = gql`\n query getAvailabilityInsights($input: AvailabilityInsightsInput!) {\n availabilityInsights(input: $input) {\n entries {\n availability\n label\n noData\n }\n }\n}\n `;\nexport const GetCompanyConfigDocument = gql`\n query getCompanyConfig {\n companyConfig {\n devicesConfigs {\n defaultWorkplaceId\n deviceId\n name\n }\n displayedKpiItems\n reasonsRecommendationsEnabled\n roleConfig {\n historyVisibilityEnabled\n orderCreationAllowed\n }\n statusChangeTransitionPermissionsUpdatedAt\n workplacesConfigs {\n defaultScreen\n menuDisplayItems\n orderConfig {\n alternativeName\n numberPrefix\n numberRegexp\n }\n orderExecutionConfig {\n afterPauseReasonId\n afterStartReasonId\n afterStopReasonId\n featureEnabled\n formOrderFields\n formProductFields\n formQuantityFields\n itemCountUnit\n noPlanCanCreateOrderNote\n noPlanNeedVerificationNote\n orderInternalNoteText\n orderInternalNoteTitle\n productInternalNoteText\n productInternalNoteTitle\n quantityInternalNoteText\n quantityInternalNoteTitle\n stopEnabled\n }\n productConfig {\n alternativeName\n numberPrefix\n numberRegexp\n }\n productionMode\n screenSaverConfig {\n autoSignOut\n displayAfterIdle\n displayAfterOrderCreated\n displayAfterStatusChangeCreated\n enabled\n idleTime\n }\n statusScreenDisplayBlocks\n workplaceId\n }\n }\n}\n `;\nexport const GetProductionInsightsDocument = gql`\n query getProductionInsights($input: ProductionInsightsInput!) {\n productionInsights(input: $input) {\n entries {\n count\n label\n }\n }\n}\n `;\nexport const GetStatusInsightsDocument = gql`\n query getStatusInsights($input: StatusInsightsInput!) {\n statusInsights(input: $input) {\n entries {\n averageDurationMinutes\n label\n occurrenceCount\n }\n }\n}\n `;\nexport const GetWorkOrdersInsightsDocument = gql`\n query getWorkOrdersInsights($input: WorkOrdersInsightsInput!) {\n workOrdersInsights(input: $input) {\n categories {\n categoryId\n categoryName\n durations {\n count\n lowerBoundMinutes\n upperBoundMinutes\n }\n totalCount\n }\n }\n}\n `;\nexport const GetWorkplacePerformanceInsightsDocument = gql`\n query getWorkplacePerformanceInsights($input: WorkplacePerformanceInsightsInput!) {\n workplacePerformanceInsights(input: $input) {\n workplaceId\n workplaceName\n startDate\n endDate\n totalDuration\n totalSeconds\n totalUptime\n totalUptimePercentage\n totalDowntime\n totalDowntimePercentage\n mtbf\n mttr\n reasons {\n reasonId\n reasonName\n reasonColor\n availabilityStatus\n totalDuration\n totalSeconds\n percentage\n occurrences\n averageDuration\n maxDuration\n }\n }\n}\n `;\nexport const ListActualStaffingCountsDocument = gql`\n query listActualStaffingCounts($filter: ActualStaffingCountFilter) {\n actualStaffingCounts(filter: $filter) {\n workplace {\n id\n name\n }\n date\n shift {\n id\n name\n }\n actualOperators\n plannedOperators\n hasDeviation\n }\n}\n `;\nexport const ListFloorPlansDocument = gql`\n query listFloorPlans($filter: FloorPlanFilter) {\n floorPlans(filter: $filter) {\n id\n imageUrl\n name\n }\n}\n `;\nexport const ListMetricValuesDocument = gql`\n query listMetricValues($metricIds: [ID!], $workplaceIds: [ID!]) {\n metricValues(metricIds: $metricIds, workplaceIds: $workplaceIds) {\n active\n id\n metricId\n statusColor\n textValue\n timer\n type\n unit\n workplaceId\n }\n}\n `;\nexport const ListMetricsDocument = gql`\n query listMetrics {\n metrics {\n id\n name\n }\n}\n `;\nexport const ListReasonsDocument = gql`\n query listReasons($filter: ReasonFilter) {\n reasons(filter: $filter) {\n id\n leaf\n name\n statusColor\n }\n}\n `;\nexport const ListShiftsDocument = gql`\n query listShifts {\n shifts {\n finishedAt\n id\n name\n startedAt\n }\n}\n `;\nexport const ListStaffingPlansDocument = gql`\n query listStaffingPlans($filter: StaffingPlanFilter) {\n staffingPlans(filter: $filter) {\n id\n workplace {\n id\n name\n colorHex\n }\n date\n shift {\n id\n name\n }\n recommendedOperators\n }\n}\n `;\nexport const ListStatusChangesDocument = gql`\n query listStatusChanges($filter: StatusChangeFilter) {\n statusChanges(filter: $filter) {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n id\n note\n number\n plannedCount\n position\n startedAt\n finishedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n}\n `;\nexport const ListWorkOrdersDocument = gql`\n query listWorkOrders($filter: WorkOrderFilter) {\n workOrders(filter: $filter) {\n assignees {\n id\n login\n name\n }\n category {\n description\n id\n name\n }\n closedAt\n createdAt\n creationMethod\n description\n dtrUrl\n dueAt\n id\n name\n note\n originalOccurrenceAt\n priority\n procedureDescription\n procedureName\n procedureResponse\n procedureTemplate\n startAt\n status\n timeSpentHours\n timeSpentMinutes\n updatedAt\n workplaces {\n id\n name\n }\n }\n}\n `;\nexport const ListWorkplaceAssignmentsDocument = gql`\n query listWorkplaceAssignments($input: WorkplaceAssignmentsInput!) {\n workplaceAssignments(input: $input) {\n workplaces {\n workplace {\n id\n name\n }\n assignedOperators {\n user {\n id\n name\n }\n presenceStatus\n }\n unplannedOperators {\n user {\n id\n name\n }\n plannedWorkplace {\n id\n name\n }\n }\n recommendedOperators\n assignedCount\n missingCount\n isOvercapacity\n }\n unassignedOperators {\n id\n name\n }\n summary {\n totalAssigned\n totalCheckedIn\n totalMissing\n }\n }\n}\n `;\nexport const ListWorkplacesDocument = gql`\n query listWorkplaces($filter: WorkplaceFilter) {\n workplaces(filter: $filter) {\n deactivated\n departmentId\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n}\n `;\nexport const WorkplaceEventDocument = gql`\n subscription workplaceEvent($id: ID!) {\n workplaceEvent(id: $id) {\n event\n subject {\n __typename\n ... on Counter {\n directoryId\n hasNote\n id\n isDisabled\n kind\n name\n counterPosition: position\n value\n workplaceId\n }\n ... on Item {\n count\n id\n }\n ... on MetricValue {\n active\n id\n metricId\n statusColor\n textValue\n timer\n type\n unit\n workplaceId\n }\n ... on Notification {\n channel\n details\n emitterId\n emitterType\n id\n message\n receiverId\n receiverType\n status\n }\n ... on Shift {\n shiftFinishedAt: finishedAt\n id\n name\n shiftStartedAt: startedAt\n }\n ... on Order {\n executedCount\n id\n items {\n count\n id\n }\n note\n number\n plannedCount\n position\n orderStartedAt: startedAt\n orderFinishedAt: finishedAt\n workplaces {\n deactivated\n departmentId\n id\n minOperators\n name\n reasonGroupId\n reasonsRecommendationsEnabled\n }\n }\n ... on OrderExecution {\n finishedAt\n id\n item {\n count\n id\n order {\n executedCount\n id\n note\n number\n plannedCount\n position\n startedAt\n finishedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n }\n itemCount\n note\n standardRateMismatched\n startedAt\n workplaceId\n }\n ... on StatusChange {\n author {\n id\n login\n name\n }\n finishedAt\n id\n note\n order {\n executedCount\n id\n note\n number\n plannedCount\n position\n startedAt\n finishedAt\n }\n product {\n assemblyManual\n id\n name\n number\n }\n reason {\n acceptanceMonit\n canBeRecommended\n hasNote\n id\n isNoteRequired\n leaf\n name\n parentId\n position\n reasonGroupId\n statusColor\n temporary\n }\n reasonHasBeenRecommended\n startedAt\n workplaceId\n }\n ... on UserPresence {\n finishedAt\n id\n startedAt\n user {\n id\n login\n name\n }\n workplaceId\n }\n }\n }\n}\n `;\n\nexport type SdkFunctionWrapper = <T>(action: (requestHeaders?:Record<string, string>) => Promise<T>, operationName: string, operationType?: string, variables?: any) => Promise<T>;\n\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) => action();\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n assignOperatorToWorkplace(variables: AssignOperatorToWorkplaceMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<AssignOperatorToWorkplaceMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<AssignOperatorToWorkplaceMutation>({ document: AssignOperatorToWorkplaceDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'assignOperatorToWorkplace', 'mutation', variables);\n },\n bulkUpsertStaffingPlans(variables: BulkUpsertStaffingPlansMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<BulkUpsertStaffingPlansMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<BulkUpsertStaffingPlansMutation>({ document: BulkUpsertStaffingPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'bulkUpsertStaffingPlans', 'mutation', variables);\n },\n createDashboard(variables: CreateDashboardMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateDashboardMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateDashboardMutation>({ document: CreateDashboardDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createDashboard', 'mutation', variables);\n },\n createOrder(variables: CreateOrderMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateOrderMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateOrderMutation>({ document: CreateOrderDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createOrder', 'mutation', variables);\n },\n createProduct(variables: CreateProductMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateProductMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateProductMutation>({ document: CreateProductDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createProduct', 'mutation', variables);\n },\n createStaffingPlan(variables: CreateStaffingPlanMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateStaffingPlanMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateStaffingPlanMutation>({ document: CreateStaffingPlanDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createStaffingPlan', 'mutation', variables);\n },\n createStatusChange(variables: CreateStatusChangeMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateStatusChangeMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateStatusChangeMutation>({ document: CreateStatusChangeDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createStatusChange', 'mutation', variables);\n },\n createUserPresence(variables: CreateUserPresenceMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateUserPresenceMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateUserPresenceMutation>({ document: CreateUserPresenceDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createUserPresence', 'mutation', variables);\n },\n createWidget(variables: CreateWidgetMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CreateWidgetMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<CreateWidgetMutation>({ document: CreateWidgetDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'createWidget', 'mutation', variables);\n },\n pauseOrderExecution(variables: PauseOrderExecutionMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<PauseOrderExecutionMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<PauseOrderExecutionMutation>({ document: PauseOrderExecutionDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'pauseOrderExecution', 'mutation', variables);\n },\n removeDashboard(variables: RemoveDashboardMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveDashboardMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveDashboardMutation>({ document: RemoveDashboardDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeDashboard', 'mutation', variables);\n },\n removeStaffingPlan(variables: RemoveStaffingPlanMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveStaffingPlanMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveStaffingPlanMutation>({ document: RemoveStaffingPlanDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeStaffingPlan', 'mutation', variables);\n },\n removeUserPresence(variables: RemoveUserPresenceMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveUserPresenceMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveUserPresenceMutation>({ document: RemoveUserPresenceDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeUserPresence', 'mutation', variables);\n },\n removeWidget(variables: RemoveWidgetMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveWidgetMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveWidgetMutation>({ document: RemoveWidgetDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeWidget', 'mutation', variables);\n },\n removeWorkplaceUsersPresences(variables: RemoveWorkplaceUsersPresencesMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RemoveWorkplaceUsersPresencesMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RemoveWorkplaceUsersPresencesMutation>({ document: RemoveWorkplaceUsersPresencesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'removeWorkplaceUsersPresences', 'mutation', variables);\n },\n requestFeatureAccess(variables: RequestFeatureAccessMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<RequestFeatureAccessMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<RequestFeatureAccessMutation>({ document: RequestFeatureAccessDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'requestFeatureAccess', 'mutation', variables);\n },\n setCounter(variables: SetCounterMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<SetCounterMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<SetCounterMutation>({ document: SetCounterDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'setCounter', 'mutation', variables);\n },\n startOrderExecution(variables: StartOrderExecutionMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StartOrderExecutionMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<StartOrderExecutionMutation>({ document: StartOrderExecutionDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'startOrderExecution', 'mutation', variables);\n },\n startTrial(variables: StartTrialMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StartTrialMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<StartTrialMutation>({ document: StartTrialDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'startTrial', 'mutation', variables);\n },\n stopOrderExecution(variables: StopOrderExecutionMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StopOrderExecutionMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<StopOrderExecutionMutation>({ document: StopOrderExecutionDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'stopOrderExecution', 'mutation', variables);\n },\n unassignOperatorFromWorkplace(variables: UnassignOperatorFromWorkplaceMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UnassignOperatorFromWorkplaceMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UnassignOperatorFromWorkplaceMutation>({ document: UnassignOperatorFromWorkplaceDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'unassignOperatorFromWorkplace', 'mutation', variables);\n },\n updateDashboard(variables: UpdateDashboardMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateDashboardMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateDashboardMutation>({ document: UpdateDashboardDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateDashboard', 'mutation', variables);\n },\n updateNotification(variables: UpdateNotificationMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateNotificationMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateNotificationMutation>({ document: UpdateNotificationDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateNotification', 'mutation', variables);\n },\n updateOrder(variables: UpdateOrderMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateOrderMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateOrderMutation>({ document: UpdateOrderDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateOrder', 'mutation', variables);\n },\n updateOrderExecution(variables: UpdateOrderExecutionMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateOrderExecutionMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateOrderExecutionMutation>({ document: UpdateOrderExecutionDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateOrderExecution', 'mutation', variables);\n },\n updateStaffingPlan(variables: UpdateStaffingPlanMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateStaffingPlanMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateStaffingPlanMutation>({ document: UpdateStaffingPlanDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateStaffingPlan', 'mutation', variables);\n },\n updateStatusChange(variables: UpdateStatusChangeMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateStatusChangeMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateStatusChangeMutation>({ document: UpdateStatusChangeDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateStatusChange', 'mutation', variables);\n },\n updateWidget(variables: UpdateWidgetMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateWidgetMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateWidgetMutation>({ document: UpdateWidgetDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateWidget', 'mutation', variables);\n },\n updateWorkOrder(variables: UpdateWorkOrderMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UpdateWorkOrderMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UpdateWorkOrderMutation>({ document: UpdateWorkOrderDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'updateWorkOrder', 'mutation', variables);\n },\n actualStaffingCounts(variables?: ActualStaffingCountsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ActualStaffingCountsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ActualStaffingCountsQuery>({ document: ActualStaffingCountsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'actualStaffingCounts', 'query', variables);\n },\n applicationInfo(variables?: ApplicationInfoQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ApplicationInfoQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ApplicationInfoQuery>({ document: ApplicationInfoDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'applicationInfo', 'query', variables);\n },\n availabilityInsights(variables: AvailabilityInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<AvailabilityInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<AvailabilityInsightsQuery>({ document: AvailabilityInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'availabilityInsights', 'query', variables);\n },\n companyConfig(variables?: CompanyConfigQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CompanyConfigQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<CompanyConfigQuery>({ document: CompanyConfigDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'companyConfig', 'query', variables);\n },\n counterDirectories(variables?: CounterDirectoriesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CounterDirectoriesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<CounterDirectoriesQuery>({ document: CounterDirectoriesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'counterDirectories', 'query', variables);\n },\n counters(variables?: CountersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CountersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<CountersQuery>({ document: CountersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'counters', 'query', variables);\n },\n currentUser(variables?: CurrentUserQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<CurrentUserQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<CurrentUserQuery>({ document: CurrentUserDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'currentUser', 'query', variables);\n },\n dashboards(variables?: DashboardsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<DashboardsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<DashboardsQuery>({ document: DashboardsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'dashboards', 'query', variables);\n },\n departments(variables?: DepartmentsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<DepartmentsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<DepartmentsQuery>({ document: DepartmentsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'departments', 'query', variables);\n },\n floorPlans(variables?: FloorPlansQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<FloorPlansQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<FloorPlansQuery>({ document: FloorPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'floorPlans', 'query', variables);\n },\n metricValues(variables?: MetricValuesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<MetricValuesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<MetricValuesQuery>({ document: MetricValuesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'metricValues', 'query', variables);\n },\n metrics(variables?: MetricsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<MetricsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<MetricsQuery>({ document: MetricsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'metrics', 'query', variables);\n },\n notifications(variables?: NotificationsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<NotificationsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<NotificationsQuery>({ document: NotificationsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'notifications', 'query', variables);\n },\n orders(variables?: OrdersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<OrdersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<OrdersQuery>({ document: OrdersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'orders', 'query', variables);\n },\n ordersExecutions(variables?: OrdersExecutionsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<OrdersExecutionsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<OrdersExecutionsQuery>({ document: OrdersExecutionsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'ordersExecutions', 'query', variables);\n },\n productionInsights(variables: ProductionInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ProductionInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ProductionInsightsQuery>({ document: ProductionInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'productionInsights', 'query', variables);\n },\n products(variables?: ProductsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ProductsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ProductsQuery>({ document: ProductsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'products', 'query', variables);\n },\n reasons(variables?: ReasonsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ReasonsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ReasonsQuery>({ document: ReasonsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'reasons', 'query', variables);\n },\n reasonsRecommendation(variables: ReasonsRecommendationQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ReasonsRecommendationQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ReasonsRecommendationQuery>({ document: ReasonsRecommendationDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'reasonsRecommendation', 'query', variables);\n },\n shifts(variables?: ShiftsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ShiftsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ShiftsQuery>({ document: ShiftsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'shifts', 'query', variables);\n },\n staffingPlans(variables?: StaffingPlansQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StaffingPlansQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StaffingPlansQuery>({ document: StaffingPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'staffingPlans', 'query', variables);\n },\n standardRates(variables: StandardRatesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StandardRatesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StandardRatesQuery>({ document: StandardRatesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'standardRates', 'query', variables);\n },\n statusChangeTransitionPermissions(variables?: StatusChangeTransitionPermissionsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StatusChangeTransitionPermissionsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StatusChangeTransitionPermissionsQuery>({ document: StatusChangeTransitionPermissionsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'statusChangeTransitionPermissions', 'query', variables);\n },\n statusChanges(variables?: StatusChangesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StatusChangesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StatusChangesQuery>({ document: StatusChangesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'statusChanges', 'query', variables);\n },\n statusInsights(variables: StatusInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<StatusInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<StatusInsightsQuery>({ document: StatusInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'statusInsights', 'query', variables);\n },\n users(variables?: UsersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UsersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<UsersQuery>({ document: UsersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'users', 'query', variables);\n },\n usersPresences(variables?: UsersPresencesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UsersPresencesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<UsersPresencesQuery>({ document: UsersPresencesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'usersPresences', 'query', variables);\n },\n widget(variables: WidgetQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WidgetQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WidgetQuery>({ document: WidgetDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'widget', 'query', variables);\n },\n widgets(variables?: WidgetsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WidgetsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WidgetsQuery>({ document: WidgetsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'widgets', 'query', variables);\n },\n workOrders(variables?: WorkOrdersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkOrdersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkOrdersQuery>({ document: WorkOrdersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workOrders', 'query', variables);\n },\n workOrdersInsights(variables: WorkOrdersInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkOrdersInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkOrdersInsightsQuery>({ document: WorkOrdersInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workOrdersInsights', 'query', variables);\n },\n workplaceAssignments(variables: WorkplaceAssignmentsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkplaceAssignmentsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkplaceAssignmentsQuery>({ document: WorkplaceAssignmentsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workplaceAssignments', 'query', variables);\n },\n workplacePerformanceInsights(variables: WorkplacePerformanceInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkplacePerformanceInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkplacePerformanceInsightsQuery>({ document: WorkplacePerformanceInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workplacePerformanceInsights', 'query', variables);\n },\n workplaces(variables?: WorkplacesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkplacesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkplacesQuery>({ document: WorkplacesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workplaces', 'query', variables);\n },\n assignOperator(variables: AssignOperatorMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<AssignOperatorMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<AssignOperatorMutation>({ document: AssignOperatorDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'assignOperator', 'mutation', variables);\n },\n unassignOperator(variables: UnassignOperatorMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<UnassignOperatorMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<UnassignOperatorMutation>({ document: UnassignOperatorDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'unassignOperator', 'mutation', variables);\n },\n editWorkOrder(variables: EditWorkOrderMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<EditWorkOrderMutation> {\n return withWrapper((wrappedRequestHeaders) => client.request<EditWorkOrderMutation>({ document: EditWorkOrderDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'editWorkOrder', 'mutation', variables);\n },\n getAvailabilityInsights(variables: GetAvailabilityInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetAvailabilityInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetAvailabilityInsightsQuery>({ document: GetAvailabilityInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getAvailabilityInsights', 'query', variables);\n },\n getCompanyConfig(variables?: GetCompanyConfigQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetCompanyConfigQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetCompanyConfigQuery>({ document: GetCompanyConfigDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getCompanyConfig', 'query', variables);\n },\n getProductionInsights(variables: GetProductionInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetProductionInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetProductionInsightsQuery>({ document: GetProductionInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getProductionInsights', 'query', variables);\n },\n getStatusInsights(variables: GetStatusInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetStatusInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetStatusInsightsQuery>({ document: GetStatusInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getStatusInsights', 'query', variables);\n },\n getWorkOrdersInsights(variables: GetWorkOrdersInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetWorkOrdersInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetWorkOrdersInsightsQuery>({ document: GetWorkOrdersInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getWorkOrdersInsights', 'query', variables);\n },\n getWorkplacePerformanceInsights(variables: GetWorkplacePerformanceInsightsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<GetWorkplacePerformanceInsightsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<GetWorkplacePerformanceInsightsQuery>({ document: GetWorkplacePerformanceInsightsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'getWorkplacePerformanceInsights', 'query', variables);\n },\n listActualStaffingCounts(variables?: ListActualStaffingCountsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListActualStaffingCountsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListActualStaffingCountsQuery>({ document: ListActualStaffingCountsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listActualStaffingCounts', 'query', variables);\n },\n listFloorPlans(variables?: ListFloorPlansQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListFloorPlansQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListFloorPlansQuery>({ document: ListFloorPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listFloorPlans', 'query', variables);\n },\n listMetricValues(variables?: ListMetricValuesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListMetricValuesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListMetricValuesQuery>({ document: ListMetricValuesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listMetricValues', 'query', variables);\n },\n listMetrics(variables?: ListMetricsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListMetricsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListMetricsQuery>({ document: ListMetricsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listMetrics', 'query', variables);\n },\n listReasons(variables?: ListReasonsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListReasonsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListReasonsQuery>({ document: ListReasonsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listReasons', 'query', variables);\n },\n listShifts(variables?: ListShiftsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListShiftsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListShiftsQuery>({ document: ListShiftsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listShifts', 'query', variables);\n },\n listStaffingPlans(variables?: ListStaffingPlansQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListStaffingPlansQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListStaffingPlansQuery>({ document: ListStaffingPlansDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listStaffingPlans', 'query', variables);\n },\n listStatusChanges(variables?: ListStatusChangesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListStatusChangesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListStatusChangesQuery>({ document: ListStatusChangesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listStatusChanges', 'query', variables);\n },\n listWorkOrders(variables?: ListWorkOrdersQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListWorkOrdersQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListWorkOrdersQuery>({ document: ListWorkOrdersDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listWorkOrders', 'query', variables);\n },\n listWorkplaceAssignments(variables: ListWorkplaceAssignmentsQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListWorkplaceAssignmentsQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListWorkplaceAssignmentsQuery>({ document: ListWorkplaceAssignmentsDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listWorkplaceAssignments', 'query', variables);\n },\n listWorkplaces(variables?: ListWorkplacesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<ListWorkplacesQuery> {\n return withWrapper((wrappedRequestHeaders) => client.request<ListWorkplacesQuery>({ document: ListWorkplacesDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'listWorkplaces', 'query', variables);\n },\n workplaceEvent(variables: WorkplaceEventSubscriptionVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit['signal']): Promise<WorkplaceEventSubscription> {\n return withWrapper((wrappedRequestHeaders) => client.request<WorkplaceEventSubscription>({ document: WorkplaceEventDocument, variables, requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders }, signal }), 'workplaceEvent', 'subscription', variables);\n }\n };\n}\nexport type Sdk = ReturnType<typeof getSdk>;","import dayjs from 'dayjs';\n\nimport type { FilterValues } from '../components/DashboardFilters/types';\nimport { DayType } from '../graphql-sdk';\n\nexport const resolveInitialValues = (values?: Partial<FilterValues>): FilterValues | undefined => {\n if (!values) return undefined;\n\n const today = dayjs().format('YYYY-MM-DD');\n\n return {\n dayType: values.dayType ?? DayType.Production,\n dateRange: values.dateRange ?? { from: `${today}T00:00:00`, to: `${today}T23:59:59` },\n shiftIds: values.shiftIds ?? [],\n selectedPeriodId: values.selectedPeriodId,\n };\n};\n","","","import en from './en/translation.json';\nimport pl from './pl/translation.json';\n\nconst resources = {\n en: {\n translation: en,\n },\n pl: {\n translation: pl,\n },\n};\n\nexport default resources;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n dialog: {\n '& .MuiDialog-paper': {\n borderRadius: '6px',\n },\n '& .MuiDialogContent-root': {\n padding: 0,\n },\n },\n};\n\nexport default styles;\n","import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Button, Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material';\nimport { AccessBlocker, AccessButton, AccessState, CooldownInfo, FeatureRequestPayload } from 'andoncloud-sdk';\n\nimport styles from './styles';\n\nconst FEATURE_KEY = 'feature.dashboard_extended_date_ranges';\n\nexport type AccessDeniedModalProps = {\n open: boolean;\n onClose: () => void;\n accessState: AccessState;\n buttons: AccessButton[];\n daysSinceExpiry: number | null;\n cooldownInfo: CooldownInfo;\n workplaceId?: string;\n onFeatureRequest?: (payload: FeatureRequestPayload) => Promise<boolean>;\n};\n\nconst AccessDeniedModal: React.FC<AccessDeniedModalProps> = ({\n open,\n onClose,\n accessState,\n buttons,\n daysSinceExpiry,\n cooldownInfo,\n workplaceId,\n onFeatureRequest,\n}) => {\n const handleTrialRequest = useCallback(() => Promise.resolve(false), []);\n\n const handleFeatureRequest = useCallback(\n async (payload: FeatureRequestPayload) => {\n const success = onFeatureRequest ? await onFeatureRequest(payload) : false;\n if (success) {\n onClose();\n }\n return success;\n },\n [onFeatureRequest, onClose],\n );\n\n const { t } = useTranslation();\n\n return (\n <Dialog open={open} onClose={onClose} sx={styles.dialog} data-testid=\"dashboard-filters.access-denied-dialog\">\n <DialogTitle>{t('dashboardFilters.accessDenied.title')}</DialogTitle>\n <DialogContent>\n <AccessBlocker\n accessState={accessState}\n buttons={buttons}\n daysSinceExpiry={daysSinceExpiry ?? undefined}\n featureKey={FEATURE_KEY}\n workplaceId={workplaceId}\n cooldownInfo={cooldownInfo}\n onTrialRequest={handleTrialRequest}\n onFeatureRequest={handleFeatureRequest}\n />\n <DialogActions>\n <Button onClick={onClose}>{t('dashboardFilters.accessDenied.close')}</Button>\n </DialogActions>\n </DialogContent>\n </Dialog>\n );\n};\n\nexport default AccessDeniedModal;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n alignItems: 'center',\n gap: (theme) => theme.spacing(1),\n },\n label: {\n fontSize: '0.875rem',\n whiteSpace: 'nowrap',\n color: (theme) => theme.palette.common.white,\n },\n toggleGroup: {\n '& .MuiToggleButton-root': {\n padding: (theme) => theme.spacing(0.5, 1.5),\n fontSize: '0.875rem',\n opacity: 0.7,\n color: (theme) => theme.palette.text.primary,\n textTransform: 'none',\n borderRadius: '6px',\n '&.Mui-selected': {\n opacity: 1,\n color: (theme) => theme.palette.common.white,\n backgroundColor: (theme) => theme.palette.primary.main,\n '&:hover': {\n backgroundColor: (theme) => theme.palette.primary.dark,\n },\n },\n },\n },\n};\n\nexport default styles;\n","import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Box, ToggleButton, ToggleButtonGroup, Typography } from '@mui/material';\n\nimport { DayType } from '../../../graphql-sdk';\n\nimport styles from './styles';\n\nexport type DayTypeSelectorProps = {\n value: DayType;\n onChange: (value: DayType) => void;\n};\n\nconst DayTypeSelector: React.FC<DayTypeSelectorProps> = ({ value, onChange }) => {\n const { t } = useTranslation();\n\n const handleChange = useCallback(\n (_event: React.MouseEvent<HTMLElement>, newValue: DayType | null) => {\n if (newValue !== null) {\n onChange(newValue);\n }\n },\n [onChange],\n );\n\n return (\n <Box sx={styles.container}>\n <Typography sx={styles.label}>{t('dashboardFilters.dayType.label')}</Typography>\n <ToggleButtonGroup\n value={value}\n exclusive\n onChange={handleChange}\n size=\"small\"\n sx={styles.toggleGroup}\n data-testid=\"dashboard-filters.day-type-selector\"\n >\n <ToggleButton value={DayType.Calendar} data-testid=\"dashboard-filters.day-type-calendar\">\n {t('dashboardFilters.dayType.calendar')}\n </ToggleButton>\n <ToggleButton value={DayType.Production} data-testid=\"dashboard-filters.day-type-production\">\n {t('dashboardFilters.dayType.production')}\n </ToggleButton>\n </ToggleButtonGroup>\n </Box>\n );\n};\n\nexport default DayTypeSelector;\n","import dayjs, { Dayjs } from 'dayjs';\n\nimport { Shift } from '../graphql-sdk';\n\nexport interface NormalizedShift {\n id: string;\n name: string;\n startedAt: Dayjs;\n finishedAt: Dayjs;\n}\n\nconst setDate = (date: Dayjs, shiftDate: Dayjs): Dayjs => {\n return shiftDate.year(date.year()).month(date.month()).date(date.date());\n};\n\nexport const normalizeShifts = (shifts: Shift[], date: Dayjs) => {\n const normalizedShifts: NormalizedShift[] = [];\n\n shifts.forEach((shift) => {\n let startedAt = dayjs(shift.startedAt);\n let finishedAt = dayjs(shift.finishedAt);\n\n startedAt = setDate(date, startedAt);\n finishedAt = setDate(date, finishedAt);\n\n if (startedAt.isAfter(finishedAt)) {\n const prevDayStartedAt = startedAt.subtract(1, 'day');\n const nextDayFinishedAt = finishedAt.add(1, 'day');\n\n normalizedShifts.push({ id: shift.id, name: shift.name, startedAt: prevDayStartedAt, finishedAt });\n normalizedShifts.push({ id: shift.id, name: shift.name, startedAt, finishedAt: nextDayFinishedAt });\n } else {\n normalizedShifts.push({ id: shift.id, name: shift.name, startedAt, finishedAt });\n }\n });\n return normalizedShifts;\n};\n\nexport const getCurrentShift = (date: Dayjs, shifts: NormalizedShift[]) => {\n return (\n shifts.find((shift) => {\n return !date.isBefore(shift.startedAt) && date.isBefore(shift.finishedAt);\n }) || null\n );\n};\n\nexport const getRecentShift = (date: Dayjs, shifts: NormalizedShift[]) => {\n if (shifts.length) {\n return shifts.reduce((previous, current) => {\n return Math.abs(date.diff(current.finishedAt)) < Math.abs(date.diff(previous.finishedAt)) ? current : previous;\n });\n }\n return null;\n};\n","import dayjs, { Dayjs } from 'dayjs';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport quarterOfYear from 'dayjs/plugin/quarterOfYear';\n\nimport type { CalculateContext, DateRange, PeriodDefinition, PeriodId } from '../components/DashboardFilters/types';\nimport { DayType, Shift } from '../graphql-sdk';\n\nimport { getCurrentShift, getRecentShift, NormalizedShift, normalizeShifts } from './shifts';\n\ndayjs.extend(isoWeek);\ndayjs.extend(quarterOfYear);\n\ntype TimeBoundaries = {\n startTime: string; // HH:mm:ss\n endTime: string; // HH:mm:ss\n crossesMidnight: boolean;\n};\n\nconst parseShiftTime = (timeStr: string): string => {\n // Shift time format: \"2000-01-01 06:00:00 +0100\" or similar\n // Extract just the time part HH:mm:ss\n const match = timeStr.match(/(\\d{2}:\\d{2}:\\d{2})/);\n return match ? match[1] : '00:00:00';\n};\n\nconst timeToMinutes = (time: string): number => {\n const [hours, minutes] = time.split(':').map(Number);\n return hours * 60 + minutes;\n};\n\nconst getTimeBoundaries = (shifts: Shift[], selectedShiftIds: string[]): TimeBoundaries => {\n const relevantShifts = selectedShiftIds.length === 0 ? shifts : shifts.filter((s) => selectedShiftIds.includes(s.id));\n\n if (relevantShifts.length === 0) {\n return { startTime: '00:00:00', endTime: '23:59:59', crossesMidnight: false };\n }\n\n const shiftTimes = relevantShifts.map((s) => ({\n start: parseShiftTime(s.startedAt),\n end: parseShiftTime(s.finishedAt),\n }));\n\n // Sort by start time\n shiftTimes.sort((a, b) => timeToMinutes(a.start) - timeToMinutes(b.start));\n\n const startTime = shiftTimes[0].start;\n const endTime = shiftTimes[shiftTimes.length - 1].end;\n\n // Check if crosses midnight:\n // - end time < start time (e.g., 06:00 < 22:00 for night shift only)\n // - end time <= start time when any shift crosses midnight (e.g., 06:00 <= 06:00 for 24h operation)\n const anyShiftCrossesMidnight = shiftTimes.some((s) => timeToMinutes(s.end) < timeToMinutes(s.start));\n const crossesMidnight = timeToMinutes(endTime) <= timeToMinutes(startTime) && anyShiftCrossesMidnight;\n\n return { startTime, endTime, crossesMidnight };\n};\n\nconst formatDateTime = (date: Dayjs, time: string): string => {\n const [hours, minutes, seconds] = time.split(':').map(Number);\n return date\n .hour(hours)\n .minute(minutes)\n .second(seconds || 0)\n .format('YYYY-MM-DDTHH:mm:ss');\n};\n\nconst createDateRange = (startDate: Dayjs, endDate: Dayjs, dayType: DayType, boundaries: TimeBoundaries): DateRange => {\n if (dayType === DayType.Calendar) {\n return {\n from: formatDateTime(startDate, '00:00:00'),\n to: formatDateTime(endDate, '23:59:59'),\n };\n }\n\n // PRODUCTION mode\n const from = formatDateTime(startDate, boundaries.startTime);\n let to: string;\n\n if (boundaries.crossesMidnight) {\n // End time is on the next day\n to = formatDateTime(endDate.add(1, 'day'), boundaries.endTime);\n } else {\n to = formatDateTime(endDate, boundaries.endTime);\n }\n\n return { from, to };\n};\n\nconst createPeriodCalculator =\n (getDateRange: (now: Dayjs) => { start: Dayjs; end: Dayjs }) =>\n (ctx: CalculateContext): DateRange => {\n const now = dayjs();\n const { start, end } = getDateRange(now);\n const boundaries = getTimeBoundaries(ctx.shifts, ctx.selectedShiftIds);\n return createDateRange(start, end, ctx.dayType, boundaries);\n };\n\nconst findTargetShift = (shifts: Shift[], mode: 'current' | 'last'): NormalizedShift | null => {\n const now = dayjs();\n if (!shifts?.length) return null;\n\n const normalized = normalizeShifts(shifts, now);\n const current = getCurrentShift(now, normalized) ?? getRecentShift(now, normalized);\n if (!current) return null;\n\n if (mode === 'current') return current;\n\n // mode === 'last': find the shift ending just before current.startedAt\n const previous = normalized\n .filter((s) => s.finishedAt.isBefore(current.startedAt) || s.finishedAt.isSame(current.startedAt))\n .sort((a, b) => b.finishedAt.diff(a.finishedAt))[0];\n\n return previous ?? current; // fallback if only one shift\n};\n\nconst calculateShiftPeriod = (ctx: CalculateContext, mode: 'current' | 'last'): DateRange => {\n const target = findTargetShift(ctx.shifts, mode);\n\n if (!target) {\n const today = dayjs().format('YYYY-MM-DD');\n return { from: `${today}T00:00:00`, to: `${today}T23:59:59` };\n }\n\n return {\n from: target.startedAt.format('YYYY-MM-DDTHH:mm:ss'),\n to: target.finishedAt.format('YYYY-MM-DDTHH:mm:ss'),\n };\n};\n\nexport const resolveShiftIdForPeriod = (periodId: PeriodId, shifts: Shift[]): string | null => {\n if (periodId !== 'current_shift' && periodId !== 'last_shift') return null;\n const mode = periodId === 'current_shift' ? 'current' : 'last';\n const target = findTargetShift(shifts, mode);\n return target?.id ?? null;\n};\n\nexport const periods: PeriodDefinition[] = [\n // Shift-based periods\n {\n id: 'current_shift',\n labelKey: 'dashboardFilters.periods.currentShift',\n needAccess: false,\n category: 'shift_based',\n calculate: (ctx) => calculateShiftPeriod(ctx, 'current'),\n },\n {\n id: 'last_shift',\n labelKey: 'dashboardFilters.periods.lastShift',\n needAccess: false,\n category: 'shift_based',\n calculate: (ctx) => calculateShiftPeriod(ctx, 'last'),\n },\n\n // Relative days\n {\n id: 'today',\n labelKey: 'dashboardFilters.periods.today',\n needAccess: false,\n category: 'relative_days',\n calculate: createPeriodCalculator((now) => ({ start: now, end: now })),\n },\n {\n id: 'yesterday',\n labelKey: 'dashboardFilters.periods.yesterday',\n needAccess: false,\n category: 'relative_days',\n calculate: createPeriodCalculator((now) => {\n const yesterday = now.subtract(1, 'day');\n return { start: yesterday, end: yesterday };\n }),\n },\n\n // Rolling periods (free)\n {\n id: 'last_7_days',\n labelKey: 'dashboardFilters.periods.last7Days',\n needAccess: false,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(6, 'day'), end: now })),\n },\n {\n id: 'last_14_days',\n labelKey: 'dashboardFilters.periods.last14Days',\n needAccess: false,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(13, 'day'), end: now })),\n },\n {\n id: 'last_30_days',\n labelKey: 'dashboardFilters.periods.last30Days',\n needAccess: false,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(29, 'day'), end: now })),\n },\n\n // Rolling periods (premium)\n {\n id: 'last_90_days',\n labelKey: 'dashboardFilters.periods.last90Days',\n needAccess: true,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(89, 'day'), end: now })),\n },\n {\n id: 'last_180_days',\n labelKey: 'dashboardFilters.periods.last180Days',\n needAccess: true,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(179, 'day'), end: now })),\n },\n {\n id: 'last_365_days',\n labelKey: 'dashboardFilters.periods.last365Days',\n needAccess: true,\n category: 'rolling',\n calculate: createPeriodCalculator((now) => ({ start: now.subtract(364, 'day'), end: now })),\n },\n\n // Current periods\n {\n id: 'current_week',\n labelKey: 'dashboardFilters.periods.currentWeek',\n needAccess: false,\n category: 'current',\n calculate: createPeriodCalculator((now) => ({ start: now.startOf('isoWeek'), end: now })),\n },\n {\n id: 'current_month',\n labelKey: 'dashboardFilters.periods.currentMonth',\n needAccess: false,\n category: 'current',\n calculate: createPeriodCalculator((now) => ({ start: now.startOf('month'), end: now })),\n },\n {\n id: 'current_quarter',\n labelKey: 'dashboardFilters.periods.currentQuarter',\n needAccess: true,\n category: 'current',\n calculate: createPeriodCalculator((now) => ({ start: now.startOf('quarter'), end: now })),\n },\n {\n id: 'current_year',\n labelKey: 'dashboardFilters.periods.currentYear',\n needAccess: true,\n category: 'current',\n calculate: createPeriodCalculator((now) => ({ start: now.startOf('year'), end: now })),\n },\n\n // Previous periods\n {\n id: 'previous_week',\n labelKey: 'dashboardFilters.periods.previousWeek',\n needAccess: false,\n category: 'previous',\n calculate: createPeriodCalculator((now) => {\n const prevWeek = now.subtract(1, 'week');\n return { start: prevWeek.startOf('isoWeek'), end: prevWeek.endOf('isoWeek') };\n }),\n },\n {\n id: 'previous_month',\n labelKey: 'dashboardFilters.periods.previousMonth',\n needAccess: true,\n category: 'previous',\n calculate: createPeriodCalculator((now) => {\n const prevMonth = now.subtract(1, 'month');\n return { start: prevMonth.startOf('month'), end: prevMonth.endOf('month') };\n }),\n },\n {\n id: 'previous_quarter',\n labelKey: 'dashboardFilters.periods.previousQuarter',\n needAccess: true,\n category: 'previous',\n calculate: createPeriodCalculator((now) => {\n const prevQuarter = now.subtract(1, 'quarter');\n return { start: prevQuarter.startOf('quarter'), end: prevQuarter.endOf('quarter') };\n }),\n },\n {\n id: 'previous_year',\n labelKey: 'dashboardFilters.periods.previousYear',\n needAccess: true,\n category: 'previous',\n calculate: createPeriodCalculator((now) => {\n const prevYear = now.subtract(1, 'year');\n return { start: prevYear.startOf('year'), end: prevYear.endOf('year') };\n }),\n },\n\n // Calendar weeks\n {\n id: 'last_2_weeks',\n labelKey: 'dashboardFilters.periods.last2Weeks',\n needAccess: false,\n category: 'calendar_weeks',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(2, 'week').startOf('isoWeek'),\n end: now.endOf('isoWeek'),\n })),\n },\n {\n id: 'last_4_weeks',\n labelKey: 'dashboardFilters.periods.last4Weeks',\n needAccess: false,\n category: 'calendar_weeks',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(4, 'week').startOf('isoWeek'),\n end: now.endOf('isoWeek'),\n })),\n },\n {\n id: 'last_8_weeks',\n labelKey: 'dashboardFilters.periods.last8Weeks',\n needAccess: true,\n category: 'calendar_weeks',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(8, 'week').startOf('isoWeek'),\n end: now.endOf('isoWeek'),\n })),\n },\n {\n id: 'last_12_weeks',\n labelKey: 'dashboardFilters.periods.last12Weeks',\n needAccess: true,\n category: 'calendar_weeks',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(12, 'week').startOf('isoWeek'),\n end: now.endOf('isoWeek'),\n })),\n },\n\n // Fiscal periods\n {\n id: 'last_3_months',\n labelKey: 'dashboardFilters.periods.last3Months',\n needAccess: true,\n category: 'fiscal',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(3, 'month').startOf('month'),\n end: now.endOf('month'),\n })),\n },\n {\n id: 'last_6_months',\n labelKey: 'dashboardFilters.periods.last6Months',\n needAccess: true,\n category: 'fiscal',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(6, 'month').startOf('month'),\n end: now.endOf('month'),\n })),\n },\n {\n id: 'last_12_months',\n labelKey: 'dashboardFilters.periods.last12Months',\n needAccess: true,\n category: 'fiscal',\n calculate: createPeriodCalculator((now) => ({\n start: now.subtract(12, 'month').startOf('month'),\n end: now.endOf('month'),\n })),\n },\n\n // Individual weeks (1-52) for current year\n ...Array.from({ length: 52 }, (_, i) => {\n const weekNumber = i + 1;\n return {\n id: `week_${weekNumber}`,\n labelKey: `dashboardFilters.periods.week`,\n labelParams: { week: weekNumber },\n needAccess: false,\n category: 'weeks',\n calculate: createPeriodCalculator((now) => {\n const year = now.year();\n const weekStart = dayjs().year(year).isoWeek(weekNumber).startOf('isoWeek');\n const weekEnd = weekStart.endOf('isoWeek');\n return { start: weekStart, end: weekEnd };\n }),\n } as PeriodDefinition;\n }),\n];\n\nexport const findPeriodById = (id: string): PeriodDefinition | undefined => {\n return periods.find((p) => p.id === id);\n};\n\nexport const getTimeRangeLabel = (shifts: Shift[], selectedShiftIds: string[]): string | null => {\n if (shifts.length === 0) return null;\n\n const boundaries = getTimeBoundaries(shifts, selectedShiftIds);\n const startFormatted = boundaries.startTime.slice(0, 5);\n const endFormatted = boundaries.endTime.slice(0, 5);\n\n return `${startFormatted} - ${endFormatted}`;\n};\n\nexport const getShiftTimeRange = (shift: Shift): string => {\n const startFormatted = parseShiftTime(shift.startedAt).slice(0, 5);\n const endFormatted = parseShiftTime(shift.finishedAt).slice(0, 5);\n return `${startFormatted} - ${endFormatted}`;\n};\n\nconst getNextMidnight = (ctx: CalculateContext): Date => {\n if (ctx.dayType === DayType.Production && ctx.shifts.length > 0) {\n const boundaries = getTimeBoundaries(ctx.shifts, ctx.selectedShiftIds);\n const [h, m, s] = boundaries.startTime.split(':').map(Number);\n const next = dayjs()\n .add(1, 'day')\n .hour(h)\n .minute(m)\n .second(s || 0)\n .millisecond(0);\n return next.toDate();\n }\n return dayjs().add(1, 'day').startOf('day').toDate();\n};\n\nconst getNextShiftBoundary = (ctx: CalculateContext): Date | null => {\n if (ctx.shifts.length === 0) return null;\n\n const now = dayjs();\n const normalized = normalizeShifts(ctx.shifts, now);\n const current = getCurrentShift(now, normalized);\n\n if (current) {\n return current.finishedAt.toDate();\n }\n\n const upcoming = normalized.filter((s) => s.startedAt.isAfter(now)).sort((a, b) => a.startedAt.diff(b.startedAt));\n\n return upcoming.length > 0 ? upcoming[0].startedAt.toDate() : null;\n};\n\nexport const getNextBoundary = (periodId: PeriodId, ctx: CalculateContext): Date | null => {\n switch (periodId) {\n case 'today':\n case 'yesterday':\n return getNextMidnight(ctx);\n\n case 'current_shift':\n case 'last_shift':\n return getNextShiftBoundary(ctx);\n\n case 'current_week':\n case 'previous_week':\n return dayjs().add(1, 'week').startOf('isoWeek').toDate();\n\n case 'current_month':\n case 'previous_month':\n return dayjs().add(1, 'month').startOf('month').toDate();\n\n case 'current_quarter':\n case 'previous_quarter':\n return dayjs().add(1, 'quarter').startOf('quarter').toDate();\n\n case 'current_year':\n case 'previous_year':\n return dayjs().add(1, 'year').startOf('year').toDate();\n\n default: {\n if (periodId.startsWith('last_') && periodId.endsWith('_days')) {\n return getNextMidnight(ctx);\n }\n if (periodId.startsWith('last_') && periodId.endsWith('_weeks')) {\n return dayjs().add(1, 'week').startOf('isoWeek').toDate();\n }\n if (periodId.startsWith('last_') && periodId.endsWith('_months')) {\n return dayjs().add(1, 'month').startOf('month').toDate();\n }\n // week_N — specific calendar week, no auto-refresh\n return null;\n }\n }\n};\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n },\n searchField: {\n marginTop: (theme) => theme.spacing(2),\n marginBottom: (theme) => theme.spacing(1),\n '& .MuiInputAdornment-root': {\n color: (theme) => theme.palette.text.primary,\n },\n },\n list: {\n flexGrow: 1,\n overflow: 'auto',\n padding: 0,\n },\n listItem: {\n cursor: 'pointer',\n padding: (theme) => theme.spacing(1, 1.5),\n borderRadius: '6px',\n '&:hover': {\n background: 'rgba(255, 255, 255, 0.1)',\n },\n '&.Mui-selected': {\n background: 'rgba(255, 255, 255, 0.15)',\n },\n '& .MuiListItemText-primary': {\n fontSize: '0.875rem',\n },\n '& .MuiListItemText-secondary': {\n opacity: 0.7,\n fontSize: '0.75rem',\n color: (theme) => theme.palette.text.primary,\n },\n },\n premiumChip: {\n marginLeft: (theme) => theme.spacing(1),\n '& .MuiChip-icon': {\n marginLeft: (theme) => theme.spacing(0.5),\n },\n },\n noResults: {\n padding: (theme) => theme.spacing(2),\n opacity: 0.6,\n textAlign: 'center',\n },\n};\n\nexport default styles;\n","import { useCallback, useMemo, useRef, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport LockIcon from '@mui/icons-material/Lock';\nimport SearchIcon from '@mui/icons-material/Search';\nimport { Box, Chip, InputAdornment, List, ListItemButton, ListItemText, TextField } from '@mui/material';\nimport dayjs from 'dayjs';\n\nimport { DayType, Shift } from '../../../graphql-sdk';\nimport { getTimeRangeLabel, periods } from '../../../helpers/periods';\nimport { getCurrentShift, getRecentShift, normalizeShifts } from '../../../helpers/shifts';\nimport type { DateRange, PeriodDefinition, PeriodId } from '../types';\n\nimport styles from './styles';\n\nexport type PeriodListProps = {\n dayType: DayType;\n shifts: Shift[];\n selectedShiftIds: string[];\n selectedPeriodId?: PeriodId;\n hasAccess: boolean;\n onPeriodSelect: (period: PeriodDefinition, dateRange: DateRange) => void;\n};\n\nconst PeriodList: React.FC<PeriodListProps> = ({\n dayType,\n shifts,\n selectedShiftIds,\n selectedPeriodId,\n hasAccess,\n onPeriodSelect,\n}) => {\n const { t } = useTranslation();\n const [searchQuery, setSearchQuery] = useState('');\n const [debouncedQuery, setDebouncedQuery] = useState('');\n const debounceRef = useRef<NodeJS.Timeout | null>(null);\n\n const handleSearchChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n setSearchQuery(value);\n\n if (debounceRef.current) {\n clearTimeout(debounceRef.current);\n }\n\n debounceRef.current = setTimeout(() => {\n setDebouncedQuery(value);\n }, 300);\n }, []);\n\n const timeRangeLabel = useMemo(() => {\n if (dayType !== DayType.Production || shifts.length === 0) {\n return null;\n }\n return getTimeRangeLabel(shifts, selectedShiftIds);\n }, [dayType, shifts, selectedShiftIds]);\n\n const getPeriodLabel = useCallback(\n (period: PeriodDefinition) => {\n return t(period.labelKey, period.labelParams);\n },\n [t],\n );\n\n const shiftLabels = useMemo(() => {\n if (shifts.length === 0) return {};\n\n const now = dayjs();\n const normalized = normalizeShifts(shifts, now);\n const current = getCurrentShift(now, normalized) ?? getRecentShift(now, normalized);\n if (!current) return {};\n\n const currentLabel = `${current.startedAt.format('HH:mm')} - ${current.finishedAt.format('HH:mm')}`;\n\n const previous = normalized\n .filter((s) => s.finishedAt.isBefore(current.startedAt) || s.finishedAt.isSame(current.startedAt))\n .sort((a, b) => b.finishedAt.diff(a.finishedAt))[0];\n\n const target = previous ?? current;\n const lastLabel = `${target.startedAt.format('HH:mm')} - ${target.finishedAt.format('HH:mm')}`;\n\n return { current_shift: currentLabel, last_shift: lastLabel } as Record<string, string>;\n }, [shifts]);\n\n const filteredPeriods = useMemo(() => {\n let available = periods.filter((period) => {\n if (period.category === 'shift_based' && dayType === DayType.Calendar) return false;\n return true;\n });\n\n if (debouncedQuery.trim()) {\n const query = debouncedQuery.toLowerCase().trim();\n available = available.filter((period) => {\n const label = getPeriodLabel(period).toLowerCase();\n return label.includes(query);\n });\n }\n\n return available;\n }, [debouncedQuery, getPeriodLabel, dayType]);\n\n const handlePeriodClick = useCallback(\n (period: PeriodDefinition) => {\n const dateRange = period.calculate({\n dayType,\n shifts,\n selectedShiftIds,\n });\n onPeriodSelect(period, dateRange);\n },\n [dayType, shifts, selectedShiftIds, onPeriodSelect],\n );\n\n const showLockIcon = (period: PeriodDefinition) => !hasAccess && period.needAccess;\n\n return (\n <Box sx={styles.container} data-testid=\"dashboard-filters.period-list\">\n <TextField\n size=\"small\"\n label={t('dashboardFilters.search.placeholder')}\n value={searchQuery}\n onChange={handleSearchChange}\n sx={styles.searchField}\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <SearchIcon fontSize=\"small\" />\n </InputAdornment>\n ),\n }}\n data-testid=\"dashboard-filters.period-search\"\n />\n\n <List sx={styles.list}>\n {filteredPeriods.length === 0 ? (\n <ListItemText sx={styles.noResults} primary={t('dashboardFilters.search.noResults')} />\n ) : (\n filteredPeriods.map((period) => (\n <ListItemButton\n key={period.id}\n selected={period.id === selectedPeriodId}\n onClick={() => handlePeriodClick(period)}\n sx={styles.listItem}\n data-testid={`dashboard-filters.period-item-${period.id}`}\n >\n <ListItemText\n primary={getPeriodLabel(period)}\n secondary={\n period.category === 'shift_based'\n ? shiftLabels[period.id]\n ? `(${shiftLabels[period.id]})`\n : undefined\n : timeRangeLabel\n ? `(${timeRangeLabel})`\n : undefined\n }\n />\n\n {showLockIcon(period) && (\n <Chip\n icon={<LockIcon />}\n label={t('dashboardFilters.premium.indicator')}\n size=\"small\"\n color=\"warning\"\n variant=\"outlined\"\n sx={styles.premiumChip}\n data-testid=\"dashboard-filters.premium-chip\"\n />\n )}\n </ListItemButton>\n ))\n )}\n </List>\n </Box>\n );\n};\n\nexport default PeriodList;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n gap: (theme) => theme.spacing(2),\n },\n leftPanel: {\n flexBasis: 280,\n flexShrink: 0,\n height: 360,\n },\n rightPanel: {\n display: 'flex',\n flexDirection: 'column',\n flexBasis: 320,\n flexShrink: 0,\n gap: (theme) => theme.spacing(2),\n },\n dateInputs: {\n display: 'flex',\n gap: (theme) => theme.spacing(2),\n },\n dateField: {\n flexGrow: 1,\n },\n calendarContainer: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'flex-start',\n },\n calendar: {\n '& .MuiPickersCalendarHeader-label': {\n color: (theme) => theme.palette.text.primary,\n },\n '& .MuiPickersCalendarHeader-switchViewButton': {\n color: (theme) => theme.palette.text.primary,\n },\n '& .MuiPickersArrowSwitcher-button': {\n opacity: 0.7,\n color: (theme) => theme.palette.text.primary,\n '&.Mui-disabled': {\n color: (theme) => theme.palette.gray.light,\n },\n },\n '& .MuiDayCalendar-weekDayLabel': {\n color: (theme) => theme.palette.text.primary,\n },\n '& .MuiPickersDay-root': {\n color: (theme) => theme.palette.text.primary,\n '&:not(.Mui-selected)': {\n border: 'none',\n },\n '&.Mui-disabled:not(.Mui-selected)': {\n opacity: 0.3,\n color: (theme) => theme.palette.text.primary,\n },\n },\n },\n rangeDay: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n rangeDayInRange: {\n backgroundColor: (theme) => theme.palette.primary.main,\n },\n rangeDayStart: {\n backgroundColor: (theme) => theme.palette.primary.main,\n borderTopLeftRadius: 17,\n borderBottomLeftRadius: 17,\n },\n rangeDayEnd: {\n backgroundColor: (theme) => theme.palette.primary.main,\n borderTopRightRadius: 17,\n borderBottomRightRadius: 17,\n },\n};\n\nexport default styles;\n","import 'dayjs/locale/pl';\n\nimport { useCallback, useMemo, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Box, TextField } from '@mui/material';\nimport { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';\nimport { DateCalendar } from '@mui/x-date-pickers/DateCalendar';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport { PickersDay, PickersDayProps } from '@mui/x-date-pickers/PickersDay';\nimport dayjs, { Dayjs } from 'dayjs';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport { mergeSx } from 'merge-sx';\n\nimport { DayType, Shift } from '../../../graphql-sdk';\nimport { ACCESS_LIMIT_DAYS, MAX_RANGE_DAYS } from '../constants';\nimport DayTypeSelector from '../DayTypeSelector';\nimport PeriodList from '../PeriodList';\nimport type { DateRange, PeriodDefinition, PeriodId } from '../types';\n\nimport styles from './styles';\n\ndayjs.extend(isBetween);\n\ntype RangeDayProps = PickersDayProps & {\n fromDate: Dayjs;\n toDate: Dayjs;\n};\n\nconst RangeDay: React.FC<RangeDayProps> = ({ fromDate, toDate, day, ...other }) => {\n const dayDate = day as Dayjs;\n const isInRange = dayDate.isBetween(fromDate, toDate, 'day', '[]');\n const isStart = dayDate.isSame(fromDate, 'day');\n const isEnd = dayDate.isSame(toDate, 'day');\n const isSingleDay = isStart && isEnd;\n\n return (\n <Box\n sx={mergeSx(\n styles.rangeDay,\n isInRange && !isSingleDay && styles.rangeDayInRange,\n isStart && !isSingleDay && styles.rangeDayStart,\n isEnd && !isSingleDay && styles.rangeDayEnd,\n )}\n >\n <PickersDay day={day} {...other} />\n </Box>\n );\n};\n\nexport type DateRangePickerProps = {\n dateRange: DateRange;\n dayType: DayType;\n shifts: Shift[];\n selectedShiftIds: string[];\n hasAccess: boolean;\n selectedPeriodId?: PeriodId;\n onDayTypeChange: (dayType: DayType) => void;\n onDateRangeChange: (dateRange: DateRange) => void;\n onPeriodSelect: (period: PeriodDefinition, dateRange: DateRange) => void;\n onAccessDenied: () => void;\n};\n\ntype ActiveField = 'from' | 'to' | null;\n\nconst DateRangePicker: React.FC<DateRangePickerProps> = ({\n dateRange,\n dayType,\n shifts,\n selectedShiftIds,\n hasAccess,\n selectedPeriodId,\n onDayTypeChange,\n onDateRangeChange,\n onPeriodSelect,\n}) => {\n const { t, i18n } = useTranslation();\n const [activeField, setActiveField] = useState<ActiveField>('from');\n\n const fromDate = dayjs(dateRange.from);\n const toDate = dayjs(dateRange.to);\n const today = dayjs();\n const accessLimitDate = today.subtract(ACCESS_LIMIT_DAYS, 'day');\n const maxRangeDate = today.subtract(MAX_RANGE_DAYS, 'day');\n const minDate = hasAccess ? maxRangeDate : accessLimitDate;\n\n const handleCalendarChange = useCallback(\n (date: Dayjs | null) => {\n if (!date) return;\n\n const dateStr = date.format('YYYY-MM-DD');\n const newRange = { ...dateRange };\n\n if (activeField === 'from') {\n newRange.from = dateStr + 'T00:00:00';\n if (date.isAfter(dayjs(dateRange.to))) {\n newRange.to = dateStr + 'T23:59:59';\n }\n setActiveField('to');\n } else {\n newRange.to = dateStr + 'T23:59:59';\n if (date.isBefore(dayjs(dateRange.from))) {\n newRange.from = dateStr + 'T00:00:00';\n }\n }\n\n onDateRangeChange(newRange);\n },\n [activeField, dateRange, onDateRangeChange],\n );\n\n const handleFromClick = useCallback(() => {\n setActiveField('from');\n }, []);\n\n const handleToClick = useCallback(() => {\n setActiveField('to');\n }, []);\n\n const calendarValue = activeField === 'from' ? fromDate : toDate;\n\n const slotProps = useMemo(\n () => ({\n day: {\n fromDate,\n toDate,\n } as Partial<RangeDayProps>,\n }),\n [fromDate, toDate],\n );\n\n return (\n <LocalizationProvider dateAdapter={AdapterDayjs} adapterLocale={i18n.language}>\n <Box sx={styles.container}>\n <Box sx={styles.leftPanel}>\n <DayTypeSelector value={dayType} onChange={onDayTypeChange} />\n <PeriodList\n dayType={dayType}\n shifts={shifts}\n selectedShiftIds={selectedShiftIds}\n selectedPeriodId={selectedPeriodId}\n hasAccess={hasAccess}\n onPeriodSelect={onPeriodSelect}\n />\n </Box>\n\n <Box sx={styles.rightPanel}>\n <Box sx={styles.dateInputs}>\n <TextField\n label={t('dashboardFilters.dateRange.from')}\n value={fromDate.format('YYYY-MM-DD')}\n onClick={handleFromClick}\n focused={activeField === 'from'}\n InputProps={{ readOnly: true }}\n size=\"small\"\n sx={styles.dateField}\n data-testid=\"dashboard-filters.date-from\"\n />\n <TextField\n label={t('dashboardFilters.dateRange.to')}\n value={toDate.format('YYYY-MM-DD')}\n onClick={handleToClick}\n focused={activeField === 'to'}\n InputProps={{ readOnly: true }}\n size=\"small\"\n sx={styles.dateField}\n data-testid=\"dashboard-filters.date-to\"\n />\n </Box>\n\n <Box sx={styles.calendarContainer} data-testid=\"dashboard-filters.date-calendar\">\n <DateCalendar\n key={`${dateRange.from}-${dateRange.to}`}\n value={calendarValue}\n onChange={handleCalendarChange}\n minDate={minDate}\n maxDate={today}\n sx={styles.calendar}\n slots={{ day: RangeDay }}\n slotProps={slotProps}\n />\n </Box>\n </Box>\n </Box>\n </LocalizationProvider>\n );\n};\n\nexport default DateRangePicker;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n alignItems: 'center',\n gap: (theme) => theme.spacing(1),\n },\n label: {\n fontSize: '0.875rem',\n opacity: 0.8,\n },\n select: {\n minWidth: 200,\n },\n menuItem: {\n padding: (theme) => theme.spacing(0.5, 1),\n },\n listItemText: {\n '& .MuiListItemText-primary': {\n fontSize: '0.875rem',\n },\n '& .MuiListItemText-secondary': {\n opacity: 0.7,\n fontSize: '0.75rem',\n color: (theme) => theme.palette.text.primary,\n },\n },\n};\n\nexport default styles;\n","import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Box, FormControl, InputLabel, ListItemText, MenuItem, Select, SelectChangeEvent } from '@mui/material';\nimport { Checkbox } from 'andoncloud-sdk';\n\nimport { Shift } from '../../../graphql-sdk';\nimport { getShiftTimeRange } from '../../../helpers/periods';\n\nimport styles from './styles';\n\nexport type ShiftSelectorProps = {\n shifts: Shift[];\n selectedShiftIds: string[];\n onChange: (shiftIds: string[]) => void;\n};\n\nconst ShiftSelector: React.FC<ShiftSelectorProps> = ({ shifts, selectedShiftIds, onChange }) => {\n const { t } = useTranslation();\n\n const handleChange = useCallback(\n (event: SelectChangeEvent<string[]>) => {\n const value = event.target.value;\n onChange(typeof value === 'string' ? value.split(',') : value);\n },\n [onChange],\n );\n\n const renderValue = useCallback(\n (selected: string[]) => {\n if (selected.length === 0) {\n return t('dashboardFilters.shifts.allShifts');\n }\n const selectedNames = shifts.filter((s) => selected.includes(s.id)).map((s) => s.name);\n return selectedNames.join(', ');\n },\n [shifts, t],\n );\n\n return (\n <Box sx={styles.container}>\n <FormControl size=\"small\" sx={styles.select} data-testid=\"dashboard-filters.shift-selector\">\n <InputLabel shrink>{t('dashboardFilters.shifts.label')}</InputLabel>\n <Select<string[]>\n multiple\n displayEmpty\n value={selectedShiftIds}\n onChange={handleChange}\n renderValue={renderValue}\n label={t('dashboardFilters.shifts.label')}\n >\n {shifts.map((shift) => (\n <MenuItem key={shift.id} value={shift.id} sx={styles.menuItem}>\n <Checkbox checked={selectedShiftIds.includes(shift.id)} />\n <ListItemText primary={shift.name} secondary={`(${getShiftTimeRange(shift)})`} sx={styles.listItemText} />\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Box>\n );\n};\n\nexport default ShiftSelector;\n","import { useEffect, useMemo, useRef, useState } from 'react';\n\nimport { type Shift, DayType } from '../../graphql-sdk';\nimport { getNextBoundary, periods, resolveShiftIdForPeriod } from '../../helpers/periods';\n\nimport type { CalculateContext, DateRange, FilterValues, PeriodDefinition, PeriodId } from './types';\n\ntype CoreState = {\n dayType: DayType;\n selectedPeriodId?: PeriodId;\n customDateRange: DateRange | null;\n shiftIds: string[];\n};\n\nconst getDefaultDateRange = (): DateRange => {\n const today = new Date().toISOString().slice(0, 10);\n\n return { from: `${today}T00:00:00`, to: `${today}T23:59:59` };\n};\n\nconst buildCoreState = (values: FilterValues | undefined, shifts: Shift[]): CoreState => {\n if (!values) {\n const shiftId = shifts?.length ? resolveShiftIdForPeriod('current_shift', shifts) : null;\n\n return {\n dayType: DayType.Production,\n selectedPeriodId: 'current_shift',\n customDateRange: null,\n shiftIds: shiftId ? [shiftId] : [],\n };\n }\n\n const shiftId =\n values.selectedPeriodId && shifts?.length ? resolveShiftIdForPeriod(values.selectedPeriodId, shifts) : null;\n\n return {\n dayType: values.dayType,\n selectedPeriodId: values.selectedPeriodId,\n customDateRange: values.selectedPeriodId ? null : values.dateRange,\n shiftIds: shiftId ? [shiftId] : values.shiftIds,\n };\n};\n\nconst computeDateRange = (state: CoreState, shifts: Shift[]): DateRange => {\n if (!state.selectedPeriodId) return state.customDateRange ?? getDefaultDateRange();\n\n const period = periods.find((p) => p.id === state.selectedPeriodId);\n if (!period) return state.customDateRange ?? getDefaultDateRange();\n\n return period.calculate({\n dayType: state.dayType,\n shifts,\n selectedShiftIds: state.shiftIds,\n });\n};\n\nexport type DashboardFiltersHandlers = {\n handleDayTypeChange: (dayType: DayType) => void;\n handleShiftChange: (shiftIds: string[]) => void;\n handleDateRangeChange: (dateRange: DateRange) => void;\n handlePeriodSelect: (period: PeriodDefinition, dateRange: DateRange) => void;\n};\n\nexport const useDashboardFilters = (\n savedFilters: FilterValues | undefined,\n shifts: Shift[],\n onChange: (values: FilterValues) => void,\n): { filterValues: FilterValues; selectedPeriodId: PeriodId | undefined; handlers: DashboardFiltersHandlers } => {\n // -- Local state --\n const [state, setState] = useState<CoreState>(() => buildCoreState(savedFilters, shifts));\n const [boundaryTick, setBoundaryTick] = useState(0);\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n // -- Sync from saved filters --\n useEffect(() => {\n if (!savedFilters) return;\n\n setState((prev) => {\n const next = buildCoreState(savedFilters, shifts);\n\n return JSON.stringify(next) === JSON.stringify(prev) ? prev : next;\n });\n }, [savedFilters, shifts]);\n\n // -- Derived dateRange --\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const dateRange = useMemo(() => computeDateRange(state, shifts), [state, shifts, boundaryTick]);\n\n // -- Composed filter values --\n const filterValues: FilterValues = useMemo(\n () => ({\n dayType: state.dayType,\n selectedPeriodId: state.selectedPeriodId,\n dateRange,\n shiftIds: state.shiftIds,\n }),\n [state.dayType, state.selectedPeriodId, dateRange, state.shiftIds],\n );\n\n // -- Emit onChange on every filterValues change (includes initial) --\n const lastEmittedRef = useRef<string>('');\n\n useEffect(() => {\n const serialized = JSON.stringify(filterValues);\n if (serialized === lastEmittedRef.current) return;\n\n lastEmittedRef.current = serialized;\n onChangeRef.current(filterValues);\n }, [filterValues]);\n\n // -- Boundary detection --\n useEffect(() => {\n if (!state.selectedPeriodId) return;\n\n const ctx: CalculateContext = {\n dayType: state.dayType,\n shifts,\n selectedShiftIds: state.shiftIds,\n };\n\n const boundary = getNextBoundary(state.selectedPeriodId, ctx);\n if (!boundary) return;\n\n const delay = boundary.getTime() - Date.now();\n\n const recalculate = () => {\n const shiftId = resolveShiftIdForPeriod(state.selectedPeriodId!, shifts);\n const newShiftIds = shiftId ? [shiftId] : state.shiftIds;\n\n setState((prev) => ({ ...prev, shiftIds: newShiftIds }));\n setBoundaryTick((n) => n + 1);\n };\n\n if (delay <= 0) {\n recalculate();\n\n return;\n }\n\n const timer = setTimeout(recalculate, delay);\n\n return () => clearTimeout(timer);\n }, [state.selectedPeriodId, state.dayType, state.shiftIds, shifts]);\n\n // -- Handlers --\n const handlers: DashboardFiltersHandlers = useMemo(() => {\n return {\n handleDayTypeChange: (dayType: DayType) => {\n setState((prev) => ({ ...prev, dayType }));\n },\n\n handleShiftChange: (shiftIds: string[]) => {\n setState((prev) => ({ ...prev, shiftIds }));\n },\n\n handleDateRangeChange: (newDateRange: DateRange) => {\n setState((prev) => ({ ...prev, selectedPeriodId: undefined, shiftIds: [], customDateRange: newDateRange }));\n },\n\n handlePeriodSelect: (period: PeriodDefinition, periodDateRange: DateRange) => {\n setState((prev) => {\n const shiftId = resolveShiftIdForPeriod(period.id, shifts);\n const shiftIds = shiftId ? [shiftId] : [];\n\n return { ...prev, selectedPeriodId: period.id, shiftIds, customDateRange: periodDateRange };\n });\n },\n };\n }, [shifts]);\n\n return { filterValues, selectedPeriodId: state.selectedPeriodId, handlers };\n};\n","import { SxProps, Theme } from '@mui/material/styles';\n\nconst styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n flexDirection: 'column',\n gap: (theme) => theme.spacing(2),\n },\n dateField: {\n cursor: 'pointer',\n minWidth: 240,\n '& .MuiInputBase-input': {\n cursor: 'pointer',\n },\n '& .MuiInputAdornment-root': {\n color: (theme) => theme.palette.text.primary,\n },\n },\n popover: {\n '& .MuiPopover-paper': {\n borderRadius: '6px',\n marginTop: (theme) => theme.spacing(1),\n backgroundColor: (theme) => theme.palette.gray.main,\n },\n },\n popoverContent: {\n display: 'flex',\n flexDirection: 'column',\n gap: (theme) => theme.spacing(2),\n padding: (theme) => theme.spacing(2),\n },\n};\n\nexport default styles;\n","import { useCallback, useMemo, useRef, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport CalendarTodayIcon from '@mui/icons-material/CalendarToday';\nimport { Box, InputAdornment, Popover, Stack, TextField } from '@mui/material';\nimport { registerTranslations, useAccess } from 'andoncloud-sdk';\nimport dayjs from 'dayjs';\n\nimport { resolveInitialValues } from '@/helpers/filters';\nimport locales from '@/locales';\n\nimport AccessDeniedModal from './AccessDeniedModal';\nimport DateRangePicker from './DateRangePicker';\nimport ShiftSelector from './ShiftSelector';\nimport type { DashboardFiltersProps, DateRange, PeriodDefinition } from './types';\nimport { useDashboardFilters } from './useDashboardFilters';\n\nimport styles from './styles';\n\nregisterTranslations(locales);\n\nconst FEATURE_KEY = 'feature.dashboard_extended_date_ranges';\n\nconst DashboardFilters: React.FC<DashboardFiltersProps> = ({\n initialValues,\n onChange,\n shifts = [],\n onFeatureRequest,\n}) => {\n // -- SDK / framework hooks --\n const { hasAccess, accessState, buttons, cooldownInfo, features } = useAccess([FEATURE_KEY]);\n\n // -- Local state --\n const [accessModalOpen, setAccessModalOpen] = useState(false);\n const [popoverOpen, setPopoverOpen] = useState(false);\n const dateFieldRef = useRef<HTMLDivElement>(null);\n\n // -- Data layer --\n const resolvedInitialValues = useMemo(() => resolveInitialValues(initialValues), [initialValues]);\n const { filterValues, selectedPeriodId, handlers } = useDashboardFilters(resolvedInitialValues, shifts, onChange);\n\n // -- Translation --\n const { t } = useTranslation();\n\n // derived\n const daysSinceExpiry = useMemo(() => {\n const feature = features.find((f) => f.featureKey === FEATURE_KEY);\n\n return feature?.daysSinceExpiry ?? null;\n }, [features]);\n\n const filteredButtons = useMemo(() => buttons.filter((b) => b.action !== 'start_trial'), [buttons]);\n\n // handlers\n const handlePeriodSelect = useCallback(\n (period: PeriodDefinition, dateRange: DateRange) => {\n if (period.needAccess && !hasAccess) {\n setAccessModalOpen(true);\n\n return;\n }\n\n handlers.handlePeriodSelect(period, dateRange);\n },\n [hasAccess, handlers],\n );\n\n const handlePopoverOpen = useCallback(() => setPopoverOpen(true), []);\n const handlePopoverClose = useCallback(() => setPopoverOpen(false), []);\n const handleAccessModalClose = useCallback(() => setAccessModalOpen(false), []);\n const handleAccessDenied = useCallback(() => setAccessModalOpen(true), []);\n\n const formatDateRange = (range: DateRange) => {\n const from = dayjs(range.from).format('YYYY-MM-DD');\n const to = dayjs(range.to).format('YYYY-MM-DD');\n\n return from === to ? from : `${from} - ${to}`;\n };\n\n return (\n <Box sx={styles.container}>\n <Stack direction=\"row\" spacing={2} alignItems=\"center\">\n <TextField\n ref={dateFieldRef}\n label={t('dashboardFilters.dateRange.label')}\n value={formatDateRange(filterValues.dateRange)}\n onClick={handlePopoverOpen}\n size=\"small\"\n InputProps={{\n readOnly: true,\n startAdornment: (\n <InputAdornment position=\"start\">\n <CalendarTodayIcon sx={{ fontSize: 16 }} />\n </InputAdornment>\n ),\n }}\n sx={styles.dateField}\n data-testid=\"dashboard-filters.date-range-input\"\n />\n <ShiftSelector shifts={shifts} selectedShiftIds={filterValues.shiftIds} onChange={handlers.handleShiftChange} />\n </Stack>\n\n <Popover\n open={popoverOpen}\n anchorEl={dateFieldRef.current}\n onClose={handlePopoverClose}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'left' }}\n transformOrigin={{ vertical: 'top', horizontal: 'left' }}\n sx={styles.popover}\n data-testid=\"dashboard-filters.date-popover\"\n >\n <Box sx={styles.popoverContent}>\n <DateRangePicker\n dateRange={filterValues.dateRange}\n dayType={filterValues.dayType}\n shifts={shifts}\n selectedShiftIds={filterValues.shiftIds}\n hasAccess={hasAccess}\n selectedPeriodId={selectedPeriodId}\n onDayTypeChange={handlers.handleDayTypeChange}\n onDateRangeChange={handlers.handleDateRangeChange}\n onPeriodSelect={handlePeriodSelect}\n onAccessDenied={handleAccessDenied}\n />\n </Box>\n </Popover>\n\n <AccessDeniedModal\n open={accessModalOpen}\n onClose={handleAccessModalClose}\n accessState={accessState}\n buttons={filteredButtons}\n daysSinceExpiry={daysSinceExpiry}\n cooldownInfo={cooldownInfo}\n onFeatureRequest={onFeatureRequest}\n />\n </Box>\n );\n};\n\nexport default DashboardFilters;\n","const bgPattern = `data:image/svg+xml,${encodeURIComponent(`<svg width=\"297\" height=\"403\" viewBox=\"0 0 297 403\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M938.46 -10H921.49L-10 921.49V938.46L938.46 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M904.52 -10H887.54L-10 887.54V904.52L904.52 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M870.58 -10H853.6L-10 853.6V870.58L870.58 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1006.34 -10H989.37L-10 989.37V1006.34L1006.34 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M972.4 -10H955.43L-10 955.43V972.4L972.4 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M836.63 -10H819.66L-10 819.66V836.63L836.63 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M768.75 -10H751.78L-10 751.78V768.75L768.75 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1040.28 -10H1023.31L-10 1023.31V1040.28L1040.28 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M802.69 -10H785.72L-10 785.72V802.69L802.69 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M734.81 -10H717.84L-10 717.84V734.81L734.81 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1447.57 -10H1430.6L350.6 1070H367.57L1447.57 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1379.69 -10H1362.72L282.72 1070H299.69L1379.69 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1311.81 -10H1294.84L214.84 1070H231.81L1311.81 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1345.75 -10H1328.78L248.78 1070H265.75L1345.75 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M700.87 -10H683.9L-10 683.9V700.87L700.87 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1413.63 -10H1396.66L316.66 1070H333.63L1413.63 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1142.1 -10H1125.13L45.13 1070H62.1L1142.1 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1108.16 -10H1091.19L11.19 1070H28.16L1108.16 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1176.04 -10H1159.07L79.07 1070H96.04L1176.04 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1243.93 -10H1226.96L146.96 1070H163.93L1243.93 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1209.99 -10H1193.02L113.02 1070H129.99L1209.99 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1277.87 -10H1260.9L180.9 1070H197.87L1277.87 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M429.34 -10H412.37L-10 412.37V429.34L429.34 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M157.81 -10H140.84L-10 140.84V157.81L157.81 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M191.75 -10H174.78L-10 174.78V191.75L191.75 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M123.87 -10H106.9L-10 106.9V123.87L123.87 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M225.69 -10H208.72L-10 208.72V225.69L225.69 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M259.63 -10H242.66L-10 242.66V259.63L259.63 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1057.25 -10L-10 1057.25V1070H-5.78L1074.22 -10H1057.25Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M293.57 -10H276.61L-10 276.61V293.57L293.57 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M22.05 -10H5.08L-10 5.08V22.05L22.05 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M55.99 -10H39.02L-10 39.02V55.99L55.99 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M89.93 -10H72.96L-10 72.96V89.93L89.93 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1481.52 -10H1464.54L384.54 1070H401.51L1481.52 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M565.1 -10H548.13L-10 548.13V565.1L565.1 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M497.22 -10H480.25L-10 480.25V497.22L497.22 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M327.52 -10H310.55L-10 310.55V327.52L327.52 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M632.99 -10H616.02L-10 616.02V632.99L632.99 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M599.04 -10H582.08L-10 582.08V599.04L599.04 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M531.16 -10H514.19L-10 514.19V531.16L531.16 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M463.28 -10H446.31L-10 446.31V463.28L463.28 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M361.46 -10H344.49L-10 344.49V361.46L361.46 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M395.4 -10H378.43L-10 378.43V395.4L395.4 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M666.93 -10H649.96L-10 649.96V666.93L666.93 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 410.04V393.07L1233.07 1070H1250.04L1910 410.04Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 342.16V325.19L1165.19 1070H1182.16L1910 342.16Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 579.75V562.78L1402.78 1070H1419.75L1910 579.75Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 613.69V596.72L1436.72 1070H1453.69L1910 613.69Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 681.57V664.6L1504.6 1070H1521.57L1910 681.57Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 647.63V630.66L1470.66 1070H1487.63L1910 647.63Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 376.1V359.13L1199.13 1070H1216.1L1910 376.1Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 443.98V427.01L1267.01 1070H1283.98L1910 443.98Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 511.87V494.9L1334.9 1070H1351.87L1910 511.87Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 715.51V698.54L1538.54 1070H1555.51L1910 715.51Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 477.93V460.95L1300.95 1070H1317.92L1910 477.93Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 545.81V528.84L1368.84 1070H1385.81L1910 545.81Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 953.1V936.13L1776.13 1070H1793.1L1910 953.1Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 919.16V902.19L1742.19 1070H1759.16L1910 919.16Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 987.04V970.07L1810.07 1070H1827.04L1910 987.04Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 749.45V732.48L1572.48 1070H1589.45L1910 749.45Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 1054.92V1037.95L1877.95 1070H1894.92L1910 1054.92Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 1020.98V1004.01L1844.01 1070H1860.98L1910 1020.98Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 783.39V766.42L1606.42 1070H1623.39L1910 783.39Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 817.34V800.37L1640.37 1070H1657.34L1910 817.34Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 851.28V834.31L1674.31 1070H1691.28L1910 851.28Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 885.22V868.25L1708.25 1070H1725.22L1910 885.22Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 308.22V291.25L1131.25 1070H1148.22L1910 308.22Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1719.1 -10H1702.13L622.13 1070H639.1L1719.1 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1753.04 -10H1736.07L656.07 1070H673.04L1753.04 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1820.93 -10H1803.96L723.96 1070H740.93L1820.93 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1786.98 -10H1770.01L690.01 1070H706.99L1786.98 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1854.87 -10H1837.9L757.9 1070H774.87L1854.87 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1685.16 -10H1668.19L588.19 1070H605.16L1685.16 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1583.34 -10H1566.37L486.37 1070H503.34L1583.34 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1549.4 -10H1532.43L452.43 1070H469.4L1549.4 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1651.22 -10H1634.25L554.25 1070H571.22L1651.22 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1617.28 -10H1600.31L520.31 1070H537.28L1617.28 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 36.69V19.72L859.72 1070H876.69L1910 36.69Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 206.4V189.43L1029.42 1070H1046.4L1910 206.4Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 172.46V155.48L995.48 1070H1012.46L1910 172.46Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 240.34V223.37L1063.37 1070H1080.34L1910 240.34Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 138.51V121.54L961.54 1070H978.51L1910 138.51Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1888.81 -10H1871.84L791.84 1070H808.81L1888.81 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 274.28V257.31L1097.31 1070H1114.28L1910 274.28Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1515.46 -10H1498.48L418.49 1070H435.46L1515.46 -10Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 2.75V-10H1905.78L825.78 1070H842.75L1910 2.75Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 70.63V53.66L893.66 1070H910.63L1910 70.63Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n<path d=\"M1910 104.57V87.6L927.6 1070H944.57L1910 104.57Z\" fill=\"black\" fill-opacity=\"0.1\"/>\n</svg>`)}`;\n\nexport default bgPattern;\n","import { lighten } from '@mui/material';\nimport { keyframes, SxProps, Theme } from '@mui/system';\n\nimport bgPattern from '../../assets/bg-pattern';\n\nconst CARD_TEXT_COLOR = '#090B0E';\n\ninterface StylesProps {\n card: {\n rounded?: boolean;\n };\n cardOverlay: {\n background: string;\n };\n showBgPattern: boolean;\n backgroundColor: string;\n animateBackgroundColor?: boolean;\n}\n\nexport const hexToRgba = (hex: string, alpha: number = 1): string => {\n const hexWithoutHash = hex.replace('#', '');\n const bigint = parseInt(hexWithoutHash, 16);\n\n const r = (bigint >> 16) & 255;\n const g = (bigint >> 8) & 255;\n const b = bigint & 255;\n\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n};\n\nconst getPulseAnimation = (bgColor: string) => keyframes`\n 0% {\n background: ${hexToRgba(bgColor, 0.5)};\n }\n\n 50% {\n background: ${hexToRgba(bgColor, 1)};\n }\n\n 100% {\n background: ${hexToRgba(bgColor, 0.5)};\n }\n`;\n\nconst makeStyles = (props: StylesProps): Record<string, SxProps<Theme>> => ({\n card: {\n position: 'relative',\n width: '100%',\n height: '100%',\n ...(props.showBgPattern && {\n mixBlendMode: 'hard-light',\n background: `url(${bgPattern}), linear-gradient(329.66deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%)`,\n backgroundSize: 'cover',\n }),\n ...(props.card.rounded\n ? {\n borderRadius: '4px',\n }\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n }),\n },\n cardOverlay: {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n zIndex: -1,\n ...(props.showBgPattern && {\n mixBlendMode: 'hard-light',\n }),\n ...(props.card.rounded\n ? {\n borderRadius: '4px',\n }\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n }),\n ...props.cardOverlay,\n animation: props.animateBackgroundColor ? `${getPulseAnimation(props.backgroundColor)} 3s infinite` : 'none',\n },\n cardHeader: {\n height: '3em',\n color: CARD_TEXT_COLOR,\n borderBottom: '1px solid rgba(0, 0, 0, 0.1)',\n background: 'rgba(0, 0, 0, 0.05)',\n '& span': {\n lineHeight: '3em',\n fontSize: '1em',\n fontWeight: 500,\n },\n },\n cardContent: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n height: '80%',\n minWidth: 'auto',\n minHeight: 'auto',\n maxWidth: 'none',\n background: 'transparent',\n '& > img': {\n flexBasis: '25%',\n minWidth: '125px',\n maxWidth: '25%',\n },\n },\n cardLabel: {\n width: '100%',\n lineHeight: '2.5em',\n fontSize: '1.8em',\n fontWeight: 700,\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textAlign: 'center',\n textOverflow: 'ellipsis',\n color: CARD_TEXT_COLOR,\n },\n cardValue: {\n lineHeight: '1.2em',\n textAlign: 'center',\n fontSize: '1.6em',\n fontWeight: 700,\n color: lighten(CARD_TEXT_COLOR, 0.15),\n },\n cardExtra: {\n lineHeight: '4em',\n textAlign: 'center',\n fontSize: '1em',\n fontWeight: 600,\n color: CARD_TEXT_COLOR,\n },\n});\n\nexport default makeStyles;\n","import { Trans, useTranslation } from 'react-i18next';\nimport TextTruncate from 'react-text-truncate';\n\nimport { Box, Card, CardContent, CardHeader, CardProps, Typography } from '@mui/material';\nimport dayjs from 'dayjs';\nimport durationPlugin from 'dayjs/plugin/duration';\n\nimport { AndonLightColor, MetricUnitEnum, MetricValue } from '@/graphql-sdk';\n\nimport makeStyles from './styles';\n\ndayjs.extend(durationPlugin);\n\ninterface MetricCardProps extends CardProps {\n title: string;\n metricLabel: React.ReactNode;\n metricValue?: MetricValue;\n progressValue?: MetricValue;\n extraValue?: React.ReactNode;\n animateBackgroundColor?: boolean;\n rounded?: boolean;\n}\n\nconst formatFloat = (value: number) => {\n if (Number.isInteger(value)) return value.toString();\n\n return value.toFixed(1);\n};\n\nconst MetricCard: React.FC<MetricCardProps> = ({\n title,\n metricLabel,\n metricValue,\n progressValue,\n extraValue,\n animateBackgroundColor,\n rounded,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const formatValue = (metricValue: MetricValue) => {\n const value = metricValue.textValue;\n\n if (!value) return '';\n\n switch (metricValue.unit) {\n case MetricUnitEnum.Duration: {\n const duration = dayjs.duration(Number(value), 'seconds');\n return `${Math.floor(duration.asMinutes())}m ${duration.seconds()}s`;\n }\n case MetricUnitEnum.Percent:\n return `${formatFloat(parseFloat(value) * 100)}%`;\n case MetricUnitEnum.Round:\n return formatFloat(parseFloat(value));\n default:\n return value;\n }\n };\n\n const getStatusColor = () => progressValue?.statusColor ?? metricValue?.statusColor;\n\n const getBackgroundColor = () => {\n const statusColor = getStatusColor();\n\n if (statusColor) {\n switch (statusColor) {\n case AndonLightColor.Green:\n return '#32D74B';\n case AndonLightColor.Yellow:\n return '#FFC12F';\n case AndonLightColor.Red:\n return '#FF3B2F';\n default:\n return '#BBBBBBBF';\n }\n }\n return '#FFFFFFBF';\n };\n\n const getBackground = () => {\n const statusColor = getStatusColor();\n\n if (statusColor) {\n switch (statusColor) {\n case AndonLightColor.Green:\n return 'linear-gradient(180deg, #31BF59 0%, #32D74B 100%)';\n case AndonLightColor.Yellow:\n return 'linear-gradient(360deg, #FFD60A 0%, #FFC12F 100%)';\n case AndonLightColor.Red:\n return 'linear-gradient(0deg, #F05C53 0%, #FF3B2F 100%)';\n default:\n return 'rgba(187, 187, 187, 0.75)';\n }\n }\n return 'rgba(255, 255, 255, 0.75)';\n };\n const styles = makeStyles({\n card: { rounded },\n cardOverlay: { background: getBackground() },\n showBgPattern: true,\n backgroundColor: getBackgroundColor(),\n animateBackgroundColor,\n });\n\n return (\n <Card sx={styles.card} {...props}>\n <Box sx={styles.cardOverlay} />\n <CardHeader title={<TextTruncate line={1} text={title} />} sx={styles.cardHeader} />\n <CardContent sx={styles.cardContent}>\n <Typography sx={styles.cardLabel}>{metricLabel}</Typography>\n <Typography sx={styles.cardValue}>\n {metricValue ? formatValue(metricValue) : <Trans t={t}>No value for the selected metric</Trans>}\n </Typography>\n {extraValue && <Typography sx={styles.cardExtra}>{extraValue}</Typography>}\n </CardContent>\n </Card>\n );\n};\n\nexport default MetricCard;\n","import { MouseEventHandler } from 'react';\nimport Select, {\n components,\n MultiValue,\n MultiValueGenericProps,\n MultiValueProps,\n OnChangeValue,\n Options,\n} from 'react-select';\n\nimport { DndContext, DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { arrayMoveImmutable } from 'array-move';\n\nexport interface Option {\n label: string;\n value: string;\n}\n\ninterface SortableSelectProps {\n placeholder: string;\n options: Options<Option>;\n selected: Array<Option['value']>;\n onChange: (selected: OnChangeValue<Option['value'], true>) => void;\n}\n\nconst SortableMultiValueContainer = (props: MultiValueProps<Option>) => {\n const { attributes, listeners, setNodeRef, transform, transition } = useSortable({ id: props.data.value });\n\n const style = {\n display: 'flex',\n transform: CSS.Transform.toString(transform),\n transition,\n };\n\n return (\n <div\n ref={setNodeRef}\n style={style}\n {...attributes}\n {...listeners}\n onPointerDown={(e) => {\n if (!(e.target instanceof HTMLElement)) return;\n\n // Stop drag event when clicking on remove button\n if (['svg', 'path'].includes(e.target.nodeName)) {\n e.preventDefault();\n e.stopPropagation();\n }\n listeners?.onPointerDown(e);\n }}\n >\n <components.MultiValueContainer {...props} />\n </div>\n );\n};\n\nconst SortableMultiValueLabel = (props: MultiValueGenericProps) => {\n const onMouseDown: MouseEventHandler<HTMLDivElement> = (e) => {\n e.preventDefault();\n e.stopPropagation();\n };\n const style = {\n cursor: 'grab',\n };\n const innerProps = { ...props.innerProps, style, onMouseDown };\n\n return <components.MultiValueLabel {...props} innerProps={innerProps} />;\n};\n\nconst SortableSelect: React.FC<SortableSelectProps> = ({ placeholder, options, selected, onChange }) => {\n const onSortEnd = (event: DragEndEvent) => {\n const { active, over } = event;\n\n if (active.id !== over?.id) {\n const oldIndex = selected.findIndex((opt) => opt === active.id);\n const newIndex = selected.findIndex((opt) => opt === over?.id);\n\n onChange(arrayMoveImmutable(selected, oldIndex, newIndex));\n }\n };\n\n return (\n <Select\n placeholder={placeholder}\n isMulti\n options={options}\n value={selected.map((value) => options.find((option) => option.value === value))}\n onChange={(selected) => onChange([...((selected as MultiValue<Option>) || [])].map((item: Option) => item.value))}\n closeMenuOnSelect={false}\n components={{\n MultiValueContainer: SortableMultiValueContainer,\n MultiValueLabel: SortableMultiValueLabel,\n ValueContainer: (props) => (\n <DndContext onDragEnd={onSortEnd}>\n <SortableContext items={selected}>{props.children}</SortableContext>\n </DndContext>\n ),\n }}\n styles={{\n control: (baseStyles, state) => ({\n ...baseStyles,\n padding: '6px 0 6px 8px',\n borderColor: 'rgba(255, 255, 255, 0.15)',\n background: '#1C1F25',\n ...(state.isFocused && {\n borderColor: '#4E5A67',\n boxShadow: 'none',\n }),\n '&:hover': {\n borderColor: '#4E5A67',\n boxShadow: 'none',\n },\n }),\n menu: (baseStyles) => ({\n ...baseStyles,\n background: '#1C1F25',\n }),\n option: (baseStyles, state) => ({\n ...baseStyles,\n background: state.isFocused ? '#2A2E34' : '#1C1F25',\n }),\n }}\n />\n );\n};\n\nexport default SortableSelect;\n","const DragIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path\n d=\"M2.46147 10.5737C2.99531 11.0586 3.63181 10.6829 3.63181 10.0478V8.74325H7.26604V12.3699H5.94512C5.30862 12.3699 4.93904 13.0119 5.41813 13.5378L7.42345 15.7234C7.75197 16.0922 8.25159 16.0922 8.58011 15.7234L10.5786 13.5447C11.0645 13.0119 10.6949 12.3699 10.0516 12.3699H8.74437V8.74325H12.3649V10.0478C12.3649 10.6829 13.0083 11.0586 13.5421 10.5737L15.7254 8.57933C16.095 8.24467 16.0881 7.74609 15.7254 7.42508L13.5353 5.42393C13.0083 4.94584 12.3649 5.31465 12.3649 5.94983V7.26117H8.74437V3.62767H10.0516C10.6949 3.62767 11.0645 2.98566 10.5786 2.45293L8.57327 0.267369C8.23791 -0.101445 7.73828 -0.0809553 7.41661 0.281028L5.41813 2.46659C4.93904 2.98566 5.30862 3.62767 5.94512 3.62767H7.26604V7.26117H3.63181V5.94983C3.63181 5.31465 2.98846 4.94584 2.46831 5.42393L0.278192 7.41825C-0.0777021 7.73926 -0.105079 8.23784 0.271348 8.5725L2.46147 10.5737Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nexport default DragIcon;\n","import ActionCable from 'actioncable';\nimport { ExecutionResult } from 'graphql/execution/execute';\nimport isEmpty from 'lodash.isempty';\nimport { Observable } from 'rxjs';\nimport { OperationOptions } from 'subscriptions-transport-ws';\n\ntype DisconnectCallback = () => void;\n\nconst CHANNEL_ID_RANGE = 100_000;\n\nclass ActionCableClient {\n private wsURL: string;\n\n private cable: ActionCable.Cable | null = null;\n\n private subscriptions: Map<string, ActionCable.Channel> = new Map<string, ActionCable.Channel>();\n\n private onDisconnect?: DisconnectCallback;\n\n constructor(url: string, onDisconnect?: DisconnectCallback) {\n this.wsURL = url;\n this.onDisconnect = onDisconnect;\n }\n\n private addSubscription = (id: string, subscription: ActionCable.Channel) => {\n this.subscriptions.set(id, subscription);\n };\n\n public connect(token: string, lang: string): void {\n this.cable = ActionCable.createConsumer(`${this.wsURL}?token=${token}&lang=${lang}`);\n }\n\n public disconnect(): void {\n if (!this.cable) return;\n\n this.subscriptions.forEach((channel) => {\n channel.unsubscribe();\n });\n this.subscriptions.clear();\n\n this.cable.disconnect();\n this.cable = null;\n }\n\n public request(request: OperationOptions): Observable<ExecutionResult> {\n const { cable, subscriptions, addSubscription, onDisconnect } = this;\n\n return new Observable((observer) => {\n if (cable) {\n const subscriptionId = (request.variables as Record<string, string>)?.id || 'company';\n\n if (!subscriptions.has(subscriptionId)) {\n const channel = cable.subscriptions.create(\n {\n channel: 'GraphqlChannel',\n channelId: Math.round(Date.now() + Math.random() * CHANNEL_ID_RANGE).toString(16),\n },\n {\n connected() {\n this.perform('execute', request);\n },\n disconnected() {\n if (onDisconnect) onDisconnect();\n },\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n received(payload: any) {\n if (!payload.more) {\n if (observer.complete) {\n observer.complete();\n }\n } else if (payload.result.errors) {\n if (observer.error) {\n observer.error(payload.result.errors[0]);\n }\n } else if (payload.result.data) {\n if (observer.next) {\n if (!isEmpty(payload.result.data)) {\n observer.next(payload.result);\n }\n }\n }\n },\n },\n );\n addSubscription(subscriptionId, channel);\n }\n }\n });\n }\n\n public hasSubscription(id: string): boolean {\n return this.subscriptions.has(id);\n }\n}\n\nexport default ActionCableClient;\n","import { OperationOptions } from 'subscriptions-transport-ws';\n\nimport ActionCableClient from './actioncable-client';\n\ninterface ObjMap<T> {\n [key: string]: T;\n}\n\ninterface SubscriptionEntry<T = unknown> {\n query: OperationOptions['query'];\n variables?: OperationOptions['variables'];\n onData?: (item: T) => void;\n onError: (error: Error) => void;\n}\n\nlet nextSubscriptionId = 0;\n\nclass GraphqlWsClient {\n private actionCableClient: ActionCableClient | null = null;\n\n private registry: Map<string, SubscriptionEntry> = new Map();\n\n private activeRxSubscriptions: Map<string, { unsubscribe: () => void }> = new Map();\n\n constructor(url: string, token: string, lang: string, onDisconnect?: () => void) {\n this.actionCableClient = new ActionCableClient(url, onDisconnect);\n this.actionCableClient.connect(token, lang);\n }\n\n public subscribe<T = unknown>(\n query: OperationOptions['query'],\n variables?: OperationOptions['variables'],\n onData?: (item: T) => void,\n onError: (error: Error) => void = (error) => {\n throw error;\n },\n ) {\n const key = String(++nextSubscriptionId);\n\n this.registry.set(key, {\n query,\n variables,\n onData: onData as ((item: unknown) => void) | undefined,\n onError,\n });\n\n const rxSub = this.subscribeToActionCable<T>(query, variables, onData, onError);\n this.activeRxSubscriptions.set(key, rxSub);\n\n return () => {\n rxSub.unsubscribe();\n this.activeRxSubscriptions.delete(key);\n this.registry.delete(key);\n };\n }\n\n public disconnect(): void {\n this.activeRxSubscriptions.forEach((sub) => sub.unsubscribe());\n this.activeRxSubscriptions.clear();\n this.registry.clear();\n\n this.actionCableClient?.disconnect();\n this.actionCableClient = null;\n }\n\n public getActiveSubscriptions(): Map<string, SubscriptionEntry> {\n return new Map(this.registry);\n }\n\n public resubscribe(): void {\n this.activeRxSubscriptions.forEach((sub) => sub.unsubscribe());\n this.activeRxSubscriptions.clear();\n\n this.registry.forEach((entry, key) => {\n const rxSub = this.subscribeToActionCable(entry.query, entry.variables, entry.onData, entry.onError);\n this.activeRxSubscriptions.set(key, rxSub);\n });\n }\n\n private subscribeToActionCable<T = unknown>(\n query: OperationOptions['query'],\n variables: OperationOptions['variables'],\n onData?: (item: T) => void,\n onError: (error: Error) => void = (error) => {\n throw error;\n },\n ) {\n const getFirstValue = (data: ObjMap<unknown>): T => {\n const keys = Object.keys(data);\n\n if (keys.length !== 1) throw new Error(`Expected exactly one response key, got: ${keys.join(', ')}`);\n\n return data[keys[0]] as T;\n };\n\n if (!this.actionCableClient) {\n console.warn('[dashboard-toolkit] WebSocket client not available — skipping subscription');\n return { unsubscribe: () => {} };\n }\n\n const subscription = this.actionCableClient.request({ query, variables }).subscribe({\n next({ data, errors }) {\n if (errors) {\n return onError(new Error(JSON.stringify(errors)));\n }\n if (data && onData) onData(getFirstValue(data));\n },\n });\n\n return subscription;\n }\n}\n\nexport default GraphqlWsClient;\nexport type { SubscriptionEntry };\n","import GraphqlWsClient from './utils/graphql-ws-client';\n\nexport const getGqlWsClient = (url: string, token: string, lang: string, onDisconnect?: () => void) => {\n return new GraphqlWsClient(url, token, lang, onDisconnect);\n};\n","import { GraphQLClient } from 'graphql-request';\n\nimport { getSdk } from '../graphql-sdk';\n\nexport const getGraphqlSdk = (url: string, fetch: typeof global.fetch) => {\n const graphqlClient = new GraphQLClient(url, { fetch });\n\n return getSdk(graphqlClient);\n};\n","import { useEffect, useRef, useState } from 'react';\n\nimport { fetch, useStore } from 'andoncloud-sdk';\n\nimport { Sdk } from '../graphql-sdk';\nimport { getGqlWsClient } from '../graphql-ws';\nimport { getGraphqlSdk } from '../helpers/sdk';\nimport { GqlClients } from '../types';\nimport GraphqlWsClient from '../utils/graphql-ws-client';\n\ninterface ClientsProps {\n url: string;\n wsUrl?: string;\n lang: 'pl' | 'en';\n}\n\nconst useGqlClients = ({ url, wsUrl: gqlWsUrl, lang }: ClientsProps): GqlClients => {\n // -- SDK / framework hooks --\n const { sessionStore } = useStore();\n\n // -- Local state --\n const [graphqlSdk, setGraphqlSdk] = useState<Sdk>();\n const [gqlWsClient, setGqlWsClient] = useState<GraphqlWsClient>();\n const wsClientRef = useRef<GraphqlWsClient | undefined>(undefined);\n const previousTokenRef = useRef<string>('');\n\n // -- Data layer --\n const wsUrl = gqlWsUrl || url.replace('graphql', 'cable');\n const token = sessionStore.loginStatus.authResponse?.accessToken || '';\n\n useEffect(() => {\n if (url) {\n setGraphqlSdk(getGraphqlSdk(url, fetch));\n }\n }, [url]);\n\n useEffect(() => {\n if (!url || !token) return;\n\n if (token === previousTokenRef.current) return;\n previousTokenRef.current = token;\n\n const previousClient = wsClientRef.current;\n const activeSubscriptions = previousClient?.getActiveSubscriptions();\n\n const onDisconnect = () => {\n const status = sessionStore.loginStatus.status;\n\n if (status === 'connected') {\n console.warn('[dashboard-toolkit] WebSocket disconnected unexpectedly — waiting for token refresh');\n }\n };\n\n const newClient = getGqlWsClient(wsUrl, token, lang, onDisconnect);\n wsClientRef.current = newClient;\n\n if (activeSubscriptions && activeSubscriptions.size > 0) {\n activeSubscriptions.forEach((entry) => {\n newClient.subscribe(entry.query, entry.variables, entry.onData, entry.onError);\n });\n }\n\n setGqlWsClient(newClient);\n\n if (previousClient) {\n previousClient.disconnect();\n }\n\n return () => {\n newClient.disconnect();\n wsClientRef.current = undefined;\n };\n }, [url, wsUrl, token, lang]);\n\n return { graphqlSdk, gqlWsClient };\n};\n\nexport default useGqlClients;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nexport const container: SxProps<Theme> = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n height: '100%',\n gap: (theme) => theme.spacing(2),\n padding: (theme) => theme.spacing(2),\n};\n","import { ErrorBoundary, FallbackProps } from 'react-error-boundary';\nimport { useTranslation } from 'react-i18next';\n\nimport { Box, Button, Typography } from '@mui/material';\n\nimport * as styles from './errorBoundaryStyles';\n\nconst ErrorFallback: React.FC<FallbackProps> = ({ resetErrorBoundary }) => {\n // -- Translation --\n const { t } = useTranslation();\n\n return (\n <Box sx={styles.container}>\n <Typography variant=\"body2\" color=\"text.primary\">\n {t('widgetCard.error')}\n </Typography>\n\n <Button variant=\"outlined\" size=\"small\" onClick={resetErrorBoundary} data-testid=\"widget-card.error-retry\">\n {t('widgetCard.retry')}\n </Button>\n </Box>\n );\n};\n\nconst handleError = (error: Error, info: React.ErrorInfo) => {\n console.error('[dashboard-toolkit] Widget error:', error, info);\n};\n\ninterface WidgetErrorBoundaryProps {\n children: React.ReactNode;\n}\n\nconst WidgetErrorBoundary: React.FC<WidgetErrorBoundaryProps> = ({ children }) => {\n return (\n <ErrorBoundary FallbackComponent={ErrorFallback} onError={handleError}>\n {children}\n </ErrorBoundary>\n );\n};\n\nexport { WidgetErrorBoundary };\n","const resizeIcon = `data:image/svg+xml,${encodeURIComponent(`<svg width=\"8\" height=\"8\" viewBox=\"0 0 8 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M0.602543 3.50035C0.853628 3.50035 1.04095 3.3172 1.04095 3.0624V2.77972L0.95725 1.54551L1.87789 2.51297L3.01774 3.6596C3.10143 3.74719 3.20904 3.787 3.32462 3.787C3.59563 3.787 3.79092 3.60386 3.79092 3.33313C3.79092 3.20971 3.74309 3.10221 3.6594 3.01462L2.51557 1.87198L1.54311 0.956271L2.78658 1.03988H3.09745C3.34853 1.03988 3.53983 0.856738 3.53983 0.601932C3.53983 0.347127 3.35252 0.160004 3.09745 0.160004H0.885512C0.427183 0.160004 0.160156 0.426753 0.160156 0.884607V3.0624C0.160156 3.31322 0.347473 3.50035 0.602543 3.50035ZM4.90287 7.84H7.1148C7.57313 7.84 7.84016 7.57325 7.84016 7.1154V4.93761C7.84016 4.68678 7.64885 4.49966 7.39777 4.49966C7.14668 4.49966 6.95937 4.6828 6.95937 4.93761V5.22028L7.04306 6.4545L6.12242 5.48703L4.98257 4.34041C4.89888 4.25282 4.79127 4.21301 4.67171 4.21301C4.4007 4.21301 4.20541 4.39615 4.20541 4.66688C4.20541 4.7903 4.25323 4.90178 4.34091 4.98538L5.48474 6.12803L6.4572 7.04374L5.21373 6.96013H4.90287C4.6478 6.96013 4.46048 7.14327 4.46048 7.39808C4.46048 7.65288 4.6478 7.84 4.90287 7.84Z\" fill=\"white\"/>\n</svg>`)}`;\n\nexport default resizeIcon;\n","import { SxProps, Theme } from '@mui/material/styles';\n\nimport resizeIcon from '../../assets/resize-icon';\n\nconst reducedMotion = '@media (prefers-reduced-motion: reduce)';\n\nconst styles: Record<string, SxProps<Theme>> = {\n root: {\n boxShadow: 'none',\n '& .react-resizable-handle': {\n width: '24px',\n height: '24px',\n borderRadius: '4px',\n background: (theme) => `${theme.palette.primary.main} url(${resizeIcon})`,\n backgroundRepeat: 'no-repeat',\n backgroundSize: '50%',\n backgroundPosition: '50%',\n '&:hover': {\n backgroundColor: (theme) => theme.palette.primary.dark,\n },\n },\n '& .react-resizable-handle:after': {\n display: 'none',\n },\n },\n header: {\n position: 'relative',\n overflow: 'hidden',\n height: '40px',\n '& .MuiCardHeader-avatar': {\n marginLeft: (theme) => `-${theme.spacing(1)}`,\n },\n '& .MuiCardHeader-content': {\n transition: 'margin 450ms ease',\n overflow: 'hidden',\n minWidth: 0,\n },\n },\n headerPreview: {\n background: 'transparent',\n '& .MuiCardHeader-content': {\n zIndex: 1,\n marginLeft: (theme) => theme.spacing(-5),\n marginRight: (theme) => theme.spacing(-28),\n },\n },\n title: {\n display: 'block',\n overflow: 'hidden',\n color: (theme) => theme.palette.common.white,\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n },\n titlePreview: {\n color: (theme) => theme.palette.text.primary,\n },\n controls: {\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n opacity: 1,\n visibility: 'visible' as const,\n transform: 'translateX(0)',\n transition: 'opacity 450ms ease, visibility 450ms, transform 450ms ease',\n zIndex: 1,\n [reducedMotion]: {\n transitionDuration: '0s',\n },\n },\n controlsHiddenLeft: {\n opacity: 0,\n visibility: 'hidden' as const,\n transform: 'translateX(-100%)',\n },\n controlsHiddenRight: {\n opacity: 0,\n visibility: 'hidden' as const,\n transform: 'translateX(100%)',\n },\n dragIcon: {\n width: '30px',\n height: '30px',\n padding: '8px',\n borderRadius: '4px',\n background: (theme) => theme.palette.primary.main,\n '&:hover': {\n cursor: 'move',\n background: (theme) => theme.palette.primary.dark,\n },\n },\n actionButtons: {\n height: '30px',\n marginTop: '-7px',\n },\n settingsButton: {\n color: 'rgba(255, 255, 255, 0.45)',\n borderRadius: '4px',\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderColor: 'rgba(255,255,255,0.1)',\n background: 'rgba(255,255,255,0.1)',\n '&:focus': {\n boxShadow: '0 0 0 1px rgba(255, 255, 255, 0.1)',\n },\n '&:hover': {\n opacity: 0.8,\n },\n },\n infoButton: {\n marginLeft: '1px',\n color: 'rgba(255, 255, 255, 0.45)',\n borderRadius: 0,\n borderColor: 'rgba(255,255,255,0.1)',\n background: 'rgba(255,255,255,0.1)',\n '&:focus': {\n boxShadow: '0 0 0 1px rgba(255, 255, 255, 0.1)',\n },\n '&:hover': {\n opacity: 0.8,\n },\n },\n deleteButton: {\n marginLeft: '1px',\n color: 'rgba(255, 255, 255, 0.45)',\n borderRadius: '4px',\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderColor: 'rgba(255,255,255,0.1)',\n background: 'rgba(255,255,255,0.1)',\n '&:focus': {\n boxShadow: '0 0 0 1px rgba(255, 255, 255, 0.1)',\n },\n '&:hover': {\n opacity: 0.8,\n },\n },\n content: {\n position: 'relative',\n height: 'calc(100% - 40px)',\n padding: 0,\n background: 'transparent',\n border: '1px solid rgba(255, 255, 255, 0.2)',\n borderTop: 'none',\n borderRadius: '4px',\n boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.25)',\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n left: 0,\n display: 'block',\n width: '100%',\n height: '1px',\n transform: 'scaleX(0)',\n transformOrigin: 'left',\n transition: 'transform 150ms ease',\n backgroundColor: 'rgba(255, 255, 255, 0.2)',\n [reducedMotion]: {\n transitionDuration: '0s',\n },\n },\n '&:last-child': {\n paddingBottom: 0,\n },\n },\n contentPreview: {\n '&::before': {\n transform: 'scaleX(1)',\n },\n },\n};\n\nexport { styles };\n","import { forwardRef, Fragment, useCallback, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { Delete, Info, Settings } from '@mui/icons-material';\nimport { LoadingButton } from '@mui/lab';\nimport { Box, Button, Card, CardContent, CardHeader, Stack, SvgIcon, Tooltip, Typography } from '@mui/material';\nimport { AccessGuard, refreshUserData, registerTranslations, useAccess } from 'andoncloud-sdk';\nimport { mergeSx } from 'merge-sx';\n\nimport { AccessRequestTypeEnum } from '@/graphql-sdk';\nimport locales from '@/locales';\nimport { BaseWidgetData, BaseWidgetSettings, WidgetCardProps as BaseWidgetCardProps } from '@/types';\n\nimport DragIcon from '../../assets/DragIcon';\nimport useGqlClients from '../../hooks/useGqlClients';\nimport ConfirmTooltip from '../ConfirmTooltip';\n\nimport { WidgetErrorBoundary } from './ErrorBoundary';\n\nimport { styles } from './styles';\n\nregisterTranslations(locales);\n\ntype WidgetCardProps = Omit<BaseWidgetCardProps, 'ref'> & { ref?: React.LegacyRef<HTMLDivElement> };\n\nconst WidgetCard: React.FC<WidgetCardProps> = forwardRef(\n (\n {\n children,\n title,\n Widget,\n id,\n getDisplayName,\n getTitle,\n thumbnail,\n url,\n wsUrl,\n lang,\n filters,\n openSettingsModal,\n onSettingsModalOpened,\n onSettingsModalClosed,\n sidePanelOpened,\n updateSidePanelProps,\n onDelete,\n editMode,\n version,\n requiredFeatures,\n extraPermissions,\n ...cardProps\n },\n ref,\n ) => {\n // -- SDK / framework hooks --\n const { graphqlSdk } = useGqlClients({ url, wsUrl, lang });\n const { hasAccess } = useAccess(requiredFeatures, { extraPermissions });\n\n // -- Local state --\n const [widgetData, setWidgetData] = useState<BaseWidgetData | undefined>();\n const [widgetSettings, setWidgetSettings] = useState<BaseWidgetSettings | undefined>();\n const [deleteInProgress, setDeleteInProgress] = useState<boolean>(false);\n const [removeTooltipOpened, setRemoveTooltipOpened] = useState<boolean>(false);\n\n // -- Data layer --\n const handleDataChange = useCallback((newData: BaseWidgetData) => {\n setWidgetData(newData);\n }, []);\n\n const handleSettingsChange = useCallback((newSettings: BaseWidgetSettings) => {\n setWidgetSettings(newSettings);\n }, []);\n\n // -- Translation --\n const { t } = useTranslation();\n\n // --- Title resolution ---\n\n const resolvedTitle = useCallback((): string => {\n const trimmed = widgetSettings?.customTitle?.trim();\n if (trimmed) return trimmed;\n\n if (editMode) {\n return (getDisplayName ? getDisplayName(lang) : title) as string;\n }\n\n if (getTitle) {\n try {\n const result = getTitle(widgetData, widgetSettings, filters, lang);\n if (result) return result;\n } catch {\n // silent fallback\n }\n }\n\n return title as string;\n }, [widgetData, widgetSettings, filters, lang, getDisplayName, getTitle, title, editMode]);\n\n const displayTitle = resolvedTitle();\n\n // --- Handlers ---\n\n const handleOpenSettingsModal = () => {\n if (onSettingsModalOpened) onSettingsModalOpened();\n };\n\n const handleDelete = async () => {\n setDeleteInProgress(true);\n setRemoveTooltipOpened(false);\n\n if (onDelete) await onDelete();\n\n setDeleteInProgress(false);\n };\n\n const handleTrialRequest = async (featureKey: string): Promise<boolean> => {\n try {\n await graphqlSdk?.startTrial({ input: { featureKey } });\n await refreshUserData();\n return true;\n } catch (error) {\n console.error('Failed to start trial:', error);\n return false;\n }\n };\n\n const handleFeatureRequest = async ({\n featureKey,\n requestType,\n workplaceId,\n }: {\n featureKey: string;\n requestType: string;\n workplaceId?: string;\n }): Promise<boolean> => {\n try {\n await graphqlSdk?.requestFeatureAccess({\n input: { featureKey, requestType: requestType.toUpperCase() as AccessRequestTypeEnum, workplaceId },\n });\n await refreshUserData();\n return true;\n } catch (error) {\n console.error('Failed to request feature access:', error);\n return false;\n }\n };\n\n // --- Render helpers ---\n\n const renderDragHandle = () => {\n return <SvgIcon component={DragIcon} className=\"draggable-handle\" sx={styles.dragIcon} inheritViewBox />;\n };\n\n const renderActionButtons = () => {\n return (\n <Stack direction=\"row\" sx={styles.actionButtons}>\n <Button\n color=\"secondary\"\n sx={styles.settingsButton}\n onClick={handleOpenSettingsModal}\n disabled={!hasAccess}\n data-testid=\"widget-card.settings-button\"\n >\n <Settings />\n </Button>\n {version && (\n <Fragment>\n <Tooltip title={version}>\n <Button color=\"secondary\" sx={styles.infoButton} data-testid=\"widget-card.info-button\">\n <Info />\n </Button>\n </Tooltip>\n </Fragment>\n )}\n <ConfirmTooltip\n open={removeTooltipOpened}\n confirmMessage={t('Are you sure you want to delete this widget?')}\n confirmButtonText={t('Delete')}\n cancelButtonText={t('Cancel')}\n onCancel={() => setRemoveTooltipOpened(false)}\n onConfirm={handleDelete}\n confirmButtonTestId=\"widget-card.delete-confirm\"\n cancelButtonTestId=\"widget-card.delete-cancel\"\n >\n <LoadingButton\n color=\"secondary\"\n sx={styles.deleteButton}\n onClick={(e) => {\n e.stopPropagation();\n\n setRemoveTooltipOpened(true);\n }}\n loading={deleteInProgress}\n data-testid=\"widget-card.delete-button\"\n >\n <Delete />\n </LoadingButton>\n </ConfirmTooltip>\n </Stack>\n );\n };\n\n return (\n <Card ref={ref} sx={styles.root} {...cardProps}>\n <CardHeader\n avatar={<Box sx={mergeSx(styles.controls, !editMode && styles.controlsHiddenLeft)}>{renderDragHandle()}</Box>}\n title={\n <Typography\n variant=\"subtitle1\"\n sx={mergeSx(styles.title, !editMode && styles.titlePreview)}\n data-testid=\"widget-card.title\"\n >\n {displayTitle}\n </Typography>\n }\n action={\n <Box sx={mergeSx(styles.controls, !editMode && styles.controlsHiddenRight)}>{renderActionButtons()}</Box>\n }\n sx={mergeSx(styles.header, !editMode && styles.headerPreview)}\n data-testid=\"widget-card.header\"\n />\n <CardContent sx={mergeSx(styles.content, !editMode && styles.contentPreview)} data-testid=\"widget-card.content\">\n <AccessGuard\n features={requiredFeatures}\n extraPermissions={extraPermissions}\n onTrialRequest={handleTrialRequest}\n onFeatureRequest={handleFeatureRequest}\n backgroundImage={thumbnail}\n >\n <WidgetErrorBoundary>\n <Widget\n id={id}\n url={url}\n wsUrl={wsUrl}\n lang={lang}\n filters={filters}\n onDataChange={handleDataChange}\n onSettingsChange={handleSettingsChange}\n openSettingsModal={openSettingsModal}\n onSettingsModalOpened={onSettingsModalOpened}\n onSettingsModalClosed={onSettingsModalClosed}\n sidePanelOpened={sidePanelOpened}\n updateSidePanelProps={updateSidePanelProps}\n editMode={editMode}\n />\n </WidgetErrorBoundary>\n </AccessGuard>\n </CardContent>\n {/* resizable handle */}\n {editMode && children}\n </Card>\n );\n },\n);\n\nexport { WidgetCard };\n","import dayjs from 'dayjs';\n\nimport { InsightsAggregation } from '../graphql-sdk';\n\ntype DateRange = {\n dateFrom: string;\n dateTo: string;\n};\n\nconst MAX_DAYS_HOURLY = 1;\nconst MIN_DAYS_DAILY = 2;\nconst MAX_DAYS_DAILY = 31;\nconst MIN_DAYS_WEEKLY = 14;\nconst MAX_MONTHS_WEEKLY = 6;\nconst MIN_MONTHS_MONTHLY = 3;\nconst MAX_MONTHS_MONTHLY = 12;\n\nconst getValidAggregations = (dateRange: DateRange): InsightsAggregation[] => {\n const from = dayjs(dateRange.dateFrom);\n const to = dayjs(dateRange.dateTo);\n const days = to.diff(from, 'day');\n const months = to.diff(from, 'month');\n\n const valid: InsightsAggregation[] = [];\n\n if (days <= MAX_DAYS_HOURLY) {\n valid.push(InsightsAggregation.Hourly);\n }\n\n if (days >= MIN_DAYS_DAILY && days <= MAX_DAYS_DAILY) {\n valid.push(InsightsAggregation.Daily);\n }\n\n if (days >= MIN_DAYS_WEEKLY && months <= MAX_MONTHS_WEEKLY) {\n valid.push(InsightsAggregation.Weekly);\n }\n\n if (months >= MIN_MONTHS_MONTHLY && months <= MAX_MONTHS_MONTHLY) {\n valid.push(InsightsAggregation.Monthly);\n }\n\n return valid;\n};\n\nconst resolveAutoAggregation = (dateRange: DateRange): InsightsAggregation => {\n const from = dayjs(dateRange.dateFrom);\n const to = dayjs(dateRange.dateTo);\n const days = to.diff(from, 'day');\n const months = to.diff(from, 'month');\n\n if (days <= 1) {\n return InsightsAggregation.Hourly;\n }\n\n if (days <= 13) {\n return InsightsAggregation.Daily;\n }\n\n if (months < 3) {\n return InsightsAggregation.Weekly;\n }\n\n return InsightsAggregation.Monthly;\n};\n\nconst resolveAggregation = (dateRange: DateRange, savedAggregation?: InsightsAggregation): InsightsAggregation => {\n if (savedAggregation) {\n const valid = getValidAggregations(dateRange);\n\n if (valid.includes(savedAggregation)) {\n return savedAggregation;\n }\n }\n\n return resolveAutoAggregation(dateRange);\n};\n\nexport { getValidAggregations, resolveAggregation };\n","import { Dayjs } from 'dayjs';\n\nexport const generateTimeRange = (\n start: Dayjs,\n end: Dayjs,\n unit: 'minutes' | 'hours' | 'days',\n step: number,\n): Dayjs[] => {\n const result: Dayjs[] = [];\n let current = start;\n const isReverse = start.isAfter(end);\n\n while (isReverse ? current.isAfter(end) || current.isSame(end) : current.isBefore(end) || current.isSame(end)) {\n result.push(current);\n current = isReverse ? current.subtract(step, unit) : current.add(step, unit);\n }\n return result;\n};\n","export const LIBRARY_VERSION = '1.5.65';\n"],"mappings":"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"}